Comments (12)
I'm definitely going to add it once it gets added to the standard. When the winner was first announced, I looked into adding it then but, if I recall correctly, the candidate had a lot of options. I suspect when NIST officially updates the standard that the number of available options will be whittled down.
from jssha.
👍
There's been quite a bit of progress, at least they have a draft now based on Keccak.
http://csrc.nist.gov/groups/ST/hash/index.html
http://keccak.noekeon.org/
from jssha.
I'm hoping by the end of the year that there will be a final standard that I can implement (not terribly excited for four more algorithms but such is life). I really want to avoid shipping draft standards because then, if they change, all your stored hashes are garbage.
from jssha.
A very valid point 😀
from jssha.
It is already here)
from jssha.
Thanks @nazar-pc for the heads-up. It appears that there will be some confusion with SHA-3 variants vs SHA-2 (i.e. there are 224, 256, 384, and 512 for both) so this may justify a v3 release and changing all the names to be like SHA2-256 and SHA3-256.
The next month is going to be hectic for me so this may unfortunately take me some time.
from jssha.
Definitely +1 for the SHA3 stuff. Also +1 for a v3 release with name changes to SHA2-256
e.t.c.
from jssha.
I took a look at the NIST spec and it definitely seems like it's written by math people and not programmers :( That combined with the fact all the implementations that exist are for the pre-NIST spec make this a lot rougher than I was hoping.
from jssha.
It’s been a while… but maybe the following helps for “inspiration”:
https://github.com/search?l=JavaScript&q=sha3&type=Repositories&utf8=%E2%9C%93
from jssha.
It was literally as bad as I thought but I have untested support for non-SHAKE SHA3 in my sha3 branch sha_dev.js Note that the compiled versions aren't there yet and I've only tested the 4 variants with "abc".
I need to tackle SHAKE128 and SHAKE256 which, I hope, won't be too bad. If anyone wants to do a PR for unit tests, I'd be very appreciative.
from jssha.
I got all the unit tests passing for the fixed-length SHA3 variants (including HMAC). Next up are the SHAKEs.
The sha3 branch has the compiled versions as well if you want to play with them.
from jssha.
Closing this as done with commit e191a57
from jssha.
Related Issues (20)
- Method chaining when using `update` HOT 7
- Typescript build error HOT 2
- Types are packaged/exposed incorrectly HOT 2
- Can SM3 be supported? HOT 1
- Feature request: HKDF would be nice HOT 1
- Feature Request: KangarooTwelve and MarsupilamiFourteen HOT 6
- ESM package for jssha HOT 1
- How to generate the SHA3-256 hash? HOT 1
- Encrypt sha256 in c# and make it the same key HOT 4
- 43106983S HOT 1
- setHMACKey with B64 HOT 4
- Error when i create jsSHA object HOT 24
- Performance HOT 12
- Package exports do not define a valid '.' target HOT 6
- Recreate internal state HOT 6
- SCRIPT:1002 Syntax Error HOT 3
- Question : How to reset / clear for another hash? HOT 2
- Installing this package via a <script> tag HOT 2
- Deno support documentation
- Incorrect project website in README.md HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jssha.