Christian Bundy b51d255ce4 Fix crypto_secretbox return value
Problem: This doesn't cause a bug, when crypto_secretbox returns an
integer (`0`) then the check on line 97 always fails because it checks
whether the return value triple-equals `false`.

Solution: Change crypto_secretbox so that it returns booleans rather
than integers, which gives us the ability to make the check on line 97
fail (if we ever return anything other than `true`).
2020-09-04 09:30:20 -07:00
2020-06-24 14:02:00 +02:00
2017-01-24 11:41:06 +01:00
2020-08-12 15:39:14 +02:00
2020-06-24 14:08:55 +02:00
2020-06-24 14:08:55 +02:00
2020-06-24 14:08:55 +02:00
2020-07-13 14:53:38 +02:00
2020-06-24 14:08:55 +02:00
2020-06-24 14:08:55 +02:00
2020-06-24 16:14:52 +02:00
2020-06-24 14:08:55 +02:00
2020-06-24 14:08:55 +02:00
2020-08-12 15:39:14 +02:00
2020-06-24 14:49:26 +02:00
2020-08-12 15:39:14 +02:00
2020-08-12 15:39:14 +02:00
2017-01-24 11:41:06 +01:00
2020-08-12 15:39:14 +02:00
2020-08-12 15:40:16 +02:00
2020-06-24 15:01:10 +02:00
2020-06-24 15:06:54 +02:00
2017-06-19 22:39:11 +02:00

sodium-javascript

Build Status

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

MIT

S
Description
Pure Javascript version of sodium-native
Readme
2.6 MiB
Languages
JavaScript 100%