Downloads Adresse verschlüsseln

In der Datenbank werden einfach numerischer Parameter und tatsächlicher Dateiname/Dateipfad assoziiert. So ist für Außenstehende nur der numerische Parameter ersichlich.
 
Ah ok :)

Ich dachte du meinst etwas anderes...

Also soll ich die dateien z.b. als ?file=2511.... verlinken bzw. anbieten ?

Währe sicher eine gute Lösung. Habe das bisher auch so vor gehabt nur geht es mir ja nicht darum dann man es nicht aus dem Link erkennen kann sondern eher, dass der "Besucher" der die Dateien verlinken möchte, wirklich nur saugen kann wenn er wirklich auf der Seite ist.

Also eher vorher eine Prüf-Prozedur, damit das System weis "ok, du darfst!"

Meine Idee war eigentlich nun folgende, dass ich z.b. mit date() einen Wert ermittle, und diesen dann mit md5() verschlüsseln lasse. Nur ergibt es wenig sinn, wenn ich um 23:59 auf den Download klicke und um 0:01 wirklich downloaden will, und der Download nicht geht...

Deshalb gilt es, einen einheitlichen / unfälschbaren wert (hash) zu erstellen, welcher abgefragt wird. Nur welcher ? ID alleine währe ja zu einfach ;)

Danke
 
Folgendes wäre eine einfache Realisierung einer zeitabhängigen Prüfsumme mithilfe der Base64-Kodierung:
PHP:
<?php

	// Kodierung der Prüfsumme mit einer Wertigkeit von 60 Sekunden
	$checksum = str_rot13(substr(base64_encode(time() + 60), 0, -2));

	// Dekodierug und Prüfung der Prüfsumme
	$expiration = base64_decode(str_rot13($checksum));
	if( $expitation == intval($expiration) && $expiration >= time() ) {
		// Aussage wahr
	}

?>
Die Base64-Kodierung ist zwar nicht die sicherste, doch zu Präsentationszwecken sollte sie vorerst reichen.
 
Zurück