sha256cs0x00000701.zip ( Filesize: 38,902 )
このプロジェクトがスタートした経緯を説明します。
 趣味で FIPS180-2 をMicrosoft Visual Basic で記述していた時、SHA224 アルゴリズムの発表が行われました。
 私はそのドキュメントを見るなり、作る側、使う側に無意味な頭を使わせ 224 bit 長という、なんとも使いにくいサイズ長に当時、愕然としました。
 素人の私が間違いなく使わないと確信するほどでした。
 ちなみにその当時、私は SHA256 を使用することを選択しました。
 SHA256 アルゴリズムを考え付く頭の良い方々が、なぜこのような変更を用いたのか、私には長い間、疑問でした...
 時は流れ、私は、SHA224 の事は忘れ趣味に没頭する毎日を送っていました。
 そんななか、大きな配列に bit shift を与えるというコードを書いている最中に、このアルゴリズムを思いつきました。
 それは、SHA256 の final関数にある Padding the Message 部分を取り除き 最後に得たハッシュ値にTotal Character Length (counter) で left bit modulo (左モジュロ) させるという方法です。
 最後の最後だけにこの演算が入るだけであれば SHA256 と比べて処理速度はそれほど気にならないと仮定でき、ビットレベルでのシフトなので本来の SHA256 の安全性を保つことが出来ると推測できます。
 ※注意、このアルゴリズムは、アメリカ合衆国の国立標準技術研究所 (National Institute of Standards and Technology, NIST)で定められている SHA256 アルゴリズムを母体とし二次創作されています。
| ソフト名: | SECURE HASH STANDARD 256 COUNTER SHIFT (sha256cs) | 
|---|---|
| 動作OS: | Windows Vista/XP | 
| 機種: | IBM-PC | 
| 種類: | フリーソフト | 
| 作者: | Takashi Tsubaki |