1 | var sodium = require('sodium').api;
|
2 |
|
3 |
|
4 |
|
5 | var sender = sodium.crypto_box_keypair();
|
6 | var receiver = sodium.crypto_box_keypair();
|
7 |
|
8 |
|
9 | var nonce = new Buffer(sodium.crypto_box_NONCEBYTES);
|
10 | sodium.randombytes_buf(nonce);
|
11 |
|
12 |
|
13 | var plainText = new Buffer('this is a message');
|
14 | var cipherMsg = sodium.crypto_box(plainText, nonce, receiver.publicKey, sender.secretKey);
|
15 |
|
16 |
|
17 | var plainBuffer = sodium.crypto_box_open(cipherMsg, nonce, sender.publicKey,
|
18 | receiver.secretKey);
|
19 |
|
20 |
|
21 | if (plainBuffer.toString() == plainText) {
|
22 | console.log("Message decrypted correctly");
|
23 | } |
\ | No newline at end of file |