FB_CalcHashValue

Dieser Funktionsbaustein berechnet einen Hash-Wert.

Hierzu werden die Methoden start(), update() und finish() verwendet.

Die Methoden entkoppeln das Anfügen von Eingangsdaten von der eigentlichen Berechnung des Hash-Wertes und ermöglichen zudem Eingangsdaten stückweise in mehreren Schritten anzufügen. Sollte kein mehrfaches Hinzufügen von Eingangsdaten notwendig sein, so wird die Verwendung der Funktion F_GenerateHashValue() anstatt dem Funktionsbaustein empfohlen.

Methode start()

Diese Methode initialisiert die Hash-Berechnung mit dem angegebenen Hash Mode.

METHOD start : BOOL
VAR_INPUT
    hashMode : E_HashMode;
END_VAR

hashMode: Hier wird ein Hash Mode, wie beispielsweise SHA 512, angegeben. Siehe E_HashMode.

Methode update()

Diese Methode kann einmalig oder mehrfach aufgerufen werden. Bei jedem Aufruf werden Eingangsdaten für die Hash-Berechnung hinzugefügt.

METHOD update : BOOL
VAR_INPUT
    pData : PVOID;
    nData : UDINT;
END_VAR

pData: Hier wird die Adresse der Eingangsdaten angegeben.

nData: Hier wird die Größe der Eingangsdaten in Bytes angegeben.

Methode finish()

Diese Methode führt die Hash-Berechnung aus und gibt den berechneten Hash-Wert aus.

VAR_INPUT
    pHash : PVOID;
    nHash : UDINT;
END_VAR

pHash: Hier wird die Adresse des Puffers angegeben, wohin der Hash-Wert gespeichert werden soll.

nHash: Hier wird die Größe des Puffers für den Hash-Wert angegeben. Die Größe ist abhängig vom Hash Mode, siehe auch E_HashMode.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.4024.29

PC oder CX (x86, x64, ARM)

Tc2_Utilities (System) >= 3.3.51.0