AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Verschlüsselter Dateidownload übers Internet

Ein Thema von Sunec · begonnen am 3. Aug 2015 · letzter Beitrag vom 3. Aug 2015
Antwort Antwort
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.154 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 09:34
Leg die Datei einfach auf Deinen Webserver...

Dann mit dem eigenen Programm runter laden und "entpacken"...

Ohne Deine Software kann keiner etwas mit der Datei anfangen, weil keine die Entschlüsselung kennt...

Dann kannst Du die URL auch in Google eintragen...

So Einfach...
  Mit Zitat antworten Zitat
Brunhilde

Registriert seit: 5. Mär 2009
9 Beiträge
 
#2

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 11:03
Leider schreibst Du nicht wo der Webserver steht, LAN oder WAN? Bei einem WAN Standort gehe davon aus das nichts sicher ist was dort gespeichert ist. Es wird nur sicher wenn es verschlüsselt ist.

Ein Packer wie 7z geht mit Verschlüsselung und lässt sich auch in Delphi aufrufen. Des weiteren kannst Du ein FTP oder SFTP Protokoll benutzen um Dateien hoch oder runter zu laden.

Im FTP Server, auf deinem Webserver, kannst Du dann Benutzer einrichten die auf bestimmte Dateien zugriff haben oder nicht. Die Rechte Regeln sind aber schon wieder ein Thema für sich.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.154 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 11:33
Leider schreibst Du nicht wo der Webserver steht, LAN oder WAN? Bei einem WAN Standort gehe davon aus das nichts sicher ist was dort gespeichert ist. Es wird nur sicher wenn es verschlüsselt ist.

Ein Packer wie 7z geht mit Verschlüsselung und lässt sich auch in Delphi aufrufen. Des weiteren kannst Du ein FTP oder SFTP Protokoll benutzen um Dateien hoch oder runter zu laden.

Im FTP Server, auf deinem Webserver, kannst Du dann Benutzer einrichten die auf bestimmte Dateien zugriff haben oder nicht. Die Rechte Regeln sind aber schon wieder ein Thema für sich.
Ist ja auch alles überhaupt nicht nötig...


Ich nehme mir eine Datei... Packe die mit einem beliebigen Packer... Dann zerhacke ich die Datei in 256 Byte happchen bei großen oder 16 Byte bei kleinen Dateien...

Dann füge ich die Datei per Zufall wieder zusammen und merke mir wo welcher Happen jetzt steht in meinen Programm...

Ich kann natürlich auch AES/RSA nehmen... Aber das andere geht ohne "alles"...
  Mit Zitat antworten Zitat
Benutzerbild von frankyboy1974
frankyboy1974

Registriert seit: 7. Apr 2015
Ort: SH
169 Beiträge
 
Delphi XE7 Professional
 
#4

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 11:40
Hallo,

@Mavarik
Zitat:
Ohne Deine Software kann keiner etwas mit der Datei anfangen, weil keine die Entschlüsselung kennt...

Dann kannst Du die URL auch in Google eintragen...
weil heute eine Verschlüsselung als sicher gilt, muss dies nicht für immer gelten.

Der TE wollte ein Verfahren, dass wie folgt funktioniert

Zitat:
Allerdings möchte ich, dass die Datei nur über mein Programm heruntergeladen werden kann und nicht über den direkten Aufruf der URL.
Dann musst du tatsächlich erstmal eine Authentifizierung durchführen, dies kann über
Zitat:
OAuth2
erfolgen. Es gibt sicher auch noch andere Verfahren, um sicherzustellen ob jemand die Datei herunterladen darf oder dieser auch imstande ist diese zu entschlüsseln.

mfg

frank
Java ist auch eine Insel.
Ist Delphi von Oracle?
In meiner Buchstabensuppen fehlt das C++!
  Mit Zitat antworten Zitat
Sunec

Registriert seit: 31. Aug 2013
88 Beiträge
 
Delphi XE8 Architect
 
#5

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 17:35
Danke schonmal für die rege Beteiligung am Thema!

Das ganze ist ein Hobby-Projekt und nichts kommerzielles. Dies bedeutet, dass möglichst geringe Kosten anfallen sollten (< 100€).

Leider schreibst Du nicht wo der Webserver steht, LAN oder WAN?
Der Webserver steht bei einem Hoster, nicht lokal.

@Mavarik
Daran habe ich ehrlich gesagt noch garnicht gedacht. Das Konzept mit der Decryption beim Client werde ich mir auf jeden Fall genauer ansehen. Mit etwas Aufwand sollte dies auch ausreichend Sicherheit bieten.

