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