php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 07-10-2008, 23:13
StefanKittel
 Newbie
Links : Onlinestatus : StefanKittel ist offline
Registriert seit: Oct 2008
Ort: Hamburg
Beiträge: 6
StefanKittel ist zur Zeit noch ein unbeschriebenes Blatt
Question Datenübertragung zu PHP script signieren?

Hallo,

ich habe mal eine einfache Frage :-)

Ich programmiere gerade eine Software für Windows. Diese ist zur Zeit als Freeware verfügbar. Ich bin aber der Meinung, dass diese Software gut genug ist um damit Geld zu verdienen.
http://www.skittel.de/hpprojekte/p2s/index.html

Als Kopierschutz möchte ich, dass man die Software per Internet aktivieren muss. Dazu steht mir ein 1und1 Server mit Apache, PHP und MySQL zur verfügung.

Das ganze sollte im Rahmen bleiben. Ich möchte eine Lösung die einfach ist aber effektiv.

Ich wollte das so machen, als dass jede Lizenz in der DB hinterlegt ist und das Programm beim 1. Start die Lizenz per PHP abfragt.

C: http://www.skittel.de/p2s/activate?Licence=0810067
S: OK
oder
S: Lizenz abgelaufen

Soweit so einfach.
Nun sollte es aber nicht zu einfach sein.
Böse Person A installiert WAMP, gibt ihr die passene IP und erstellt eine PHP Seite die immer "OK" zurückliefert.

das einfachste was mir einfiel ist MD5
C: http://www.skittel.de/p2s/activate?L...067&ID=1234556
S: OK|654321

Der Client schickt noch eine zufällige Zahl mit.
Der Server macht aus "DIESIST" Licence ID "GEHEIM" die MD5 und liefert Sie zurück.
Der Client vergleich das

Oder gibt es da was besseres/einfacheres?

Vielen Dank für Tipps

Stefan
Mit Zitat antworten
  #2 (permalink)  
Alt 07-10-2008, 23:22
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

PHP kann auch verschlüsseln.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3 (permalink)  
Alt 07-10-2008, 23:24
StefanKittel
 Newbie
Links : Onlinestatus : StefanKittel ist offline
Registriert seit: Oct 2008
Ort: Hamburg
Beiträge: 6
StefanKittel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von TobiaZ
PHP kann auch verschlüsseln.
Das würde nur sinn machen, wenn ich die Identität des Servers feststellen könnte. SSL oder ähnliches steht mir aber nicht zur Verfügung.
Wie aufwendig ist puclic/secret key mit PHP?
Mit Zitat antworten
  #4 (permalink)  
Alt 07-10-2008, 23:27
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Das würde nur sinn machen, wenn ich die Identität des Servers feststellen könnte. SSL oder ähnliches steht mir aber nicht zur Verfügung.
Warum? Muss ja nicht gleich SSL sein.

Client sendet verschlüsselte Anfrage, Server entschlüsselt und antwortet auch verschlüsselt, Client entschlüsselt diese wiederum und entscheidet ob gültig oder nicht.

Musst mal gucken, was 1&1 dir da bietet.

ansonsten kannst du natürlich auch einfach die Anfrage hashen. Und die Checksumme mitschicken. Der Server antwortet genauso.

Der Algorithmus ist nur dem Server und der Software bekannt.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!

