Kennen Sie eine Implementierung des Galois-Feldes in C ++? Zumindest Fälle wie GF (2 16 ) und GF (2 32 ) sollten abgedeckt werden. Leistung ist ein Problem, daher sollte die Implementierung einige Überlegungen zur Optimierung ihrer Operationen angestellt haben.
Ich würde eine gemeinsame Computerbibliothek oder eine kleine Bibliothek bevorzugen, die nur dieser Aufgabe gewidmet ist. Ohne diese würde ich auch einen lesbaren Quellcode begrüßen.
Vielleicht können Sie den Code verwenden, der den GCM-Modus in crypto ++ (insbesondere gcm.cpp ). Crypto ++ ist eine freie C ++ - Bibliothek, die viele Kryptoschemen implementiert. Unter ihnen ist GCM, die Galois-Feldarithmetik verwendet.
Gemäß der Lizenz ist die Bibliothek selbst urheberrechtlich geschützt, während die einzelnen Quelldateien öffentlich zugänglich sind.
>Ich fand einen Link zu einer Galois Field Arithmetic Library von Arash Partow im Wikipedia-Artikel über < a href="http://en.wikipedia.org/wiki/Finite_field_arithmetic"> Finite Feldarithmetik .
Auf den ersten Blick sieht der Code fast komplett ohne Kommentare aus, aber strukturiert und daher vermutlich verständlich geschrieben. Leistung scheint jedoch kein wichtiges Designkriterium zu sein: Die Verwendung von Inlinefunktionen ist eher begrenzt, und im Allgemeinen scheint es so, als ob eine direkte Notation der theoretischen Mathematik wichtiger wäre als die Berechnung von Abkürzungen. Ich liste dies hier der Vollständigkeit halber auf, damit Sie einen Blick darauf werfen, sich eine eigene Meinung bilden können und entsprechend abstimmen oder kommentieren können.
Nach algebraischen Zahlen suchend, bin ich auf diese Antwort gestoßen, die Givaro . Und wenn ich mir das anschaue, habe ich festgestellt, dass es auch GF-arithmetische Berechnungen macht. Die Dokumentation ist dünn, aber der Quellen zeigen ziemlich viel Code und Aufwand. Habe noch nicht in Details gegraben, aber ich dachte, ich würde es hier in meine Liste aufnehmen.
Tags und Links c++ finite-field galois-field