Autor Beitrag
Christian V.
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 311

Win Xp Prof
Turbo Delphi 2005
BeitragVerfasst: Sa 12.08.06 02:10 
Hi, hatte Vorgestern eine Idee für einen neuen Verschlüsselungsalgorhythmus.
Es ist meine eigene Entwicklung und wäre um Feedback, bzw Verbesserungsideen dankbar. es befindet sich noch ganz am Anfang.

Funktionen:
-Text entschlüsseln und verschlüsseln
-Dateien verschlüsseln und entschlüsseln.

Kurze Erläuterung der Funktionsweise:

Zuerst bestimmt man ein Passwort, aus welchem das Programm ein Zahlenfolge erstellt, die man NICHT zurückrechnen kann. Anschliessend wird ein "Keyfile"(so nenn ich es bis jetzt, falls jemand eine bessere Idee hat bitte Posten) ausgewählt. Mittels diesem wird verschlüsselt und entschlüsselt, es wird dabei jedoch nicht verändert. Der Empfänger, bzw der der es Entshclüsseln will, muss jedcoh EXAKT die gleiche Keyfile haben(der Name ist glaub ich nicht Massgebend). Ich hoffe dass durch diese Kombination ein Bruteforce angriff wirkungslos ist. Mit ein und dem selben Keyfile und verschiedenen Passwörtern, gibt es sehr sehr viele unterschiedliche ergebnisse, beim Verschlüsselten Text. Falls das Passwort bekannt sein würde, und man jedoch das Keyfile nicht hat/kennt, kann man so den text nicht Rekonstruieren. Häuffigkeitsanalysen sind Sinnlos, da es keinem "Muster" folgt.

Wenn jemand spass daran hat, und versucht die Verschlüsselung zu kancken, bzw es gelingt ihm/ihr, so lasst es mich doch bitte wissen, damit ich mein Programm (hoffentlich) dem entsprechend ausbauen kann. Mir persönlich ist jedoch keine Idee gekommen, wie man es Knacken könnte. habe aber auch nicht viel Ahnung von Kryptographie.

Bisher bekannte Fehler:
- Wenn ein Falscher Text zum entschlüsseln eingegeben wird, d.h. wenn er nicht dem "muster" entspricht, so gibt es eine Fehlermeldung, die noch nicht angepasst wurde.


Generelle Info:
Setup: Keins
Dateien: Eine
Veränderungen am System: Keine(Ausgenommen der Speicherplatz ;))
Internetverbindung: Keine
Grösse: 416 KB
Downloadgrösse: 171Kbyte (Rar-Archiv)
Version: 1.1.1

Anmerkungen:
-Design wird noch verbessert werden


Verschlüsselungsbeispiel:

Passwort:
ausblenden Quelltext
1:
Delphi-Forum.de					

Text:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
Freeware:
CNV-Encryption
Autor: Invulnerabilis/CNV
Typ:Verschlüsselungssoftware

Versucht es doch aus, und entschlüsselt es, keyfile im anhang.


Verschlüsselt:
ausblenden Quelltext
1:
08A0DB0CA0A80BC0D50920D109C07607F0630C70C40960AD08E0D70EB0DB0DC0BA0DB0DD0D708606C0AD0E10E10D30C00AC0400B70D30E20BB09A0DC0DE0E40C60900DB0DA0CE0E60970700A40CF07B06F0B50EC0DF0AF0BB0AA0DB0EC0D80DB0D416E0C90E10D10D50E70B30DB0E80DC0D40D60940E50D50E70D30760730530770A40DE0E00BC0DE0C80950940940D30D504D0B20E10AC0DA0890A50A30C909E0690EB0E00D00880D40D30E20E70C50DA0D516C0A10E50DE0D10E40850AA0D50980820D70D70990AB0CB08C0D10930CE0D608D0B70E00D70CD0D00AB0A0					


Mirror:
dl2.uploadgalaxy.com...CNV_Projekt.rar.html

Changelog:
13.8.06 - V 1.1.1
-Kleiner Bugfix: Entschlüsselter Text wurde nicht mehr angezeigt.


13.8.06 - V 1.1.0
- Datei-Modus hinzuegfügt
- Tabulatorreihenfolge überarbeitet
- div. Autofokus dazugefügt


