6 releases
0.3.2 | Feb 28, 2024 |
---|---|
0.3.1 | Feb 18, 2024 |
0.2.0 | Feb 5, 2024 |
0.1.1 | Jan 28, 2024 |
#191 in WebAssembly
262 downloads per month
64KB
1K
SLoC
Wasm Bindings for abcrypt
abcrypt-wasm is the Wasm bindings for the abcrypt
crate.
Usage
Installation
To install this library:
npm install @sorairolake/abcrypt-wasm
Build
You will need wasm-pack
to build this crate.
wasm-pack build
This will generate build artifacts in the pkg
directory.
Example
import * as assert from "https://deno.land/std@0.216.0/assert/mod.ts";
import * as abcrypt from "./pkg/abcrypt_wasm.js";
const data = new TextEncoder().encode("Hello, world!\n");
const passphrase = new TextEncoder().encode("passphrase");
// Encrypt `data` using `passphrase`.
const ciphertext = abcrypt.encrypt(data, passphrase);
assert.assertNotEquals(ciphertext, data);
// And extract the Argon2 parameters from it.
const params = new abcrypt.Params(ciphertext);
assert.assertEquals(params.memoryCost, 19456);
assert.assertEquals(params.timeCost, 2);
assert.assertEquals(params.parallelism, 1);
// And decrypt it back.
const plaintext = abcrypt.decrypt(ciphertext, passphrase);
assert.assertEquals(plaintext, data);
Documentation
See the documentation for more details.
Minimum supported Rust version
The minimum supported Rust version (MSRV) of this library is v1.74.0.
Changelog
Please see CHANGELOG.adoc.
Contributing
Please see CONTRIBUTING.adoc.
License
Copyright © 2022–2024 Shun Sakai (see AUTHORS.adoc)
This library is distributed under the terms of either the Apache License 2.0 or the MIT License.
This project is compliant with version 3.0 of the REUSE Specification. See copyright notices of individual files for more details on copyright and licensing information.
Dependencies
~2.7–4MB
~70K SLoC