Matrix(-verschlüsselung)

Seth93

Well-known member
ID: 322821
L
24 November 2008
1.400
82
Hallo,

ich habe in Mathe zurzeit das Thema Matrizen und das erinnert mich sehr an Arrays u.ä.
Habe dann zufällig im Mathebuch eine Verschlüsselung über Matrix und die Inverse gefunden.
Wie sicher ist diese Verschlüsselung?

Kann man in PHP mit Matrizen arbeiten?
Wenn ja, wie sehe ein einfaches Beispiel aus?



LG
 
Matrixverschlüsselung kannst du in PHP mit einem mehrdimensionalen Array simulieren. Also einfach Arrays schachteln und schon hast du deine Matrix.

Matrixverschlüsselung an sich ist ganz witzig zum herumspielen. Der Aufwand dahinter steht aber in keinem Verhältnis zur Sicherheit. Es gibt verschiedene Probleme, die du abfangen musst. Beispielsweise die Passwortlänge im Verhältnis zum Klartext. Nicht alle Passwörter können akzeptiert werden, da die inverse Matrix nur gebildet werden kann, wenn die Determinante nicht 0 ist etc, dein Mathebuch wird da sicher einiges aufgelistet haben.

Zum spielerischen Umgang durchaus ein nettes Thema. Wirklichen (sinnvollen) Einsatz wirst du keinen finden.
 
ich kenne sie nicht, klingt aber nach gleich Null

Ganz so schlimm ist es nicht. Wenn nur der Geheimtext vorliegt sind die Daten schon vor Amateuren gesichert, da die Geheimzeichen gut gestreut werden. Sobald der Klartext oder Teile davon jedoch bekannt sind ist die Entschlüsselung schnell erreicht.

Wie gesagt, nett zum Spielen. Sowas wie Caesar.
 
Matrixverschlüsselung kannst du in PHP mit einem mehrdimensionalen Array simulieren. Also einfach Arrays schachteln und schon hast du deine Matrix.

Matrixverschlüsselung an sich ist ganz witzig zum herumspielen. Der Aufwand dahinter steht aber in keinem Verhältnis zur Sicherheit. Es gibt verschiedene Probleme, die du abfangen musst. Beispielsweise die Passwortlänge im Verhältnis zum Klartext. Nicht alle Passwörter können akzeptiert werden, da die inverse Matrix nur gebildet werden kann, wenn die Determinante nicht 0 ist etc, dein Mathebuch wird da sicher einiges aufgelistet haben.

Zum spielerischen Umgang durchaus ein nettes Thema. Wirklichen (sinnvollen) Einsatz wirst du keinen finden.
Also eine 2x2 Matrix würde so aussehen:
PHP:
$matrix[1][1] = 2;
$matrix[1][2] = 3;
$matrix[2][1] = -1;
$matrix[2][2] = 4;

und dem entsprechen:
[2 3]
[-1 4]
???

Das Problem mit der Determinante wurde allerdings im Buch nicht erwähnt.
Fand das aber recht interessant.

durchaus, ein multidemensionales Array kann man als Matrix nutzen



ich kenne sie nicht, klingt aber nach gleich Null

Jeden Buchstaben ersetzt du durch eine Zahl.
Baust daraus eine 2Xx Matrix und multiplizierst sie mit einer weiteren Matrix B.
Beim Entschlüsseln multiplizierst du die inverse Matrix B mit dem Chiffre und erhälst halt die ursprüngliche Matrix, dann musst du nur noch alle Zahlen wieder in Buchstaben umwandeln.
 
Also eine 2x2 Matrix würde so aussehen:
PHP:
$matrix[1][1] = 2;
$matrix[1][2] = 3;
$matrix[2][1] = -1;
$matrix[2][2] = 4;

und dem entsprechen:
[2 3]
[-1 4]
???

Naja, wie du die Matrix in PHP nun darstellst ist eigentlich ganz egal.
Aber dein Vorschlag wäre wahrscheinlich der eheste.
Wenn ich an meinen CAS denke, stellt der Matrizen auch wie folgt da in der Eingabezeile (die von dir genannte Matrix als Bsp.):

[[2,3],[-1,4]]

(oder so ähnlich^^)

Wenn du das nun ein wenig abänderst, bist du schon (nahe; Indizes sind bei dir anders) bei deinem Ergebnis in PHP:

array(array(2,3), array(-1,4))