Geändert von TobiaZ (07-10-2008 um 23:31 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 07-10-2008, 23:55
StefanKittel
 Newbie
Links : Onlinestatus : StefanKittel ist offline
Registriert seit: Oct 2008
Ort: Hamburg
Beiträge: 6
StefanKittel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von TobiaZ
Warum? Muss ja nicht gleich SSL sein.
Client sendet verschlüsselte Anfrage, Server entschlüsselt und antwortet auch verschlüsselt, Client entschlüsselt diese wiederum und entscheidet ob gültig oder nicht.
Hast Du da mal Infos zu oder einen Link?

Zitat:
Original geschrieben von TobiaZ
ansonsten kannst du natürlich auch einfach die Anfrage hashen. Und die Checksumme mitschicken. Der Server antwortet genauso.
Der Algorithmus ist nur dem Server und der Software bekannt.
Das wäre ja das mit der MD5 wie mir das im Augenblick vorschwebt
Mit Zitat antworten
  #6 (permalink)  
Alt 08-10-2008, 00:48
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Hast Du da mal Infos zu oder einen Link?
mcrypt fällt mir so spontan ein, ist aber schon Jahre her, dass ich mich da PHP-Seitig mit beschäftigt habe...

Zitat:
Das wäre ja das mit der MD5 wie mir das im Augenblick vorschwebt
Mal davon abgesehen, dass der MD5 Algorithmus relativ bekannt ist, der Hash sogar nem ungeübten Nutzer ins Auge springt und deine Checksumme somit jederzeit erzeugt werden kann...
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #7 (permalink)  
Alt 08-10-2008, 01:33
StefanKittel
 Newbie
Links : Onlinestatus : StefanKittel ist offline
Registriert seit: Oct 2008
Ort: Hamburg
Beiträge: 6
StefanKittel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von TobiaZ
Mal davon abgesehen, dass der MD5 Algorithmus relativ bekannt ist, der Hash sogar nem ungeübten Nutzer ins Auge springt und deine Checksumme somit jederzeit erzeugt werden kann...
Aber nur wenn er den String kennt den ich davor und dahinter klebe
Der Server macht aus ("DIESIST" + Licence + ID "GEHEIM") die MD5 und liefert Sie zurück. so kann ich sicherstellen dass der server richtig ist.
Mit Zitat antworten
  #8 (permalink)  
Alt 08-10-2008, 11:11
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Somit ist dein Algorithmus aber nicht mehr MD5 sondern ein neu von dir definierter Algorithmus, also genau das, was ich beschrieben habe!
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #9 (permalink)  
Alt 08-10-2008, 12:09
Piremilok
 Registrierter Benutzer
Links : Onlinestatus : Piremilok ist offline
Registriert seit: Jul 2006
Beiträge: 95
Piremilok ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hey,

was wäre denn mit der Möglichkeit die Seriennummer zurück zuschicken?
Mich würde es stören, wenn ein Programm, welches ins Internet connecten muss jedesmal noch gleich eine andere Abfrage mit ausführt.

Lass doch die Überprüfung der Seriennummer und die Laufzeit im Programm selbst drinn.

Aktivieren muss man es übers Internet, wenn der Name und der Key richtig sind, dann wird eine interne Seriennummer zurückgeschickt, die die Software freischaltet.
In diese Seriennummer kannst du dann ja noch einmal den Namen, die Laufzeit oder sonstiges reinschreiben.
Und jedesmal, wenn die Seriennummer ungültig wird, connected er erneut zu deinem Server und wenn die Lizenz noch gültig ist, bekommt er eine neue Seriennummer.

Den Key könntest du auch als "externe" Seriennummer ausweisen, also das Passwort, das der Benutzer erhält.

Aber denk daran, wie viel du den Benutzern zumuten darfst ;-)


Soweit meine Überlegungen...

gruß
Piremilok
Mit Zitat antworten
  #10 (permalink)  
Alt 08-10-2008, 15:07
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Du hast das ganze in Ansätzen bereits beschrieben, aber der Vollständigkeit und Information halber hier nochmal die korrekte technische Bezeichnung inklusive möglicher Angriffsvektoren: http://de.wikipedia.org/wiki/Challen...hentifizierung
Mit Zitat antworten
  #11 (permalink)  
Alt 10-10-2008, 08:50
Piremilok
 Registrierter Benutzer
Links : Onlinestatus : Piremilok ist offline
Registriert seit: Jul 2006
Beiträge: 95
Piremilok ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sehr interessanter beitrag.
vielen dank dafür.

gruß
Piremilok
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:36 Uhr.