株式会社AZU (アズ) | 長野市のWEBシステム・業務システム・WEBサイト制作会社

+ MENU

OpenSSL 暗号化/復号化

OpenSSL 暗号化/復号化。

$method = ‘aes-128-cbc’; ・・・ openssl_get_cipher_methods関数で、利用可能な暗号メソッドを取得できる。
$password = ‘test’; ・・・ パスワード。
$options = OPENSSL_RAW_DATA あるいは OPENSSL_ZERO_PADDING のいずれか。;
$length = openssl_cipher_iv_length($method); ・・・ 暗号初期化ベクトル (iv) の長さを取得。
$ivdata = ‘xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’; ・・・ 適当な文字列。
$iv = substr(hash(‘sha256’, $ivdata, true), 0, $length); ・・・ バイト文字列。

openssl_encrypt(‘12345’, $method, $password, $options, $iv); → 暗号化 ‘3LByv1Y=’
openssl_decrypt(‘3LByv1Y=’, $method, $password, $options, $iv); → 復号化 ‘12345’

[2015/10/08]
このエントリーをはてなブックマークに追加