ExamineSHA1Fingerprint()

Syntax

Ergebnis = ExamineSHA1Fingerprint(#Fingerprint)
Beschreibung
Initialisiert die Berechnung einer SHA1 (Secure Hash Algorithm 1) Prüfsumme in mehreren Schritten. Anders als die SHA1Fingerprint() Funktion ermöglicht dies die Berechnung der Prüfsumme von großen Daten ohne die Notwendigkeit, diese komplett in einen zusammenhängenden Speicherpuffer zu laden. Siehe SHA1Fingerprint() für weitere Informationen über den SHA1 Algorithmus.

Der '#Fingerprint' Wert wird in späteren Aufrufen verwendet, um auf diese Prüfsummen-Berechnung zu verweisen. Wenn #PB_Any als '#Fingerprint' Parameter verwendet wird, dann wird der als Ergebnis zurückgegebene Wert verwendet, um die Berechnung zu identifizieren.

NextFingerprint() kann verwendet werden, um Speicherblöcke zur Berechnung hinzuzufügen, und FinishFingerprint() zum Abschließen der Berechnung und Lesen des SHA1 Hash.

Beispiel:

  *Buffer = AllocateMemory(200)                      ; einen Puffer mit Daten präparieren
  If *Buffer
    PokeS(*Buffer, "The quick brown fox jumps over the lazy dog.")
    Length = MemoryStringLength(*Buffer)
    
    If ExamineSHA1Fingerprint(1)                     ; die Berechnung starten
      NextFingerprint(1, *Buffer, Length/2)          ; Teil 1 berechnen
      NextFingerprint(1, *Buffer+Length/2, Length/2) ; Teil 2 berechnen
      
      SHA1$ = FinishFingerprint(1)                   ; Berechnung abschließen
      Debug "SHA1 checksum = " + SHA1$
      
      SHA1$ = SHA1Fingerprint(*Buffer, Length)       ; mit der Berechnung im 1. Schritt vergleichen
      Debug "SHA1 checksum = " + SHA1$
    EndIf

    FreeMemory(*Buffer)
  EndIf

Unterstützte OS

Alle

<- ExamineMD5Fingerprint() - Cipher Inhaltsverzeichnis - FinishCipher() ->