PDFium Delphi Component Docs

FPdfSha512 ユニット

ユニット: FPdfSha512
1 つのコンテキスト型を共有する Pure-Pascal の SHA-512 および SHA-384 実装であり、増分対応の init/update/final とワンショットのバイト配列ヘルパを備えています

構文

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 は、共有の 64 ビットワードコンテキスト上で SHA-512 および SHA-384 のハッシュ関数を実装します。コンテキストの Is384 フラグは、Sha384Init 経由で初期化された場合に切り詰められた SHA-384 変種を選択します

増分 API は FPdfSha256 と同じです。コンテキストを初期化し、Sha512Update でバッファを供給し、64 バイトの SHA-512 ダイジェストまたは 48 バイトの SHA-384 ダイジェストに確定させます。Sha512BytesSha384Bytes はバイト配列に対するワンショットヘルパです

関数

関数説明
Sha512InitSHA-512 コンテキストを初期化します
Sha384InitSHA-384 コンテキストを初期化します (内部の Is384 フラグを設定します)
Sha512Update型なしバッファをオープンな SHA-512 または SHA-384 コンテキストに供給します
Sha512FinalSHA-512 コンテキストを確定し、64 バイトのダイジェストを返します
Sha384FinalSHA-384 コンテキストを確定し、48 バイトのダイジェストを返します
Sha512Bytesバイト配列のワンショット SHA-512 ハッシュです
Sha384Bytesバイト配列のワンショット SHA-384 ハッシュです

説明
TSha512Digest64 バイトの SHA-512 ダイジェストです
TSha384Digest48 バイトの SHA-384 ダイジェストです
TSha512ContextSHA-512 と SHA-384 で共有する増分コンテキストです

備考

関連項目

FPdfSha256