stuartpb / hashblot

A simple method for abstract hash visualization
https://hashblot.com
14 stars 3 forks source link

Having multiple ink blots to improve entropy #8

Open DonaldTsang opened 6 years ago

DonaldTsang commented 6 years ago

Is it possible to split the hash into multiple parts and distribute it to different inkblots (possibly a 2x4 or 3x3 grid for 8 blots)?
Also is it possible to overlay one inkblot on top of another with different colored layers?

DonaldTsang commented 6 years ago

Other ways of improvements include having polygons like http://yuvadm.github.io/polyhash/ or colored checkered background like https://github.com/solosodium/colorful-hash ?

stuartpb commented 6 years ago

Funny you should mention that: I actually created hashsplat a couple months ago, which works exactly like you're describing - it takes the bits of a SHA256 sum (or any other 64-byte hash) and overlays them as three variable-color hashblots (the first 60 bytes defining the blot paths, then the remaining 4 defining the colors).

That page currently just shows what hashsplats would look like using random data, because I made it to test the overall aesthetic of the algorithm's output for 256-bit hashes in general - I know what I want the actual SHA2 UI to look like, I just haven't gotten around to throwing it in yet (I think I got sidetracked somewhere around the point where I was looking at what an appropriate factorization for an ES module in 2018 should be).

Once I hook up the demo plumbing on hashsplat.com, I've been planning on publishing a writeup about all this crypto-adjacent stuff I've been working on (Hashblot, Hashsplat, the Gross Simplification algorithm from surpass, NilPass, Alphabinary, and Mixalog, an idea I've yet to write about anywhere, even in barfspace) for a while, and I think what I really need to get that writeup out the door is a producer, if anybody might be interested in taking that on.

DonaldTsang commented 6 years ago

@stuartpb what about containing all 256/384/512 bits of SHA2/BLAKE(2)/SHA3 hashes? Or even 8~1024 bit hashes for Skein or KangarooTwelve or SHAKE or BLAKE(2)-XOF? Perhaps the inkblots can have less overlaps and less entropy, such that even near-miss hashes can be spotted? And by compensation, have multiple separate inkblots with pixel backgrounds?

DonaldTsang commented 6 years ago
DonaldTsang commented 5 years ago

Also adding https://github.com/ea7ababe/identicon and https://github.com/dakridge/identicon to the mix would be a good idea for circular variations

DonaldTsang commented 5 years ago

@stuartpb I made a bigger list of hash-based imaging, if you can comment on each of them that would be great