Live data from Hacker News

Representing SHA-256 Hashes as Avatars

francoisbest.com

21–30 of 75 posts

Re: Representing SHA-256 Hashes as Avatars

#22
post #15

Earlier quoted context omitted.

The primary issue in colorblindness is: 1) One confuses two types of colors as the same one (e.g. red-green, blue-yellow, etc. colorblind) or 2) Colors that are close together appear to be the identical (Like the case that I saw, half of the row looked exactly the same to me, the the entire row looked the same until I looked close). Perhaps a mix of shapes and colors would make it more obvious? Or constrasting the bo…

Thanks for your feedback. Are the color-blindness simulators in Firefox devtools good enough to reproduce your experience? Or do you have tools that you'd recommend?

You're welcome! I am happy to help.

> Are the color-blindness simulators in Firefox devtools good enough to reproduce your experience?

I have honestly not used them, sorry.... (I don't make GUIs).

I am looking at the docuymentation, and I am a bit disappointed though. By far the most common issue is contrast loss like they say: https://developer.mozilla.org/en-US/docs/Tools/Accessibility...

The condition to not see one color completely is incredibly rare, and not seeing any colors even more so. By in large the issue is constrast loss.

Re: Representing SHA-256 Hashes as Avatars

#23

The problem with hash avatars in general is that people want to use them for identity verification -- and humans are wired to do so automatically -- but technologically, they cannot provide this. The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. Which means that there will invariably be "collisions:" two avatars that are not…

> The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between.

That sounds intriguing to me. Are you aware of any research into this?

Re: Representing SHA-256 Hashes as Avatars

#24
post #23

The problem with hash avatars in general is that people want to use them for identity verification -- and humans are wired to do so automatically -- but technologically, they cannot provide this. The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. Which means that there will invariably be "collisions:" two avatars that are not…

> The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. That sounds intriguing to me. Are you aware of any research into this?

To be honest, I have no idea how many distinct objects humans can distinguish between, but I am 99% confident that it is fewer than 2^128, much less 2^256.

I suppose it's a somewhat nuanced question, though. For example, if I were shown every avatar in sequence, I'm quite sure I would always notice the "diff" between two consecutive avatars. But the bar that I have in mind is much, much higher: given a sequence of avatars, can I recognize my friend's avatar with 100% accuracy? Given that we can't even do this within the set of <8 billion human faces (we occasionally accost a stranger as though they were a friend), I have to conclude that doing so within a set of 2^256 abstract shapes is entirely hopeless.

Re: Representing SHA-256 Hashes as Avatars

#25
post #7
post #4

As a warning, this would not be good for colorblind people (such as myself). The "Hello, Hacker News!" Hash's middle ring has half it's ring that looks identical to me, and unless I looked carefully, that entire ring looked the same to me.

What would you suggest as a solution ? I considered swapping Hue for Lightness in order to increase contrast changes. Would you be interested in testing out some variants ?

Given the nature of what you're trying to do, arguably, there is very little for you to do. As you've already observed, "normal" human visual acuity is already wildly incapable of perceiving 2^256 different possibilities as distinct anyhow. If normal humans are 200 bits short of the desired 256 (and I'm still feeling generous claiming we could distinguish 2^56 different images of this type, but it's a nice round number to make my point here), color blind people are 203-ish bits short or so. It's not that materially different.

Normally when discussing being color-blind sensitive we're discussing not embedding 2 or 3 bits of information into colors that can't be distinguished by those who are color blind, but in this case, we're trying to jam massively more bits than anyone can handle into an image, so it's not clear that much is called for other than tweaking where the bits get lost a bit.

Or, to put it another way, relative to the desired goal, we're all already massively "colorblind". Those who are what we humans would call colorblind are, in relative terms, hardly at a disadvantage at all for once, because we're all so many orders of magnitude short of the mark.

Re: Representing SHA-256 Hashes as Avatars

#26
Despite the issue where it would be trivial to brute force similar looking but not identical 'avatars', I think this still has a few good uses for non-identification.

1. Creating at least some default avatar. Not to be used to verify identity but just somewhat better than having a very limited set of default images. Having rate limits on account creation would prevent most brute force methods. 2. Avatar suitable for partial-identification for very small populations. Imagine a matrix/Element room that as #2 sounds pretty interesting. It could be expanded by making parts of the image/avatar dependent on some other input other than the user ID like the user's role in the chat group. Another segment/ring could something more short lived and relative like just identifying users in recent chat messages.

Re: Representing SHA-256 Hashes as Avatars

#27
post #23

The problem with hash avatars in general is that people want to use them for identity verification -- and humans are wired to do so automatically -- but technologically, they cannot provide this. The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. Which means that there will invariably be "collisions:" two avatars that are not…

> The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. That sounds intriguing to me. Are you aware of any research into this?

https://www.researchgate.net/publication/236023905_Color_dif...

Re: Representing SHA-256 Hashes as Avatars

#28
post #23

The problem with hash avatars in general is that people want to use them for identity verification -- and humans are wired to do so automatically -- but technologically, they cannot provide this. The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. Which means that there will invariably be "collisions:" two avatars that are not…

> The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. That sounds intriguing to me. Are you aware of any research into this?

It's a simple order of magnitude calculation. 2^256 is greater than one billion to the eighth power, times 100,000. There are probably several possible ways you could estimate how many different objects a person could distinguish between, but I think it's unlikely you'd come up with even a single billion.

Re: Representing SHA-256 Hashes as Avatars

#29

The problem with hash avatars in general is that people want to use them for identity verification -- and humans are wired to do so automatically -- but technologically, they cannot provide this. The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. Which means that there will invariably be "collisions:" two avatars that are not…

There might not be 2^256 distinguishable objects but maybe someone can come up with 2^16 distinguishable objects and just string 16 of them together. If there is one character off in a string of 40 hexadecimal characters it is hard to notice but that would be easier to detect in a set of 16 symbols.

Re: Representing SHA-256 Hashes as Avatars

#30
post #23

Earlier quoted context omitted.

> The space of possible avatars (2^256, in this case) is far, far larger than the number of distinct objects that humans can distinguish between. That sounds intriguing to me. Are you aware of any research into this?

To be honest, I have no idea how many distinct objects humans can distinguish between, but I am 99% confident that it is fewer than 2^128, much less 2^256. I suppose it's a somewhat nuanced question, though. For example, if I were shown every avatar in sequence, I'm quite sure I would always notice the "diff" between two consecutive avatars. But the bar that I have in mind is much, much higher: given a sequence of av…

It is definitely a nuanced question. The definition of object is surely up for debate as well. A silly example: if one were to define an object as a string of 64 hex characters, even non-literate people could distinguish between any two distinct objects.

echo "hello" | sha256sum

>> 5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03

echo "world" | sha256sum

>> e258d248fda94c63753607f7c4494ee0fcbe92f1a76bfdac795c9d84101eb317

But were I to briefly glance at a computer screen, I'd probably confuse these next two:

e258d248fda94c63753607f7c4494ee0fcbe92f1a76bfdac795c9d84101eb317

e258d248fda94c63753607f7c4494ee0fcbe92f1a76bfaac795c9d84101eb317

Post reply on HN