« 2007年01月 | メイン | 2007年03月 »

2007年02月26日

FlashLite: SHA1計算

FlashLiteでgetURLをつかってブラウザを呼び出すときに、URLにMACを追加したくなり、FL1.xで動くものはまだ見たこと無いのでRFC3174のサンプルコードを参考にしてSHA1を計算するプログラムを作ってみました。
FL1.xでは符号なし32bit整数やビット演算の命令がないので、16進数の文字列表現を多倍長演算してます。and,or,xorなどはひと桁ずつ表引きです。ですから、かなり処理が遅くて、手元の携帯電話では"abc"をハッシュするのに6秒くらいかかってしまいました。
あまりに遅いのでSHA1は使わず自前のハッシュ関数を作ることにしましたが、工夫すればSHA1の計算ももう少し速くなりそうな気はします。なにかよいアイデアがあれば教えてください。

ファイルをダウンロード