Foxtable(狐表)用户栏目专家坐堂 → [求助]md5加密


  共有1927人关注过本帖树形打印复制链接

主题:[求助]md5加密

帅哥哟,离线,有人找我吗?
智友软件工作室
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:912 积分:7445 威望:0 精华:0 注册:2013/2/25 13:10:00
[求助]md5加密  发帖心情 Post By:2019/3/31 18:22:00 [显示全部帖子]

加密字符串随机,6位
加密字符4位
生成16位的md5

 就是把6位数作为加密的key值,去加密身份证的后四位 ,生成16位的md5

对方的加密函数是这样的,我要和他的算法一样对同一字符串的加密生成的相同的加密后的字符串,可以办到吗?

/// 加密数据 
   /// </summary> 
   /// <param name="Text"></param> 
   /// <param name="sKey"></param> 
   /// <returns></returns> 
   public static string Encrypt(string Text, string sKey) {
    DESCryptoServiceProvider des = new DESCryptoServiceProvider();
    byte[] inputByteArray;
    inputByteArray = Encoding.Default.GetBytes(Text);
    des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(
    sKey, "md5").Substring(0, 8));
    des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(
    sKey, "md5").Substring(0, 8));
    System.IO.MemoryStream ms = new System.IO.MemoryStream();
    CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);
    cs.Write(inputByteArray, 0, inputByteArray.Length);
    cs.FlushFinalBlock();
    StringBuilder ret = new StringBuilder();
    foreach(byte b in ms.ToArray()) {
    ret.AppendFormat("{0:X2}", b);
    }
    return ret.ToString();
   }
[此贴子已经被作者于2019/3/31 20:23:34编辑过]

 回到顶部