⚝
One Hat Cyber Team
⚝
Your IP:
172.22.0.1
Server IP:
151.80.20.34
Server:
Linux 794f04d97d5e 5.15.0-143-generic #153-Ubuntu SMP Fri Jun 13 19:10:45 UTC 2025 x86_64
Server Software:
Apache/2.4.62 (Debian)
PHP Version:
8.2.28
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
html
/
vendor
/
aws
/
aws-sdk-php
/
src
/
View File Name :
PhpHash.php
<?php namespace Aws; /** * Incremental hashing using PHP's hash functions. */ class PhpHash implements HashInterface { /** @var resource|\HashContext */ private $context; /** @var string */ private $algo; /** @var array */ private $options; /** @var string */ private $hash; /** * @param string $algo Hashing algorithm. One of PHP's hash_algos() * return values (e.g. md5, sha1, etc...). * @param array $options Associative array of hashing options: * - key: Secret key used with the hashing algorithm. * - base64: Set to true to base64 encode the value when complete. */ public function __construct($algo, array $options = []) { $this->algo = $algo; $this->options = $options; } public function update($data) { if ($this->hash !== null) { $this->reset(); } hash_update($this->getContext(), $data); } public function complete() { if ($this->hash) { return $this->hash; } $this->hash = hash_final($this->getContext(), true); if (isset($this->options['base64']) && $this->options['base64']) { $this->hash = base64_encode($this->hash); } return $this->hash; } public function reset() { $this->context = $this->hash = null; } /** * Get a hash context or create one if needed * * @return resource|\HashContext */ private function getContext() { if (!$this->context) { $key = isset($this->options['key']) ? $this->options['key'] : ''; $this->context = hash_init( $this->algo, $key ? HASH_HMAC : 0, $key ); } return $this->context; } }