- 772 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/23(金) 02:44:12 ]
- Camelliaの教科書的実装より引用。
俺はなんでこれでAESなみの強度が得られるのか疑問だったよ。 #define SBOX1(n) SBOX[(n)] #define SBOX2(n) (Byte)((SBOX[(n)]>>7^SBOX[(n)]<<1)&0xff) #define SBOX3(n) (Byte)((SBOX[(n)]>>1^SBOX[(n)]<<7)&0xff) #define SBOX4(n) SBOX[((n)<<1^(n)>>7)&0xff] 2と3は1の出力値をローテートしてるだけ。4は入力値をローテートしてるだけ。 なんでこれで「AESなみの暗号強度を実現できる」(中の人談)のか >>771 というか、どうやら俺が見つけた最適化方法は既にこのスレで13clk切った連中は見つけてると思うよ。 あとは実装勝負なわけだが、アセンブラ相手にCで勝てる気はしない。 具体的にいうと現時点では>>693よりは遅い。ガチ。 (てかこの人が最速っぽい) ただ俺にとっては今回の挑戦はどこまでもHack the spu-gcc43なのだ。 アセンブラ使わないと優勝できないのはわかってるが、アセンブラを使うのは俺的に負けなのである。 Cのみで挑戦する人向けに特別賞でも用意してくれるなら俺は喜んで表彰台にあがってやるぜ。 (herumi氏も参戦してきたことで、それですら負ける気がしてきた)
|

|