라이브러리

[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` 함수를 사용해야 합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 351 페이지

검색

게시물 검색