qortal/src/test/resources/shared-secret-test.html

32 lines
1.5 KiB
HTML

<!doctype html>
<html>
<head>
<script src="Base58.js"></script>
<script src="nacl_factory.js"></script>
<script>
nacl_factory.instantiate(function (nacl) {
var mintingAccountPrk = Base58.decode('A9MNsATgQgruBUjxy2rjWY36Yf19uRioKZbiLFT2P7c6');
var recipientAccountPuk = Base58.decode('C6wuddsBV3HzRrXUtezE7P5MoRXp5m3mEDokRDGZB6ry');
var mintingEd25519KeyPair = nacl.crypto_sign_seed_keypair(mintingAccountPrk);
var mintingX25519KeyPair = nacl.crypto_box_keypair_from_sign_sk(mintingEd25519KeyPair.signSk);
var recipientAccountX25519Puk = nacl.crypto_box_pk_from_sign_pk(recipientAccountPuk);
var sharedSecret = nacl.crypto_scalarmult(mintingX25519KeyPair.boxSk, recipientAccountX25519Puk);
console.log("shared secret (minting private + recipient public): " + Base58.encode(sharedSecret));
var recipientAccountPrk = Base58.decode('AdTd9SUEYSdTW8mgK3Gu72K97bCHGdUwi2VvLNjUohot');
var mintingAccountPuk = Base58.decode('2tiMr5LTpaWCgbRvkPK8TFd7k63DyHJMMFFsz9uBf1ZP');
var recipientEd25519KeyPair = nacl.crypto_sign_seed_keypair(recipientAccountPrk);
var recipientX25519KeyPair = nacl.crypto_box_keypair_from_sign_sk(recipientEd25519KeyPair.signSk);
var mintingAccountX25519Puk = nacl.crypto_box_pk_from_sign_pk(mintingAccountPuk);
sharedSecret = nacl.crypto_scalarmult(recipientX25519KeyPair.boxSk, mintingAccountX25519Puk);
console.log("shared secret (recipient private + minting public): " + Base58.encode(sharedSecret));
});
</script>
</head>
<body>
</body>
</html>