SHA256StreamRange
Kriptografi
Deskripsi
AnsiString
/ByteRangeMasukan yang di-hash adalah rentang byte [0, FirstLength) diikuti rentang byte [SecondStart, SecondStart + SecondLength), sesuai tata letak /Contents tanda tangan PDF di mana lubang
Sintaks
Delphi
Function SHA256StreamRange(Input: TStream; FirstLength, SecondStart, SecondLength: Int64): AnsiString;Parameter
| Input | Stream yang akan di-hash; fungsi melakukan seek sebelum setiap segmen, sehingga posisi stream saat masuk tidak berpengaruh |
|---|---|
| FirstLength | Jumlah byte yang di-hash dari posisi stream 0, rentang setengah terbuka [0, FirstLength); 0 melewati segmen pertama |
| SecondStart | Offset stream tempat segmen kedua yang di-hash dimulai, biasanya byte pertama setelah lubang /Contents tanda tangan |
| SecondLength | Jumlah byte yang di-hash dari SecondStart, rentang setengah terbuka [SecondStart, SecondStart + SecondLength); 0 melewati segmen kedua |
Nilai kembalian
Digest SHA-256 mentah 32-byte yang dikemas ke dalam AnsiString, atau string kosong ketika provider CryptoAPI atau objek hash tidak dapat dibuat atau suatu langkah hash gagal |
Catatan
Mendelegasikan ke helper SHAStreamRange bersama, yang memperoleh konteks CryptoAPI PROV_RSA_AES, meng-hash CALG_SHA_256 dalam potongan hingga 8000 byte, dan mengabaikan jumlah kembalian setiap pembacaan stream; nilai rentang negatif tidak ditolak oleh helper ini, berbeda dari varian stream SHA-3
Contoh
Digest:= SHA256StreamRange(FS, ByteRange[0], ByteRange[2], ByteRange[3]);Lihat juga
SHA256ByteArray, SHA384ByteArray, SHA512ByteArray, SHA3_256ByteArray, SHA3_384ByteArray, SHA3_512ByteArray, SHA1StreamRange, SHA384StreamRange, SHA512StreamRange, SHA3_256StreamRange, SHA3_384StreamRange, SHA3_512StreamRange, SHAKE256ByteArray, SHAKE256StreamRange