esquinas/ease64

Irregular encoding leads to lower capacity than regular base64

Opened this issue · 4 comments

every character carries their bits like 1-3-3 (ASCII) or 2-3-3 (Unicode).
Your system does not distribute these bits equally, leading to issues.

2-3-3 (one character)
<5> <3> 
2-3-3 2-3-3 (two characters)
<5> <5> <6>

Average capacity: 3 bytes per 2 bytes
Regular Base64: 4 bytes per 3 bytes

Hi, thanks for checking the project.
Honestly I don't understand what you mean.
Could you explain this further?

Incidentally, about the capacity of the encoding, this was never meant to beat Base64 in terms of capacity. It only purpose was to be able to be encoded/decoded by humans for learning purposes or similar.

@esquinas I am filing an operation, for base64 wikipedia has a good demonstration on their capacity.
https://en.wikipedia.org/wiki/Base64

I think there is a misunderstanding here. Ease64 is not an implementation of Base64. It is not trying to compete with Base64 in terms of capacity or efficiency.
Ease64 does not uses the first 2 bits of the 8 bits in a byte but does that on purpose. It is not a bug.
What I don't understand is what you mean by "irregular". It is just a different way of encoding. Have you read the Readme document?

@esquinas When I say "irregular", I meant the 5-5-6 bit distribution to the three new characters.