<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 渠上月 閱讀(5130) 評論(1)  編輯  收藏 所屬分類: java tips

    評論

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

    主站蜘蛛池模板: 激情无码亚洲一区二区三区| 免费jjzz在在线播放国产| 亚洲国产精品成人精品无码区在线| 亚洲а∨精品天堂在线| 大香人蕉免费视频75| 一级毛片成人免费看a| 四虎影视永久免费观看地址| 亚洲AV无码专区国产乱码不卡| 手机在线毛片免费播放| 亚洲美女aⅴ久久久91| 18禁止观看免费私人影院| 亚洲国产精品久久网午夜| 4399好看日本在线电影免费| 亚洲色大成网站WWW国产| 国产成人无码a区在线观看视频免费 | 99亚偷拍自图区亚洲| 免费电视剧在线观看| 亚洲av日韩综合一区久热| 免费在线视频一区| 一级午夜免费视频| 亚洲av无码潮喷在线观看| 91高清免费国产自产| 亚洲日韩国产二区无码| 免费国产美女爽到喷出水来视频| japanese色国产在线看免费| 美丽的姑娘免费观看在线播放| 亚洲欧洲日本精品| 日韩免费观看一级毛片看看| 产传媒61国产免费| 免费看少妇作爱视频| 亚洲av片劲爆在线观看| 日本三级2019在线观看免费| 亚洲AV成人片色在线观看| 成年人免费的视频| 黄网站色视频免费看无下截| 亚洲国产另类久久久精品小说 | 欧洲精品成人免费视频在线观看| 亚洲av无码专区首页| 亚洲AV无码一区二区三区系列| 久久精品网站免费观看| 国产精品九九久久免费视频|