0

为了给你上下文,有一个开发项目的 API 的开发人员,并且有一部分 json 将被加密。所以我必须破译他的内容。他列出了我在 iO 方面需要的所有功能。

所以我有他的javascript代码,我必须迅速重做等效的代码。他使用 JS 库(SJCL):https ://github.com/bitwiseshiftleft/sjcl/

我正在尝试使用公钥加密一些文本,但我不能。

首先,我生成了私钥/公钥

let keypair = P256.Signing.PrivateKey() // generation of a key pair

 let private_key = keypair.rawRepresentation.base64EncodedString()   // private key
 print(private_key)
 print("------------")

 let public_key = keypair.publicKey // public key - DATA
 print(public_key)
 print("------------")

 let publicKeyString = public_key.rawRepresentation.base64EncodedString() // public key - STRING - easy to share
 print(publicKeyString)

现在,我正在尝试使用公钥加密文本..

在这里,他的 javascript 代码:

var c256 = sjcl.ecc.curves.c256;
var publickeyBas64ToBits = sjcl.codec.base64.toBits(publickey);

console.log(c256);
console.log(publickey);
console.log(publickeyBas64ToBits);

var pub = new sjcl.ecc.elGamal.publicKey(
                    c256, 
                    publickeyBas64ToBits
                )
var ciphertext = sjcl.encrypt(pub, message)
return ciphertext

我不明白如何使用 CryptoKit 快速做同样的事情:/

你能帮我吗 ?:)

4

0 回答 0