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

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

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

    posts - 35,  comments - 8,  trackbacks - 0

    J2SE在java.security.MessageDigest提供了一個MD5、SHA摘要計算類。
    結合javascript的md5計算,可以實現前臺口令加密,后臺數據庫中也保存的是md5或者sha的密碼加密摘要。

    具體實現如下:
    1、login.jsp部分
    ...
    <script type="text/javascript" src='js/md5.js'>

    </script>

    <html:form action="/login" focus="userid" >

    <table class="SubFormStyle">
       <tr align=left>
        <td><bean:message key="caption.LOGIN.UserID" /> <html:text
         property="userid" value=""></html:text></td>
        <td><bean:message key="caption.LOGIN.Password" /> <html:password
         property="passwordinput" value=""></html:password>
         <html:hidden
         property="password" value="" ></html:hidden></td>
        <td><html:submit onclick="password.value = hex_md5(passwordinput.value);">
         <bean:message key="button.Login" />
        </html:submit></td>

       </tr>
    </table>
    </html:form>
    ...

    2、我用的是struts,具體的action和form就不再浪費紙張了,我定義了一個loginuser的類來進行用戶密碼校驗,這里只給出校驗的方法:
    /**
      *
      * 校驗密碼,密碼采用MD5算法加密。
      *
      * @Param PasswordInput, 待校驗密碼
      * @Return 校驗通過返回true,否則返回false
      *
      *
      */
     public boolean CheckPassword(String PasswordInput) throws ATError {

      this.select();//從數據庫中讀取用戶信息
      MessageDigest md;
      try {
       //生成一個MD5加密計算摘要
       md = MessageDigest.getInstance("MD5");

       //計算md5函數
       md.update(this.password.getBytes());
       //digest()最后確定返回md5 hash值,返回值為8為字符串。因為md5 hash值是16位的hex值,實際上就是8位的字符
       //BigInteger函數則將8位的字符串轉換成16位hex值,用字符串來表示;得到字符串形式的hash值
       String pwd = new BigInteger(1, md.digest()).toString(16);
       
       if (PasswordInput.equals(pwd)) {
        return true;
       } else {
        return false;
       }
      } catch (NoSuchAlgorithmException e) {
      
       throw new ATError(e, "LoginUser", "CheckPassword", 1000);
      }

     }


    md5.js下載:http://pajhome.org.uk/crypt/md5/index.html

    posted on 2006-01-19 09:13 J2EE 閱讀(4281) 評論(3)  編輯  收藏

    FeedBack:
    # re: Java+MD5
    2006-01-19 11:13 | 音樂蟲子
    奇怪了,你怎么還需要在服務器那邊計算一次MD5的?
    WEB計算了MD5,數據庫保存的是密碼的MD5,服務器只要將數據庫的和WEB前端返回的比較一下就可以了呀?
      回復  更多評論
      
    # re: Java+MD5
    2006-01-19 15:11 | J2EE
    哈!!!
    一來這是一個測試性的代碼;二來,我做測試的時候,數據庫里不是md5的摘要,而是明文。  回復  更多評論
      
    # re: Java+MD5
    2011-05-16 16:40 | yjk
    服務端的md5和客戶端的md5,中文下為什么不一致呢?  回復  更多評論
      

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


    網站導航:
     

    <2006年1月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲熟妇成人精品一区| 综合自拍亚洲综合图不卡区| 91青青青国产在观免费影视| 亚洲国产精品尤物yw在线| 一级做a爰片性色毛片免费网站| 国产国产成年年人免费看片| 亚洲第一成年网站视频 | 猫咪免费人成网站在线观看| 亚洲2022国产成人精品无码区| 久久久久久久岛国免费播放 | 国产成人3p视频免费观看| 国产成人亚洲精品播放器下载 | 最近中文字幕无免费视频| 色噜噜AV亚洲色一区二区| 国产在线国偷精品免费看| 婷婷精品国产亚洲AV麻豆不片| 香港a毛片免费观看| 亚洲免费黄色网址| 国产成人免费片在线视频观看| 日韩毛片免费一二三| 午夜免费福利在线观看| 美女视频黄频a免费| 成人毛片免费观看视频大全| 久久久久亚洲AV无码去区首| 久久精品国产精品亚洲下载| 天堂在线免费观看| 亚洲人成日本在线观看| 免费永久看黄在线观看app| 最近2019中文免费字幕在线观看| 亚洲综合久久1区2区3区| 尤物永久免费AV无码网站| 中国国语毛片免费观看视频| 亚洲成av人片在线看片| 曰批视频免费40分钟试看天天 | 免费无码AV一区二区| 亚洲av日韩av激情亚洲| 在线免费观看一级片| 激情亚洲一区国产精品| 免费v片在线观看无遮挡| 亚洲a无码综合a国产av中文| 亚洲午夜久久久影院|