Strategie um WAV-Dateien zu schützen? Ist das gut?

Status
Nicht offen für weitere Antworten.

philo

Aktives Mitglied
Hallo,

ich suche einen möglichst wenig CPU intensiven Weg um WAV-Dateien nicht einfach dem Programm beilegen zu muessen.
Es muss nicht hyper sicher sein, mann soll einfach nur nicht die WAV Dateien einfach von der Festplatte abspielen koennen. Ich dachte mir die Dateien (einzelen BITS des Streams) (alle ca. 1 Sekunde lang) einfach zu negieren. Dass muesste ja schnell rueckgängig machbar sein.

Was denkt ihr?
Danke und Gruss
philo
 

Koravel

Mitglied
Ich wüsste nicht, was dagegen spricht, eine einfache Negation ist leicht zu machen, und auch relativ schnell (schätze ich jetzt, nie ausprobiert)
Du könntest natürlich auch einfach eine feste anzahl 0'en vor die Datei setzen, und beim Abspielen dann vorher überspringen, oder irre ich mich da?
 

Bleiglanz

Gesperrter Benutzer
warum nicht gleich mit einem festen Zufallswert XORen, sollte noch undurchschaubarer sein und ist wahrscheinlich auch nicht langsamer...
 
S

stev.glasow

Gast
Nur wenn ich es weiß ist der Schutz doch hin. Oder muss das jetzt nicht soo sicher sein?
 
S

stev.glasow

Gast
Nagut ich dachte halt nur dran, weil ja die Rede von 'Schutzstrategieen' war ;)
 

Illuvatar

Top Contributor
Bleiglanz hat gesagt.:
warum nicht gleich mit einem festen Zufallswert XORen, sollte noch undurchschaubarer sein und ist wahrscheinlich auch nicht langsamer...
Wo wir schon dabei sind: bei einem festgelegten Wert anfangen, diesen hochzählen und immer mit diesem Wert XORen (das hab ich schonmal zum Spaß gemacht, geht relativ flott:
Code:
class SaveFileWriter extends FileWriter
    {
      private int xor = 60;
      /**
       *Neuer SaveFileWriter in die Datei filename
       */
      protected SaveFileWriter (String filename)
      throws IOException
      {
        super (new File (filename));
      }
      public void write (int c)
      throws IOException
      {
        xor++;
        if (xor == 71){
          xor = 60;
        }
        super.write (c ^ xor);
      }
    }
 

0xdeadbeef

Top Contributor
Ich bitte zu bedenken, daß man Java wunderbar decompilieren kann. Dann liegt jeder noch so ausgefuchste (und nach kryptografischen Maßgabenvermutlich eh unsichere) Algorithmus offen. Selbst mit großen Kalibern wie RSA verhält sich das leider so: Der public key muß mitgeliefert werden, um die Daten zu entschlüsseln, also kann jeder mäßig begabte Programmierer die Dateien entschlüsseln.
Es ist also wohl zwecklos, allzuviel Energie in die Verschlüsselung der Dateien zu investieren.
 
S

stev.glasow

Gast
Den Key im Programm mit zu liefern scheint nie so viel Sinn zumachen, auch bei anderen Sprachen nicht.
Aber man könnte es ja so machen das der Nutzer sich den Key anfordern lassen kann, per Registierung über eine Seite oder so, dann könnten theoretisch nur registrierte Nutzer die Dateien lesen, is nur so ne Idee, weiß ja gar nicht was du überhaupt machen willst..
[edit]
Der public key muß mitgeliefert werden, um die Daten zu entschlüsseln, also kann jeder mäßig begabte Programmierer die Dateien entschlüsseln.
Wieso das? war RSA nicht so dass den public key jeder kennen darf und nur den Private Key nicht, denn nur wenn man beide hat kann man das auch entschlüsseln. Sprich der public key kann ruhig im Code stehen und den privaten läßt man anfordern.
 
B

Beni

Gast
Na gut, dann fordert der erste Benutzer mal einen Key an... und dann kann er diesen Key mit dem Progi weiterreichen, oder den Algorithmus angucken und die Dateien kurz entschlüsseln und weiterreichen...
 
S

stev.glasow

Gast
Ich würd sagen das hängt von der Situation ab, sprich was da geschützt werden soll - wenn es nämlich irgendwelche Benutzerspezifischendaten sind und der Sinn der Verschlüssung ist diese auch nur dem Nutzer zugänglich zu machen, kann er seinen Key (bzw die entschlüsselten Daten) ja ruhig weiter geben, dann will er es ja. Und wenn er es nicht will sind die Daten halt sicher und jeder ist zufrieden - außer der böse Bubi der an die Daten will :)
 

