SHA1StreamRange
Kryptografi
Beskrivelse
AnsiString
/ByteRangeDen hashede inngangen er byteområdet [0, FirstLength) etterfulgt av byteområdet [SecondStart, SecondStart + SecondLength), i samsvar med PDF-signaturens /Contents-oppsett der
Syntaks
Delphi
Function SHA1StreamRange(Input: TStream; FirstLength, SecondStart, SecondLength: Int64): AnsiString;Parametere
| Input | Strømmen som skal hashes; funksjonen søker før hvert segment, så strømposisjonen ved inngang er uten betydning |
|---|---|
| FirstLength | Antall byte som hashes fra strømposisjon 0, det halvåpne området [0, FirstLength); 0 hopper over det første segmentet |
| SecondStart | Strømforskyvning der det andre hashede segmentet begynner, normalt den første byten etter signaturens /Contents-hull |
| SecondLength | Antall byte som hashes fra SecondStart, det halvåpne området [SecondStart, SecondStart + SecondLength); 0 hopper over det andre segmentet |
Returverdier
Den rå 20 byte store SHA-1-digesten pakket inn i en AnsiString, eller en tom streng når CryptoAPI-leverandøren eller hashobjektet ikke kan opprettes, eller et hashtrinn mislykkes |
Merknader
Delegerer til den delte SHAStreamRange-hjelperen, som anskaffer en PROV_RSA_AES CryptoAPI-kontekst, hasher CALG_SHA1 i biter på opptil 8000 byte og ignorerer antallet som returneres fra hver strømlesing; negative områdeverdier avvises ikke av denne hjelperen, i motsetning til SHA-3-strømvariantene, og SHA-1 beholdes for samspill med eldre signaturer
Eksempel
Digest:= SHA1StreamRange(FS, ByteRange[0], ByteRange[2], ByteRange[3]);Se også
SHA256ByteArray, SHA384ByteArray, SHA512ByteArray, SHA3_256ByteArray, SHA3_384ByteArray, SHA3_512ByteArray, SHA256StreamRange, SHA384StreamRange, SHA512StreamRange, SHA3_256StreamRange, SHA3_384StreamRange, SHA3_512StreamRange, SHAKE256ByteArray, SHAKE256StreamRange