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

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

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

    甜咖啡

    我的IT空間

    java實現(xiàn)DES加密算法

    一、java實現(xiàn)DES加密算法
    為了實現(xiàn)一對密鑰對整個項目所有加密解密文件都適用的方法,采用先生成一對密鑰.保存到xml文件中,以后獲得私匙和公鑰只需要從xml文件中取得就可以了.
    /**
    * 把成生的一對密鑰保存到DesKey.xml文件中
    */
    public static void saveDesKey(){     
        try {
            SecureRandom sr = new SecureRandom();
            //為我們選擇的DES算法生成一個KeyGenerator對象
            KeyGenerator kg = KeyGenerator.getInstance ("DES" );
            kg.init (sr);
            FileOutputStream fos = new FileOutputStream("C:/DesKey.xml");
          ObjectOutputStream oos = new ObjectOutputStream(fos);
            //生成密鑰
            Key key = kg.generateKey();
          oos.writeObject(key);
          oos.close();
        } catch (Exception e) {
          e.printStackTrace();
        }
    }




    獲取密鑰方法如下:

    /**

    * 獲得DES加密的密鑰。在交易處理的過程中應該定時更
    * 換密鑰。需要JCE的支持,如果jdk版本低于1.4,則需要
    * 安裝jce-1_2_2才能正常使用。
    * @return   Key 返回對稱密鑰
    */
        public static Key getKey() {
            Key kp = null;
            try {
                  String fileName = "conf/DesKey.xml";
                  InputStream is = DesUtil.class.getClassLoader()
                          .getResourceAsStream(fileName);
                  ObjectInputStream oos = new ObjectInputStream(is);
                  kp = (Key) oos.readObject();
                  oos.close();
            } catch (Exception e) {
                  e.printStackTrace();
            }
            return kp;
        }


    文件采用DES算法加密文件

    /**
    * 文件file進行加密并保存目標文件destFile中

    * @param file
    *         
    要加密的文件 如c:/test/srcFile.txt
    * @param destFile
    *         加密后存放的文件名 如c:/加密后文件
    .txt
    */

    public static void encrypt(String file, String destFile) throws Exception {

            Cipher cipher = Cipher.getInstance("DES");

            cipher.init(Cipher.ENCRYPT_MODE, getKey());

            InputStream is = new FileInputStream(file);

            OutputStream out = new FileOutputStream(dest);

            CipherInputStream cis = new CipherInputStream(is, cipher);

            byte[] buffer = new byte[1024];

            int r;

            while ((r = cis.read(buffer)) > 0) {

                  out.write(buffer, 0, r);

            }

            cis.close();

            is.close();

            out.close();

        }


    文件采用DES算法解密文件


    /**
    文件file進行加密并保存目標文件destFile中

    * @param file
    *         
    已加密的文件 如c:/加密后文件.txt
    * @param destFile
    *         解密后存放的文件名 如c:/ test/解密后文件
    .txt
    */

    public static void decrypt(String file, String dest) throws Exception {
            Cipher cipher = Cipher.getInstance("DES");
            cipher.init(Cipher.DECRYPT_MODE, getKey());
            InputStream is = new FileInputStream(file);
            OutputStream out = new FileOutputStream(dest);
            CipherOutputStream cos = new CipherOutputStream(out, cipher);
            byte[] buffer = new byte[1024];
            int r;
            while ((r = is.read(buffer)) >= 0) {
                  cos.write(buffer, 0, r);
            }
            cos.close();
            out.close();
            is.close();
        } 

    posted on 2013-03-29 15:58 甜咖啡 閱讀(438) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     

    導航

    <2013年3月>
    242526272812
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    統(tǒng)計

    常用鏈接

    留言簿(1)

    我參與的團隊

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国产精品狼友中文久久久 | 成人免费毛片内射美女-百度| 久久亚洲精品无码VA大香大香| 国产亚洲精品成人AA片| 最近2019中文字幕免费直播| 亚洲区小说区图片区QVOD| 男人扒开添女人下部免费视频| 在线免费观看一区二区三区| xxxxx做受大片在线观看免费| 国产最新凸凹视频免费| 久久国产福利免费| 久久精品国产亚洲av麻豆蜜芽| 免费大片在线观看网站| 最近最新高清免费中文字幕| 国产亚洲美女精品久久久久| 国产精品酒店视频免费看| 亚洲日韩AV一区二区三区四区| 亚洲综合熟女久久久30p| 亚洲高清免费视频| 亚洲精品无码专区在线在线播放 | 白白国产永久免费视频| 一区二区视频免费观看| 亚洲制服丝袜精品久久| 免费va人成视频网站全| 97在线视频免费播放| 亚洲天堂久久精品| 亚欧色视频在线观看免费| 亚洲黄色网址大全| 成人免费午夜无码视频| 亚洲人成网站在线在线观看| 国产18禁黄网站免费观看| 国产电影午夜成年免费视频| 中文字幕免费视频精品一| 国产亚洲日韩在线a不卡| 亚洲狠狠爱综合影院婷婷| 成年女人喷潮毛片免费播放| 色窝窝亚洲AV网在线观看| 亚洲三级视频在线| 久久精品亚洲一区二区三区浴池| 亚洲欧洲日产国码一级毛片| 日韩精品免费在线视频|