Illuvatar

Top Contributor
Es ging ihm ja glaube ich auch nur darum, dass nicht Otto Normaluser nicht einfach bloß auf die Datei zu klicken braucht, und sie abspielen kann.
 
S

stev.glasow

Gast
Nagut, wollt ja nur wichtig tun und stand auch nix da :bae:
 

0xdeadbeef

Top Contributor
stevg hat gesagt.:
Den Key im Programm mit zu liefern scheint nie so viel Sinn zumachen, auch bei anderen Sprachen nicht.
So funktioniert aber Authentifizierung. Geht auch nicht anders. Deshalb werden Public Keys ja auch immer schnell geknackt. Damit hat man aber immer noch nicht den Private Key, mit dem z.B. X-Box-Spiele signiert werden usw.
Nur geht es ja hier nicht um das Signieren/Authentifizieren, sondern um das Entschlüsseln und dazu reicht der Public Key natürlich-

Aber man könnte es ja so machen das der Nutzer sich den Key anfordern lassen kann, per Registierung über eine Seite oder so, dann könnten theoretisch nur registrierte Nutzer die Dateien lesen, is nur so ne Idee, weiß ja gar nicht was du überhaupt machen willst..
Auch zwecklos. Sobald der Schlüssel bekannt ist, kann man die Dateien entschlüsseln und beliebig verteilen.

Wieso das? war RSA nicht so dass den public key jeder kennen darf und nur den Private Key nicht, denn nur wenn man beide hat kann man das auch entschlüsseln. Sprich der public key kann ruhig im Code stehen und den privaten läßt man anfordern.
Nein! Mit dem Private Key verschlüsselt man, mit dem Public Key entschlüsselt man. Damit kann niemand die Dateien selber für diesen Public Key verschlüsseln, ohne den Private Key zu kennen. Aber jeder mit dem Public Key kann sie entschlüsseln.

Die Crux ist immer und bleibt immer, daß man die Daten ja auf dem lokalen Rechner entschlüsseln muß. Dazu muß sowohl der Algorithmus als auch der Schlüssel lokal bekannt sein und beide sind somit leicht angreifbar.
Sebst wenn man den Algorithmus und den Schlüssel auf einen Server auslagern würde, also weder Algorithmus noch Quellcode lokal liegen würden, müßten doch die entschlüsselten Daten lokal liegen. Dann könnte man einfach ein manipuliertes Programm aus dem dekompilierten Code erzeugen, daß die entschlüsselten Daten als Dateien abspeichert.
 

abollm

Top Contributor
0xdeadbeef hat gesagt.:
Ich bitte zu bedenken, daß man Java wunderbar decompilieren kann. Dann liegt jeder noch so ausgefuchste (und nach kryptografischen Maßgabenvermutlich eh unsichere) Algorithmus offen. Selbst mit großen Kalibern wie RSA verhält sich das leider so: Der public key muß mitgeliefert werden, um die Daten zu entschlüsseln, also kann jeder mäßig begabte Programmierer die Dateien entschlüsseln.
Es ist also wohl zwecklos, allzuviel Energie in die Verschlüsselung der Dateien zu investieren.

Das mag ja stimmen, aber ich denke es hängt auch immer von der Applikation (Einsatzzweck) und dem Verhältnis Nutzen zu Aufwand ab.

Wie oft habe ich in beruflicher Hinsicht mit kleineren Verschlüsselungen zu tun, bei denen sich bisher kein (0815-) Anwender die von dir skizzierte Mühe des Knackens gemacht hat, gleichwohl das mit ein wenig "Knoff-Hoff" leicht zu machen wäre.

