Kryptografie 2 Laboraufgaben
Bearbeiten Sie die folgende Aufgabe am Übungstermin 03.06.2026 und an dem darauffolgenden Übungstermin.
Aufgabe 10:
- Verwenden Sie die Klasse Matrix aus Aufgabe 9, um die LWE-Verschlüsselung mit dem dort angegebenen Zahlenbeispiel auszuprobieren.
- Schreiben Sie in der Klasse Matrix noch eine Methode transpose, um eine Matrix zu transponieren.
- Schreiben Sie Funktionen encode und decode, um ein Klartextbit als Zahl aus ℤq zu codieren und um eine Zahl aus ℤq wieder zu dekodieren.
- Schreiben Sie eine Funktion makeModIntMatrix, um eine Matrix aus ModInt-Zahlen zu erstellen (Verwendung siehe unten).
- Stellen Sie beim LWE-Verfahren auftretenden Spaltenvektoren als m×1-Matrizen dar, ferner die Zahlenwerte e' und m' als 1×1-Matrizen, sodass Sie durchgängig mit Matrix-Operationen rechnen.
if __name__=="__main__":
from ModInt import *
ModInt.n=17
print("Schluessel erzeugen")
a=makeModIntMatrix([[5,10,8], [2,1,8], [12,12,3], [11,4,16], [12,7,6]])
print("a=")
a.out()
s=makeModIntMatrix([[-2],[1],[1]])
print("s=")
s.out()
[up]
H.W. Lang mail@hwlang.de Impressum Datenschutz
Diese Webseiten sind größtenteils während meiner Lehrtätigkeit an der Hochschule Flensburg entstanden