2023-05-24
現在主流の公開鍵暗号技術、楕円曲線暗号の公開鍵や秘密鍵の長さは256bit、32byte。16進法表記で64文字。10進法にすると、78桁、78文字と長いです。

せっかくならアルファベットと数字を使った32進法表記にすると、52文字になる。 数字10文字とアルファベット26文字で36進法にしないのは、0とO、1とI、5とS、8とB、紛らわしいアルファベットを使わないようにしているため。小文字を使わないため、読み上げ時に大文字のA、小文字のBなどと冗長になりません。

ただ、区切りがないと読み上げづらいので、アンダーバーで4桁ずつ区切ることにしたことで、16進法と同じ64文字となりました。


「code4fukui/Base32: Base32 uppercase encoding for JavaScript, based (loosely) on Crockford's Base32」

オープンソース「agnoster/base32-js」をベースにサクッとつくるつもりでしたが、バイナリ未対応だったのでコンセプトとドキュメント以外をリファクタリング。


「bitutil - Code for FUKUI」

必要になった、bit単位で読み書きできる BitWriter.js と BitReader.js を作成。柔軟なビット操作が可能になったので、今回のようなビット操作ももう怖くない!もちろん、ブラウザとDeno、ともに使えるESモジュールです。

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS