Einzelnen Beitrag anzeigen

EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
419 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: Hash mit Wolfgang Erhardt's Bibliotheken zum Laufen bekommen

  Alt 7. Jan 2021, 19:52
ich glaube, da liegst du richtig mit 144 byte:
Delphi-Quellcode:
type
  TSHA3GeneralDigest = array[0..63] of Byte;

  TSHA3_224Digest = array[0..27] of Byte;

  TSHA3_256Digest = array[0..31] of Byte;

  TSHA3_384Digest = array[0..47] of Byte;

  TSHA3_512Digest = array[0..63] of Byte;

  TSHA3Context = packed record
    State: array[0..24] of Int64;
    Index: LongWord;
    DigestLen: LongWord;
    Round: LongWord;
    BlockLen: LongWord;
    Block: array[0..255] of Byte;
    Ipad: array[0..143] of Byte; {!< HMAC: inner padding        }
    Opad: array[0..143] of Byte; {!< HMAC: outer padding        }
  end;
an anderer Stelle:
Delphi-Quellcode:
SHA3_ROUNDS = 24;
  SHA3_STATE_LEN = 25;

  SHA3_224_OUTPUT_LENGTH_BYTE = 28;
  SHA3_256_OUTPUT_LENGTH_BYTE = 32;
  SHA3_384_OUTPUT_LENGTH_BYTE = 48;
  SHA3_512_OUTPUT_LENGTH_BYTE = 64;

  SHA3_224_BLOCK_SIZE_BYTE = 144;
  SHA3_256_BLOCK_SIZE_BYTE = 136;
  SHA3_384_BLOCK_SIZE_BYTE = 104;
  SHA3_512_BLOCK_SIZE_BYTE = 72;

  HMAC_SHA3_224_BLOCK_SIZE_BYTE = SHA3_224_BLOCK_SIZE_BYTE;
  HMAC_SHA3_256_BLOCK_SIZE_BYTE = SHA3_256_BLOCK_SIZE_BYTE;
  HMAC_SHA3_384_BLOCK_SIZE_BYTE = SHA3_384_BLOCK_SIZE_BYTE;
  HMAC_SHA3_512_BLOCK_SIZE_BYTE = SHA3_512_BLOCK_SIZE_BYTE;

  HMAC_SHA3_224_OUTPUT_LENGTH_BYTE = SHA3_224_OUTPUT_LENGTH_BYTE;
  HMAC_SHA3_256_OUTPUT_LENGTH_BYTE = SHA3_256_OUTPUT_LENGTH_BYTE;
  HMAC_SHA3_384_OUTPUT_LENGTH_BYTE = SHA3_384_OUTPUT_LENGTH_BYTE;
  HMAC_SHA3_512_OUTPUT_LENGTH_BYTE = SHA3_512_OUTPUT_LENGTH_BYTE;
Blöd ist nur, dass die Dateien leider nicht in engl. oder chinesisch vorliegen, sondern in einem mir unbekannten Format. Auch der Hinweis zur Übersetzung der Dateien
(TENU.BAT) ist nich wirklich hilfreich. Wenn es in chinesisch vorliegen würde, ginge es wirklich gut mit Deepl zu übersetzen - aber...
Die maßgebliche Datei cnSHA3.pas liegt der Demo bei. Nur die wird gebraucht.
Ich bin mal so kühn und empfehle eine Nachfrage bei den Autoren des CN-Packs (master At cnpack Dot org <> bzw. zjy At cnpack Dot org <>). Engisch sprechen die Jungs dort allemal.
Norbert
  Mit Zitat antworten Zitat