Camellia実装記 part5

実は、CamelliaのCBC CFB OFB版を作っていたのだが、どうがんばってもCFBとOFBを上手く複合化できない。


何故だ!と思った所、
Camelliaの暗号はConvert形式ではなかったのだ。
私がここで勝手にConvert形式と呼んでいるが、Encrypt Decrypt処理が同じということだ。欲に言うxor処理なんかをイメージしていただくと良い。
ストリーム暗号のarc4なんかがそれだ。


なので、CFBとOFBの処理の場合はCamelliaのEncrypt処理で複合化(データを暗号化していない状態に戻す)しなければならないので、これだとCamelliaの真価は発揮できていないのかもしれないと感じた。


ちょっとCamelliaの公式記事を読んだのだが、確かにCFBとOFBに関する記述は無かった。
イレギュラーな方法を使って私のdkcCamellia.cの実装ではCFBとOFBをサポートしているがやはりCBCモードを使ってほしいと感じた。