basE91 vs Base64 簡易ベンチマーク

1 min read

Version

詳しくは 'base64 --help' を実行して下さい。
alleycat:[haturatu]:~$ base64 --version
base64 (GNU coreutils) 9.5
Copyright (C) 2024 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

作者 Simon Josefsson。
alleycat:[haturatu]:~$ base91 --version
base91 0.6.0
Copyright (c) 2000-2006 Joachim Henke

Benchmark

超簡易的なもの

alleycat:[haturatu]:~$ time for i in {1..10000}; do echo "test" | base91 ; done > 91

real    0m11.381s
user    0m10.460s
sys     0m5.118s
alleycat:[haturatu]:~$ time for i in {1..10000}; do echo "test" | base64 ; done > 64

real    0m11.985s
user    0m10.787s
sys     0m5.219s
alleycat:[haturatu]:~$ time for i in {1..10000}; do echo "test" | base91 ; done > 91

real    0m11.569s
user    0m10.640s
sys     0m5.071s
alleycat:[haturatu]:~$ time for i in {1..10000}; do echo "test" | base64 ; done > 64

real    0m11.864s
user    0m10.725s
sys     0m5.189s

経緯

メーリングリストアーカイブに以下のようなものを見つけたので
Bug#706078: ITP: base91 -- base91 encoder/decoder

It amounts at most to 23% (versus 33% for base64) and can range down to 14%, which typically occurs on 0-byte blocks. This makes basE91 very useful for transferring larger files over binary insecure connections like e-mail or terminal lines.

検証・・・になっているかな・・・。

みんな大好きなおまけコーナー。
割とブラウザでシンプルにbasE91が生成出来るものがなかった。。。ので basE91 Encode/Decode

PGP --- Contact --- Machines