多項式基底
From Wikipedia, the free encyclopedia
多項式基底を用いた加法は、p を法とする加法と同程度簡単なものである。例えば、GF(3m) においては、
が成立する。GF(2m) においては、2 を法とする加法と減法が同じものであるため、加法は特に簡単となる。さらに、この作用は基本的なXOR論理ゲートを用いるハードウェアにおいて実行することが出来る。
乗法
多項式基底における二つの元の乗法は、通常の乗法のやり方と同様に行うことが出来る。しかし、特にハードウェアにおいて、乗法の計算のスピードを上げる多くの方法が存在する。GF(pm) 内の二つの元を掛け合わせる直接的な方法を使う際は、GF(p) における最大 m2 回の乗算と、GF(p) における最大 m2 − m の加算が必要となる。
それらの値を減らすためのいくつかの方法として、以下のようなものが挙げられる:
- ルックアップテーブル — 結果を事前にまとめておいたテーブルで、主に小さい体において用いられる。そうでない場合、実行するにはテーブルが大きくなり過ぎてしまう。
- カラツバ法
- 線形帰還シフトレジスタに基づく乗算
- 部分体計算
- パイプライン乗算器
- シストリック乗算器
自乗
逆
元の逆は、以下に記すような多くの方法によって得ることが出来る:
- ルックアップテーブル — 繰り返しになるが、小さな体でのみ有効で、そうでない場合には実行するにはテーブルが大きくなり過ぎてしまう。
- 部分体の逆 — 方程式系を部分体において解くことで可能となる。
- 自乗と乗算の繰り返し — 例えば、GF(2m) においては A−1 = A2m − 2 となる。
- 拡張ユークリッドの互除法
- 伊東-辻井のアルゴリズム