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

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

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

    七郎's JavaBlog

    草木竹石皆可為劒。至人之用人若鏡,不將不迎,應而不藏,故能勝物而不傷。
    posts - 60, comments - 14, trackbacks - 0, articles - 0

    一個用java寫的加密解密程序

    Posted on 2007-04-16 15:34 七郎歸來 閱讀(1223) 評論(0)  編輯  收藏

    import javax.crypto.Cipher;
    import javax.crypto.SecretKey;
    import javax.crypto.SecretKeyFactory;
    import javax.crypto.spec.DESKeySpec;

    //import com.modernmedia.mw.tag.Messages;

    import sun.misc.BASE64Decoder;
    import sun.misc.BASE64Encoder;

    public class Crypt {
    // --------------------------------------------------------------------------------------------
    // 獲得密鑰
    public SecretKey getKey(String s) throws Exception {
    //s ="g8TlgLEc6oqZxdwGe6pDiKB8Y";
    System.out.println("s=="+s);
    char[] ss = s.toCharArray();
    String sss="";
        for(int i = 0;i<ss.length;i=i+2)
        {
        sss = sss + ss[i];
        }
    SecretKeyFactory kf = SecretKeyFactory.getInstance("DES");
    DESKeySpec ks = new DESKeySpec(sss.substring(0,8).getBytes());
    SecretKey kd = kf.generateSecret(ks);
    return kd;
    }

    // --------------------------------------------------------------------------------------------------
    // 返回加密后的字符串
    // key是用于生成密鑰的字符串,input是要加密的字符串
    public String getEncryptedString(String key, String input) {
    String base64 = "";
    try {
    Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
    cipher.init(Cipher.ENCRYPT_MODE, getKey(key));
    System.out.print("getKey(key)==="+getKey(key)+"key=="+key);
    byte[] inputBytes = input.getBytes("UTF8");
    byte[] outputBytes = cipher.doFinal(inputBytes);
    BASE64Encoder encoder = new BASE64Encoder();
    base64 = encoder.encode(outputBytes);
    } catch (Exception e) {
    base64 = e.getMessage();
    }
    return base64;
    }

    // --------------------------------------------------------------------------------------------------
    // 返回解密后的字符串
    // key是用于生成密鑰的字符串,input是要解密的字符串
    public String getDecryptedString(String key, String input) {
    String result = null;
    try {
    Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
    cipher.init(Cipher.DECRYPT_MODE, getKey(key));
    BASE64Decoder decoder = new BASE64Decoder();
    byte[] raw = decoder.decodeBuffer(input);
    byte[] stringBytes = cipher.doFinal(raw);
    result = new String(stringBytes, "UTF8");
    } catch (Exception e) {
    result = e.getMessage();
    }
    return result;
    }

    public static void main(String[] args){
    Crypt mycrypt = new Crypt();
    try {
    //SecretKey skey = mycrypt.getKey("g8TlgLEc6oqZxdwGe6pDiKB8Y");
    String ss = mycrypt.getEncryptedString("6678912345678906", "胖子");
    System.out.println("ss=="+ss);
    String ss2 = mycrypt.getDecryptedString("6678912345678906",ss);
    System.out.println("ss2=="+ss2);
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    //String ss = Messages.getString("SendToMemberTag.5");
    //System.out.print(ss);


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


    網站導航:
     
    主站蜘蛛池模板: 男女男精品网站免费观看 | 天黑黑影院在线观看视频高清免费 | 亚洲色偷拍另类无码专区| 边摸边吃奶边做爽免费视频99 | 最新亚洲成av人免费看| 亚洲色偷偷综合亚洲AVYP| 玖玖在线免费视频| 亚洲男人天堂2017| 真实国产乱子伦精品免费| 亚洲日产2021三区| 啦啦啦中文在线观看电视剧免费版| 国产精品高清视亚洲精品| 午夜色a大片在线观看免费| 亚洲aⅴ无码专区在线观看| 国产a级特黄的片子视频免费| 色老头综合免费视频| 国产亚洲美日韩AV中文字幕无码成人| 中文字幕在线视频免费观看| 亚洲av福利无码无一区二区| 97碰公开在线观看免费视频| 亚洲人成色99999在线观看| 免费在线观看a级毛片| 曰批全过程免费视频在线观看无码 | 成人网站免费观看| 黄色网址大全免费| 亚洲日韩图片专区第1页| 久久久久国产精品免费免费搜索 | 亚洲AV成人精品日韩一区| 亚洲线精品一区二区三区| 91精品免费高清在线| 亚洲国产AV无码一区二区三区 | 亚洲精品视频免费看| 女人被男人桶得好爽免费视频| 美女无遮挡免费视频网站| 亚洲国产婷婷六月丁香| 手机看黄av免费网址| 美女黄色免费网站| 亚洲视频一区二区在线观看| 又爽又高潮的BB视频免费看| 一级成人a毛片免费播放| 国产精品自拍亚洲|