C++でのガロア体演算の実装を知っていますか? 少なくとも GF(2 16 ) と GF(2 32 ) のようなケースをカバーする必要があります。パフォーマンスが懸念されるため、実装では操作の最適化を検討する必要があります。
一般的な計算ライブラリか、このタスク専用の小さなライブラリの方がいいと思います。これらが不足しているため、読み取り可能なソース コードも歓迎します。
C++でのガロア体演算の実装を知っていますか? 少なくとも GF(2 16 ) と GF(2 32 ) のようなケースをカバーする必要があります。パフォーマンスが懸念されるため、実装では操作の最適化を検討する必要があります。
一般的な計算ライブラリか、このタスク専用の小さなライブラリの方がいいと思います。これらが不足しているため、読み取り可能なソース コードも歓迎します。
有限体演算に関するウィキペディアの記事で、Arash Partow によるガロア体演算ライブラリへのリンクを見つけました。
一見すると、コードにはコメントがほとんどないように見えますが、構造化されているため、おそらく理解しやすい方法で記述されています。ただし、パフォーマンスは重要な設計基準ではないようです。インライン化された関数の使用はかなり制限されており、一般的に、計算上のショートカットを展開するよりも、理論的な数学の直接表記の方が重要であると見なされているようです。完全を期すためにここにこれをリストします。これにより、見て、自分の意見を形成し、それに応じて投票またはコメントできます。
おそらく、crypto ++でGCMモードを実装するコード(特にgcm.cpp)を使用できます。Crypto ++は、多くの暗号化スキームを実装する無料のC++ライブラリです。その中には、ガロア体演算を使用するGCMがあります。
ライセンスによると、ライブラリ自体は著作権で保護されていますが、個々のソースファイルはパブリックドメインです。
NTL というライブラリがあります: http://www.shoup.net/ntl/。そのソースコードは完全に「読める」わけではありませんが。