/ src / test / resources / shared-secret-test.html
shared-secret-test.html
 1  <!doctype html>
 2  <html>
 3  	<head>
 4  		<script src="Base58.js"></script>
 5  		<script src="nacl_factory.js"></script>
 6  		<script>
 7  			nacl_factory.instantiate(function (nacl) {
 8  				var mintingAccountPrk = Base58.decode('A9MNsATgQgruBUjxy2rjWY36Yf19uRioKZbiLFT2P7c6');
 9  				var recipientAccountPuk = Base58.decode('C6wuddsBV3HzRrXUtezE7P5MoRXp5m3mEDokRDGZB6ry');
10  
11  				var mintingEd25519KeyPair = nacl.crypto_sign_seed_keypair(mintingAccountPrk);
12  				var mintingX25519KeyPair = nacl.crypto_box_keypair_from_sign_sk(mintingEd25519KeyPair.signSk);
13  				var recipientAccountX25519Puk = nacl.crypto_box_pk_from_sign_pk(recipientAccountPuk);
14  
15  				var sharedSecret = nacl.crypto_scalarmult(mintingX25519KeyPair.boxSk, recipientAccountX25519Puk);
16  				console.log("shared secret (minting private + recipient public): " + Base58.encode(sharedSecret));
17  
18  				var recipientAccountPrk = Base58.decode('AdTd9SUEYSdTW8mgK3Gu72K97bCHGdUwi2VvLNjUohot');
19  				var mintingAccountPuk = Base58.decode('2tiMr5LTpaWCgbRvkPK8TFd7k63DyHJMMFFsz9uBf1ZP');
20  
21  				var recipientEd25519KeyPair = nacl.crypto_sign_seed_keypair(recipientAccountPrk);
22  				var recipientX25519KeyPair = nacl.crypto_box_keypair_from_sign_sk(recipientEd25519KeyPair.signSk);
23  				var mintingAccountX25519Puk = nacl.crypto_box_pk_from_sign_pk(mintingAccountPuk);
24  
25  				sharedSecret = nacl.crypto_scalarmult(recipientX25519KeyPair.boxSk, mintingAccountX25519Puk);
26  				console.log("shared secret (recipient private + minting public): " + Base58.encode(sharedSecret));
27  			});
28  		</script>
29  	</head>
30  	<body>
31  	</body>
32  </html>