<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-57  評(píng)論-202  文章-17  trackbacks-0

          從JDK1.4開始,SUN提供了JCE包,可以實(shí)現(xiàn)多種加密算法。下面是我的一個(gè)用JCE進(jìn)行DES加密解密的程序:

    package sample;

    import java.security.
    *;
    import javax.crypto.
    *;

    /**
     * <p>Title: </p>
     *
     * <p>Description: </p>
     *
     * <p>Copyright: Copyright (c) 2005</p>
     *
     * <p>Company: </p>
     *
     * @author George Hill
     * @version 1.0
     
    */


    public class Test {
      
      
    // 加密使用的Key
      private SecretKey key;
      
      
    // 加密算法,JCE可用DES,DESede和Blowfish
      private static final String algorithm = "DES";
      
      
    public Test() throws NoSuchAlgorithmException {
        KeyGenerator generator 
    = KeyGenerator.getInstance(algorithm);
        key 
    = generator.generateKey();
      }

      
      
    /**
       * 利用DES算法加密
       * @param s String 需要加密的字符串
       * @return String 加密后的字符串
       * @throws Exception
       
    */

      
    public String encryptData(String s) throws Exception {
        Cipher c 
    = Cipher.getInstance(algorithm);
        c.init(Cipher.ENCRYPT_MODE, key);

        
    return new String(c.doFinal(s.getBytes()));
      }

      
      
    /**
       * 利用DES算法解密
       * @param s String 需要解密的字符串
       * @return String 解密后的字符串
       * @throws Exception
       
    */

      
    public String decryptData(String s) throws Exception {
        Cipher c 
    = Cipher.getInstance(algorithm);
        c.init(Cipher.DECRYPT_MODE, key);

        
    return new String(c.doFinal(s.getBytes()));
      }

      
      
    /**
       * 測(cè)試程序
       * @param args String[]
       * @throws Exception
       
    */

      
    public static void main(String[] args) throws Exception {
        String s 
    = "Hello";
        Test test 
    = new Test();
        String encrypt 
    = test.encryptData(s);
        System.
    out.println(encrypt);
        String decrypt 
    = test.decryptData(encrypt);
        System.
    out.println(decrypt);
      }

    }



          在實(shí)際的使用中,往往需要對(duì)加密后的byte數(shù)組進(jìn)行轉(zhuǎn)換,可以自己實(shí)現(xiàn)轉(zhuǎn)換,或者用一些第三方的API。
    posted on 2005-05-18 11:55 小米 閱讀(2630) 評(píng)論(4)  編輯  收藏 所屬分類: Java

    評(píng)論:
    # re: 如何使用JCE的DES進(jìn)行加密解密 2005-07-24 20:17 | lzcarl
    高手,你好
    我最近也在用jce寫程序
    可配置上出了問(wèn)題
    用KeyGenerator不管生成什么類型的key
    都提示NoSuchAlgorithm
    請(qǐng)問(wèn)高手是怎么配置的啊
    謝謝。  回復(fù)  更多評(píng)論
      
    # re: 如何使用JCE的DES進(jìn)行加密解密 2005-07-25 09:57 | 小米
    高手不敢當(dāng)。請(qǐng)問(wèn)你設(shè)定的Algorithm是什么?我想錯(cuò)誤信息應(yīng)該提示的很清楚,你可以具體看看錯(cuò)誤信息的意思,或者查查相關(guān)的文檔。  回復(fù)  更多評(píng)論
      
    # re: 如何使用JCE的DES進(jìn)行加密解密 2005-07-25 15:24 | lzcarl
    我設(shè)定的algorithm是des
    昨天在jbuilder下還能用
    換到eclipse下一樣的設(shè)定方法就不行了
    郁悶  回復(fù)  更多評(píng)論
      
    # re: 如何使用JCE的DES進(jìn)行加密解密 2005-07-25 16:13 | 小米
    JBuilder和Eclipse下使用的JDK是否是一樣的?你可以把你的源代碼貼上來(lái)看看么?  回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 国内精品久久久久影院亚洲| 可以免费看黄视频的网站| 亚洲色大成WWW亚洲女子| 久久91亚洲人成电影网站| 国产一区二区三区在线观看免费| 99re热精品视频国产免费| 成人免费乱码大片A毛片| 国产在亚洲线视频观看| 亚洲校园春色另类激情| 亚洲第一页在线视频| 亚洲AV永久无码区成人网站| 亚洲精品视频免费| 免费成人午夜视频| 日本特黄特黄刺激大片免费| 国产在线a免费观看| 50岁老女人的毛片免费观看| 免费无码又爽又刺激高潮软件| 亚洲AV无码专区在线观看成人| 亚洲人成在线播放| 亚洲成年人电影网站| 亚洲AV无码久久精品色欲| 亚洲精品少妇30p| 亚洲线精品一区二区三区影音先锋| 亚洲成人一区二区| 免费国产在线观看| 高清国语自产拍免费视频国产| 好先生在线观看免费播放| 久久午夜免费视频| 91在线视频免费看| 精品久久久久国产免费| 成人免费午夜视频| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 666精品国产精品亚洲| 亚洲成人在线电影| 久久精品国产精品亚洲毛片| 亚洲爆乳精品无码一区二区三区| 亚洲深深色噜噜狠狠爱网站| 亚洲日韩欧洲无码av夜夜摸| 亚洲人成人无码网www电影首页| 亚洲AV综合色区无码另类小说 | 91精品国产免费|