라이브러리
[PHP] mcrypt_decrypt - 주어진 매개변수로 암호문을 복호화합니다.
mcrypt_decrypt 함수란?
PHP의 mcrypt_decrypt 함수는 암호화된 데이터를 복호화하는 데 사용되는 함수입니다. mcrypt_decrypt 함수는 mcrypt_encrypt 함수와 함께 사용하여 데이터를 암호화하고 복호화할 수 있습니다.
mcrypt_decrypt 함수의 사용법
mcrypt_decrypt 함수는 다음과 같은 형식으로 사용됩니다.
#hostingforum.kr
php
string mcrypt_decrypt ( string $cipher, string $key, string $data, string $mode [, string $iv ] )
- `$cipher` : 사용할 암호화 알고리즘의 이름입니다. 예를 들어, 'des-ecb' 또는 'rijndael-256-cbc'와 같은 이름을 사용합니다.
- `$key` : 암호화 키입니다. 이 키는 암호화할 때 사용됩니다.
- `$data` : 암호화된 데이터입니다.
- `$mode` : 암호화 모드입니다. 예를 들어, 'ecb' 또는 'cbc'와 같은 이름을 사용합니다.
- `$iv` : 암호화할 때 사용한 초기화 벡터입니다. 이 옵션은 선택적입니다.
mcrypt_decrypt 함수의 예제
다음 예제는 DES 알고리즘을 사용하여 데이터를 암호화하고 복호화하는 방법을 보여줍니다.
#hostingforum.kr
php
// 암호화할 데이터
$data = "Hello, World!";
// 암호화 키
$key = "my_secret_key";
// 암호화 모드
$mode = "ecb";
// 암호화
$cipher_data = mcrypt_encrypt(MCRYPT_DES, $key, $data, MCRYPT_MODE_ECB);
// 복호화
$decrypted_data = mcrypt_decrypt(MCRYPT_DES, $key, $cipher_data, MCRYPT_MODE_ECB);
// 결과 출력
echo "암호화된 데이터 : " . bin2hex($cipher_data) . "
";
echo "복호화된 데이터 : " . $decrypted_data . "
";
mcrypt_decrypt 함수의 주의사항
- mcrypt_decrypt 함수는 PHP 7.1에서 deprecated되었으며, PHP 7.2에서는 사용할 수 없습니다.
- mcrypt_decrypt 함수는 암호화 키를 암호화하는 데 사용되는 함수입니다. 따라서 암호화 키를 안전하게 관리해야 합니다.
- mcrypt_decrypt 함수는 암호화된 데이터를 복호화하는 데 사용되는 함수입니다. 따라서 암호화된 데이터를 안전하게 저장해야 합니다.
mcrypt_decrypt 함수의 대체 함수
PHP 7.1에서 deprecated된 mcrypt_decrypt 함수의 대체 함수는 다음과 같습니다.
- `openssl_decrypt` 함수 : OpenSSL 라이브러리를 사용하여 암호화된 데이터를 복호화하는 함수입니다.
- `hash_hmac` 함수 : HMAC 알고리즘을 사용하여 암호화된 데이터를 복호화하는 함수입니다.
mcrypt_decrypt 함수의 예제 (openssl_decrypt 함수로 대체)
다음 예제는 OpenSSL 라이브러리를 사용하여 데이터를 암호화하고 복호화하는 방법을 보여줍니다.
#hostingforum.kr
php
// 암호화할 데이터
$data = "Hello, World!";
// 암호화 키
$key = "my_secret_key";
// 암호화 모드
$mode = "aes-256-cbc";
// 암호화
$cipher_data = openssl_encrypt($data, $mode, $key, OPENSSL_RAW_DATA);
// 복호화
$decrypted_data = openssl_decrypt($cipher_data, $mode, $key, OPENSSL_RAW_DATA);
// 결과 출력
echo "암호화된 데이터 : " . bin2hex($cipher_data) . "
";
echo "복호화된 데이터 : " . $decrypted_data . "
";
mcrypt_decrypt 함수의 예제 (hash_hmac 함수로 대체)
다음 예제는 HMAC 알고리즘을 사용하여 데이터를 암호화하고 복호화하는 방법을 보여줍니다.
#hostingforum.kr
php
// 암호화할 데이터
$data = "Hello, World!";
// 암호화 키
$key = "my_secret_key";
// 암호화
$cipher_data = hash_hmac('sha256', $data, $key, true);
// 복호화
$decrypted_data = hash_hmac('sha256', $data, $key, true);
// 결과 출력
echo "암호화된 데이터 : " . bin2hex($cipher_data) . "
";
echo "복호화된 데이터 : " . $decrypted_data . "
";
결론
mcrypt_decrypt 함수는 PHP 7.1에서 deprecated되었으며, PHP 7.2에서는 사용할 수 없습니다. 대신 OpenSSL 라이브러리를 사용하여 암호화된 데이터를 복호화하는 `openssl_decrypt` 함수 또는 HMAC 알고리즘을 사용하여 암호화된 데이터를 복호화하는 `hash_hmac` 함수를 사용해야 합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.