単位ゲートあたりの処理が世界最速の共通鍵ブロック暗号「CLEFIA」 20
ストーリー by kazekiri
ハードにはいいのか 部門より
ハードにはいいのか 部門より
jonykatz 曰く、
ソニーが、ハードウエア実装時に単位ゲートあたりの処理速度が世界最高の共通鍵ブロック暗号アルゴズム「CLEFIA」を開発したらしい。0.09μm CMOS標準セルライブラリを使い,6.1キロ・ゲートの実装で最大1.42Gbit/sのスループットを出せるとのこと。ブロック長128bit、鍵長128/192/256bitの暗号で、Feistel構造を採用。内部関数の構成法を工夫することで少ない計算量で済む ようになっており、大きなフット・プリントを使えない場合やCPUの処理能力が低い場合に威力を発揮するようだ。
魅力的・・・なのか? (スコア:3, 興味深い)
処理速度や実装面積も大事ですが,
・解析が困難であるか
・消費電力が小さいか
あたりも気になるところです.
参考になるかはわかりませんが,
以前AESをVHDLで実装したところ,軽く数万ゲートになりました.(しかも,遅い)
強度が同じぐらいであるとすれば,非常に魅力的な暗号だと思います.
Re:魅力的・・・なのか? (スコア:2, すばらしい洞察)
Re:魅力的・・・なのか? (スコア:4, 興味深い)
>厳しい制限がある組み込み用途向けの技術じゃないんでしょうか?
ヒント:アナグラム
Camelliaはどうなってる? (スコア:2, 興味深い)
# でもテストプログラムではAESなどに比べてトロいんですよ・・・
ソニーにはソニーの戦略があるのでしょうけど、非標準でクローズな技術でも勝機ありってことなんでしょうか。
Re:Camelliaはどうなってる? (スコア:1, 興味深い)
ちょっと最近そのへんのネタで気になったもの。http://www.ipa.go.jp/security/rfc/RFC3657JA.html [ipa.go.jp]の連絡先のとこ、ちょい見てみよう
サイドチャネル攻撃は? (スコア:2, 参考になる)
5MHz程度。このくらいの速度ならカードでも処理できそう。
係数テーブルないのかな?昔ハード化を検討したときに問題になったのは、係数のテーブル。
並列度が高いとテーブルがあっちこっちから同時にアクセスされてしまう。けど普通のROMは
同時アクセスができない。すると同じ内容のROMを複数置くか、全部ゲートに展開しないとい
けない。特別な状況では係数テーブルを入れ換えたいと思うのだけどどうやるのか....
それより関心あるのは、サイドチャネル脆弱性。そもそも共通鍵にはそういった脆弱性があるのか
どうか知らないのですが。
こっち [wikipedia.org]だと危険性の示唆
こっち [cqpub.co.jp]だと実際の解析状況。
Re:サイドチャネル攻撃は? (スコア:1)
この回避はASICの実装次第でマスクできる場合もあるしそのものの脆弱性とはいえないかもしれないですね
それより の文献が発見できません。。。
Re:サイドチャネル攻撃は? (スコア:0)
完了する場合の話ですよね。
DESをソフトウェアで実装したことがありますが、
ビット単位の計算が多くて、サイクル数が
やたら増えてしまった覚えがあります。
Re:サイドチャネル攻撃は? (スコア:1)
少し信用できないのですが....
今回は専用ハードなんで、( A xor B ) >> 12 | ( not A xor B ) << 12 みたいな計算を
1 clock で実行することもできます。計算が複雑になれば当然 clock cycle は長くなり
ます。そうはいっても90nmプロセスならば、上の式は 500MHz くらいで処理できると思い
ます。
bitの順序を複雑に入れ換える処理は汎用CPUでは面倒ですが、専用ハードでは簡単
です。ハード設計言語には{a[0],a[1],a[2]}={b[2],c[1],d[0]};みたいな記述方法があ
るくらいです。256bit をbit単位で反転するような処理でも300MHz 1 cycle で実行
できるでしょう。反転しかしないなら800MHzでも処理できるかも。
またregister もAx, Bx, Cx, Dx の4つとかだけではなく何百と持て、それぞの長さを
処理に合わせて設計できるので、パイプライン処理もできるはずです。
開発したとはいうけれど (スコア:1)
なので、実際に(ソニー以外で)採用されるには様々な暗号学研究者による厳密な検証をパスしないとダメでしょう。
よく知りませんが、来年あたりの暗号学カンファレンスとかでボロクソに叩かれて再起不能にならないかが心配です。
ただし (スコア:0)
いや、むしろ (スコア:0)
日経BP
Re:いや、むしろ (スコア:0, 余計なもの)
ソースはソニー [sony.co.jp]
軽い方がいいの? (スコア:0)
#アルゴズム?
Re:軽い方がいいの? (スコア:1)
数ビットの差でしかないでしょう。
鍵長128/192/256bitを選べるのであれば、復号コストの軽さが暗号の破られやすさに
直結するとは言えないと思います。(圧倒的に鍵長のほうで左右される)
(もちろん、ブルートフォース以外で破れるような穴があるなら話は別でしょうが)
解読速度も世界最速 (スコア:0)
ハードで安く簡単にブルートフォース用ツールが出来たりするわけ、と。
は、ネタとして
たぶん前提として、ブルートフォース以外の効率的な
解読法が存在しない、もしくは無いだろう、という暗号法である
というのはあるんでしょうね。
その上で、順方向処理の速度を上げれば鍵長でその強度を
コントロールできる、と。
Re:解読速度も世界最速 (スコア:1, 興味深い)
単位ゲートあたりの数字も技術的な意味は大きいのでしょうが、実用的には、強度とスループットがそろって初めて意味のある数字になるってことか。鍵長が長くなるに従って「総当たり時間/正規読解時間」が単純増加する場合でも、実用範囲での値がどうなっているかはまた別の問題と。
#なんか当たり前のことを面倒くさく言っただけのような。
typo (スコア:0)
それだけなのでAC
Re:この暗号が破られるのも時間の問題 (スコア:0)