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

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

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

    blog.Toby

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      130 隨筆 :: 2 文章 :: 150 評論 :: 0 Trackbacks

    /**
     * Created by IntelliJ IDEA.
     * User: Administrator
     * Date: 2006-2-16
     * Time: 14:33:57
     * To change this template use File | Settings | File Templates.
     */
    /*
    字符串 DESede(3DES) 加密
    */
    import java.security.*;
    import javax.crypto.*;
    import javax.crypto.spec.SecretKeySpec;

    public class Test3Des {

        private static final String Algorithm = "DESede"; //定義 加密算法,可用 DES,DESede,Blowfish

        //keybyte為加密密鑰,長度為24字節
        //src為被加密的數據緩沖區(源)
        public static byte[] encryptMode(byte[] keybyte, byte[] src) {
           try {
                //生成密鑰
                SecretKey deskey = new SecretKeySpec(keybyte, Algorithm);

                //加密
                Cipher c1 = Cipher.getInstance(Algorithm);
                c1.init(Cipher.ENCRYPT_MODE, deskey);
                return c1.doFinal(src);
            } catch (java.security.NoSuchAlgorithmException e1) {
                e1.printStackTrace();
            } catch (javax.crypto.NoSuchPaddingException e2) {
                e2.printStackTrace();
            } catch (java.lang.Exception e3) {
                e3.printStackTrace();
            }
            return null;
        }

        //keybyte為加密密鑰,長度為24字節
        //src為加密后的緩沖區
        public static byte[] decryptMode(byte[] keybyte, byte[] src) {
     try {
                //生成密鑰
                SecretKey deskey = new SecretKeySpec(keybyte, Algorithm);

                //解密
                Cipher c1 = Cipher.getInstance(Algorithm);
                c1.init(Cipher.DECRYPT_MODE, deskey);
                return c1.doFinal(src);
            } catch (java.security.NoSuchAlgorithmException e1) {
                e1.printStackTrace();
            } catch (javax.crypto.NoSuchPaddingException e2) {
                e2.printStackTrace();
            } catch (java.lang.Exception e3) {
                e3.printStackTrace();
            }
            return null;
        }

        //轉換成十六進制字符串
        public static String byte2hex(byte[] b) {
            String hs="";
            String stmp="";

            for (int n=0;n<b.length;n++) {
                stmp=(java.lang.Integer.toHexString(b[n] & 0XFF));
                if (stmp.length()==1) hs=hs+"0"+stmp;
                else hs=hs+stmp;
                if (n<b.length-1)  hs=hs+":";
            }
            return hs.toUpperCase();
        }

        public static void main(String[] args)
        {
            //添加新安全算法,如果用JCE就要把它添加進去
            Security.addProvider(new com.sun.crypto.provider.SunJCE());

            final byte[] keyBytes = {0x11, 0x22, 0x4F, 0x58, (byte)0x88, 0x10, 0x40, 0x38
                                   , 0x28, 0x25, 0x79, 0x51, (byte)0xCB, (byte)0xDD, 0x55, 0x66
                                   , 0x77, 0x29, 0x74, (byte)0x98, 0x30, 0x40, 0x36, (byte)0xE2}; //24字節的密鑰
            String szSrc = "my name is Sidney.";

            System.out.println("加密前的字符串:" + szSrc);

            byte[] encoded = encryptMode(keyBytes, szSrc.getBytes());
            System.out.println("加密后的字符串:" + new String(encoded));

            byte[] srcBytes = decryptMode(keyBytes, encoded);
            System.out.println("解密后的字符串:" + (new String(srcBytes)));
        }
    }

     

    posted on 2006-02-16 14:45 渠上月 閱讀(5131) 評論(1)  編輯  收藏 所屬分類: java tips

    評論

    # re: Java中3DES加密解密調用示例(來自網絡)[未登錄] 2008-07-28 14:52 Tom
    謝謝了,正需要用!  回復  更多評論
      

    主站蜘蛛池模板: 日韩亚洲一区二区三区| 亚洲精品国产成人中文| 四虎影视无码永久免费| 亚洲国产高清视频在线观看| 国产美女做a免费视频软件| CAOPORN国产精品免费视频| 亚洲毛片无码专区亚洲乱| 免费人成在线观看视频播放| 久久精品电影免费动漫| 亚洲AV永久无码精品放毛片| 亚洲AV无码欧洲AV无码网站| 中字幕视频在线永久在线观看免费 | 丁香婷婷亚洲六月综合色| 免费一级毛片在线观看| 99免费在线观看视频| 香港特级三A毛片免费观看| 亚洲无删减国产精品一区| 国产一区二区三区在线观看免费| 日韩免费人妻AV无码专区蜜桃| 国产精品亚洲综合| 亚洲三级电影网站| 亚洲欧洲精品成人久久奇米网| 99久久精品日本一区二区免费| 国产精品永久免费视频| 亚洲一区二区三区丝袜| 国产精品久久久亚洲| 国产一区二区三区在线免费观看| 蜜桃AV无码免费看永久| 亚欧国产一级在线免费| 亚洲丰满熟女一区二区哦| 亚洲国产精品国自产电影| 亚洲伊人久久综合影院| 在线免费视频一区二区| 91免费国产自产地址入| 水蜜桃视频在线观看免费播放高清 | 性xxxxx免费视频播放| 中文字幕免费在线看电影大全| 亚洲爆乳成av人在线视菜奈实| 久久久亚洲裙底偷窥综合| 亚洲人精品午夜射精日韩| 一个人免费高清在线观看|