PDFium Delphi Component Docs

FPdfAesGcm Unit

Unit: FPdfAesGcm
Reiner-Pascal-AES-GCM-authentifizierte Verschlüsselung für AES-128- und AES-256-Schlüssel, die Geheimtext und ein 16-Byte-Authentifizierungs-Tag liefert

Syntax

TAesGcmTag = array[0..15] of Byte;
TGHashBlock = TAesBlock;

procedure Aes256GcmEncrypt(const Key: TAes256Key; const IV, Plain, AAD: TBytes;
  out Cipher: TBytes; out Tag: TAesGcmTag);
function Aes256GcmDecrypt(const Key: TAes256Key; const IV, Cipher, AAD: TBytes;
  const Tag: TAesGcmTag; out Plain: TBytes): Boolean;
procedure Aes128GcmEncrypt(const Key: TAes128Key; const IV, Plain, AAD: TBytes;
  out Cipher: TBytes; out Tag: TAesGcmTag);
function Aes128GcmDecrypt(const Key: TAes128Key; const IV, Cipher, AAD: TBytes;
  const Tag: TAesGcmTag; out Plain: TBytes): Boolean;

Beschreibung

FPdfAesGcm implementiert AES im Galois/Counter-Modus auf Basis der Block-Primitive aus FPdfAes. Es erzeugt Geheimtext und ein 16-Byte-Authentifizierungs-Tag und akzeptiert zusätzliche authentifizierte Daten (AAD), die vom Tag abgedeckt, aber nicht verschlüsselt werden

Die Entschlüsselungsfunktionen geben False zurück, wenn das Tag nicht verifiziert werden kann, sodass Aufrufer manipulierten Geheimtext ablehnen können, ohne eine Exception auszulösen. Dieser Modus wird von Strukturen verwendet, die authentifizierte Verschlüsselung jenseits des PDF-AES-256-CBC-Sicherheits-Handlers erfordern

Funktionen

FunktionBeschreibung
Aes256GcmEncryptVerschlüsselt Plain mit einem 256-Bit-Schlüssel, IV und AAD und liefert Geheimtext und ein 16-Byte-Tag
Aes256GcmDecryptEntschlüsselt Cipher mit einem 256-Bit-Schlüssel, IV und AAD und verifiziert das Tag; gibt bei Tag-Konflikt False zurück
Aes128GcmEncryptVerschlüsselt Plain mit einem 128-Bit-Schlüssel, IV und AAD und liefert Geheimtext und ein 16-Byte-Tag
Aes128GcmDecryptEntschlüsselt Cipher mit einem 128-Bit-Schlüssel, IV und AAD und verifiziert das Tag; gibt bei Tag-Konflikt False zurück

Typen

TypBeschreibung
TAesGcmTag16-Byte-Authentifizierungs-Tag, das von GCM erzeugt und verifiziert wird
TGHashBlockAlias für TAesBlock, verwendet vom GHASH-Baustein

Hinweise

Siehe auch

FPdfAes