定制 liamdennehy/http-signatures-php 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

liamdennehy/http-signatures-php

最新稳定版本:v11.0.0

Composer 安装命令:

composer require liamdennehy/http-signatures-php

包简介

Sign and verify PSR-7 HTTP messages with HMAC and RSA keys

README 文档

README

Build Status Documentation Status

PHP implementation of Signing HTTP Messages draft specification; allowing cryptographic signing and verifying of PSR-7 messages.

Features

  • Sign HTTP Messages according to Signing HTTP Message draft IETF RFC version 10
  • Sign & verify messages using HMACs
  • Sign & verify messages with Asymmetric Keys:
    • RSA, DSA, EC
  • Add a Digest header, or automatically add the header while signing in a single operation
  • Verify a Digest header while verifying the signature

Complete documentation for this library can be found at Read The Docs

WARNING: Version 11 of this library incorporates phpseclib's ongoing work on their version 3.0 implementation. If there are any problems please log an issue, but as the library has not been stabilised or completely reviewed you are advised to proceed with caution, or remain at v10 of this library until phpseclib 3.0 is complete and the MAJOR version of this library is bumped.

Simple Usage

Add liamdennehy/http-signatures-php to your composer.json.

  • A message is assumed to be a PSR-7 compatible Request or Response.
  • A Context object is used to configure the signature parameters, and prepare the verifier functionality.
  • The signWithDigest function witll add a Digest header and digitally sign the message in a new Signature header.

Signing a PSR-7 request $message before sending:

  use HttpSignatures\Context;

  $context = new HttpSignatures\Context([
    'keys' => ['mykey' => file_get_contents('/path/to/privatekeyfile')],
    'algorithm' => 'rsa-sha256',
    'headers' => ['(request-target)', 'Date'],
  ]);

  $context->signer()->signWithDigest($message);

Complete documentation for this library for other ose cases can be found at Read The Docs

Contributing

Pull Requests are welcome, as are issue reports if you encounter any problems.

Note: Due to composer dependencies for the reference implementation composer install prior to local development is only posible on PHP 7.1, or by manually removing the incompatible dependencies using the command (wrapped for readability):

  composer remove --dev \
  nyholm/psr7 nyholm/psr7-server riswallsmith/buzz \
  endframework/zend-httphandlerrunner

License

HTTP Signatures PHP library is licensed under The MIT License (MIT).

Documentation of the library is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

Details are in the LICENSE file

统计信息

  • 总下载量: 127.68k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 9
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 9
  • Watchers: 2
  • Forks: 31
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-08-01