Zitat:
Da du an diesem Projekt schon 3 Jahre sitzt, nehme ich an, dass du mir kein bisschen von deinem Code abzugeben bereit bist, richtig? .
Tja, was ich machen kann ist das ich dir die Library zusende. Allerdings nicht vollständig in Sourcen, und ohne das Recht sie in kommerziellen Anwendungen benutzen zu dürfen.
Es gibt eine ganze Reihe schon fertiger Bibliotheken, allerdings nur wenige für Delphi:
- HIT, Huge Integer Tools von Marcel Martin war die beste Shareware in diesem Bereich für Delphi. Allerdings hat Marcel sein HIT vom Markt gezogen, da er zu viel Ärger mit Amerikanischen Firmen bekommen hat die behaupteten er habe Patente verletzt !
- FGInt, Fast Gigantic Integers, liegt als Source vor mit beschränkter Freewarelizens. Im Gegensatz zum Namen ist FGInt eher ineffizient und umständlich.
- IInteger, meine Library dürfte die meines Wissens nach die effizienteste Delphi Bibliothek sein. Nicht nur effizient in der Performance sondern auch in der Benutzbarkeit und dem Funktionsumfang.
- StreamSec II, von Hendrick Hellström, ist ein kommerzielles und preiswertes Produkt eines Schweden. Hendrick hat viele meiner Algorithem aus dem Delphi Encryption Compendium übernommen und sie zu einem eindrucksvollen Stück Software ausgebaut. In dieser Library findet man bestimmt auch das Diffie Hellman Verfahren. Das einzigartige an StreamSec II ist die absolute Unterstützung von Standardverfahren, wie ASN.1, PKCS usw. Allerdings sind seine Implementationen der math. Verfahren durchschnittlich 10-50 mal langsammer als meine. Ok, FGInt ist in vielen Operationen über 500 mal ineffizienter.
Hendrick selber ist ein sehr guter Ansprechpartner in Sachen Kryptographie. Marcel, ein Franzose, wiederum interessiert sich hauptsächlich für mathematsiche Probleme und ist ein hervoragender Mathematiker (ich kenne keinen besseren der auch programmieren kann). Die Leute von FGInt sind experimentelle Studenten.
- TurboPower, hat noch einige OpenSource Implementationen. Deren Qualität scheint aber nicht besonders zu sein. Ich habe sie nur überflogen.
Nur Marcel's und mein Primzahlerzeugungs Algorithmus benutzen den modernen BSWP Test. In fact Marcel hat bei meiner Umsetzung entscheidenden Einfluß gehabt.
Auf C Schiene gibts die meisten Implementationen:
- GMP, ist die bestoptimierteste Grundlage in dieser Richtung. Reicht aber auch nur als Grundlage. GMP selber ist in den meisten Teilen die effizientest Bibliothek, allerdings wird sie in entscheidenden Teilen von Miracl und meinen IIntegern überboten. GMP enthält keinerlei Crypto-Stuff.
- Miracl, ist von Micheal Scott. Das besondere an Miracl ist deren Polynomarithmetik. Sie enthält auch DH.
- HFloat, ist eine Libraray die große Fließkommazahlen unterstützt, ?.Arndt ist der Programmierer
- Cryptix, ist eine JAVA Enginge für Cryptostuff
Naja, es gibt noch viele mehr. So insgesamt habe ich wohl 30-40 solcher Libararies getestet und analysiert.
Gruß Hagen