PDFiumPas 文件

FPdfSha512 單元

單元: FPdfSha512
共用單一上下文型別的純 Pascal SHA-512 與 SHA-384 實作,提供遞增的 init/update/final 與一次性位元組陣列輔助函式

Syntax

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;

Description

FPdfSha512 在共用的 64 位元字組上下文上實作 SHA-512 與 SHA-384 雜湊函式。透過 Sha384Init 初始化時,上下文中的 Is384 旗標會選擇截斷的 SHA-384 變體

遞增 API 與 FPdfSha256 對應:初始化上下文、以 Sha512Update 饋入緩衝區,再結束為 64 位元組 SHA-512 摘要或 48 位元組 SHA-384 摘要。Sha512BytesSha384Bytes 是針對位元組陣列的一次性輔助函式

Functions

FunctionDescription
Sha512Init初始化 SHA-512 上下文
Sha384Init初始化 SHA-384 上下文(設定內部 Is384 旗標)
Sha512Update將不具型別的緩衝區饋入開啟中的 SHA-512 或 SHA-384 上下文
Sha512Final結束 SHA-512 上下文並傳回 64 位元組摘要
Sha384Final結束 SHA-384 上下文並傳回 48 位元組摘要
Sha512Bytes對位元組陣列做一次性 SHA-512 雜湊
Sha384Bytes對位元組陣列做一次性 SHA-384 雜湊

Types

TypeDescription
TSha512Digest64 位元組 SHA-512 摘要
TSha384Digest48 位元組 SHA-384 摘要
TSha512ContextSHA-512 與 SHA-384 共用的遞增上下文

Remarks

See Also

FPdfSha256