Pitfalls: Base64 vs. Base58 in Depth (Erlang/TypeScript)

8 months ago
13

Aegora: https://aegora.jp/
Aegora Testnet: https://testnet.aegora.jp/
Grant: https://forum.aeternity.com/t/active-application-vanillae/10638/3
Repo: https://github.com/aeternity/Vanillae/
baseN article: https://zxq9.com/archives/2688
Install superhero wallet: https://wallet.superhero.com/

Base64 Erlang: https://github.com/aeternity/Vanillae/blob/829dd2930ff20ea0473cf2ad562e0a1c2aba0411/utils/vw/src/vb64.erl
Base58 Erlang: https://github.com/aeternity/Vanillae/blob/829dd2930ff20ea0473cf2ad562e0a1c2aba0411/utils/vw/src/vb58.erl

Base64 TypeScript: https://github.com/aeternity/Vanillae/blob/829dd2930ff20ea0473cf2ad562e0a1c2aba0411/bindings/typescript/src/b64.ts
Base58 TypeScript: https://github.com/aeternity/Vanillae/blob/829dd2930ff20ea0473cf2ad562e0a1c2aba0411/bindings/typescript/src/b58.ts

00:00:00 Introduction, the big picture, Aegora, what the Vanillae Project is
00:08:00 Today's topic: base N encoding, what and why
00:14:00 base 64 high-level overview
00:25:30 base 58 high-level overview
00:45:30 base 64 Erlang: encode
00:53:00 base 64 Erlang: decode
01:06:30 base 58 Erlang: encode
01:16:30 base 58: quotient-remainder algorithm
01:40:00 base 58 Erlang: decode
01:49:00 TypeScript cringe

Loading comments...