Browse Source

Adding the date to signed get requests as well

pull/6451/head
Michael 2 years ago
parent
commit
9bec202232
1 changed files with 4 additions and 3 deletions
  1. +4
    -3
      src/Util/HTTPSignature.php

+ 4
- 3
src/Util/HTTPSignature.php View File

@ -336,14 +336,15 @@ class HTTPSignature
// Header data that is about to be signed.
$host = parse_url($request, PHP_URL_HOST);
$path = parse_url($request, PHP_URL_PATH);
$date = DateTimeFormat::utcNow(DateTimeFormat::HTTP);
$headers = ['Host: ' . $host];
$headers = ['Date: ' . $date, 'Host: ' . $host];
$signed_data = "(request-target): get " . $path . "\nhost: " . $host;
$signed_data = "(request-target): get " . $path . "\ndate: ". $date . "\nhost: " . $host;
$signature = base64_encode(Crypto::rsaSign($signed_data, $owner['uprvkey'], 'sha256'));
$headers[] = 'Signature: keyId="' . $owner['url'] . '#main-key' . '",algorithm="rsa-sha256",headers="(request-target) host",signature="' . $signature . '"';
$headers[] = 'Signature: keyId="' . $owner['url'] . '#main-key' . '",algorithm="rsa-sha256",headers="(request-target) date host",signature="' . $signature . '"';
$headers[] = 'Accept: application/activity+json, application/ld+json';


Loading…
Cancel
Save