i2crm/psr-7-stream-hkdf
最新稳定版本:v1.0.3
Composer 安装命令:
composer require i2crm/psr-7-stream-hkdf
包简介
Encrypting and decrypting streams
关键字:
README 文档
README
This package provides decorators for PSR-7 streams to encrypt, decrypt, and generate sidecar files for media streams using algorithms similar to those used by WhatsApp.
Install
Install via Composer:
composer require "i2crm/psr-7-stream-hkdf"
use GuzzleHttp\Psr7\Utils;
use i2crm\EncryptionStreams\Decorators\MediaStreamDecrypting;
use i2crm\EncryptionStreams\Decorators\MediaStreamEncrypting;
use i2crm\EncryptionStreams\Services\Crypt;
use i2crm\EncryptionStreams\ValueObjects\HKDF;
$mediaKey = file_get_contents(__DIR__.'/../samples/IMAGE.key');
$applicationInfo = 'WhatsApp Image Keys';
$data = file_get_contents(__DIR__.'/../samples/IMAGE.original');
// Streams for data example, client code decides where to write
$inputStream = Utils::streamFor($data);
$encryptedStream = Utils::streamFor('');
$decryptedStream = Utils::streamFor('');
$hkdf = HKDF::make($mediaKey, $applicationInfo);
// Encrypt the data
(new Crypt($encryptedStream))->process(MediaStreamEncrypting::make($inputStream, $hkdf->split()));
$encryptedStream->rewind();
// Decrypt
(new Crypt($decryptedStream))->process(MediaStreamDecrypting::make($encryptedStream, $hkdf->split()));
$decryptedStream->rewind();
Tests
php vendor/bin/codecept run
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-11-20