Let's ignore for a second the question of security (is it collision/pre-image resistant? Dieharder says nothing about this).
As a developer, is the fact that it only uses S-boxes supposed to be beneficial to me somehow? Does this mean it runs faster? Uses less memory? Is it an academic exercise? Why would I use this over a different hash function?
It's not even resistant to added \0, so you can trivially create an arbitrary number of collisions.
It fails all smhasher tests and is pretty slow. There's a reason other hashes do more than just sbox mixing. It's a proof of concept of a bad hash function. But it works fine on javascript, I guess.
As someone who knows a bit about how hash functions work and what properties they are supposed to have when well-designed, but has no knowledge of how to invent them: would you elaborate either directly or with links? What about it is poorly designed? Why? What would make it better?
So think of the sbox as a function. What happens if you apply the function over and over again? The order of a group like that would be small (particularly since the sboxes are random).
Also, the output space of the hash function would be quite restricted as a result of the group order being low.
"""
I went to random.org and generated 32 sets of 256 no-repeat numbers between 0 and 255 inclusive.
"""
We have someone with the practical cryptographic knowledge to design their own cryptographic code, but they grab their random numbers from a website... ;)
11 comments
[ 5.8 ms ] story [ 33.4 ms ] threadhttp://en.ntclbd.com/2020/01/top-10-supergirl-s5-episode-10.... http://www1.tapashpaul.com/2020/01/megashare-supergirl-s5-ep... https://new.rsl.org.bd/2020/01/series-supergirl-s5-episode-1... https://taskins.blogspot.com/2020/01/season-5-supergirl-epis... http://www2.zenskin.com.bd/2020/01/supergirl-s5-episode-10.h... http://en-us.accessit-server.com/2020/01/supergirl-s5-episod... http://vip.fashion-imperial.com/2020/01/supergirl-s5-episode... http://www.tvpromosdb.ga/2020/01/123mov-supergirl-bottle-epi... http://en.ntclbd.com/2020/01/top-10-bottle-episode-10-superg... http://www1.tapashpaul.com/2020/01/megashare-bottle-episode-... https://new.rsl.org.bd/2020/01/series-bottle-episode-10-supe... https://taskins.blogspot.com/2020/01/links-bottle-episode-10... http://www2.zenskin.com.bd/2020/01/the-bottle-episode-10-sup... http://en-us.accessit-server.com/2020/01/the-bottle-episode-... http://vip.fashion-imperial.com/2020/01/the-bottle-episode-1...
As a developer, is the fact that it only uses S-boxes supposed to be beneficial to me somehow? Does this mean it runs faster? Uses less memory? Is it an academic exercise? Why would I use this over a different hash function?
It fails all smhasher tests and is pretty slow. There's a reason other hashes do more than just sbox mixing. It's a proof of concept of a bad hash function. But it works fine on javascript, I guess.
So think of the sbox as a function. What happens if you apply the function over and over again? The order of a group like that would be small (particularly since the sboxes are random).
Also, the output space of the hash function would be quite restricted as a result of the group order being low.
""" I went to random.org and generated 32 sets of 256 no-repeat numbers between 0 and 255 inclusive. """
We have someone with the practical cryptographic knowledge to design their own cryptographic code, but they grab their random numbers from a website... ;)
One suggestion I'd have here would be using "nothing-up-my-sleeve" numbers like pi/e/log2 in hex. [1]
[1] https://en.wikipedia.org/wiki/Nothing-up-my-sleeve_number