AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Datei verschlüsseln und in einen Stream schreiben
Thema durchsuchen
Ansicht
Themen-Optionen

Datei verschlüsseln und in einen Stream schreiben

Ein Thema von Zacherl · begonnen am 6. Sep 2004 · letzter Beitrag vom 20. Dez 2004
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#11

Re: Datei verschlüsseln und in einen Stream schreiben

  Alt 20. Dez 2004, 20:14
Zitat:
Stimmt, aber was hat dies bitte damit zu tun, ob erkennbar ist ob die Daten verschlüsselt (inkl. gepackt) sind? Richtig, nichts. Es war ja auch nicht die Frage ob man Zufallsdaten und verschlüsselte Daten auseinanderhalten kann, sondern ob man (strukturierte!) Daten und verschlüsselte Daten auseinanderhalten kann. Und da kann die Entropie sehr wohl ein Anhaltspunkt sein.
Eben nicht. Man kann Daten so verschlüsseln das sie wie normaler Text erscheinen, man kann auch beliebige Header einbauen und so die verschlüsselten Daten strukturieren. Genau das meinte ich auch mit dem Vergleich zur Steganographie. Denn auch dort sind die Daten mit einer starken Verschlüsselung geschützt und werden zusätzlich in andere Daten so eingebettet das sie nicht mehr erkennbar sind. Demzufolge kann man das auch nicht mehr von einer normalen Datei, egal ob Text oder sonstwas strukturiertes, unterscheiden.

Das Ziel der Kryptographie ist es Daten zu schützen, dazu ist jedes Mittel recht, auch die Komprimierung, das Vortäuschen anderer Entropie und das Verstecken durch Einbettung in andere Daten. Und somit ist Steganographie auch ein Verfahren der Kryptographie. Ich kenne eigentlich kein gutes Steganographie Program das die Daten nicht vorher komprimiert und verschlüsselt bevor es diese geschützten Daten zusätzlich in andere Trägerdaten einbettet.

Es gibt kein, und kann kein Verfahren geben das verschlüsselte Informationen als solches identifizieren kann.
Die reine Analyse der Entropie sagt rein garnichts über den tatsächlichen Inhalt einer Datei aus. Gerade aber das wollte ich eben mit der Anwendung von neuronalen Netzwerken und einer Spektralanalyse erreichen.

Klar, das zeigt ja auch mein Hinweis auf die Neuronalen Netze, kann man versuchen eine Abschätzung zu geben, das ist mir sehr wohl bewusst. Es ist aber dann so das diese Abschätzung eben bei gut geschützten Daten immer daneben liegen wird. Bei meinen Tests zeigte sich das das trainierte Netz bei Dateien die nur teilweise verschlüsselte Informationen enthielten, absolut versagte. Noch schlimmer, es lies sich noch nicht mal so trainieren das es solche teilverschlüsselten Dateien überhaupt unterscheiden konnte.

Die Eingangsfrage zielte darauf ab ob man verschlüsselte Dateien identifizieren kann. Ja man kann solche Dateien als Abschätzung identifizieren. Aber wirklich gut verschlüsselte Dateien wird man niemals entdecken können. Wenn nun ALLE verschlüsselten Datein auf solche sehr gute Verfahren aufbauen so sinkt diese Abschätzung gegen Null ! Dies impliziert also das man verschlüsselte Daten niemals eindeutig identifizieren kann. Und das ist auch ein Sinn der Verschlüsselung !

Gruß Hagen
  Mit Zitat antworten Zitat
Assarbad
(Gast)

n/a Beiträge
 
#12

Re: Datei verschlüsseln und in einen Stream schreiben

  Alt 20. Dez 2004, 20:36
Zitat von negaH:
Man kann Daten so verschlüsseln das sie wie normaler Text erscheinen
Bitte Referenzen! Ich hoffe wir reden über moderne Kryptographie. ROT13 und ähnliches kenne ich auch selber. Dennoch kann man dort über lexikalische Analyse ansetzen (wie oft kommt ein bestimmter Buchstabe in der Zielsprache durchschnittlich vor - entsprechende Länge vorausgesetzt).

