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 توابع درهمسازی SHA-512 و SHA-384 را بر روی یک زمینهٔ مشترک با واژههای ۶۴ بیتی پیادهسازی میکند. پرچم Is384 در زمینه، هنگام مقداردهی اولیه از طریق Sha384Init، نوع کوتاهشدهٔ SHA-384 را انتخاب میکند
API افزایشی منعکسکنندهٔ FPdfSha256 است: یک زمینه را مقداردهی اولیه کنید، بافرها را با Sha512Update تغذیه کنید و به یک خلاصهٔ ۶۴ بایتی SHA-512 یا یک خلاصهٔ ۴۸ بایتی SHA-384 نهاییسازی کنید. Sha512Bytes و Sha384Bytes کمکیهای یکباره روی یک آرایهٔ بایتی هستند
| Function | Description |
|---|---|
Sha512Init | یک زمینهٔ SHA-512 را مقداردهی اولیه میکند |
Sha384Init | یک زمینهٔ SHA-384 را مقداردهی اولیه میکند (پرچم داخلی Is384 را تنظیم میکند) |
Sha512Update | یک بافر بدون نوع را به یک زمینهٔ باز SHA-512 یا SHA-384 تغذیه میکند |
Sha512Final | یک زمینهٔ SHA-512 را نهاییسازی و خلاصهٔ ۶۴ بایتی را برمیگرداند |
Sha384Final | یک زمینهٔ SHA-384 را نهاییسازی و خلاصهٔ ۴۸ بایتی را برمیگرداند |
Sha512Bytes | درهمسازی یکبارهٔ SHA-512 یک آرایهٔ بایتی |
Sha384Bytes | درهمسازی یکبارهٔ SHA-384 یک آرایهٔ بایتی |
| Type | Description |
|---|---|
TSha512Digest | خلاصهٔ ۶۴ بایتی SHA-512 |
TSha384Digest | خلاصهٔ ۴۸ بایتی SHA-384 |
TSha512Context | زمینهٔ افزایشی مشترک برای SHA-512 و SHA-384 |
TSha512Context با پرچم Is384 تنظیمشده توسط Sha384Init استفاده مجدد میکندSha... استفاده میکنند که با نامهای تمامبزرگ SHA256... در FPdfSha256 تفاوت دارد