Kuznyechik

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 25. Januar 2022 um 08:15 Uhr durch imported>Wurgl(565645) (zu viel Abstand am Absatzende entfernt).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Kuznyechik (Russisch: Кузнечик, wortwörtlich: "Grashüpfer") ist eine symmetrische Blockchiffre. Sie hat eine Blockgröße von 128-Bit und eine Schlüssellänge von 256-Bit. Die Chiffre ist im nationalen Standard von Russland GOST R 34.12-2015[1] und auch in RFC 7801[2] definiert.

Der Name der Chiffre kommt aus dem Russischen vom Grashüpfer, wobei der Standard explizit erwähnt, dass der englische Name Kuznyechik ist. Die Entwickler sagten, dass sie dem Trend für schwer auszusprechende Namen für solche Algorithmen wie Rijndael und Keccak folgen wollen.

Der Standard GOST R 34.12-2015 definiert die neue Chiffre als Zusatz zur alten GOST-Blockchiffre.[3]

Kuznyechik basiert auf dem Substitutions-Permutations-Netzwerk, wobei die Key-Schedule das Feistelnetzwerk verwendet.

VeraCrypt (Abkömmling von TrueCrypt) bietet Kuznyechik als einer der Verschlüsselungsalgorithmen an.

Designation

Endlicher Körper .

()

.

.

Beschreibung

Verschlüsselung, Entschlüsselung und Generierung des Schlüssels wurden wie folgt definiert:

Sei mit , binären Strings der Form (), wobei die Stringkonkatenation darstellt.

ist eine gekehrte Transformation von .

— gekehrte Transformation von ,

, wo — Komposition der Transformationen von und etc.

Die nichtlineare Transformation

Die nichtlineare Transformation ist gegeben, indem folgendes substituiert wird:

S = Bin8 S' Bin8−1.

Werte der Substitution S' sind gegeben als Array S' = (S'(0), S'(1), …, S'(255)):

Linear transformation

:

Operationen von Additionen und Multiplikationen werden im Feld ausgeführt.

Schlüsselgenerierung

Der Schlüsselgenerierungs-Algorithmus verwendet die iterative Konstante t , i=1,2,…32 und setzt die geteilten Schlüssel als: .

Iterierte Schlüssel

Verschlüsselungsalgorithmus

wo a — 128-bit String.

Entschlüsselungsalgorithmus

Adaption

VeraCrypt, die weltweit bekannte Verschlüsselungssoftware, verwendet Kuznyechik als einer der gängigen Verschlüsselungsalgorithmen.[4]

Weblinks

Einzelnachweise

  1. National Standard of the russian Federation Gost R 34.12–2015 (Memento vom 30. Juli 2016 im Internet Archive) (PDF), auf tc26.ru in English
  2. Vasily Dolmatov <dol@srcc.msu.ru>: GOST R 34.12-2015: Block Cipher "Kuznyechik". Abgerufen am 25. Mai 2020 (englisch).
  3. Groteck Business Media: ГОСТ Р 34.12–2015: чего ожидать от нового стандарта? | ITSec.Ru. Abgerufen am 25. Mai 2020 (englisch).
  4. VeraCrypt - Free Open source disk encryption with strong security for the Paranoid. Abgerufen am 25. Mai 2020.