Zur besseren Veranschaulichung habe ich die zuvor erläuterte vereinfachte Kyber-Variante nun auch in einem Excel-Dokument zusammengefasst. Es führt alle Berechnungen zur Ver- und Entschlüsselung durch und ist möglicherweise auch als Lehrmaterial geeignet.
SHA256: 72247BADDD3AF028785BC8F67732FCCFDE55C7FECA7E907BE767D181E96FB849
Im vorherigen Beitrag habe ich die Kyber-Falltür auf der Basis Learning with Errors (LWE) erläutert. Diese Vereinfachung schränkt jedoch dahingehend ein, dass nur ein Bit verschlüsselt übertragen werden kann. Die offiziell vom NIST spezifizierte Kyber-Variante basiert auf Module Learning with Errors (MLWE). Erläuterungen dazu finden sich in diesem Blogartikel. Dabei werden, anders als in der vereinfachten Variante, die Operationen in einem Polynomring durchgeführt. Um auch diese praxisnahe Variante anschaulich zu machen, habe ich die notwendigen Operationen im Polynomring über Lambda-Funktionen in Excel implementiert. In einem aktuellen Microsoft Excel sollten diese funktionieren. In dieser Variante ist somit auch die Verschlüsselung von bis zu vier Bits möglich.
SHA256: C461EA5C1C0564A96350B9F766F4EE3AC6CCCD612D481801E35E5924E354D130
Für die Nutzung beider Beispiele wird voraussichtlich ein Microsoft Excel 365 oder 2024 erforderlich sein, in denen Lambda-Funktionen unterstützt werden.