@lightbringer @Zoddy Ich hab das Gefühl das meine Dozenten nicht so der Hit bezüglich Verschlüsselung sind, da ich mich außerdem nicht auf Verschlüsselung sondern auf CI spezialisieren will hab ich mich entschlossen meinen Algorithmus hier versuchsweise zu veröffentlichen.
Das Ganze ist teilweise mathematisch Formalisiert falls es Verständnisprobleme gibt, einfach fragen.
MKC (Mutating Key Cryptation)
Das MKC Verfahren ist ein Verschlüsselungsverfahren. Es ist für die Übertragung großer Datenmengen zwischen festen Knoten gedacht. Dabei sollen möglichst viele Daten mit möglichst wenig Redundanz übertragen werden um die Übertragung möglichst schnell zu machen.
Der Schlüssel besteht aus folgenden Elementen.
P(Paketlänge)
Die Länge des übertragenen Paketes
PS(Paketschritt) zwischen 0 und P
Der Schritt an dem sich der Zähler befindet
S (Schrittlänge)
Die Länge eines Zustandschrittes
TS(Teilschritt)
Teilschritt des Zustandsschrittes
BS (BuchstabenSumme)
Summe der Werte der Klartextbuchstaben bis zum jetzigen Teilschritt
A(Zufällige Permutation des verwendeten Alphabetes)
Die Einzelnen Werte werden durch A1-An referenziert
AS(Alphabetschritt) Adresse des nächsten Buchstaben der verwendet wird
MS(Mutationsschritt) Adresse des Buchstaben der als nächstes verändert wird.
Wenn die Kommunikation als erstes aufgenommen wird, wird eine zufällige Permutation des Alphabetes ausgetauscht. Die Schrittlänge(S) wird auf einen Wert =Wurzel aus Alphabetlänge
TS,BS, AS und MS werden auf 0 gesetzt.
Die Verschlüsselung findet folgendermaßen Statt.
Verschlüsselter Buchstabe = Klartextbuchtabe rotiert um A(AS)
AS = AS +1
TS = TS +1
PS = PS +1
BS = BS + Wert des Klartextbuchstabe
wenn (TS == S){
AS(MS) rotiert um BS
der Wert von AS der dem neuen Wert vorher entsprach wird durch den ursprüngliche Wert des rotierten Buchstaben ersetzt.
AS = AS + BS/modulo (Wurzel aus Alphabetlänge)
S= BS/modulo (Wurzel aus Alphabetlänge)
BS=0
}
wenn PS = P{
Zufallswert für nächste Paketlänge wird angehängt
Schlüsselzustand wird gespeichert
Hashabdruck des aktuellen Schlüsselzustandes wird angehängt
}
Die Entschlüsselung verläuft anlog, nur das der verschlüsselte Buchstabe in die andere Richtung rotiert wird. Der Wert für Paketlänge wird übernommen und wenn der Hashwert mit dem selbst generierten Hashwert übereinsteimmt wird eine Bestätigung an die Quelle gesendet.