summaryrefslogtreecommitdiff
path: root/cli/tests/unit/webcrypto_test.ts
AgeCommit message (Collapse)Author
2024-02-10chore: move cli/tests/ -> tests/ (#22369)Matt Mastracci
This looks like a massive PR, but it's only a move from cli/tests -> tests, and updates of relative paths for files. This is the first step towards aggregate all of the integration test files under tests/, which will lead to a set of integration tests that can run without the CLI binary being built. While we could leave these tests under `cli`, it would require us to keep a more complex directory structure for the various test runners. In addition, we have a lot of complexity to ignore various test files in the `cli` project itself (cargo publish exclusion rules, autotests = false, etc). And finally, the `tests/` folder will eventually house the `test_ffi`, `test_napi` and other testing code, reducing the size of the root repo directory. For easier review, the extremely large and noisy "move" is in the first commit (with no changes -- just a move), while the remainder of the changes to actual files is in the second commit.
2024-01-06feat(ext/crypto): initial support for p521 in `generateKey` and `importKey` ↵Divy Srivastava
(#21815) Part 1 of a potential 3 part series. Ref #13449 The current implementation passes key material back and forth RustCrypto group of crates and ring. ring does not implement p521 yet. This PR adds support for P521 named curve in `generateKey` and `importKey` where we use RustCrypto. Other parts should be moved over to the RustGroup group of crates for consistency.
2024-01-01chore: update copyright to 2024 (#21753)David Sherret
2023-03-05fix(ext/crypto): correctly limit ECDSA and hash algorithms (#18030)Filip Skokan
Closes #18029
2023-01-13chore: add `copyright_checker` tool and add the missing copyright (#17285)Yiyu Lin
2022-10-28fix(ext/crypto): fix HMAC jwk import "use" check (#16465)Filip Skokan
2022-10-18test(crypto): update crypto.getRandomValues calls (#16338)Filip Skokan
[`crypto.getRandomValues`](https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues) does not return a Promise.
2022-10-15fix(ext/crypto): correct HMAC get key length op (#16201)Filip Skokan
fixes #16180 `HMAC`'s `get key length` `op` uses the hash function's block size, not output size. refs https://github.com/cloudflare/workerd/issues/68#issuecomment-1271189657
2022-10-04fix(ext/crypto): interoperable import/export (#16153)Filip Skokan
This PR updates RSA key import/export to a state which is interoperable with other implementations. For RSA the only OID in and out is `rsaEncryption`. For EC the only OID in and out is `id-ecpublickey` (fixed in #16152). see https://github.com/w3c/webcrypto/issues/307#issuecomment-995813032 see https://github.com/w3c/webcrypto/issues/307 see https://github.com/w3c/webcrypto/pull/305 see https://github.com/nodejs/node/pull/42816
2022-10-04fix(ext/crypto): ecdh spki key import/export roundtrip (#16152)Filip Skokan
2022-10-03fix(ext/crypto): deriveBits for ECDH not taking length into account (#16128)Aurélien Bertron
Fixes #16047
2022-10-03fix(ext/crypto): fix importKey error when leading zeroes (#16009)李瑞丰
Co-authored-by: Jason <m.jason.liu@outlook.com>
2022-07-23feat(ext/crypto): deriveBits P-384 (#15138)diachedelic
This commit adds P-384 curve support for crypto.subtle.deriveBits. Co-authored-by: James Diacono <james@diacono.com.au>
2022-06-08feat(ext/crypto): export elliptic keys as "raw" (#14764)diachedelic
This commit adds support for the "raw" format when exporting public ECDH/ECDSA keys via the SubtleCrypto.exportKey method.
2022-04-07fix(ext/crypto): check extractable in exportKey (#14222)EduM22
2022-03-11fix(ext/crypto): handle JWK import with "use" (#13912)Filip Skokan
2022-03-09chore(ext/crypto): remove old todos (#13887)Divy Srivastava
2022-03-02feat(ext/crypto): AES-GCM support for 128bit IVs (#13805)Divy Srivastava
2022-02-16fix(ext/crypto): optional additionalData in encrypt/decrypt (#13669)Divy Srivastava
2022-02-08fix(ext/crypto): support EC p256 private key material in exportKey (#13547)Divy Srivastava
Co-authored-by: Luca Casonato <hello@lcas.dev>
2022-01-30fix(ext/crypto): enforce 128bits tagLength for AES-GCM decryption (#13536)Divy Srivastava
2022-01-19feat(ext/crypto): implement pkcs8/JWK for P-384 curves (#13154)Sean Michael Wykes
2022-01-19feat(ext/crypto): implement pkcs8/spki/jwk exportKey for ECDSA and ECDH (#13104)Sean Michael Wykes
2022-01-14feat(ext/crypto): implement AES-GCM decryption (#13319)Divy Srivastava
2022-01-11feat(ext/crypto): implement AES-KW for wrapKey/unwrapKey (#13286)Sean Michael Wykes
2022-01-05feat(ext/crypto): implement AES-GCM encryption (#13119)Divy Srivastava
2022-01-05fix(ext/crypto) - exportKey JWK for AES/HMAC must use base64url (#13264)Sean Michael Wykes
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2022-01-03fix(ext/crypto): use forgiving base64 encoding for JWK (#13240)Sean Michael Wykes
Implements "forgiving" in JWK decode passing suitable config to base64::decode_config
2022-01-03feat(ext/crypto): support AES-CTR encrypt/decrypt (#13177)Sean Michael Wykes
Fixes #13201.
2021-12-16feat(ext/crypto): support importing ECSDA and ECDH (#13088)Sean Michael Wykes
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-12-14feat(ext/crypto): support exporting RSA JWKs (#13081)Luca Casonato
This commit adds support for exporting RSA JWKs in the Web Crypto API. It also does some minor fixes for RSA JWK imports. Co-authored-by: Sean Michael Wykes <sean.wykes@nascent.com.br>
2021-12-10tests: deflake crypto InvalidIntializationVector (#13040)Luca Casonato
Use fixed data that is known to error as the test intends.
2021-12-05feat(ext/crypto): implement unwrapKey (#12539)Divy Srivastava
2021-11-25tests: add 'await' to all invocations of 'assertRejects' (#12893)Bartek Iwańczuk
2021-11-23refactor: remove "unitTest" wrapper from cli/tests/unit (#12750)Bartek Iwańczuk
2021-11-22fix(ext/crypto): don't panic on decryption failure (#12840)Luca Casonato
2021-11-11fix(crypto): handling large key length in HKDF (#12692)upendra1997
2021-10-12feat(ext/crypto): implement deriveKey (#12117)Divy Srivastava
2021-10-11feat(ext/crypto): implement AES-CBC encryption & decryption (#12123)Divy Srivastava
* initial stuff * stuff * merge stuff * cleanup * fmt * length * update lockfile * decrypt * fixy * clippy hello? * hmm * fixs * fix lint * add AesCbcParams * fixes * fixy * lockfile fixy * fix dumb assertions * re run CI * rerun CI * rerun CI
2021-10-08feat(ext/crypto): implement deriveBits for ECDH (p256) (#11873)Divy Srivastava
2021-10-06feat(ext/crypto): export spki for RSA (#12114)Divy Srivastava
2021-10-03fix(ext/crypto): missing Aes key typings (#12307)Divy Srivastava
2021-10-01feat(ext/crypto): implement wrapKey (#12125)Divy Srivastava
2021-10-01fix(ext/crypto): decode id-RSASSA-PSS with default params (#12147)Divy Srivastava
2021-09-23test(cli): align unit test permissions with runtime test permissions (#12189)Casper Beyer
2021-09-22chore: replace calls to assertThrowsAsync with assertRejects (#12176)Casper Beyer
2021-09-16fix(ext/crypto): don't use core.decode for encoding jwk keys (#12088)Divy Srivastava
2021-09-14feat(ext/crypto): import RSA pkcs#8 keys (#11891)Divy Srivastava
2021-09-13feat(ext/crypto): export RSA keys as pkcs#8 (#11880)Divy Srivastava
2021-09-12fix(ext/crypto): add HkdfParams and Pkdf2Params types (#11991)Divy Srivastava