https://github.com/awslabs/aws-wasm-checksums

https://github.com/awslabs/aws-wasm-checksums

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.4%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: awslabs
  • License: apache-2.0
  • Language: Rust
  • Default Branch: main
  • Size: 360 KB
Statistics
  • Stars: 0
  • Watchers: 4
  • Forks: 1
  • Open Issues: 7
  • Releases: 1
Created over 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme Contributing License Code of conduct

README.md

AWS WASM Checksums

WASM implementations of the checksums supported by the Smithy httpChecksum trait. The WASM implementation are based on the WASM component model.

Using this package

This package supports 5 checksum algorithms: CRC32, CRC32C, CRC64NVME, SHA1, and SHA256.

Associated with each of these algorithms are two functions, one for hashing to bytes and another for hashing and encoding as a baase64 string:

ts function crc64NvmeHash(input: Uint8Array): Uint8Array; function crc64NvmeHashAndEncode(input: Uint8Array): string;

Each algorithm also has an associated accumulating Hasher class, useful for usecases where the full set of bytes to be hashed might not be known up front. The Hasher provides functions finalize and finalizeAndEncode which return bytes and a base64 encoded string respectively.

ts let hasher = new crc64NvmeHasher.Hasher(); hasher.update(stringToUint8Array("Hello,")); hasher.update(stringToUint8Array(" World!")); let hashOut = hasher.finalize();

Working with this Repo

To work on this repo you will need Rust, Node, and cargo-component installed.

To build the project run:

sh npm install cargo install cargo-component npx vitest init browser npm run build

To run tests against the javascript bindings run:

sh npm run test

Security

See CONTRIBUTING for more information.

License

This project is licensed under the Apache-2.0 License.

Owner

  • Name: Amazon Web Services - Labs
  • Login: awslabs
  • Kind: organization
  • Location: Seattle, WA

AWS Labs

GitHub Events

Total
  • Create event: 2
  • Issues event: 1
  • Release event: 1
  • Delete event: 2
  • Push event: 2
  • Public event: 1
  • Pull request event: 3
Last Year
  • Create event: 2
  • Issues event: 1
  • Release event: 1
  • Delete event: 2
  • Push event: 2
  • Public event: 1
  • Pull request event: 3

Packages

  • Total packages: 1
  • Total downloads:
    • npm 4 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
  • Total maintainers: 1
npmjs.org: @aws/aws-wasm-checksums

WASM implementations of checksums used by the AWS SDKs

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 4 Last month
Rankings
Downloads: 12.0%
Average: 24.2%
Dependent repos count: 24.8%
Dependent packages count: 35.9%
Maintainers (1)
Last synced: 10 months ago

Dependencies

.github/workflows/ci-pr.yml actions
  • actions/checkout v4 composite
  • actions/setup-node v4 composite
.github/workflows/publish.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v2 composite
Cargo.lock cargo
  • anstream 0.6.18
  • anstyle 1.0.10
  • anstyle-parse 0.2.6
  • anstyle-query 1.1.2
  • anstyle-wincon 3.0.7
  • base64 0.22.1
  • bitflags 2.8.0
  • block-buffer 0.10.4
  • cbindgen 0.27.0
  • cfg-if 1.0.0
  • clap 4.5.29
  • clap_builder 4.5.29
  • clap_lex 0.7.4
  • colorchoice 1.0.3
  • cpufeatures 0.2.17
  • crc 3.2.1
  • crc-catalog 2.4.0
  • crc32c 0.6.8
  • crc32fast 1.4.2
  • crc64fast-nvme 1.1.1
  • crypto-common 0.1.6
  • digest 0.10.7
  • equivalent 1.0.2
  • errno 0.3.10
  • fastrand 2.3.0
  • generic-array 0.14.7
  • getrandom 0.3.1
  • hashbrown 0.15.2
  • heck 0.4.1
  • indexmap 2.7.1
  • is_terminal_polyfill 1.70.1
  • itoa 1.0.14
  • libc 0.2.169
  • linux-raw-sys 0.4.15
  • log 0.4.25
  • memchr 2.7.4
  • once_cell 1.20.3
  • proc-macro2 1.0.93
  • quote 1.0.38
  • rustc_version 0.4.1
  • rustix 0.38.44
  • ryu 1.0.19
  • semver 1.0.25
  • serde 1.0.217
  • serde_derive 1.0.217
  • serde_json 1.0.138
  • serde_spanned 0.6.8
  • sha1 0.10.6
  • sha2 0.10.8
  • strsim 0.11.1
  • syn 2.0.98
  • tempfile 3.16.0
  • toml 0.8.20
  • toml_datetime 0.6.8
  • toml_edit 0.22.24
  • typenum 1.17.0
  • unicode-ident 1.0.16
  • utf8parse 0.2.2
  • version_check 0.9.5
  • wasi 0.13.3+wasi-0.2.2
  • windows-sys 0.59.0
  • windows-targets 0.52.6
  • windows_aarch64_gnullvm 0.52.6
  • windows_aarch64_msvc 0.52.6
  • windows_i686_gnu 0.52.6
  • windows_i686_gnullvm 0.52.6
  • windows_i686_msvc 0.52.6
  • windows_x86_64_gnu 0.52.6
  • windows_x86_64_gnullvm 0.52.6
  • windows_x86_64_msvc 0.52.6
  • winnow 0.7.2
  • wit-bindgen-rt 0.33.0
  • wit-bindgen-rt 0.39.0
Cargo.toml cargo
package-lock.json npm
  • 286 dependencies
package.json npm
  • @bytecodealliance/jco ^1.9.1 development
  • @types/node ^22.13.4 development
  • @vitest/browser ^3.0.6 development
  • playwright ^1.50.1 development
  • typescript ^5.7.3 development
  • vitest ^3.0.5 development
  • @bytecodealliance/preview2-shim ^0.17.1