从Fantom转换为Javascript

从Fantom转换为Javascript,javascript,fantom,Javascript,Fantom,有人能帮我把下面的Fantom代码转换成Javascript吗 // compute salted hmac hmac := Buf().print("${username}:${userSalt}").hmac("SHA-1", password.toBuf).toBase64 // now compute login digest using nonce digest := "${hmac}:${nonce}".toBuf.toDigest("SHA-1").toBase64 我已经

有人能帮我把下面的Fantom代码转换成Javascript吗

// compute salted hmac 
hmac := Buf().print("${username}:${userSalt}").hmac("SHA-1", password.toBuf).toBase64

// now compute login digest using nonce 
digest := "${hmac}:${nonce}".toBuf.toDigest("SHA-1").toBase64
我已经能够使用以下方法计算
hmac
变量:

但我仍在为《文摘》而挣扎

如果您发布一个示例,下面是我在测试中使用的变量:

username : "alice" 
password : "secret" 
userSalt : "6s6Q5Rn0xZP0LPf89bNdv+65EmMUrTsey2fIhim/wKU=" 
nonce    : "3da210bdb1163d0d41d3c516314cbd6e" 
hmac     : "z9NILqJ3QHSG5+GlDnXsV9txjgo=" 
digest   : "B2B3mIzE/+dqcqOJJ/ejSGXRKvE="
此答案使用了,因为您已经取得了一些成功:

var username=“alice”;
var password=“secret”;
var userSalt=“6s6Q5Rn0xZP0LPf89bNdv+65EmMUrTsey2fIhim/wKU=”;
var nonce=“3da210bdb1163d0d41d3c516314cbd6e”;
var hmac=CryptoJS.HmacSHA1(用户名+”:“+userSalt,密码).toString(CryptoJS.enc.Base64);
var digest=CryptoJS.SHA1(hmac+“:”+nonce.toString(CryptoJS.enc.Base64);
console.log(hmac);//-->z9NILqJ3QHSG5+GlDnXsV9txjgo=
console.log(摘要);//-->B2B3mIzE/+dqcqOJJ/ejSGXRKvE=
注意:它使用以下CryptoJS文件:

/rollups/sha1.js
/rollups/hmac-sha1.js
/components/enc-base64-min.js
您可以在此JS粘贴箱中看到一个实时示例:


您能告诉我们您到目前为止尝试了什么吗?我尝试使用了两个网站:事实是我不清楚我需要传递哪些变量以及何时传递?如果我只知道如何准确地传递变量以及何时传递到hmac…?谢谢,这就是我想要的:)
/rollups/sha1.js
/rollups/hmac-sha1.js
/components/enc-base64-min.js