Zitat von negaH:
Eben nicht. Man kann Daten so verschlüsseln das sie wie normaler Text erscheinen, man kann auch beliebige Header einbauen und so die verschlüsselten Daten strukturieren. Genau das meinte ich auch mit dem Vergleich zur Steganographie. Denn auch dort sind die Daten mit einer starken Verschlüsselung geschützt und werden zusätzlich in andere Daten so eingebettet das sie nicht mehr erkennbar sind. Demzufolge kann man das auch nicht mehr von einer normalen Datei, egal ob Text oder sonstwas strukturiertes, unterscheiden.
Ich steig dann mal lieber aus aus der Diskussion. Ich kenne da eine andere Definition für Steganographie und Kryptographie - und nach diesen vermischst du hier komplett beide Gebiete in deiner Diskussion. Entsprechend bringt es mir nichts und es könnte ins Unsachliche abgleiten.

Zitat von negaH:
Das Ziel der Kryptographie ist es Daten zu schützen, dazu ist jedes Mittel recht, auch die Komprimierung, das Vortäuschen anderer Entropie und das Verstecken durch Einbettung in andere Daten. Und somit ist Steganographie auch ein Verfahren der Kryptographie. Ich kenne eigentlich kein gutes Steganographie Program das die Daten nicht vorher komprimiert und verschlüsselt bevor es diese geschützten Daten zusätzlich in andere Trägerdaten einbettet.
Na dann schau'n wir mal, was ...
Wikipedia sagt:
Viele Menschen ordnen die Steganographie als Unterpunkt zur Kryptographie ein. Das ist falsch, da beide Wissenschaften vollkommen verschiedene Ansätze haben, eine Nachricht dem Empfänger sicher zukommen zu lassen.


Zitat von negaH:
Es gibt kein, und kann kein Verfahren geben das verschlüsselte Informationen als solches identifizieren kann.
Die reine Analyse der Entropie sagt rein garnichts über den tatsächlichen Inhalt einer Datei aus. Gerade aber das wollte ich eben mit der Anwendung von neuronalen Netzwerken und einer Spektralanalyse erreichen.
Hier behaupte ich das Gegenteil exakt deshalb, weil bekannt ist, das es für eine Datei nur 2 verschiedene Zustände gibt: verschlüsselt und entschlüsselt. Entsprechend ist es möglich über die Entropie auf den aktuellen Zustand mit einer gewissen Sicherheit zu schließen.

Zitat von negaH:
Klar, das zeigt ja auch mein Hinweis auf die Neuronalen Netze, kann man versuchen eine Abschätzung zu geben, das ist mir sehr wohl bewusst. Es ist aber dann so das diese Abschätzung eben bei gut geschützten Daten immer daneben liegen wird. Bei meinen Tests zeigte sich das das trainierte Netz bei Dateien die nur teilweise verschlüsselte Informationen enthielten, absolut versagte. Noch schlimmer, es lies sich noch nicht mal so trainieren das es solche teilverschlüsselten Dateien überhaupt unterscheiden konnte.
Du verwechselst hier: "bei gut geschützten" und "bei gut versteckten" Daten.

Zitat von negaH:
Die Eingangsfrage zielte darauf ab ob man verschlüsselte Dateien identifizieren kann. Ja man kann solche Dateien als Abschätzung identifizieren. Aber wirklich gut verschlüsselte Dateien wird man niemals entdecken können. Wenn nun ALLE verschlüsselten Datein auf solche sehr gute Verfahren aufbauen so sinkt diese Abschätzung gegen Null ! Dies impliziert also das man verschlüsselte Daten niemals eindeutig identifizieren kann. Und das ist auch ein Sinn der Verschlüsselung !
Das ist Quark es ist und war nie Ziel der Kryptographie zu verschleiern, daß ein Datensatz verschlüsselt ist, denn der echte Kryptologe vertraut auf den Algorithmus und dessen mathematischen Nachweis, nicht darauf, daß ein Angreifer im Datensatz keine verschlüsselten Daten vermutet.

Nochmal: Kryptologen sprechen sich ja gerade gegen Security through Obscurity aus!
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#13

