BLAKE2 Claims Faster Hashing Than SHA-3, SHA-2 and MD5
hypnosec writes "BLAKE2 has been recently announced as a new alternative to the existing cryptographic hash algorithms MD5 and SHA-2/3. With applicability in cloud storage, software distribution, host-based intrusion detection, digital forensics and revision control tools, BLAKE2 performs a lot faster than the MD5 algorithm on Intel 32- and 64-bit systems. The developers of BLAKE2 insist that even though the algorithm is faster, there are no loose ends when it comes to security. BLAKE2 is an optimized version of the then SHA-3 finalist BLAKE."
He was always good with codes...
Give it, oh, five more versions.
The BLAKE hash function was an also-ran finalist for the NIST Hash function competition ( http://en.wikipedia.org/wiki/NIST_hash_function_competition ). There is not yet a wikipedia page for BLAKE2, but the winner of the NIST competition was Keccak now known simply as SHA-3 since it won the competition.
.
Why would an optimized (optimized for run time speed? optimized for low memory footprint while running? optimized to minimize the likeliness of hash collisions) version of the same BLAKE entrant be more useful? Perhaps an improved algorithm that made it better competition for Keccak would make more sense. I don't know enough math to say completely, and still need to read the details.
If security is important to you, don't use it until its been around for a few years at least. Boy was it annoying replacing all the md5 usages in various codebases... and that's been around for more than "a few years."
'nuff said.
Never email donotemail@WeAreSpammers.com
There are 3 aspects that are important to the security of hashing algorithms.
1) one-directional. You cannot get back to the original from the hash.
2) unique-ness. Fewer different sources with hash to the same result.
3) takes time to make. The quicker it is to create the hash, the quicker it is to brute-force your way through all possible combinations to find a hash that matches.
Most password cracking happens by getting a list of hashed password values through some other securitu exploit, and running as many hashes as you can as quickly as you can to find match.
If they're claiming a fast hash is a good thing, they're missing the point.
Increased speed of hashing is usually a bad thing since passwords stored many times use a one-way hash function. With a faster hashing speed those passwords will be faster to crack. Personally, I'd opt for the highest-enthropy, slowest-speed, and lowest collision ration hashing function.
I know I’m already too late for a few, but fast hashing is good. The only thing you want a slow hash for is a PBKDF—and, to be honest, that is and should be an entirely different construct to a hash, although you can make PBKDFs out of cryptographic hashes.
I’m still not seeing anything that makes this better than Skein, however, which is very fast in software, can perform signature pinned and keyed hashes and rounds (which could be used to make a PBKDF of arbitary strength), and even has a built-in tree hash function, and parallelises well. Skein’s still my favourite SHA-3 finalist by far, and I’m going to be using it in production instead of SHA-3—given FIPS won’t be driving SHA-3 adoption in short order, we won’t get hardware support for some time, and the NSA value hardware speed far more than software speed (as they mostly work with hardware CSMs). Further, I am not entirely convinced the round function underneath the sponge construction is necessarily different enough to survive an attack that would weaken AES.
Keccak’s way, way too slow given Skein and BLAKE are faster and of comparable security (although BLAKE was the second least favourite of my picks), and I suspect that SHA-3 will face slow adoption: there’s nothing obviously wrong with SHA-2, and absolutely no reason to move from SHA-256 to something significantly slower than SHA-256 when other hashes of comparable security exist which have received a similar amount of cryptographic attention and run faster. Keccak’s a poor sell.
As for PBKDFs, perhaps we need to hold another contest entirely for them, although it is also getting to the point that by the time we’d finish such a competition, passwords which the average person can remember have too little entropy to survive even brute force on any practical PBKDF you’d want to run (bearing in mind that if it runs too slow it represents a potential point of DoS), and no asymmetric PBKDF can exist that resists offline attacks.
It might also be worthwhile to hold a contest to define a tweakable block cipher and define more modes based on that, and perhaps that would be an interesting way forward.
Faster is good for plenty of applications of hashes such as checksums on data.
Is this: source_byte_to_encrypt XOR some_random_byte.
The software speed of the SHA algorithms is somewhat moot in the medium terms because over the medium term, crypto primitives (encryption, hashing, RNGs etc) are moving to hardware and moving to an instruction model instead of a device+device_driver model.
So the hardware implementations available to software through instructions will be faster than software implementations and have much better security properties in terms of attack surface and side channels. Modern crypto tends to fall to side channels and implementation error before it falls to crypto attacks and hardware is the best place to solve these problems.
At the recent NIST RBG Workshop http://www.nist.gov/itl/csd/ct/rbg_workshop2012.cfm
I presented a short talk on where Intel is going. http://csrc.nist.gov/groups/ST/rbg_workshop_2012/johnston.pdf
Basically, we've started putting standards based crypto primitives in hardware, on the CPU die, presented through the instruction interface (E.G. AES-NI, RdRand, RdSeed) to provide for more secure crypto on PCs. This is our publicly stated intent going forward. So who cares how many cycles it takes when there's a constant time instruction available that is faster?
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
Hey, Slashdot! Could you fix the formatting? I mean, I zoom pages because 8CPI is too small, but I can't zoom in on it.slashdot.org - you must have specified the font in a way that prevents zoom. This happens with all browsers I've tried (Fx, Sf, IE, Chrome). And it's really annoying
Faster also means faster to attack. Also, there is absolutely no need for faster crypto-hashes at this time, the available ones are quite fast enough.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
According to wikipedia's page on the NISH-sponsored competition - @
http://en.wikipedia.org/wiki/NIST_hash_function_competition
- one of the criteria of the elimination of potential candidates was ...
Security: "We preferred to be conservative about security, and in some cases did not select algorithms with exceptional performance, largely because something about them made us 'nervous,' even though we knew of no clear attack against the full algorithm."
Would the clause above invalidate Blake2??
Muchas Gracias, Señor Edward Snowden !
It occurs to me that, under certain circumstances, encryption might be unnecessary. An eavesdropper expected encrypted text might be skeptical of brazenly published open text. Hiding in plain sight, so to speak.
#1) Was there ever an issue with the lightening fast speed of SHA? I never once ever thought... "gee... this instant SHA function is so slow!" Never.
#2) Is BLAKE just as secure? Only time can tell. I'm sure not going to risk security over "speed hype" of fractions of fractions of a fraction of a millisecond. No way.
i always preferred BLAKES 7 myself ...
Wow how scientific of them |:-|
"When information is power, privacy is freedom" - Jah-Wren Ryel
What about simplicity and performance for hardware implementations? Or is this meant as a software hash? TFA only gives software runtimes.
NIST eliminated certain unconventional algorithms despite them being fast. Not because they were fast. Blake on the other hand is rather standard, so this doesn't apply to it. With unconventional algorithms a sudden break through in analysis is more likely than for algorithms were similar algorithms were studied for decades.
At that time Blake1 had 14 and 10 rounds. The number of rounds was only increased to 16 and 14 for the last round of SHA-3 to increase the security margin, and not because there was any attack that came near 14 and 10 rounds. Blake2 is Blake1 with some minor tweaks and the number of rounds set to 12 and 10.
So Blake2 certainly has a smaller security margin than Blake1, but the margin is still pretty large.