WebAssembly wrapper of the rage encryption library

Overview

rage-wasm: WebAssembly wrapper of rage

rage is a simple, modern, and secure file encryption tool, using the age format. It features small explicit keys, no config options, and UNIX-style composability.

The format specification is at age-encryption.org/v1. To discuss the spec or other age related topics, please email the mailing list at [email protected]. age was designed by @Benjojo12 and @FiloSottile.

This package is a WebAssembly wrapper of the Rust rage package, providing basic encryption and descryption operations.

🚴 Usage

🐑 Use NPM or Yarn to install the package

npm install @kanru/rage-wasm

🛠️ Build with wasm-pack build

wasm-pack build

🔬 Test in Headless Browsers with wasm-pack test

wasm-pack test --headless --firefox

🎁 Publish to NPM with wasm-pack publish

wasm-pack publish
Comments
  • Usage instructions? can't use

    Usage instructions? can't use

    hey, trying to use this library and having problems

    I tried running with node v16 and tried from an mjs file:

    tried import:

    import rage from '@kanru/rage-wasm';
    

    got this:

    Error: Cannot find module '@kanru/rage-wasm'
    

    tried require

    const rage = require('@kanru/rage-wasm');
    

    and tried this in typescript

    import rage from '@kanru/rage-wasm/dist/index.js';
    

    got this:

    export { decrypt_with_user_passphrase$1 as decrypt_with_user_passphrase, decrypt_with_x25519$1 as decrypt_with_x25519, encrypt_with_user_passphrase$1 as encrypt_with_user_passphrase, encrypt_with_x25519$1 as encrypt_with_x25519, keygen$1 as keygen };
    ^^^^^^
    SyntaxError: Unexpected token 'export'
    

    I managed to configure typescript to compile the index.js file (not sure exactly which combination of tsconfig settings led to this), after which I got this neat error:

    TypeError: Cannot assign to read only property 'keygen' of object '[object Object]'
    

    also, I'm assuming the wasm-pack build step is for development, not for end users? I don't see that binary anywhere int the npm lib.

    Thanks

    documentation 
    opened by Madd0g 3
  • Unable to decrypt data that wasn't encrypted with rage-wasm

    Unable to decrypt data that wasn't encrypted with rage-wasm

    I set up a browser test doing a simple decryption as described in this project's javascript unit test. When I tried to decrypt data that was encrypted at the command line with age, I get a decryption error. I verified that I was able to decrypt the same data at the command line with both age and rage.

    My test case was essentially:

    age-keygen >key.txt
    age -e -a -i key.txt -o encrypted.txt
    
    const secret_key = '<pasted from key.txt>';
    const encrypted_data = '<pasted from encrypted.txt>';
    console.log(decode(await decrypt_with_x25519(secret_key, encode(encrypted_data))));
    

    Where encode and decode are copied from ./tests/all.test.js.

    If I use the same key in key.txt to both encrypt and then decrypt with rage-wasm, it works, but if it's encrypted at the command line, it desn't seem to be possible to decrypt it with rage-wasm.

    In case it matters, I'm running my test in a vanilla javascript app using vite to build. I can provide a full reproduction, if needed.

    Edit: I verified that keys generated with rage-wasm and data encrypted with that key can be decrypted at the command line with both age and rage.

    opened by jmcantrell 1
  • build(deps): bump ansi-html and parcel in /examples/parcel

    build(deps): bump ansi-html and parcel in /examples/parcel

    Removes ansi-html. It's no longer used after updating ancestor dependency parcel. These dependencies need to be updated together.

    Removes ansi-html

    Updates parcel from 2.0.0-rc.0 to 2.7.0

    Release notes

    Sourced from parcel's releases.

    v2.7.0

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    v2.6.2

    This release includes bug fixes:

    • Core
      • Fix race condition between writing and reading from cache - Details

    v2.6.1

    This release includes bug fixes:

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details
      • Fix object literal shorthand with imported variables - Details
      • Fix imported values in computed optional member expressions - Details
      • Bump SWC to fix issue with missing parenthesis in optional chaining call - Details

    ... (truncated)

    Changelog

    Sourced from parcel's changelog.

    [2.7.0] - 2022-08-03

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    [2.6.2] - 2022-06-21

    Fixed

    • Core
      • Fix race condition between writing and reading from cache - Details

    [2.6.1] - 2022-06-17

    Fixed

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 1
  • build(deps): bump follow-redirects from 1.14.2 to 1.15.2 in /examples/parcel

    build(deps): bump follow-redirects from 1.14.2 to 1.15.2 in /examples/parcel

    Bumps follow-redirects from 1.14.2 to 1.15.2.

    Commits
    • 9655237 Release version 1.15.2 of the npm package.
    • 6e2b86d Default to localhost if no host given.
    • 449e895 Throw invalid URL error on relative URLs.
    • e30137c Use type functions.
    • 76ea31f ternary operator syntax fix
    • 84c00b0 HTTP header lines are separated by CRLF.
    • d28bcbf Create SECURITY.md (#202)
    • 62a551c Release version 1.15.1 of the npm package.
    • 7fe0779 Use for ... of.
    • 948c30c Fix redirecting to relative URL when using proxy
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 1
  • build(deps): bump node-forge and parcel in /examples/parcel

    build(deps): bump node-forge and parcel in /examples/parcel

    Bumps node-forge and parcel. These dependencies needed to be updated together. Removes node-forge Updates parcel from 2.0.0-rc.0 to 2.7.0

    Release notes

    Sourced from parcel's releases.

    v2.7.0

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    v2.6.2

    This release includes bug fixes:

    • Core
      • Fix race condition between writing and reading from cache - Details

    v2.6.1

    This release includes bug fixes:

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details
      • Fix object literal shorthand with imported variables - Details
      • Fix imported values in computed optional member expressions - Details
      • Bump SWC to fix issue with missing parenthesis in optional chaining call - Details

    ... (truncated)

    Changelog

    Sourced from parcel's changelog.

    [2.7.0] - 2022-08-03

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    [2.6.2] - 2022-06-21

    Fixed

    • Core
      • Fix race condition between writing and reading from cache - Details

    [2.6.1] - 2022-06-17

    Fixed

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 1
  • build(deps): bump ejs and parcel in /examples/parcel

    build(deps): bump ejs and parcel in /examples/parcel

    Bumps ejs and parcel. These dependencies needed to be updated together. Removes ejs Updates parcel from 2.0.0-rc.0 to 2.7.0

    Release notes

    Sourced from parcel's releases.

    v2.7.0

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    v2.6.2

    This release includes bug fixes:

    • Core
      • Fix race condition between writing and reading from cache - Details

    v2.6.1

    This release includes bug fixes:

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details
      • Fix object literal shorthand with imported variables - Details
      • Fix imported values in computed optional member expressions - Details
      • Bump SWC to fix issue with missing parenthesis in optional chaining call - Details

    ... (truncated)

    Changelog

    Sourced from parcel's changelog.

    [2.7.0] - 2022-08-03

    Added

    • Core
      • Log resolved targets in verbose log level for debugging - Details
      • Allow plugin configs to be written with .cjs extension - Details
    • JavaScript
      • Support react refresh for @emotion/react - Details
      • Inject script for hmr when there is only normal script in html - Details
    • Elm
      • Add support for compiling multiple modules at once via with query param - Details
    • CSS
      • Add support for errorRecovery option in @parcel/transformer-css - Details
    • Experimental bundler - Details
      • Implement bundling for multiple targets
      • Internalize async dependencies
      • Merge bundles of the same type
      • Fix missing module - Details

    Fixed

    • JavaScript
      • Default interop missing when importing a CommonJS module - Details
      • Add missing imports for external dependencies in skipped assets - Details
      • Bump SWC to fix undefined variables - Details
      • Remove charset from JS loaded script to avoid double fetching in Firefox - Details
      • Use placeholder expression when replacing unused symbols - Details
    • Core
      • Fix atomic writestream handling on Windows - Details
      • Fix non-deterministic bundle hashes between builds due to symbol propagation - Details
      • Fix TypeScript types for @parcel/package-manager - Details
    • Dependencies

    [2.6.2] - 2022-06-21

    Fixed

    • Core
      • Fix race condition between writing and reading from cache - Details

    [2.6.1] - 2022-06-17

    Fixed

    • JavaScript
      • Fix issue with conditional dependencies based on process.env - Details
      • Fix transformation of import/requires wrapped into Promise.resolve() - Details

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 1
  • build(deps): bump terser from 5.7.2 to 5.15.0 in /examples/parcel

    build(deps): bump terser from 5.7.2 to 5.15.0 in /examples/parcel

    Bumps terser from 5.7.2 to 5.15.0.

    Changelog

    Sourced from terser's changelog.

    v5.15.0

    • Basic support for ES2022 class static initializer blocks.
    • Add AudioWorkletNode constructor options to domprops list (#1230)
    • Make identity function inliner not inline id(...expandedArgs)

    v5.14.2

    • Security fix for RegExps that should not be evaluated (regexp DDOS)
    • Source maps improvements (#1211)
    • Performance improvements in long property access evaluation (#1213)

    v5.14.1

    • keep_numbers option added to TypeScript defs (#1208)
    • Fixed parsing of nested template strings (#1204)

    v5.14.0

    • Switched to @​jridgewell/source-map for sourcemap generation (#1190, #1181)
    • Fixed source maps with non-terminated segments (#1106)
    • Enabled typescript types to be imported from the package (#1194)
    • Extra DOM props have been added (#1191)
    • Delete the AST while generating code, as a means to save RAM

    v5.13.1

    • Removed self-assignments (varname=varname) (closes #1081)
    • Separated inlining code (for inlining things into references, or removing IIFEs)
    • Allow multiple identifiers with the same name in var destructuring (eg var { a, a } = x) (#1176)

    v5.13.0

    • All calls to eval() were removed (#1171, #1184)
    • source-map was updated to 0.8.0-beta.0 (#1164)
    • NavigatorUAData was added to domprops to avoid property mangling (#1166)

    v5.12.1

    • Fixed an issue with function definitions inside blocks (#1155)
    • Fixed parens of new in some situations (closes #1159)

    v5.12.0

    • TERSER_DEBUG_DIR environment variable
    • @​copyright comments are now preserved with the comments="some" option (#1153)

    v5.11.0

    • Unicode code point escapes (\u{abcde}) are not emitted inside RegExp literals anymore (#1147)
    • acorn is now a regular dependency

    v5.10.0

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 1
  • build(deps): bump zeroize_derive from 1.1.0 to 1.3.2

    build(deps): bump zeroize_derive from 1.1.0 to 1.3.2

    Bumps zeroize_derive from 1.1.0 to 1.3.2.

    Changelog

    Sourced from zeroize_derive's changelog.

    Changelog

    All notable changes to this project will be documented in this file.

    The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

    1.5.5 (2022-04-30)

    Added

    • Impl Zeroize for std::ffi::CString (#759)
    • AsRef<T> and AsMut<T> impls for Zeroizing (#761)

    #759: RustCrypto/utils#759 #761: RustCrypto/utils#761

    1.5.4 (2022-03-16)

    Added

    • Nightly-only upport for zeroizing ARM64 SIMD registers (#749)

    #749: RustCrypto/utils#749

    1.5.3 (2022-02-25)

    Fixed

    • Deriving ZeroizeOnDrop on DerefMut (#739)

    #739: RustCrypto/utils#739

    1.5.2 (2022-01-31) [YANKED]

    Fixed

    • Ambiguous method for AssertZeroizeOnDrop (#725)

    #725: RustCrypto/utils#725

    1.5.1 (2022-01-27) [YANKED]

    Fixed

    • Double mut on AssertZeroizeOnDrop (#719)

    #719: RustCrypto/utils#719

    1.5.0 (2022-01-14) [YANKED]

    Added

    • Zeroize impls for PhantomData, PhantomPinned, and tuples with 0-10 elements (#660)
    • #[zeroize(bound = "T: MyTrait")] (#663)
    • ZeroizeOnDrop trait and custom derive (#699, #700, #703)

    #660: RustCrypto/utils#660 #663: RustCrypto/utils#663 #699: RustCrypto/utils#699 #700: RustCrypto/utils#700 #703: RustCrypto/utils#703

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies rust 
    opened by dependabot[bot] 1
  • build(deps): bump minimist from 1.2.5 to 1.2.6 in /examples/parcel

    build(deps): bump minimist from 1.2.5 to 1.2.6 in /examples/parcel

    Bumps minimist from 1.2.5 to 1.2.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump nanoid from 3.1.25 to 3.3.4 in /examples/parcel

    build(deps): bump nanoid from 3.1.25 to 3.3.4 in /examples/parcel

    Bumps nanoid from 3.1.25 to 3.3.4.

    Changelog

    Sourced from nanoid's changelog.

    3.3.4

    3.3.3

    • Reduced size (by Anton Khlynovskiy).

    3.3.2

    • Fixed enhanced-resolve support.

    3.3.1

    • Reduced package size.

    3.3

    • Added size argument to function from customAlphabet (by Stefan Sundin).

    3.2

    • Added --size and --alphabet arguments to binary (by Vitaly Baev).

    3.1.32

    • Reduced async exports size (by Artyom Arutyunyan).
    • Moved from Jest to uvu (by Vitaly Baev).

    3.1.31

    • Fixed collision vulnerability on object in size (by Artyom Arutyunyan).

    3.1.30

    • Reduced size for project with brotli compression (by Anton Khlynovskiy).

    3.1.29

    • Reduced npm package size.

    3.1.28

    • Reduced npm package size.

    3.1.27

    • Cleaned dependencies from development tools.

    3.1.26

    • Improved performance (by Eitan Har-Shoshanim).
    • Reduced npm package size.
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump follow-redirects from 1.14.2 to 1.14.9 in /examples/parcel

    build(deps): bump follow-redirects from 1.14.2 to 1.14.9 in /examples/parcel

    Bumps follow-redirects from 1.14.2 to 1.14.9.

    Commits
    • 13136e9 Release version 1.14.9 of the npm package.
    • 2ec9b0b Keep headers when upgrading from HTTP to HTTPS.
    • 5fc74dd Reduce nesting.
    • 3d81dc3 Release version 1.14.8 of the npm package.
    • 62e546a Drop confidential headers across schemes.
    • 2ede36d Release version 1.14.7 of the npm package.
    • 8b347cb Drop Cookie header across domains.
    • 6f5029a Release version 1.14.6 of the npm package.
    • af706be Ignore null headers.
    • d01ab7a Release version 1.14.5 of the npm package.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
Releases(v0.3.0)
  • v0.3.0(Sep 22, 2022)

    Added

    • Dependencies are partially audited and documented with cargo-vet

    Changed

    • Removed cog.toml and adopted Keep a Changelog format.
    • Removed unmaintained dependency wee_alloc. Default allocator will be used.
    • Added shadow-cljs example

    Download from https://www.npmjs.com/package/@kanru/rage-wasm

    Source code(tar.gz)
    Source code(zip)
Owner
Kan-Ru Chen
Kan-Ru Chen
Python bindings for rage (age in Rust)

pyrage Python bindings for the Rust implementation of age. Index Installation Usage Development Licensing Installation You can install pyrage with pip

William Woodruff 14 Nov 23, 2022
Authenticated Encryption with Associated Data Algorithms: high-level encryption ciphers

RustCrypto: Authenticated Encryption with Associated Data (AEAD) Algorithms Collection of Authenticated Encryption with Associated Data (AEAD) algorit

Rust Crypto 457 Jan 4, 2023
rabe is an Attribute Based Encryption library, written in Rust

Rabe rabe is a rust library implementing several Attribute Based Encryption (ABE) schemes using a modified version of the bn library of zcash (type-3

Fraunhofer AISEC 52 Dec 15, 2022
A Rust library for lattice-based additive homomorphic encryption.

Cupcake Cupcake is an efficient Rust library for the (additive version of) Fan-Vercauteren homomorphic encryption scheme, offering capabilities to enc

Facebook Research 365 Dec 11, 2022
Meta-repository for Miscreant: misuse-resistant symmetric encryption library with AES-SIV (RFC 5297) and AES-PMAC-SIV support

The best crypto you've never heard of, brought to you by Phil Rogaway A misuse resistant symmetric encryption library designed to support authenticate

miscreant. 480 Dec 8, 2022
A Rust Library of China's Standards of Encryption Algorithms (SM2/3/4)

Libsm Libsm is an open source pure rust library of China Cryptographic Algorithm Standards. It is completed by a collaborative effort between the Cryp

CITAHub 149 Dec 23, 2022
In addition to encryption library, pure RUST implementation of SSH-2.0 client protocol

In addition to encryption library, pure RUST implementation of SSH-2.0 client protocol

陈年旧事。 73 Jan 1, 2023
Rust library for practical time-lock encryption using `drand` threshold network

tlock-rs: Practical Timelock Encryption/Decryption in Rust This repo contains pure Rust implementation of drand/tlock scheme. It provides time-based e

Timofey 32 Jan 8, 2023
A Rust binary for file encryption to multiple participants.

Kaspa-miner A Rust binary for file encryption to multiple participants. Installation From Sources With Rust's package manager cargo, you can install k

Elichai Turkel 31 Dec 30, 2022
End-to-end encryption and mutual authentication for distributed applications.

✨ Hands-on Introduction: Build end-to-end encrypted, mutually-authenticated, secure messaging in Rust ✨ Rust and Elixir libraries for end-to-end encry

Ockam | Trust for Data-in-Motion 2.8k Jan 2, 2023
A secure file encryption utility, written in rust.

Dexios Dexios What is it? Building notes Checksums Performance Output file sizes Environment Variables Key Inputs Usage Examples To Do What is it? Dex

brxken 156 Dec 22, 2022
DexiosGUI - Simple cross-platform drag-and-drop Dexios file encryption

DexiosGUI Simple cross-platform drag-and-drop Dexios file encryption. Latest Windows x64 release is here. DexiosGUI is a Qt/C++ app for encrypt and de

Fabrice Corraire 4 Jul 25, 2022
The Hybrid Public Key Encryption (HPKE) standard in Python

Hybrid PKE The Hybrid Public Key Encryption (HPKE) standard in Python. hybrid_pke = hpke-rs ➕ PyO3 This library provides Python bindings to the hpke-r

Cape Privacy 4 Nov 7, 2022
Project Masterpass is a deterministic databaseless key management algorithm, aimed to help those who cannot protect their encryption keys in storage

Project Masterpass (working title) Attention! This project is still under heavy development, and SHOULD NOT be used in practice, as the algorithms cou

Gyorgy Wang 2 Sep 11, 2022
A Rust Implementation of China's Standards of Encryption Algorithms(SM2/SM3/SM4)

gm-rs A Pure Rust High-Performance Implementation of China's Standards of Encryption Algorithms(SM2/SM3/SM4) Usage Add this to your Cargo.toml: [depen

null 2 Oct 27, 2022
A simple to use, cross-platform aes encryption

About Project End to End encryption (AES) for multiple languages (cross-platform) with CBC Icon Item ?? Upcoming ⚖️ License ?? ChangeLog Usage (rust)

Zot Cryptography 2 Dec 15, 2022
Chargo is a tool for file encryption/decryption. It's based on Argon2 and ChaCha20Poly1305 algorithms.

| Documentation Chargo is a tool for file encryption/decryption with password. It's based on Argon2 and ChaCha20Poly1305 algorithms. From arg2u with ♥

Airat Galiullin 7 Jan 1, 2023
Simple to use CLI tool that makes encryption easy! Written in Rust.

?? eme: Encryption Made Easy an extremely simple AES-256 encryption tool written in Rust Usage: # To encrypt: eme --encrypt secret.png # To decrypt: e

null 5 Jan 3, 2023
Arkworks circuits for verifiable time-lock encryption

zk-timelock This repo contains arithmetic circuits for verifiable time-lock encryption made using arkworks-rs toolkit. For more details on such an enc

Timofey 68 Apr 5, 2023