SHA1StreamRange
קריפטוגרפיה
תיאור
AnsiString
/ByteRangeהקלט המגובב הוא טווח הבייטים [0, FirstLength) ואחריו טווח הבייטים [SecondStart, SecondStart + SecondLength), בהתאמה לפריסת /Contents של חתימת PDF שבה יש לדלג על החור של
תחביר
Delphi
Function SHA1StreamRange(Input: TStream; FirstLength, SecondStart, SecondLength: Int64): AnsiString;פרמטרים
| Input | הזרם לגיבוב; הפונקציה ממקמת לפני כל מקטע, כך שמיקום הזרם בכניסה אינו משנה |
|---|---|
| FirstLength | מספר הבייטים המגובבים ממיקום 0 של הזרם, הטווח החצי-פתוח [0, FirstLength); 0 מדלג על המקטע הראשון |
| SecondStart | היסט הזרם שבו מתחיל המקטע המגובב השני, בדרך כלל הבייט הראשון אחרי החור של /Contents של החתימה |
| SecondLength | מספר הבייטים המגובבים מ-SecondStart, הטווח החצי-פתוח [SecondStart, SecondStart + SecondLength); 0 מדלג על המקטע השני |
ערכים מוחזרים
תקציר ה-SHA-1 הגולמי בן 20 הבייטים ארוז ב-AnsiString, או מחרוזת ריקה כאשר לא ניתן ליצור את ספק ה-CryptoAPI או את אובייקט הגיבוב, או כאשר שלב גיבוב נכשל |
הערות
מפקיד לפונקציית העזר המשותפת SHAStreamRange, הרוכשת הקשר CryptoAPI מסוג PROV_RSA_AES, מגבבת את CALG_SHA1 במקטעים של עד 8000 בייטים, ומתעלמת ממספר ההחזרה של כל קריאת זרם; ערכי טווח שליליים אינם נדחים על ידי פונקציית עזר זו, בניגוד לגרסאות הזרם של SHA-3, ו-SHA-1 נשמר לתאימות חתימות מורשת
דוגמה
Digest:= SHA1StreamRange(FS, ByteRange[0], ByteRange[2], ByteRange[3]);ראה גם
SHA256ByteArray, SHA384ByteArray, SHA512ByteArray, SHA3_256ByteArray, SHA3_384ByteArray, SHA3_512ByteArray, SHA256StreamRange, SHA384StreamRange, SHA512StreamRange, SHA3_256StreamRange, SHA3_384StreamRange, SHA3_512StreamRange, SHAKE256ByteArray, SHAKE256StreamRange