Re: Datei verschlüsseln und in einen Stream schreiben

  Alt 20. Dez 2004, 23:22
Zitat:
Du verwechselst hier: "bei gut geschützten" und "bei gut versteckten" Daten.
Nicht "verwechseln" oder "vermischen" sondern kombinieren. Ein Kryptologe wie du es betrachtest versucht Daten durch Verschlüsselungsverfahren zu schützen. Dabei ist es wichtig für ihn das der verwendete Algorithmus nachweislich sicher ist. Die Steganographie wiederum versucht geheime Daten zu verstecken, das ist richtig soweit.

Nun, wenn du so willst propagiere ich persönlich die Verschlüsselungs-Steganographie also die sichere Kombinationen beider Varianten. Wenn aber beides das "Schützen geheimer Daten" darstellt dann frage ich mich was wäre der gemeinsamme Oberbegriff ? Für mich ist es Kryptographie.

Nochmal: der Schutz bei der Steganographie sollte nicht nur auf dem Verstecken der Daten basieren sondern auch auf der Anwendung starker Verschlüsselungsalgorithmen.

Steganographie hat also aus meiner Sicht rein garnichts mit "Security through Obscurity" zu tun. Das was du meinst ist eher das erreichen einer scheinbaren Sicherheit durch die Erhöhung der Komlexität oder das geheimhalten der Verfahren ohne jedoch einen mathematischen Beweis für die Sicherheit zu haben. Aus dieser Sichtweise stimme ich dir natürlich voll und ganz zu. Nur darfst du heutige steganographische Verfahren damit NICHT vergleichen.

D.h. ich persönlich meine das es nicht nur wichtig ist seine Daten sehr sicher per Verschlüsselungen zu schützen sondern eben auch die Anwendung der Verschlüsselung selber geheim zu halten. Man schützt also nicht nur die Daten selber sondern auch den Vorgang des Schützens der Daten. Der Sinn der Verschlüsselung ist es doch das nicht berechtigte Personen keinen Zugriff auf die Daten haben sollen. Nun der nächste Schritt wäre demnach den nicht berechtigen Personen den Zugriff auf das Wissen das überhaupt was geschützt wurde zu verwehren ! Das ist der Sinn der Steganographie wie ich ihn begreife. Demnach ist Steganographie wiederum ein Mittel der Kryptographie.

Ich für mich persönlich differenziere zwischen Steganographie, Verschlüsselungen, Einweg Funktionen, Verteilte Geheimnisse usw. usw. und als Oberbegriff steht für mich die Kryptographie. Die Anti-Wissenschaft wäre die Kryptologie.

Du kannst da mit Verweisen auf Wiki's dienen wie du möchtest, nur müssen diese für mein persönliches Begriffsverständnis nicht richtig sein. Ich vertrete hier meine Meinung, meine Erfahrungen und gebe dieses Wissen so weiter wie ich es verstanden habe. Das heist zwangsläufig auch das wir uns darüber streiten können, das mein begriffliches Wissen falsch sein könnte oder aber der Wiki einfach nur Allgemeinwissen wiederspiegelt. Wissen verändert sich.

Denoch wäre das dann nur eine Diskussion über Begrifflichkeiten und nicht über Inhalte. Zurück zu Inhalten kann ich aus eigener Erfahrung mit praktischen Experimenten nur sagen das es nicht möglich ist zuverlässig eine verschlüsselte Datei von beliebigen anderen Dateien zu unterscheiden. Denn falls es irgendeinem gelingen sollte ein Verfahren zu entwickeln, das mit Sicherheit zwischen beliebig verschlüsselten Daten und unverschlüsselten Daten unterscheiden kann, so hiese dies implizit auch das dieses Verfahren der ultimative Codebreaker wäre. Denn dieses Verfahren muss mit Sicherheit unterscheiden können zwischen Zufall, komprimierten Daten und verschlüsselten Daten.

