SHA3_384StreamRange
Mật mã học
Mô tả
AnsiString
/ByteRangeĐầu vào được hấp thụ là khoảng byte [0, FirstLength) theo sau bởi khoảng byte [SecondStart, SecondStart + SecondLength), khớp bố cục /Contents chữ ký PDF trong đó lỗ
Cú pháp
Delphi
Function SHA3_384StreamRange(Input: TStream; FirstLength, SecondStart, SecondLength: Int64): AnsiString;Tham số
| Input | Luồng cần băm; hàm seek trước mỗi đoạn, nên vị trí luồng khi vào không quan trọng, và luồng nil cho ra chuỗi rỗng |
|---|---|
| FirstLength | Số byte được hấp thụ từ vị trí luồng 0, khoảng nửa mở [0, FirstLength); 0 bỏ qua đoạn đầu tiên và giá trị âm sẽ dừng với chuỗi rỗng |
| SecondStart | Khoảng lệch luồng nơi đoạn hấp thụ thứ hai bắt đầu, thường là byte đầu tiên sau lỗ /Contents chữ ký; giá trị âm sẽ dừng với chuỗi rỗng |
| SecondLength | Số byte được hấp thụ từ SecondStart, khoảng nửa mở [SecondStart, SecondStart + SecondLength); 0 bỏ qua đoạn thứ hai và giá trị âm sẽ dừng với chuỗi rỗng |
Giá trị trả về
Digest SHA3-384 thô 48 byte được đóng gói vào một AnsiString, hoặc chuỗi rỗng khi luồng là nil, bất kỳ giá trị khoảng nào âm, hoặc một lần đọc trả về ít byte hơn yêu cầu |
Ghi chú
Chạy triển khai Keccak FIPS 202 tích hợp sẵn với hậu tố miền SHA-3 và tỷ lệ 104 byte, hấp thụ theo khối 64 KB; mỗi lần đọc được đối chiếu với số đếm được yêu cầu nên một luồng bị cắt cụt dừng sạch sẽ, điều mà các biến thể luồng SHA-2 không làm
Ví dụ
Digest:= SHA3_384StreamRange(FS, ByteRange[0], ByteRange[2], ByteRange[3]);Xem thêm
SHA256ByteArray, SHA384ByteArray, SHA512ByteArray, SHA3_256ByteArray, SHA3_384ByteArray, SHA3_512ByteArray, SHA1StreamRange, SHA256StreamRange, SHA384StreamRange, SHA512StreamRange, SHA3_256StreamRange, SHA3_384StreamRange, SHA3_512StreamRange, SHAKE256ByteArray, SHAKE256StreamRange