はじめに
少し前、ふざけ半分で作ったBase8192というエンコーディングがあります。こんな感じです。
入力: What is base8192?
Base8192: 卶晡啂幩唲幢吗慥冃弹儣洀等
Base64: V2hhdCBpcyBiYXNlODE5Mj8=
Base8192は漢字を利用することで、Base64と比較して文字数(≠バイト数)を抑えることができます。上記の例では、Base64が24文字必要なのに対し、Base8192はわずか13文字で済みます。
仕組みに興味がある方は、GitHubのリポジトリのREADMEに詳細が書いてあります。
https://github.com/karintomania/Base8192
こいつをとりあえず実装して期待通りに動くことは確認したのですが、ふと思いました。ユーザーが入力したテキスト以外もエンコードしてみたいと。