base1024 encoding using Unicode emojis

Martin J. Dürst via Unicode unicode at
Mon Mar 12 04:11:09 CDT 2018

On 2018/03/12 02:07, Keith Turner via Unicode wrote:

> Yeah, it certainly results in larger utf8 strings.  For example a sha256
> hash is 112 bytes when encoded as Ecoji utf8.  For base64, sha256 is 44
> bytes.
> Even though its more bytes, Ecoji has less visible characters than base64
> for sha256.  Ecoji has 28 visible characters and base64 44.  So that makes
> me wonder which one would be quicker for a human to verify on average?
> Also, which one is more accurate for a human to verify? I have no idea. For
> accuracy, it seems like a lot of thought was put into the visual uniqueness
> of Unicode emojis.

Using emoji to help people verify security information is an interesting 
idea. What I'm afraid is that even if emoji are designed with 
distinctiveness in mind, some people may have difficulties distinguish 
all the various face variants. Also, while emoji get designed so that 
in-font distinguishability is high, the same may not apply across fonts 
(e.g. if one has to compare a printed version with a version on-screen).

Regards,   Martin.

>> 2018-03-11 6:04 GMT+01:00 Keith Turner via Unicode <unicode at>:
>>> I created a neat little project based on Unicode emojis.  I thought
>>> some on this list may find it interesting.  It encodes arbitrary data
>>> as 1024 emojis.  The project is called Ecoji and is hosted on github
>>> at
>>> Below are some examples of encoding and decoding.
>>> $ echo 'Unicode emojis are awesome!!' | ecoji
>>> ������������������������������������������������
>>> $ echo ������������������������������������������������   | ecoji -d
>>> Unicode emojis are awesome!!
>>> I would eventually like to create a base4096 version when there are more
>>> emojis.

More information about the Unicode mailing list