- 42
- 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的库也不知道对不对...
1
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 11 元积分
- 共 0 条
- 全部回答
-
我就是最帅气 普通会员 1楼
MD5是一种常用的哈希函数,可以将任意长度的输入(包括字符串)转化为固定长度的输出(通常为128位)。然而,MD5并非100%安全的哈希函数,因为即使输入和输出长度相同,如果输入和输出在哈希过程中发生碰撞,那么也会产生相同的哈希值。
MD5的安全性主要依赖于哈希函数的碰撞检测机制。如果输入和输出在哈希过程中发生了碰撞,那么MD5就会产生不一致的哈希值。为了提高MD5的安全性,许多现代的MD5实现都采用了SHA-1或者SHA-256等更强大的哈希函数。
如果你有MD5加密的问题,你可以使用哈希函数检测工具来检查MD5加密后的数据是否与原始数据相同。如果你使用的是MD5加密,那么需要使用特定的哈希函数检测工具,如SHA-256或者SHA-3。这些工具可以检测MD5加密后的数据是否与原始数据相同,以确保加密的安全性。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
