TSha512Digest = array[0..63] of Byte;
TSha384Digest = array[0..47] of Byte;
TSha512Context = record
State: array[0..7] of UInt64;
CountLo: UInt64;
CountHi: UInt64;
Buffer: array[0..127] of Byte;
BufLen: Integer;
Is384: Boolean;
end;
procedure Sha512Init(out Ctx: TSha512Context);
procedure Sha384Init(out Ctx: TSha512Context);
procedure Sha512Update(var Ctx: TSha512Context; const Buf; BufLen: Integer);
procedure Sha512Final(var Ctx: TSha512Context; out Digest: TSha512Digest);
procedure Sha384Final(var Ctx: TSha512Context; out Digest: TSha384Digest);
function Sha512Bytes(const B: TBytes): TSha512Digest;
function Sha384Bytes(const B: TBytes): TSha384Digest;
FPdfSha512 toteuttaa SHA-512- ja SHA-384-tiivistefunktiot jaetun 64-bittisen sanakontekstin päällä. Kontekstin Is384-lippu valitsee typistetyn SHA-384-muunnelman, kun alustus tehdään Sha384Init-funktiolla
Inkrementaalinen API peilaa FPdfSha256-yksikköä: alusta konteksti, syötä puskurit Sha512Update-kutsulla ja viimeistele 64 tavun SHA-512- tai 48 tavun SHA-384-tiivisteeksi. Sha512Bytes ja Sha384Bytes ovat yhden kutsun apufunktioita tavutaulukolle
| Function | Description |
|---|---|
Sha512Init | Initializes a SHA-512 context |
Sha384Init | Initializes a SHA-384 context (sets the internal Is384 flag) |
Sha512Update | Feeds an untyped buffer into an open SHA-512 or SHA-384 context |
Sha512Final | Finalizes a SHA-512 context and returns the 64-byte digest |
Sha384Final | Finalizes a SHA-384 context and returns the 48-byte digest |
Sha512Bytes | One-shot SHA-512 hash of a byte array |
Sha384Bytes | One-shot SHA-384 hash of a byte array |
| Type | Description |
|---|---|
TSha512Digest | 64-byte SHA-512 digest |
TSha384Digest | 48-byte SHA-384 digest |
TSha512Context | Shared incremental context for SHA-512 and SHA-384 |
TSha512Context-tyyppiä Sha384Init-funktion asettamalla Is384-lipullaSha..., eroten FPdfSha256-yksikön kokonaan isoista SHA256...-nimistä