kyberJCE
wycheproof
kyberJCE | wycheproof | |
---|---|---|
1 | 12 | |
45 | 2,587 | |
- | - | |
4.1 | 0.0 | |
4 months ago | over 4 years ago | |
Java | Java | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
kyberJCE
wycheproof
- Google's Project Wycheproof
- SHA-3 Buffer Overflow - CVE-2022-37454
-
When To Roll Your Own X
I failed to notice the relevant Wycheproof test vectors because they weren’t listed on the front page (they still aren’t).
-
Automated Tests Are the Safety Net that Saves You
When I wrote the Monocypher cryptographic library, I didn't really know how to write serous tests. With some help, I eventually got something pretty good, with 100% code and path coverage, that test every possible input lengths as well as obscure corner cases I stole from various places (most notably Whycheproof).
- Project Wycheproof
- Psychic Signatures in Java
- What are some real-world security issues in cryptography?
-
How to verify ECC double and add algorithm implementation
"GitHub - google/wycheproof: Project Wycheproof tests crypto libraries against known attacks." https://github.com/google/wycheproof
-
An Illustrated Guide to Elliptic Curve Cryptography Validation
Thankfully, Curve25519 is much easier to implement, with much fewer death traps than short Weierstraß curves. For X25519, just follow DJB’s advice from ECC Hacks https://www.youtube.com/watch?v=vEt-D8xZmgE and make sure your arithmetic is up to snuff (constant time arithmetic is actually the hard part, by default I strongly suggest you steal it from the ref10 implementation).
For EdDSA, just follow the relevant explicit formulas, avoid clever (but dangerous) tricks such as converting to Montgomery form and back, and test with Wycheproof’s Ed25519 test vectors. https://github.com/google/wycheproof/blob/master/testvectors...
-
Is AES 256-bit good enough for files.
Have you tested all your applicable components against the Wycheproof test vectors and passed?
What are some alternatives?
core - JCrypTool Core Plug-ins
ejbca-ce - EJBCA® – Open-source public key infrastructure (PKI) and certificate authority (CA) software.
bruce - Java cryptography made easy.
cryptofuzz - Fuzzing cryptographic libraries. Magic bug printer go brrrr.
password4j - Java cryptographic library that supports Argon2, bcrypt, scrypt and PBKDF2 aimed to protect passwords in databases. Easy to use by design, highly customizable, secure and portable. All the implementations follow the standards and have been reviewed to perform better in the JVM.
Monocypher - An easy to use, easy to deploy crypto library
kyber-k2so - Go implementation of the Kyber (version 3) post-quantum IND-CCA2 KEM.
jdk17u - https://wiki.openjdk.org/display/JDKUpdates/JDK+17u
noise_spec - Noise Specification
writeups - CTF writeups from The Flat Network Society
adoptium