编辑:您正在C#中使用UTF-16,必须在两种语言中使用相同的编码:
Node.js:
var crypto = require("crypto");var sha256 = crypto.createHash("sha256");sha256.update("ThisPassword", "utf8");//utf8 herevar result = sha256.digest("base64");console.log(result); //d7I986+YD1zS6Wz2XAcDv2K8yw3xIVUp7u/OZiDzhSY=C#:
SHA256 sha256 = SHA256Managed.Create(); //utf8 here as wellbyte[] bytes = sha256.ComputeHash(Encoding.UTF8.GetBytes("ThisPassword"));string result = Convert.Tobase64String(bytes);Console.WriteLine(result); //d7I986+YD1zS6Wz2XAcDv2K8yw3xIVUp7u/OZiDzhSY=


