Also, ich habe das ganze aus einem funktionierenden PHP-Skript übernommen und versucht das ganze in Delphi umzusetzen. Das PHP-Skript ist wie folgt:
Code:
<?php
session_start();
$t = $_REQUEST["t"];
$k = $_REQUEST["k"];
if ((empty($t)) || (empty($k)))
{
die;
}
$aktuelle = gmdate("Y-m-d\TH:i:s\Z");
$aktuellezeit = urlencode($aktuelle);
$signature1 = hash_hmac("sha256", $t, $k, true);
$signature2 = base64_encode($signature1);
print "Timestamp: \t $aktuelle
";
print "Timestamp (URLEnccode): \t $aktuellezeit
";
print "Text: \t $t
";
print "Key: \t $k
";
print "Result: \t $signature1
";
print "Result_Base64: \t $signature2";
?>
Damit kann ich mir eine erfolgreiche HMAC-Verschlüsselung aus PHP ausgeben lassen. Jetzt versuche ich das ganze mit Wolfgangs CRC/Hash-Units in Delphi 2009 umzusetzen (siehe Anhang). Problem: Die Ergebnisse stimmen nicht überein. Ich hoffe jemand kann mir sagen, wo mein Fehler ist. Der Klartext ist "Test" und der Schlüssel ist "geheim". PHP liefert "eAGKtiF4J8GZY4TelvKwbxNTTMxeUjKfYYaPae6vIiQ=" , Delphi aber andere Werte.