SHA1StreamRange
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 SHA1StreamRange(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-1 mentah 20-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_SHA1 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, dan SHA-1 dipertahankan untuk interoperabilitas tanda tangan lama
Contoh
Digest:= SHA1StreamRange(FS, ByteRange[0], ByteRange[2], ByteRange[3]);Lihat juga
SHA256ByteArray, SHA384ByteArray, SHA512ByteArray, SHA3_256ByteArray, SHA3_384ByteArray, SHA3_512ByteArray, SHA256StreamRange, SHA384StreamRange, SHA512StreamRange, SHA3_256StreamRange, SHA3_384StreamRange, SHA3_512StreamRange, SHAKE256ByteArray, SHAKE256StreamRange