Vordergründig geht es bei vielen einfchen Verschlüsselungen um die Abschreckung der typischen Anwender. Es geht sicherlich nicht darum ausgefuchste programmiererprobte Anwender oder gar Hacker abzuschrecken, zumal derartige Verschlüsselungen solchen Leuten wohl gerade einmal ein müdes Lächeln abringen würden.

Aber vielleicht einmal eine Frage zum Thema:

Ich knobel schon seit einiger Zeit an einem ein wenig komplexeren Verschlüsselungsprinzip für die folgende Aufgabe herum:

Es soll eine relativ einfache, datenbankgestützte Import-Applikation zusammen mit der Datendatei an Kunden ausgeliefert werden. Um Kosten zusparen und sich das Leben auch einfacher zu machen, soll sowohl die Applikation als auch die Datendatei elektronisch versandt werden können, damit der Endanwender den Import selbst ausführen kann.

Allerdings soll bzw. darf der Import nur zusammen mit der gelieferten Importdatei funktionieren. Bei jeder anderen Importdatei muss er den Import verweigern.

Wie würdet ihr das prinzipiell machen?

Ich hatte an einen MD5-Verschlüsselungscode der Datendatei gedacht, der zusammen mit einem Public Key-Code an den Endanwender gesandt wird. Das oben skizzierte grundsätzliche Problem löse ich damit aber auch nicht.
 
S

stev.glasow

Gast
OK das mit dem Public Key und Private Key hatte ich verwechelt, aber um Benutzerdaten(Daten die nicht vor dem Benutzer geschütz werden sondern den Benutzer schützen sollen) zu verschlüsseln ist solch ein Verfahren gut. Dort reicht evtl. so gar ein Verfahren was nur einen Schlüssel nutzt. Oder habe ich was übersehen?
 
S

stev.glasow

Gast
abollm hat gesagt.:
Aber vielleicht einmal eine Frage zum Thema:

Ich knobel schon seit einiger Zeit an einem ein wenig komplexeren Verschlüsselungsprinzip für die folgende Aufgabe herum:

Es soll eine relativ einfache, datenbankgestützte Import-Applikation zusammen mit der Datendatei an Kunden ausgeliefert werden. Um Kosten zusparen und sich das Leben auch einfacher zu machen, soll sowohl die Applikation als auch die Datendatei elektronisch versandt werden können, damit der Endanwender den Import selbst ausführen kann.

Allerdings soll bzw. darf der Import nur zusammen mit der gelieferten Importdatei funktionieren. Bei jeder anderen Importdatei muss er den Import verweigern.

Wie würdet ihr das prinzipiell machen?