Zitat:
Hier behaupte ich das Gegenteil exakt deshalb, weil bekannt ist, das es für eine Datei nur 2 verschiedene Zustände gibt: verschlüsselt und entschlüsselt. Entsprechend ist es möglich über die Entropie auf den aktuellen Zustand mit einer gewissen Sicherheit zu schließen.
Nein, aus Sicht der Analyse gibt es nur einen Zustand, nämlich Datei. Wir wissen zum Zeitpunkt der Analyse eben nicht ob es eine verschlüsselte Datei oder nicht ist, geschweige denn kennen wir den unverschlüsselten Inhalt der Datei die möglicherweise eine verschlüsselte Datei sein könnte.

Es geht darum zu erkennen ob eine beliebige Datei verschlüsselte Informationen enthält oder eben nicht. Falls sie verschlüsselte Informationen enthalten sollte so wissen wir denoch nichts über den unverschlüsselten Inhalt.

Demzufolge kann aus dieser Sicht jede komprimierte oder auch Zufallsdatei Informationen enthalten so wie eine verschlüsselte Datei auch. Und jede Textdatei, Bitmap, Wave kann verschlüsselte Informationen einbettet haben. Das diese Informationen mit Steganographie eingebettet wurden ist erstmal belanglos, wichtig ist die Antwort zur Frage "enthält diese Datei verschlüsselte Informationen ?".

Da in diesem Moment die Entropie exakt gleich zu einer gleichwertigen Datei ohne verschlüsselte Informationen ist, denn DAS ist ja die Aufgabe der digitalen Steganographie, "das Einbetten von Informationen in die Entropie anderer Daten ohne deren Entropie merklich zu verändern", und diese eventuell eingebetteten Informationen verschlüsselt wurden, ist es logischerweise eben nicht möglich über die Entropie einer Datei erkennen zu wollen ob sie verschlüsselte Informationen enthält oder nicht.

Und eben aus diesem Zusammenhang heraus sehe ich die Verschlüsselungen und die Steganographie als Verfahren der Kryptographie an. So gesehen gibt es zwei übergeordnete Wissenschaften, die Kryptographie und die Kryptologie. Natürlich nur für mein ganz persönliches Begriffsempfinden

So und hier noch par verschlüsselte Daten die die exakte Entropie von deutschem Text haben:

"Umschlaghafen knusperigster verirrende zentnern wallfahrenden vor profivereine. Umgebuchtes gewateten versteigt seitenblick ausklammernde, präzisionsleistung hefeteig zufließender bucht. Angenehmere ersatzkanister kommunikationsleitungen fußabstreicher ! Gleichbleiben streifblicke nennend klangst extremeren Thermosflasche ortes Cellophanpapier Juwelen beklagendes ausgeholtes umgestalten"

Unverschlüsselt heist das "Das ist ein verschlüsselter Text". Die Verschlüsselung dafür benutzt eine Transposition, eine Transposition eines Bytes in ein deutsches Wort. Es ist KEINE Steganographie da der Text selber keinen Sinn macht und für jeden Menschen, besser gesagt Deutschen, sofort als Quatsch zu entziffern ist. Allerdings ist ein Computer mit einem Entropie-Berechnungs-Algorithmus eben kein Mensch und schon garnicht Wissenbasiert mit Syntaktischem Regelwerk. Einnormaler Entropie-Algorithmus wird diese Verschlüsselung als normalen Text erkennen müssen.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#14

Re: Datei verschlüsseln und in einen Stream schreiben

  Alt 20. Dez 2004, 23:30
Achso, und damit schließt sich der Kreis zu meinem Experiment mit dem Neuronalem Netzwerk. Denn solche Texte sollte es im Idealfalle als verschlüsselte Informationen erkennen, zumindestens wäre das das Ziel gewesen wenn nicht schon viel früher das NN versagt hätte. Es hat aber noch nichtmal ansatzweise den Unterschied solcher Texte zu normalen Texten erlernen können. Ergo: aus Sicht des Netzwerkes haben die Trainingsdaten immer die gleiche "Sprache" gesprochen, es konnte innerhalb der Trainingsdaten keinerlei Unterschiede entdecken. Erwartungsgemäß war die Trefferquote des Netzwerkes bei 50%, also nicht besser als bloßes Raten.

Gruß Hagen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz