您好,匿名用户

md5加密的问题

0 投票

以下的代码是c#,现在我的开发环境又是nodejs的,我用的typescript语言,就想如何把它转成nodejs环境下可以用的
public static string Md5Sign(string prestr, string key)

    {
        StringBuilder sb = new StringBuilder(32);
        prestr = prestr + key;
        MD5 md5 = new MD5CryptoServiceProvider();
        byte[] t =
      md5.ComputeHash(Encoding.UTF8.GetBytes(prestr));
        for (int i = 0; i < t.Length; i++)
        {
            sb.Append(t[i].ToString("x").PadLeft(2, '0'));//t[i].ToString("x").PadLeft(2, '0')//x代表十六进制,固定长度为2,左边不足,补0
        }
        return sb.ToString();
    }
    -------------------------------------------------------------------------------------
    -------------------------------------------------------------------------------------
    以下是我自己写的,本人能力有限,改起来有些困难,还怕自己改错了,特地上来求助一下,谢谢!
Md5Sign(sortedUrl: string, appKey: string) {
    //appKey=yingsheng@oa
    sortedUrl = sortedUrl + appKey;
    let bytes = this.getBytes(sortedUrl)
    console.log("bytes:", bytes)
    console.log("cryptoUtil.md5(sortedUrl):", cryptoUtil.md5(sortedUrl))
    let md5 = crypto.createHash('md5')
    let sb: any = []
    let str = md5.update(sortedUrl).digest('hex');
    return str;
    // console.log("getHashResult:", this.getHashResult(sortedUrl))
    // let hashResult = this.getHashResult(sortedUrl)
    // return hashResult;
}        
对于我来说,难点就是byte[] t =md5.ComputeHash(Encoding.UTF8.GetBytes(prestr));因为nodejs的库md5没有将字节数组转为哈希值的方法,然后用了md5的库也不知道对不对...
      
用户头像 提问 2019年 5月24日 @ 阿尔托莉雅 上士 (1,542 威望)
分享到:

1个回答

0 投票
 
最佳答案

nodenpm包鸭。blueimp-md5传送门

用户头像 回复 2019年 5月24日 @ Yorick 中士 (1,293 威望)
选中 2019年 5月12日 @阿尔托莉雅
提一个问题:

相关问题

0 投票
1 回复 308 阅读
0 投票
1 回复 186 阅读
0 投票
1 回复 135 阅读
0 投票
1 回复 144 阅读
用户头像 提问 2017年 4月20日 @ Kassadin 中士 (1,440 威望)
0 投票
1 回复 293 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

IT技术交流群 - 随意问
欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...