26 lines
814 B
JavaScript
26 lines
814 B
JavaScript
const aead = require('../src/aead');
|
|
const crypto = require('crypto');
|
|
|
|
function generateRandomUint8Array(length = 16) {
|
|
const randomArray = new Uint8Array(length);
|
|
crypto.getRandomValues(randomArray);
|
|
return randomArray;
|
|
}
|
|
|
|
describe('aead.js functions', () => {
|
|
|
|
it('encrypt and decrypt', () => {
|
|
let msg = generateRandomUint8Array(28);
|
|
console.log(msg);
|
|
let ad = generateRandomUint8Array(12);
|
|
let iv = generateRandomUint8Array();
|
|
let key = generateRandomUint8Array();
|
|
let result = aead.keccakAEAD.encrypt(key, msg, iv, ad);
|
|
console.log(result.tag);
|
|
console.log(result.cipher);
|
|
let result2 = aead.keccakAEAD.decrypt(key, result.cipher, iv, ad);
|
|
console.log(result2.tag);
|
|
console.log(result2.plaintext);
|
|
});
|
|
});
|