12.8.06 - V 1.0.4
- Design übersichtlicher gemacht(Hoffe ich zumindest)
- div. Fehlermeldungen hinzugefügt.

12.8.06 - V 1.0.3
- Tabulatorreihenfolge hinzugefügt. (Falls änderungswünsce bestehen, bitte posten.
- Fehler in der Verschlüsselung wenn man mehr als ein mal auf "Generate Key" gedrückt hat.

Anmerkung:
Verschlüsselung von Dateien erfolgt auf eigene Gefahr, immer in eine Andere Datei speichern.
Einloggen, um Attachments anzusehen!
_________________
Hardware runs the world, software controls the hardware, code generates software - Have You already coded today?


Zuletzt bearbeitet von Christian V. am So 13.08.06 18:15, insgesamt 12-mal bearbeitet
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Sa 12.08.06 03:43 
Sieht gar nicht mal so schlecht aus.

Zitat:

-Bisher bekannte Fehler: Nur ein Buchstabe Verschlüsseln geht nicht.
-Nicht wirklich ein Fehler: 1. Buchstabe ist in "Klartext" vorhanden.

:?: Nur ein Buchstabe geht doch Prima, und im Klartext hab ich auch nichts gesehen.

Das das Ergebnis 0-Getrennte Hexwerte sind, dürfte wohl jeder merken. Nun stellt sich die Frage: was benutzt du für einen Algorithmus, um aus den 3 Datenmengen eine zu machen? Das ist die eigentlich interessante Frage, denn ich hab tatsächlich eine Idee im Hinterkopf, wie man das knacken könnte, wenn der Algo bekannt wäre. Verrate ich aber noch nicht ! ;)

Ich hab nämlich früher schonmal eine Verschlüsselung mit 3 Eingangsdateien entwickelt, später aber gemerkt, das bereits die Ausgabedatei genug Infos zur Rekostruktion enthält, bzw. das Passwort nich unbedingt gebraucht wird. Da kann man ganz schön reinfallen.

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Christian V. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 311

Win Xp Prof
Turbo Delphi 2005
BeitragVerfasst: Sa 12.08.06 09:57 
Wie meinst du "vom Klartext habe ich nichts gesehen"?
Wusste gar nicht mehr dass ich den Fehler schon korrigiert habe. war wohl zu müde heute Morgen.

//Edit: den 2. Fehler hatte ich auch korrigiert, wahr wohl definitiv zu müde. ;-)
//edit 2:
Zitat:
Nun stellt sich die Frage: was benutzt du für einen Algorithmus, um aus den 3 Datenmengen eine zu machen?

Irrtum, es sind nur 2 Datenmengen die kombiniert werden. Die Dritte kann NICHT rekonstruiert werden.(Hoffe ich zumindest, vorausgesetzt natürlich, das Passwort und der Ausgangstext bleiben geheim) Datenmenge 3 ist in keiner Weise in der Datei/dem text vorhanden. Sie stellt das Passwort dar.

_________________
Hardware runs the world, software controls the hardware, code generates software - Have You already coded today?
Christian V. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 311

Win Xp Prof
Turbo Delphi 2005
BeitragVerfasst: So 13.08.06 18:13 
*Grosses Versionsupdate*

-Nun ist die Verschlüsselung und Entschlüsselung von Dateien möglich.

Geschwindigkeit ist jedoch noch nicht optimal.
Benutzung der Verschlüsselung von Dateien auf eigene Gefahr, bei mir sind jedoch keine Fehler aufgetreten.

//edit: Kleiner Bugfix: Entschlüsselung von Texten wieder möglich.

_________________
Hardware runs the world, software controls the hardware, code generates software - Have You already coded today?
rizla
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 417
Erhaltene Danke: 2

XP
FPC mit Lazarus
BeitragVerfasst: So 20.08.06 17:06 
hi!
wo ist denn der quelltext? also für den algorithmus? reicht ja schon! ansonsten hört sich das ja mal ganz leicht nach otp (one time pad) an, von daher so nicht knackbar, da man ja keinen ansatzpunkt hat.
:r:

