Hallo Allerseits,
Mir ist gerade die Idee für folgendes Verschlüsselungsverfahren gekommen:
-
Man nehme einen Text und wandle ihn zunächst in eine Zahlenfolge um (z.B. in ASCII-Code).
-
Die Zahlen werden in eine n×n-Matrix M geschrieben, wobei in zufälligen Abständen Lücken gelassen werden.
-
Die Lücken werden so mit sinnlosen Zahlen gefüllt, dass det(M):=0 gilt. „Sinnlos“ heißt dabei, dass die Zahlen keinen kodierbaren Zeichen entsprechen (eventuell unter Berücksichtigung eines bestimmten Vertrauensintervalls, um Rundungsfehler auszugleichen).
-
Es wird eine zufällige n×n-Matrix A mit det(A)0 erzeugt.
-
Das Produkt A·M wird an den Empfänger geschickt.
-
Der Empfänger erzeugt eine zufällige n×n-Matrix B mit det(B)0.
-
Das Produkt A·M·B wird an den Sender zurück geschickt.
-
Der Sender entfernt seinen Schlüssel mittels A-1·A·M·B und schickt das Ergebnis M·B wieder zum Empfänger.
-
Der Empfänger entfernt seinen Schlüssel mittels M·B·B-1 und ist nun im Besitz der unverschlüsselten Matrix M.
-
Die sinnlosen Zahlen werden entfernt.
-
Die Zahlenfolge wird wieder in Text verwandelt.
Dazu habe ich zwei Fragen:
- Gibt es das schon?
- Kann eine dritte Person, die außer dem oben beschriebenen Verfahren ledigilich die verschlüsselten Matrizen A·M, A·M·B und M·B kennt, mit vertretbarem Aufwand (also nicht mittels Brute-Force) die unverschlüsselte Matrix M ermitteln? Und wenn ja, wie?
Viele Grüße,
DrStupid