Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
22. Mai 2021
Danke für den Hinweis mit der Bitreihenfolge!
Das ist bestimmt das Problem!
Fühl! Hätte es vom A3 Testvektor eigentlich noch
wissen müssen...
Naja, das Konverterprogramm ist eh geplant.
Muss Mal noch überlegen wie ich die Bits andersherum
bekomme...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
19. Mai 2021
Wie hast du das getestet?
Sein Projekt runtergeladen und ausgeführt?
Ich muss meine SHA3 Arbeiten (da steht noch die Sache mit dem Umstellen des Fehlerhandlings
aus und sicherheitshalber die Integration der besseren NIST Testvektoren) wohl ein paar Tage auf Eis legen.
Jemand hat im SCOOP Algorithmus bugs gefunden, die aber scheinbar nur auf nicht Intel CPUs auftreten...
Scheint ein FPC...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
17. Mai 2021
Hallo,
hier noch der relevante Auszug aus meiner Anfrage an das NIST wegen der Testdaten die ich dort gefunden hatte:
"Your observation is correct that the example values do not catch some implementation failures. However, this is not their intended purpose: they are sample values, not test vectors.
The goal of the sample values is to make it easy to understand the intermediate values...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
14. Mai 2021
Danke!
Habe das übernommen und jetzt passt das!
Meine Änderungen sind übrigens im Entwicklugnszweig.
und ja: richtig Schlafen hilft oft! ;-)
Grüße
TurboMagic
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
14. Mai 2021
Seltsam.
Habe den Code jetzt korrigiert, die bisherigen Unittests laufen auch sauber durch.
Sieht jetzt so aus:
procedure THash_SHA3Base.Calc(const Data; DataSize: Integer);
var
DataPtr : PByte;
RoundSize : UInt32;
const
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
14. Mai 2021
Ich sag' ja, du sollst denen Sagen, dass Sie Mist publizieren.
Alle Testvektoren (zumindest die für 1600 Bit, die anderen aber
glaube ich auch) aller SHA3 Varianten sind so von denen publiziert.
Ach ja, die neue SHA3 Umsetzung hat lt. Michael noch einen Bug.
Der schlägt nur unter gewissen Randbedingungen zu.
Den beseitige ich später.
"Dieser Bug tritt auf, wenn für die Länge t der...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
14. Mai 2021
Sag' das Mal dem NIST, die haben diesen dusseligen Testvektor
so definiert...
Grüße
TurboMagic
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
13. Mai 2021
Danke für deine Bestätigung!
Das hilft mir mental sehr!
Im übrigen scheinst du gute Kryptographiekenntnisse
zu haben!
Grüße
TurboMagic
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
13. Mai 2021
Ja nach der Schleife gibt's noch einen Aufruf für den Rest.
Sonst wäre für alle Situationen wo's einen Rest gibt das
Ergebnis falsch.
Man könnte die Blocksize erhöhen ja, aber das wäre ja auch
wieder statisch und ich bin mir auch nicht mehr sicher, woher
ich die aktuell benutzten Werte für die Blocksize(s) der
SHA3 Varianten habe. Ich habe mir damals (musste das leider
immer wieder...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
13. Mai 2021
Hier eine meiner Fragestellungen präzisiert.
Wie muss man folgenden Code ändern, damit nicht immer nur BlockSize
an Daten in einem Schritt verarbeitet werden, sondern soviel wie möglich
aber ohne, dass dieses * 8 zur Umrechnung in Bit zu einer verminderung
der maximal insgesammt möglichen Datengröße führt?
DataSize ist übrigens ein Integer (ja man müsste mal untersuchen ob man das ...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
13. Mai 2021
Hallo,
danke für den Tipp. Dazu muss es aber noch vollends reifen.
Und das war ja meine hauptsächliche Fragestellung: wie mit
diesen Bit Größenangaben sinnvoll umgehen?
Grüße
TurboMagic
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TurboMagic,
12. Mai 2021
Hallo,
so wie es scheint, bekomme ich den SHA3 langsam in den Griff.
Ich habe mal SHA3 224 durch Umbau von Wolfgang Erhard's (WE) Code
"roh" umgesetzt (siehe Entwicklungszweig) und mit einem Konsolenprogramm
mit dem offiziellen NIST 200 Byte Testvektor mal grundsätzlich getestet.
Nur habe ich da ein paar Fragestellungen:
1. Der ganze SHA3 Code basiert immer auf Bit als Größenangabe...