ffee53414f289b67ac3c4f9b2d84e79f8bca737d
Problem: In two cases the `if (ad === null)` conditions are meant to call a `_detached` method but accidentally call the non-detached counterpart. Solution: Call the corresponding function so that detached methods always call detached encryption or decryption. See-also: https://github.com/sodium-friends/sodium-javascript/issues/35
sodium-javascript
WIP - a pure javascript version of sodium-native. Based on tweetnacl
Usage
const sodium = require('sodium-javascript')
const key = Buffer.alloc(sodium.crypto_secretbox_KEYBYTES)
const nonce = Buffer.alloc(sodium.crypto_secretbox_NONCEBYTES)
sodium.randombytes_buf(key)
sodium.randombytes_buf(nonce)
const message = Buffer.from('Hello, World!')
const cipher = Buffer.alloc(message.length + sodium.crypto_secretbox_MACBYTES)
sodium.crypto_secretbox_easy(cipher, message, nonce, key)
console.log('Encrypted:', cipher)
const plainText = Buffer.alloc(cipher.length - sodium.crypto_secretbox_MACBYTES)
sodium.crypto_secretbox_open_easy(plainText, cipher, nonce, key)
console.log('Plaintext:', plainText.toString())
API
See sodium-native. This is a work in progress so all functions are not implemented yet.
This module is organised into individual submodules which can be required
independently for smaller bundles in the browser. To leverage automatic
switching between sodium-javascript and sodium-native, see
sodium-universal.
Install
npm install sodium-javascript
License
Languages
JavaScript
100%