die Funktion Fingerprint() gibt einen String zurück. Diesen wandele ich dann in ein Bytearray um. Beispiel:
Code: Alles auswählen
EnableExplicit
UseSHA3Fingerprint()
Procedure.i HexStr2Bin(daten.s)
Protected anzahl.i = Len(daten)
Protected *mem = AllocateMemory(anzahl / 2)
If *mem And anzahl
Protected *zmem = *mem
Protected zdaten.i = 1
While anzahl
PokeA(*zmem, Val("$" + Mid(daten, zdaten, 2)))
*zmem + 1
zdaten + 2
anzahl - 2
Wend
EndIf
ProcedureReturn *mem
EndProcedure
Define *mem = HexStr2Bin(Fingerprint(?daten, 8, #PB_Cipher_SHA3, 512))
ShowMemoryViewer(*mem, MemorySize(*mem))
If *mem : FreeMemory(*mem) : EndIf
End
DataSection
daten:
Data.a $47, $11, $08, $15, $62, $87, $00, $FF
EndDataSection
Oder besser wie geht das Effizenter?
Gruß