Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.825 Beiträge
 
Delphi 12 Athens
 
#17

AW: Gute Nachricht des Tages: DEC V6.4 wurde veröffentlicht

  Alt 11. Nov 2021, 15:30
Hallo,

jetzt eine kurze Erklärung:
GCM liefert in jedem Fall einen Authentifizierungswert zurück. Das ist CalculatedAuthenticationResult.
Wenn keine Daten in DataToAuthenticate übergeben wurden, basiert der nur auf den zu verschlüsselten
oder verschlüsselten Daten.

Wurde aber ein Wert an DataToAuthenticate übergeben wird das mit in die Berechznung einbezogen.
Man muss in dem Fall dem Empfänger natürlich auch diesen Wert übergeben, damit er das selbe Rechenergebnis
bekommen kann.

Damit: AuthenticationResultBitLength gibt man noch an wie lange diesere Authentifizierungswert in Bit
sein soll. Im Prinzip kann man jede beliebige Länge angeben, besser ist es aber einen der in diesem Array
drin enthaltenen Werte zu benutzen: GetStandardAuthenticationTagBitLengths

Warum? Naja, weil das die vom NIST definierten Standardwerte sind, die auch von den Testvektoren vom NIST
in unseren Unit Tests benutzt werden...

Wenn der berechnete Authentifizierungswert nicht ExpectedAuthenticationResult entspricht wird eine
Exception ausgelöst. Die entschlüsselten Daten werden aber nicht verworfen, auch wenn die dann nicht
vertrauenswürdig sind. Muss dann jeder selber entscheiden was noch ok ist.

Und ja: die Demo könnte im Gutfall eine "OK-Meldung" anzeigen. Nehme es auf die ToDo Liste.

Reicht das jetzt zum Verständnis?

Grüße
TurboMagic
  Mit Zitat antworten Zitat