Allerdings wurde hierbei die Herangehensweise (Download nur per Programm und nicht per direktem Aufruf der URL) nicht berücksichtigt. Allerdings schließt das eine das andere ja nicht aus und eine Kombination ist möglich.

Das Vorhaben ist schlichtweg nicht möglich. Der Anwender hat vollen Zugriff auf seinen Computer und kann somit alles Geschehen dort mitlesen und manipulieren. Eine Verschlüsselung bringt nichts, da der Schlüssel auch auf dem PC liegen muss. Eine Authentifizierung bringt ebenso nichts, da der Schlüssel mitgeliefert werden muss.
Das eine 100%ige Sicherheit nicht gewährleistet werden kann ist mir bewusst. Irgendwie ist man doch immer angreifbar und selbst der beste Sicherheitsmechanismus kann geknackt werden.

Die Thematik an sich ist jedoch sehr intressant und da das Projekt aus meiner Motivation entsteht und ich keinen "Abgabetermin" habe kann ich mir auch Zeit lassen.


Ich möchte das Ganze nur so sicher wie möglich halten.

Möglicherweise ist eine Art "Streamer" recht gut realisierbar.
  1. Der Benutzer hat ein Programm (den Streamer) auf dem Rechner.
  2. Nachdem er diesen startet muss er sich authentifizieren (durch bspw. Username / PW oder aber Lizenzdatei).
  3. Ist diese erfolgreich läd der Streamer das eigentliche "Programm / Datei / Modul" in seinen Speicher.
  4. Nun erfolgt die Autorisierung im Programm selbst, ohne das etwas auf die Festplatte geladen wurde.
  5. Ist der Benutzer berechtigt sich die Datei anzusehen / Programm zu starten / Modul zu laden wird dies getan

Was haltet ihr davon?

Geändert von Sunec ( 3. Aug 2015 um 17:38 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.154 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 18:04
Möglicherweise ist eine Art "Streamer" recht gut realisierbar.
  1. Der Benutzer hat ein Programm (den Streamer) auf dem Rechner.
  2. Nachdem er diesen startet muss er sich authentifizieren (durch bspw. Username / PW oder aber Lizenzdatei).
  3. Ist diese erfolgreich läd der Streamer das eigentliche "Programm / Datei / Modul" in seinen Speicher.
  4. Nun erfolgt die Autorisierung im Programm selbst, ohne das etwas auf die Festplatte geladen wurde.
  5. Ist der Benutzer berechtigt sich die Datei anzusehen / Programm zu starten / Modul zu laden wird dies getan

Was haltet ihr davon?
Wie schon gesagt... Eine Routine an einer Stelle die ggf. och ein true oder false zurück liefert, kann "man" leicht finden und mit NOP's überschreiben... Das ist dann i.d.R. der Knackpunkt.
Noch besser, wenn dahinter der MessageDLG 'Sie haben keine Berechtigung' steht...

Also alle statischen Texte verschlüsseln...
Keine Proceduraufrufe für die Kontrolle, sondern Ein Pointer auf einen Pointer auf eine Liste von Adressen die Du berechnest und dann zum Pointer springen.
So in dieser "Richtung"
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 18:10
Wenn der Benutzer sich anmelden muss, dann baut man daraus einen Hash und schickt diesen zum Server (Salzen bzw. mit einem Challenge vom Server). Der prüft und gibt dann den Download frei.

Die Verbindung mit SSL und schon ist das relativ dicht.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#8

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 18:56
...Die Verbindung mit SSL und schon ist das relativ dicht.
Aber an SSL scheitert's doch schon meistens finanziell. Ein Zertifikat selber kaufen, oder eines beim Provider "mieten", oder was auch immer, wie ich schon vorher schrieb, ein bisserl was kostet es eben, und das ist dann das Aus für Hobbyprojekte. Oder gibt's da was umsonst? Ist mir jedenfalls nichts bekannt.
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#9

AW: Verschlüsselter Dateidownload übers Internet

  Alt 3. Aug 2015, 19:01
Oder gibt's da was umsonst? Ist mir jedenfalls nichts bekannt.
Gibt es: www.startssl.com, wobei das weniger umsonst als kostenfrei ist . Aber ein selbsterzeugtes Zertifikat ist jetzt nicht so schlimm finde ich, es sei denn, man muss es auf (vielen) fremden Rechnern ausrollen.

MfG Dalai
  Mit Zitat antworten Zitat
Antwort Antwort


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 02:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz