PHP 클래스 CI_Encryption, TastyIgniter

Provides two-way keyed encryption via PHP's MCrypt and/or OpenSSL extensions.
파일 보기 프로젝트 열기: tastyigniter/tastyigniter 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$_cipher string Encryption cipher
$_digests array name => digest size pairs
$_driver string PHP extension to be used
$_drivers array List of usable drivers (PHP extensions)
$_handle mixed Cipher handle
$_key string Encryption key
$_mode string Cipher mode
$_modes array List of available modes
$func_override boolean mbstring.func_override flag

공개 메소드들

메소드 설명
__construct ( array $params = [] ) : void Class constructor
__get ( string $key ) : mixed __get() magic
create_key ( integer $length ) : string Create a random key
decrypt ( string $data, array $params = NULL ) : string Decrypt
encrypt ( string $data, array $params = NULL ) : string Encrypt
hkdf ( $key, $digest = 'sha512', $salt = NULL, $length = NULL, $info = '' ) : string HKDF
initialize ( array $params ) : CI_Encryption Initialize

보호된 메소드들

메소드 설명
_cipher_alias ( string &$cipher ) : void Cipher alias
_get_params ( array $params ) : array Get params
_mcrypt_decrypt ( string $data, array $params ) : string Decrypt via MCrypt
_mcrypt_encrypt ( string $data, array $params ) : string Encrypt via MCrypt
_mcrypt_get_handle ( string $cipher, string $mode ) : resource Get MCrypt handle
_mcrypt_initialize ( array $params ) : void Initialize MCrypt
_openssl_decrypt ( string $data, array $params ) : string Decrypt via OpenSSL
_openssl_encrypt ( string $data, array $params ) : string Encrypt via OpenSSL
_openssl_get_handle ( string $cipher, string $mode ) : string Get OpenSSL handle
_openssl_initialize ( array $params ) : void Initialize OpenSSL
strlen ( string $str ) : integer Byte-safe strlen()
substr ( string $str, integer $start, integer $length = NULL ) : string Byte-safe substr()

메소드 상세

__construct() 공개 메소드

Class constructor
public __construct ( array $params = [] ) : void
$params array Configuration parameters
리턴 void

__get() 공개 메소드

__get() magic
public __get ( string $key ) : mixed
$key string Property name
리턴 mixed

_cipher_alias() 보호된 메소드

Tries to translate cipher names between MCrypt and OpenSSL's "dialects".
protected _cipher_alias ( string &$cipher ) : void
$cipher string Cipher name
리턴 void

_get_params() 보호된 메소드

Get params
protected _get_params ( array $params ) : array
$params array Input parameters
리턴 array

_mcrypt_decrypt() 보호된 메소드

Decrypt via MCrypt
protected _mcrypt_decrypt ( string $data, array $params ) : string
$data string Encrypted data
$params array Input parameters
리턴 string

_mcrypt_encrypt() 보호된 메소드

Encrypt via MCrypt
protected _mcrypt_encrypt ( string $data, array $params ) : string
$data string Input data
$params array Input parameters
리턴 string

_mcrypt_get_handle() 보호된 메소드

Get MCrypt handle
protected _mcrypt_get_handle ( string $cipher, string $mode ) : resource
$cipher string Cipher name
$mode string Encryption mode
리턴 resource

_mcrypt_initialize() 보호된 메소드

Initialize MCrypt
protected _mcrypt_initialize ( array $params ) : void
$params array Configuration parameters
리턴 void

_openssl_decrypt() 보호된 메소드

Decrypt via OpenSSL
protected _openssl_decrypt ( string $data, array $params ) : string
$data string Encrypted data
$params array Input parameters
리턴 string

_openssl_encrypt() 보호된 메소드

Encrypt via OpenSSL
protected _openssl_encrypt ( string $data, array $params ) : string
$data string Input data
$params array Input parameters
리턴 string

_openssl_get_handle() 보호된 메소드

Get OpenSSL handle
protected _openssl_get_handle ( string $cipher, string $mode ) : string
$cipher string Cipher name
$mode string Encryption mode
리턴 string

_openssl_initialize() 보호된 메소드

Initialize OpenSSL
protected _openssl_initialize ( array $params ) : void
$params array Configuration parameters
리턴 void

create_key() 공개 메소드

Create a random key
public create_key ( integer $length ) : string
$length integer Output length
리턴 string

decrypt() 공개 메소드

Decrypt
public decrypt ( string $data, array $params = NULL ) : string
$data string Encrypted data
$params array Input parameters
리턴 string

encrypt() 공개 메소드

Encrypt
public encrypt ( string $data, array $params = NULL ) : string
$data string Input data
$params array Input parameters
리턴 string

hkdf() 공개 메소드

HKDF
public hkdf ( $key, $digest = 'sha512', $salt = NULL, $length = NULL, $info = '' ) : string
$key Input key
$digest A SHA-2 hashing algorithm
$salt Optional salt
$length Output length (defaults to the selected digest size)
$info Optional context/application-specific info
리턴 string A pseudo-random key

initialize() 공개 메소드

Initialize
public initialize ( array $params ) : CI_Encryption
$params array Configuration parameters
리턴 CI_Encryption

strlen() 보호된 정적인 메소드

Byte-safe strlen()
protected static strlen ( string $str ) : integer
$str string
리턴 integer

substr() 보호된 정적인 메소드

Byte-safe substr()
protected static substr ( string $str, integer $start, integer $length = NULL ) : string
$str string
$start integer
$length integer
리턴 string

프로퍼티 상세

$_cipher 보호되어 있는 프로퍼티

Encryption cipher
protected string $_cipher
리턴 string

$_digests 보호되어 있는 프로퍼티

name => digest size pairs
protected array $_digests
리턴 array

$_driver 보호되어 있는 프로퍼티

PHP extension to be used
protected string $_driver
리턴 string

$_drivers 보호되어 있는 프로퍼티

List of usable drivers (PHP extensions)
protected array $_drivers
리턴 array

$_handle 보호되어 있는 프로퍼티

Cipher handle
protected mixed $_handle
리턴 mixed

$_key 보호되어 있는 프로퍼티

Encryption key
protected string $_key
리턴 string

$_mode 보호되어 있는 프로퍼티

Cipher mode
protected string $_mode
리턴 string

$_modes 보호되어 있는 프로퍼티

List of available modes
protected array $_modes
리턴 array

$func_override 보호되어 있는 정적으로 프로퍼티

mbstring.func_override flag
protected static bool $func_override
리턴 boolean