_________________
if you have what they want - they'll find a way to take it (bruce sterling)
WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.
Kaoro-kun
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

Win XP
Delphi 7, Pascal
BeitragVerfasst: So 20.08.06 18:39 
Verzeiht etwaige Naivitäten...
Ich kenne mich in der Kryptographie nicht so aus, und Mathematik ist auf diesem Gebiet nicht meine Stärke...
Aber gibt es nicht ein Gesetz, das besagt, das jeder Algorithmus durch die Bruteforce methode knackbar ist? Weil doch, sofern man jede Möglichkeit ausprobiert, irgendwann der richtige Schlüssel zusammengefügt ist? Ich meine klar, das dauert dementsprechend, und wenn es nicht gerade verändernde Schlüsselketten wären usw usf...
Aber hab Ich bei der Annahme nun Recht oder sollte Ich lieber das denken in dieser Beziehung ganz sein lassen? ._.
Regards,
Kao

_________________
Wissen ist Macht. Nichts Wissen macht nichts. Aber nichts zu Wissen, hat nichts mit Intelligenz zu tun. ;)
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: So 20.08.06 19:09 
Theoretisch schon. Aber das praktische setzt immer Grenzen. Bei AES(glaub ich) zum Beispiel reicht das Silizium auf der Erde nicht aus, um einen Computer zu bauen, der in annehmbarer Zeit einen Bruteforce Angriff durchführt.

Dabei sollte man natürlich die Quantencomputer nicht außer Acht lassen,da diese die Lösungen nichtmal ausprobieren müssen, um zu wissen, was die richtige ist. Aber damit brauchen wir uns glaub ich noch nicht beschäftigen ;)

Dervorteil an dieser Verschlüsselung ist ja, dass man weder Länge des Keyfiles noch des Passwortes erraten kann. Man müsste also
ausblenden Quelltext
1:
2:
l     *  l    *  !l     *  !l
(File)   (Key)    (File)    (Key)

Berechnungen machen, da schon die ersten beiden Parameter im Bereich von 0 bis Maxint liegen, kommt was sehr großes raus.
Nur, ich denke mal dass kaum ein User wirklich Dateien mit Weißem Rauschen(absolut zufällig) als Keyfile und absolut zufällige Passwörter hat.
Da der Benutzer das Keyfile besitzen muss, kann man auch einfach alle Dateien auf seinem Rechner und als Passwort Wörterbucheinträge nehmen. das dürfte die ergebnismenge auf ein paar Milliarden reduzieren, das sollte für Großrechnercluster in ein paar Tagen/Wochen zu machen sein. Dazu braucht man aber wie gesagt erstmal Zugriff auf sein System.

Kaoro-kun hat folgendes geschrieben:
oder sollte Ich lieber das denken in dieser Beziehung ganz sein lassen?

Am Besten immer weiter denken! Schaden kanns nicht. Ohne dein Posting hätte ich nie so was tolles ausgerechnet :mrgreen:

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Kaoro-kun
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

Win XP
Delphi 7, Pascal
BeitragVerfasst: So 20.08.06 19:36 
Ha! Wenn Ich also nicht gewesen wäre... :D
Quantencomputer...wie erklärte einer unserer Lehrer:
Ein 5-Atom-Großer Quantencomputer hätte mehr Rechenleistung, als die momentane Gesamtweltbevölkerung, wenn sie je einen 2.6 Ghz Rechner zur Verfügung hätten...so um die 3 Trillionen Khz soll der wohl haben...also er meinte, dieser Quantencomputer als Weltweit-Server würde mit ca. 80% Leerlauf laufen. xD
Regards,
Kao

_________________
Wissen ist Macht. Nichts Wissen macht nichts. Aber nichts zu Wissen, hat nichts mit Intelligenz zu tun. ;)
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: So 20.08.06 21:40 
user profile iconKaoro-kun hat folgendes geschrieben:
Aber gibt es nicht ein Gesetz, das besagt, das jeder Algorithmus durch die Bruteforce methode knackbar ist?

