Autor Beitrag
Fiete
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 601
Erhaltene Danke: 339

W7
Delphi 6 pro
BeitragVerfasst: Fr 10.06.16 13:32 
Das Programm codiert Texte mittels Bigramm-Verfahren.
Der aktuelle Zeichensatz besteht aus 73 Zeichen, also 5329 verschiedene Paare.
Die Matrix wird wie ein Eulerquadrat ungerader Ordnung erzeugt.
(Normal oder zufällig - s. user profile iconHorst_H)
Bigramm_Screen
Paarweise werden die Zeichen bearbeitet.
Falls eine Zeile eine ungerade Anzahl von Zeichen enthält wird ein 'Q' drangehängt.
Wer eine Zufallsmatrix generieren lassen will muss sich den Randseed merken.
Dieser Wert wird in der letzten Zeile der codierten Nachricht angezeigt.
Die Texte können gespeichert bzw. geladen werden.

Viel Spaß beim Testen
Gruß Fiete
Einloggen, um Attachments anzusehen!
_________________
Fietes Gesetz: use your brain (THINK)
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1321
Erhaltene Danke: 117

Win 10
RIO, CE, Lazarus
BeitragVerfasst: So 12.06.16 14:06 
Ich kenne das, oder ein ähnliches, Verfahren als One Time Pad Codierung und verwende es als Verschlüsselungsverfahren in einem meiner Tools.
Allerdings arbeite ich nicht mit Wertepaaren sondern einem Schlüssel der die gleiche Länge wie die zu codierenden Daten hat. Sowohl die zufällige Matrix als auch der Schlüssel werden generiert aus einem Passwort das der Nutzer eingibt.
Wie einfach das ganze knackbar ist, ist noch immer eine sehr gute Frage :gruebel:
Es hängt ja davon ab ob sich Matrix und Schlüssel aus den verschlüsselten Daten ziehen lassen.

_________________
Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: So 12.06.16 15:02 
user profile iconSinspin hat folgendes geschrieben Zum zitierten Posting springen:
Wie einfach das ganze knackbar ist, ist noch immer eine sehr gute Frage :gruebel:


Anzahl der möglichen Schlüssel = (Matrixordnung^2) !

?

Der Schwachpunkt ist allerdings die Schlüsselgenerierung, die "normalen" computergenerierten Zufallsgeneratoren sind eben leider alle nur "pseudo".

Gibt man im Programm unter "Alphabet" "normal" ein, haben die Schlüssel eine deutliche Struktur - keine gute Voraussetzung für die Verschlüsselung. Bei "zufällig" sieht es schon deutlich besser aus.
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: So 12.06.16 19:00 
Hallo,

Hier geht es um Euler Matrizen. die ja jeden Wert nur einmal in Spalte und Zeile haben.
n*n Werte beliebig anzuordnen, wäre viel leichter.
Bei einer n * n Euler-Matrix ergeben sich durch das Mischen
n! Anordnungen der Zeilen und n! Anordnungen der Spalten.

(n^2)! >> (n!)^2

(8x8)!= 1.269E89 >> (8!)^2 = 40320*40320= 1.626e9

aber 73!, irgendwas mit 1E106 = 2^352, ist auch nicht übel.Natürlich bräuchte es dann auch einen Zufallsgenerator entsprechender Bitzahl.

Gruß Horst
P.S.
Ich weiß aber nicht, ob man bei einer Euler-Matrix aus der einen Ursprungsanordnung auch wirklich alle Möglichen nur durch mischen der Zeilen/Spalten erwischt.Spiegelungen werden dabei auch erzeugt, vielleicht wäre Drehung noch eine Option.

Für diesen Beitrag haben gedankt: Delphi-Laie