var server = http.createServer(function (req, res) {
  var parsed = httpSignature.parseRequest(req)
  var publicKeyPEM = publicKeyPEMs[parsed.keyId]
  var verified = httpSignature.verifySignature(parsed, publicKeyPEM)
  res.writeHead(verified ? 200 : 400)
  res.end()
})
Esempio n. 2
0
https.createServer(options, function (req, res) {
    for(var item in req.headers) {
        console.log(item + ": " + req.headers[item]);
    }

    var rc = 202;
    var parsed = httpSignature.parseRequest(req);
    var pub = fs.readFileSync(parsed.keyId, 'ascii');
    if (!httpSignature.verifySignature(parsed, pub))
        rc = 401;

    res.writeHead(rc);
    res.end();
}).listen(8443);
Esempio n. 3
0
 rs.sign(function (err2, authz) {
     t.error(err2);
     var req = {
         headers: {
             authorization: authz,
             date: 'foo'
         }
     };
     var sig = httpSignature.parseRequest(req, {});
     t.strictEqual(sig.scheme, 'Signature');
     t.strictEqual(sig.params.keyId, '/foo/keys/' + ID_RSA_MD5);
     t.strictEqual(sig.params.algorithm, 'rsa-sha256');
     t.ok(httpSignature.verifySignature(sig, ID_RSA));
     t.end();
 });
Esempio n. 4
0
 .spread(function (keyFound, key) {
   if (!keyFound) {
     return Promise.reject('key not found');
   }
   return httpSignature.verifySignature( parsedSignature, httpSignature.sshKeyToPEM(key.PublicKey));
 })