Finale 2008 GPOのストリングス Arco, Pizz の挙動
ずっと、『おっかしいなぁ~』と思っていた事があります。
Finale 2008で、GPOを使ってオケ譜を打ち込みます。
ストリングスで、"Pizz."を使って、"Arco."に戻すと、ストリングスの表現力が無くなって音量のバランスも悪くなります。
なんでだろう?なんでだろう? と、ずっと思っていたのです。
| 固定リンク | コメント (0) | トラックバック (0)
ずっと、『おっかしいなぁ~』と思っていた事があります。
Finale 2008で、GPOを使ってオケ譜を打ち込みます。
ストリングスで、"Pizz."を使って、"Arco."に戻すと、ストリングスの表現力が無くなって音量のバランスも悪くなります。
なんでだろう?なんでだろう? と、ずっと思っていたのです。
| 固定リンク | コメント (0) | トラックバック (0)
色々と改善を施した。
大きいところは、SHA-256 ハッシュ値を計算するクラスを、組み込んだ所だろうか?
それによって、
・初期化ベクトル & 暗号鍵自動生成時 の疑似乱数に、更にSHA-256ハッシュをかました。
擬似乱数"Mersenne Twister"は、暗号用の疑似乱数ではないが、
こうすることにより、暗号用の疑似乱数として使用できる。
・暗号ファイルに、元ファイル(平文)のSHA-256ハッシュ値を保存し、複合時に照合するようにした。
(オプションで、無効化可能)
なるべく、高速化を目指して開発しましたが、
自分が気付かなかっただけで、さらなる高速化の手法があるかもしれません。
さらに高速化する手法をご存じの方は、教えて頂けると嬉しいです。
| 固定リンク | コメント (0) | トラックバック (0)
●ダウンロード
━━━━━━━━━━
intel SSE2命令(SIMD)によるAES暗号処理
●特徴
━━━━━━━━━━
(1) 高速化
─────────
コマンドラインアプリケーションです。AES暗号のCBC(連鎖)モードで処理します。
SSE2(SIMD)命令による並列化により、暗号、複合共に、それなりに高速に処理が行えます。
CBCモードは、従来、復号の並列化は難しいと言われていますが、1ブロックの処理を並列化しているのでそんな事は関係なく、復号も高速化できていると思います。
実測では、"Intel(R) Core(TM)2 Quad CPU Q9450 @ 2.66GHz"において、約610MByteのファイルの暗号/復号共に約1分で処理できました。
(ファイルアクセスの時間、乱数生成の時間、暗号鍵生成の時間を含む。)
| 固定リンク | コメント (0) | トラックバック (0)
AES暗号・復号の、さらなる高速化を試行錯誤してみた。
SSE2命令によるSIMD並列化もおそらく、効果はあるのだろうけど、もっと早くできるのではないか?と。
Intel(R) Celeron(R) M CPU 430 @ 1.73GHz における、8 MByte(500,000ブロック)の暗号・復号の計測結果では、
・C言語で記述 … 暗号:約 1,848 Mclk / 復号:約 2,943 Mclk
・アセンブリ言語で記述 … 暗号:約 1,282 Mclk / 復号:約 1,774 Mclk
※ただし、Core2 Quadでは、暗号化は逆に若干であるが遅くなった。考察は以下に述べる。
と高速化に寄与できた。その産物は、以下のページに公開した。
intel SSE2命令(SIMD)によるAES暗号処理
さて、具体的にやったことは・・・
| 固定リンク | コメント (0) | トラックバック (0)
ちゃんと、解説ページを作ってみた。
intel SSE2命令(SIMD)によるAES暗号処理
↑
トップページ的なもの。
技術資料
↑
宇宙の言葉、もう人間が話す言葉では無いような単語が飛び交っているページ。
| 固定リンク | コメント (0) | トラックバック (0)
最近のコメント