繁体   English   中英

如何使用来自 Java 的等效代码将带有 BigInt MD5 Hash 的 MD5 转换为 NodeJs 中的字符串格式

[英]How to convert MD5 with BigInt MD5 Hash to String format in NodeJs with equivalent code from Java

我在MD5 hash 的 Java 中有以下代码。 我想用 Typescript 转换成等效的 NodeJ。

Java中的代码

String secretKey = "MyID~Denmark";
final MessageDigest md = MessageDigest.getInstance("MD5")       final byte[] messageDigest = md.digest(secretKey.getBytes());
final BigInteger number = new BigInteger(messageDigest);
String value = String.format("%032x", number);
System.out.println("Value: "+value);

我也试过在下面的 Typescript 代码中,Java 和 NodeJs 的结果不相等。

public checkMd51(): void {
        const country: string = "Denmark";
        const projectId: string = "MyID";
        const secretKey: string = projectId + "~" + country;
        // const key: string = crypto.createHash("md5").update(String(secretKey)).digest();

        const md5 = crypto.createHash('md5').update(secretKey).digest('hex');

        const bigInt = BigInt(`0x${md5.substring(0, 32)}`);
        // const bigInt = BigInt(`0x${md5}`);
        // const val1 = util.format('%s:%s:%s', bigInt);

        console.log("MD5 value: ", val1.toString());

        
    }

请帮我。

这里是 go。 以下代码等同于您在 java 中为 MD5 摘要编写的代码。

const country: string = "Denmark";
const projectId: string = "MyID";
const secretKey: string = projectId + "~" + country;
const md5 = crypto.createHash('md5').update(secretKey).digest('hex');
console.log("MD5: ", md5);

使用 Typescript 和 NodeJs 运行 java 程序和上述代码,您可以验证两者是否相等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM