Dateien verschlüsseln - Vergleichbar mit Lizenzschlüsseln

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mimocloud
User
Beiträge: 31
Registriert: Freitag 3. Mai 2013, 15:12

Hallo,

Ich habe hier ein sehr ausgefallenes Anliegen.
Hab Ihr theoretisch eine Idee wie man eine Datei unter Python verschlüsselt, es soll aber möglich sein mehrere Keys zum entschlüsseln zu generieren.
Verschlüsselungen sind ja in der Regel immer statisch sprich:

Passwort ausdenken = x >> Datei verschlüsseln >> Datei wieder entschlüsseln mit Passwort = x.

Meine Idee sieht aber so aus:

Algorithmus >> Datei verschlüsseln >> Datei anhand des Algorithmus wieder entschlüsseln. (Ich habe die Möglichkeit Anzahl x Schlüssel zu generieren und diese dann z.B. an meine Kunden zu verteilen)

Also quasi wie ein CD-Key welcher auch erst den Zugriff auf ein Spielt gewährt wenn der Key richtig ist!


Liebe Grüße und Danke
BlackJack

Eine Möglichkeit wäre die Datei mit einem zufälligen Schlüssel zu verschlüsseln und diesen dann n mal mit n verschiedenen Schlüsseln mit der Datei ausliefern. Dann kann man die Schlüssel verteilen und jeder Empfänger kann den Schlüssel zum Entschlüsseln mit seinem Schlüssel entschlüssen. Das wird bei PGP mit mehreren Empfängern zum Beispiel so gemacht.
mimocloud
User
Beiträge: 31
Registriert: Freitag 3. Mai 2013, 15:12

Mir ist gerade auch was cooles dazu eingefallen:

Die Datei wird mit einem Numerischen Kennwort verschlüsselt (Nur ASCII Zeichen) Jedes ASCII Zeichen hat auch einen Wert... Beispiel: http://www.code-knacker.de/ascii.htm
Wenn man nun alle ASCII Zeichen addiert oder wie auch immer zusammenrechnet (je nach Algorithmus) bekommt man am Ende wieder den Schlüssel bzw. das echte Kennwort raus um die Datei wieder zu entschlüsseln.

Sinn freies Beispiel:

Echtes Passwort: 23778102
Key für Kunde: 24551-87761-87223-12123-94432

Jetzt gehen wir mal davon aus das dass alles den normen entspricht (Ist jetzt ja nur zusammen gespinnt) Dann: wäre die Rechnung wie folgt.

Key von Links nach rechts:

Wert von 2 = 2000 + Wert von 4 = 23227 usw usw... am Ende hat man dann den Wert bzw. das Kennwort: 23778102 zusammen-addiert


Mach das Sinn was ich hier sage?
Zuletzt geändert von mimocloud am Dienstag 14. Mai 2013, 15:09, insgesamt 1-mal geändert.
BlackJack

@mimocloud: Macht Sinn. Du solltest aber davon ausgehen, dass das sowie Dein Programm auch nur ein bisschen Interessant ist, geknackt werden wird. Und wenn Dein Programm nicht interessant ist, brauchst Du diesen „Schutz” nicht. :-)
mimocloud
User
Beiträge: 31
Registriert: Freitag 3. Mai 2013, 15:12

geht dabei nicht um ein Programm sondern um Dateien besser gesagt um verschlüsselte Container Dateien ;)
BlackJack

@mimocloud: Kannst ja mal schauen ob Du Informationen darüber findest wie bei OnlineTvRecorder.com die Dateien verschlüsselt werden.

Das es sich um Containerdateien handelt ändert nicht so viel an der Aussage. Wenn sie interessant sind, besteht die Chance das jemand einen Keygenerator schreibt, mindestens um aus einem offiziellen Schlüssel inoffizielle zu generieren.
mimocloud
User
Beiträge: 31
Registriert: Freitag 3. Mai 2013, 15:12

Ja okay das ganze wird alles in ein relativ großes Programm reingepackt das wird man denke ich nicht soviel rausziehen können.
zumal werden die Container Dateien noch signiert. Wenn man also versuchen sollte das anzuwenden muss man einmal den Key vom Kunden und dieser muss auch noch auf den Abdruck vom Zertifikat passen daher denk ich nicht das man das mal eben so machen kann!
Zudem werden die Zertifikate auch noch selbst erstellt nach eigenem Algro.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mimocloud hat geschrieben:Zudem werden die Zertifikate auch noch selbst erstellt nach eigenem Algro.
Das wiederum könnte ein Problem sein.
mimocloud
User
Beiträge: 31
Registriert: Freitag 3. Mai 2013, 15:12

Das wiederum freut mich zu hören ;)
Ja mal gucken wollte damit jetzt noch nicht anfangen aber ich habe mein UML Diagramm schon.
Nein das werde ich hier nicht posten ;) lol
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

mimocloud hat geschrieben:Das wiederum freut mich zu hören ;)
/me meinte ein Problem für dich, nicht für den Personenkreis, welcher die Verschlüssleung knacken will. Selbstgebastelte Verschlüsselungsansätze führen häufig dazu, dass die Sicherheit dramatisch abnimmt. Sei es durch Fehler in der Umsetzung oder durch grobe mathematische Fehler. Zum Beispiel die Größe des Schlüsselraums oder die Verteilung der Schlüssel im Raum.
Das Leben ist wie ein Tennisball.
xeike
User
Beiträge: 83
Registriert: Donnerstag 28. Februar 2013, 09:58

mimocloud hat geschrieben:Hab Ihr theoretisch eine Idee wie man eine Datei unter Python verschlüsselt, es soll aber möglich sein mehrere Keys zum entschlüsseln zu generieren.
Ganz trivial, aber wirklich nur zum Spielen, wird es mit Funktionen, die irgendwie zyklisch sind. Also zum Beispiel Sinus.

sin(0) == 0
sin(2*pi) == 0
sin(4 * pi) == 0

uns so weiter. Ähnlich geht es mit jeder Zahl zwischen 0 und 1, die vom Sinus produziert werden kann. Dein Schlüssel könnte also Vielfache von 2*pi sein und immer wieder denselben geheimen Schlüssel (hier Null) produzieren.

Wenn es in der wissenschaftlichen Krypto-Literatur dazu nichts gibt, dann würde ich die Finger davon lassen, wenigstens, wenn es um ernste Anwendungen geht.

Xe
Sirius3
User
Beiträge: 17747
Registriert: Sonntag 21. Oktober 2012, 17:20

@xeike: Sinus ist ein schlechtes Beispiel. Jeder kann, wenn er einen Lizenzschlüssel besitzt, damit beliebig viele andere gültige Lizenzschlüssel erzeugen.
Für eine sichere Methode brauchst Du aber ein asymmetrisches Funktion-Umkehrfunktionspaar:
- a ist der Lizenzcode
- s ist der Entschlüsselungscode
- die Funktion u(aⁿ) → s liefert für verschiedene aⁿ jeweils das gleiche s
- die Funktion ū(s,g,n) → aⁿ liefert mit Hilfe eines geheimen g für verschiedene n gültige Lizenzcodes a
Antworten