Ich hatte an einen MD5-Verschlüsselungscode der Datendatei gedacht, der zusammen mit einem Public Key-Code an den Endanwender gesandt wird. Das oben skizzierte grundsätzliche Problem löse ich damit aber auch nicht.
Wieso nicht? Bei jedem neuen Import gibt es einen neuen Key und fertig ist's. Ohne Key kein Import.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Brauche Hilfe mit Modulo Strategie Allgemeine Java-Themen 2
B Berechnung von Punkten/ If-else Strategie?! Allgemeine Java-Themen 51
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
G Dateien lesen Allgemeine Java-Themen 3
OnDemand Unterschiedliche jar Dateien zusammen führen Allgemeine Java-Themen 8
A Sicheres Löschen von Dateien Allgemeine Java-Themen 7
O git ignore für Intellji braucht es die .idea Dateien? Allgemeine Java-Themen 8
Master3000 Dateien zwischen verschiedenen Netzwerken senden Allgemeine Java-Themen 17
L Jar Dateien in Classpath laden ab JDK 9+ Allgemeine Java-Themen 11
d.lumpi JDA eclipse dateien versenden Allgemeine Java-Themen 4
O Produziert das Tool "jpackage" (ab JDK 14) .exe Dateien, die auf einer Zielumgebung ohne JRE lauffähig sind ?` Allgemeine Java-Themen 7
O Wie kann ich in Apache POI (Excel Dateien schreiben) Datumszellen in Excel erzeugen Allgemeine Java-Themen 6
T Meine Frage lautet wie ich 2 CSV Dateien miteinander in Java verbinde und Spalten die zueinander gehören durch den gleichen Key zusammen ausgebe? Allgemeine Java-Themen 5
L Dateien richtig auslesen Allgemeine Java-Themen 6
L Eclipse Runnable Jar mit Dateien Allgemeine Java-Themen 8
W Server-Thread schreibt nicht alle Dateien Allgemeine Java-Themen 6
MiMa Logging mit log4j2 in verschiedene Dateien? Allgemeine Java-Themen 22
I Klassen aus Jar-Dateien aus anderem Ordner laden Allgemeine Java-Themen 3
O jar und EXE Dateien, Pfade zur Laufzeit Allgemeine Java-Themen 1
W Dateien werden nicht gelöscht - warum? Allgemeine Java-Themen 12
B Dateien / Bilder von "webapp" Ordner bekommen? Allgemeine Java-Themen 1
P Erste Schritte Dateien löschen Allgemeine Java-Themen 4
H Erste Schritte Ausführbare Dateien lassen sich nicht starten Allgemeine Java-Themen 5
I Java als exe veröffentlichen inkl. kompletter Dateien Allgemeine Java-Themen 4
M Drucken von Dateien Allgemeine Java-Themen 10
J jar Dateien unter Windows 7 mit spezifischer jdk öffnen Allgemeine Java-Themen 2
I Laden von Informationen aus Dateien: Austauschbarkeit: 2 Dateien sinnvoll? Allgemeine Java-Themen 2
N Temporäre Dateien Allgemeine Java-Themen 3
Bluedaishi Druck Probleme mit PDF dateien Allgemeine Java-Themen 4
M Dateien schneller kopieren Allgemeine Java-Themen 1
M Dateien nach kopieren vergleichen Allgemeine Java-Themen 9
Arif Input/Output Dateien im Jar-Programm speichern Allgemeine Java-Themen 12
D Collections.sort funktioniert nicht in exportierten .class Dateien Allgemeine Java-Themen 10
K Große JSON-Dateien schnell und effizient verarbeiten Allgemeine Java-Themen 16
J Programm zum Download von CSV-Dateien Allgemeine Java-Themen 4
V Eclipse .class Dateien Allgemeine Java-Themen 9
B Download von dateien Allgemeine Java-Themen 2
K Nicht alle class-Dateien im JRE? Allgemeine Java-Themen 2
MiMa Log4j in Dateien mit eigenem Namen schreiben Allgemeine Java-Themen 3
D Kopieren von Dateien aus einem Ordner in einen anderen Allgemeine Java-Themen 6
C Dateien in Jar aufrufen Allgemeine Java-Themen 14
X NetBeans Bilder und andere Dateien ins .jar schreiben und wieder aus .jar lesen Allgemeine Java-Themen 6
JavaWolf165 Externe .jar-Dateien in .jar-Datei intigrieren Allgemeine Java-Themen 0
X Dateien für Benutzer Sperren Allgemeine Java-Themen 4
D Dateien aus den Internet herunterladen Allgemeine Java-Themen 6
L Methoden Dateien älter als 30 Tage? Allgemeine Java-Themen 11
J .exe Dateien werden nicht gestartet obwohl Pfad richtig Allgemeine Java-Themen 6
RalleYTN Classpath Native Dateien(DLL, SO, JNILIB) Allgemeine Java-Themen 2
J Java .jar Dateien zusammenführen Allgemeine Java-Themen 1
L Best Practice Log Dateien analysieren und eventuell passende Daten am Chart darstellen Allgemeine Java-Themen 1
F Platzsparende Alternative zu .txt-Dateien Allgemeine Java-Themen 12
X Dateien von der Jar zum Ordner kopieren. Allgemeine Java-Themen 4
Ananaskirsche Input/Output Dateien im Ordner Allgemeine Java-Themen 8
A Input/Output Liste der Dateien in einem Ordner in einer Jar Datei erhalten Allgemeine Java-Themen 11
X Herunterladen von Dateien aus dem Internet Allgemeine Java-Themen 2
V Input/Output Sound Dateien aus Jar laden Allgemeine Java-Themen 18
M Dateien aus einem Verzeichnis auf einem Server auflisten Allgemeine Java-Themen 5
H PDFBox akzeptiert Dateien nicht Allgemeine Java-Themen 1
B Java - einlesen von Dateien und herausschneiden von XML Dokumenten Allgemeine Java-Themen 5
A Input/Output Spätes Schreiben von Dateien der JVM Allgemeine Java-Themen 3
M Zwei unterschiedliche JAR Dateien mit ANT erstellen Allgemeine Java-Themen 8
Thallius Dateien Zippen und wieder heraus lesen? Allgemeine Java-Themen 4
T Dateien zur Laufzeit in Java-Programm packen? Allgemeine Java-Themen 3
Maxim6394 Jar Dateien starten nicht Allgemeine Java-Themen 7
U Eclipse Java Programm beschädigt .tar.gz dateien beim Entpacken Allgemeine Java-Themen 7
GUI-Programmer Mp3 Dateien bearbeiten und speichern Allgemeine Java-Themen 3
S Exklusive Sperre auf Dateien: FileChannel, FileLock Allgemeine Java-Themen 0
Bluedaishi Dateien löschen die älter als das aktuelle Datum sind Allgemeine Java-Themen 9
OnDemand Dateien einlesen und vergleichen Allgemeine Java-Themen 1
T Ordner samt Dateien kopieren Allgemeine Java-Themen 11
R Importieren von Txt-Dateien in AbstractTableModel Allgemeine Java-Themen 0
C Dateien komprimieren und verschlüsseln Allgemeine Java-Themen 3
F Eclipse Eclipse kompiliert nicht mehr die aktuellen Dateien Allgemeine Java-Themen 2
R Java Dateien "verschlüsseln" Allgemeine Java-Themen 2
L Passwortgeschützte Dateien Allgemeine Java-Themen 6
A Datentypen Dateien umbenennen mit Dateiendungen - Dateiendungen ausgeben Allgemeine Java-Themen 2
L Reparieren beschädigter PDF Dateien Allgemeine Java-Themen 3
F Dateien ins Array lagern und Optionen zur Auswahl, Allgemeine Java-Themen 5
J XML Dateien vergleichen Allgemeine Java-Themen 9
B Umbenennen von Dateien Allgemeine Java-Themen 2
B Erste Schritte Plugin erkennen und Class Dateien anzeigen lassen Allgemeine Java-Themen 3
W Best Practice Dateien parsen Allgemeine Java-Themen 3
B Dateien verschwinden aus bin Ordner?! Allgemeine Java-Themen 5
B Dateien prüfen auf Gleichheit Allgemeine Java-Themen 5
M Java Dateien verschieben Allgemeine Java-Themen 2
R Wav-Dateien wiederholt abspielen Allgemeine Java-Themen 2
L Methoden Verarbeitung von Größen Dateien Allgemeine Java-Themen 9
B Alt-Griechisch Zeichen in Dateien Allgemeine Java-Themen 2
M JAR Dateien nur mit Compiler Level 1.6 ausführbar Allgemeine Java-Themen 8
E Zugriff auf Dateien im Filesystem überwachen Allgemeine Java-Themen 5
G .jar Dateien lassen sich nicht mehr öffnen Allgemeine Java-Themen 2
M Datentypen Jar-Dateien öffnen nicht mit Java Allgemeine Java-Themen 4
C Mit Java PDF Dateien bearbeiten. Allgemeine Java-Themen 2
B Input/Output .java-Dateien auslesen Allgemeine Java-Themen 17
B Methoden Alle Methoden und Variablen aus Java-Dateien auslesen. Allgemeine Java-Themen 7
E Vorschläge, effizientes Hashing von Dateien für vergleich Allgemeine Java-Themen 7
W Vergleich eines Datenträgers auf neue Dateien Allgemeine Java-Themen 14
C Java-Dateien in einheitlichen Zeichensatz umwandeln Allgemeine Java-Themen 10
E Dateien aus / im JAR Allgemeine Java-Themen 2
K LibreOffice Tabelle Dateien im Format .ods bearbeiten Allgemeine Java-Themen 2

Ähnliche Java Themen


Oben