Ein OneTimePad kann man nicht knacken (solange es ein richtiges OneTimePad ist :D ), auch nicht mit Brute-Force.
Suche in der Entwickler-Ecke WARUM?
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Mo 21.08.06 00:22 
Welches Fach unterrichtet der Lehrer? Bestimmt weder Info noch Physik. Erweckt jedenfalls den Eindruck. Obwohl, den hab ich bei meinen Infolehrern auch manchmal....

Jedenfalls, ein Quantencomputer kann langsam sein wie er will, er wird immer funktionieren. Diese Zahlen sind wohl eher vergleiche, wie schnell ein konventioneller Computer sein müsste, um die gleiche Leistung zu bringen.

Achtung: Quantentheorie inside!

Das geile an einem Quantencomuter ist ja, dass alle möglichen Antworten gewissermaßen in einer "überlagerung" vorliegen, und bei einer Messung diese Überlagerung aufhört. Das passiert auch, wenn man unbeabsichtigt das System stört(Luftzug, Wärme, Licht usw.)
Also für die Aufgabe 5+3 liegt als Antwort eine Menge aus allen denkbaren Zahlen vor. Dabei ist die 8 die mit der größten Wahrscheinlichkeit. Sobald man jetzt diese Speicherstelle ausliest, kriegt man das Ergebnis 8, ohne dass der Computer gerechnet hat. So funktioniert das auch für andere Sachen, wie "ln(135/4560*pi/4)+109E-6+42^23", 'Hallo'+'Welt', oder allem anderen.
Soweit die Theorie, praktisch sind wir im Moment immerhin soweit, dass man diese Überlagerung für 1 bit stabil halten kann, also noch nicht wirklich nah dran.

Falls das hier Quantenphysiker lesen(glaub ich ja nicht, aber man weiß ja nie..), ich lass mich da nicht drauf festnageln. Ich hab das jetzt so wiedergegeben, wie ich das aus den Büchern von Stephen Hawking und Anton Zeilinger verstanden habe, und das aktuelle aus der c't.

Aber da zitiere ich gerne Richard Feynman: "Wer glaubt, die Quantentheorie verstanden zu haben, hat sie nicht verstanden."

So, Ende des wissenschaftilchen Exkurses, sonst hält das noch einer für Thread-Hijacking.


Gruß,
Martok

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Kaoro-kun
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

Win XP
Delphi 7, Pascal
BeitragVerfasst: Mo 21.08.06 08:33 
Nur damit Ich das richtig Verstanden hab...
Ich stelle also diesem QuantenComputer die Aufgabe 5+3,
lese das Ergebnis aus und erhalte 8, obwohl er sozusagen gar nicht gerechnet hat? ._.
Regards,
Kao

_________________
Wissen ist Macht. Nichts Wissen macht nichts. Aber nichts zu Wissen, hat nichts mit Intelligenz zu tun. ;)
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Mo 21.08.06 11:49 
Genau. Es entsteht eine Überlagerung von allen möglichen Ergebnissen, bei denen jedes eine Wahrscheinlichkeit hat. Die ist eben bei 8 nahezu(oder genau?) 100%, bei 42 zum Beispiel sehr gering.

Problem ist, man kann sowas eingentlich nicht in Kurzform bringen. Falls es dich interessiert hab ich hier ne sehr schöne Seite gefunden, die recht gut darauf eingeht: www.quantencomputer.de/
Schwierig ist es eben, jemandem der Quantentheorie nicht kennt sowas deutlich zu machen, weil es eben jeder Logik widerspricht.

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Kaoro-kun
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

Win XP
Delphi 7, Pascal
BeitragVerfasst: Mo 21.08.06 12:27 
Hab mir mal einen Teil deiner Seite angesehen...
Danke dafür, Ich glaub, Ich hab wieder was dazugelernt. :D
Regards,
Kao

_________________
Wissen ist Macht. Nichts Wissen macht nichts. Aber nichts zu Wissen, hat nichts mit Intelligenz zu tun. ;)
rizla
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 417
Erhaltene Danke: 2

XP
FPC mit Lazarus
BeitragVerfasst: Mo 21.08.06 19:36 
kein quelltext der routine?
naja, über verschlüsslungsprogramme ohne offengelegte verschl.routinen braucht man dann ja auch weiter net zu reden.
:r:

_________________
if you have what they want - they'll find a way to take it (bruce sterling)
WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.