PDFium Delphi Component Docs

Unidad FPdfSha512

Unidad: FPdfSha512
Implementación de SHA-512 y SHA-384 en Pascal puro que comparte un tipo de contexto, con init/update/final incremental y ayudantes de un solo paso sobre matrices de bytes

Sintaxis

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;

Descripción

FPdfSha512 implementa las funciones de hash SHA-512 y SHA-384 sobre un contexto compartido de palabras de 64 bits. La marca Is384 del contexto selecciona la variante truncada SHA-384 cuando se inicializa a través de Sha384Init

La API incremental refleja FPdfSha256: se inicializa un contexto, se introducen búferes con Sha512Update y se finaliza a un resumen SHA-512 de 64 bytes o a un resumen SHA-384 de 48 bytes. Sha512Bytes y Sha384Bytes son ayudantes de un solo paso sobre una matriz de bytes

Funciones

FunciónDescripción
Sha512InitInicializa un contexto SHA-512
Sha384InitInicializa un contexto SHA-384 (activa la marca interna Is384)
Sha512UpdateIntroduce un búfer sin tipo en un contexto SHA-512 o SHA-384 abierto
Sha512FinalFinaliza un contexto SHA-512 y devuelve el resumen de 64 bytes
Sha384FinalFinaliza un contexto SHA-384 y devuelve el resumen de 48 bytes
Sha512BytesHash SHA-512 de un solo paso de una matriz de bytes
Sha384BytesHash SHA-384 de un solo paso de una matriz de bytes

Tipos

TipoDescripción
TSha512DigestResumen SHA-512 de 64 bytes
TSha384DigestResumen SHA-384 de 48 bytes
TSha512ContextContexto incremental compartido por SHA-512 y SHA-384

Observaciones

Véase también

FPdfSha256