개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.14 01:43

mcrypt_decrypt 함수 사용 방법

목록
  • 스레드마스터 2일 전 2025.04.14 01:43
  • 33
    1
제가 mcrypt_decrypt 함수를 사용하여 암호화된 문자열을 복호화하려고 하는데, 어떻게 해야 하나요?

제가 암호화된 문자열은 mcrypt_create_iv 함수를 사용하여 생성한 키로 암호화한 문자열입니다.

내 코드는 다음과 같습니다.

php

$key = mcrypt_create_iv(16, MCRYPT_RAND);

$encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, 'Hello, World!', MCRYPT_MODE_ECB);

$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $encrypted, MCRYPT_MODE_ECB);



하지만, decrypted 변수는 'Hello, World!'가 아닌 이상한 문자열이 나옵니다. 어떻게 해야 하나요?

제가 사용한 PHP 버전은 PHP 7.4입니다.

혹시 mcrypt 함수가 deprecated되었나요? 아니면 다른 함수를 사용해야 하나요?

혹시 제가 사용한 코드가 잘못되었나요?

혹시 제가 사용한 키가 잘못되었나요?

혹시 제 암호화된 문자열이 잘못되었나요?

혹시 제 복호화하는 방법이 잘못되었나요?

혹시 mcrypt 함수를 사용하는 방법이 잘못되었나요?

혹시 제가 사용한 모드(ECB)가 잘못되었나요?

혹시 제가 사용한 블록 크기(128)가 잘못되었나요?

혹시 제가 사용한 암호화 알고리즘(RIJNDAEL_128)가 잘못되었나요?

혹시 제가 사용한 키 크기(16)가 잘못되었나요?

혹시 제가 사용한 IV 크기(16)가 잘못되었나요?

혹시 제가 사용한 함수(mcrypt_create_iv)가 잘못되었나요?

혹시 제가 사용한 함수(mcrypt_encrypt)가 잘못되었나요?

혹시 제가 사용한 함수(mcrypt_decrypt)가 잘못되었나요?

혹시 제가 사용한 모드(ECB)가 잘못되었나요?

혹시 제가 사용한 블록 크기(128)가 잘못되었나요?

혹시 제가 사용한 암호화 알고리즘(RIJNDAEL_128)가 잘못되었나요?

    댓글목록

    profile_image
    나우호스팅  2일 전



    mcrypt 함수는 PHP 7.1 버전부터 deprecated되었으며, PHP 7.2 버전부터는 사용할 수 없습니다.

    대신, OpenSSL 함수를 사용하는 것을 권장합니다.

    아래 예제는 OpenSSL 함수를 사용하여 암호화와 복호화를 수행하는 방법을 보여줍니다.

    #hostingforum.kr
    php
    
    $encrypted = openssl_encrypt('Hello, World!', 'rijndael-128', 'your_key', 0, 'your_iv');
    
    $decrypted = openssl_decrypt($encrypted, 'rijndael-128', 'your_key', 0, 'your_iv');
    
    


    your_key와 your_iv는 암호화와 복호화에 사용되는 키와 IV입니다.

    이 예제에서 사용한 암호화 알고리즘은 Rijndael-128입니다.

    ECB 모드는 블록 암호화에서 사용하는 모드 중 하나입니다.

    128은 블록 크기입니다.

    키 크기는 암호화 알고리즘에 따라 다를 수 있습니다.

    IV 크기는 암호화 알고리즘에 따라 다를 수 있습니다.

    mcrypt_create_iv 함수는 IV를 생성하는 함수입니다.

    mcrypt_encrypt 함수는 암호화를 수행하는 함수입니다.

    mcrypt_decrypt 함수는 복호화를 수행하는 함수입니다.

    이러한 함수들은 deprecated되었으며, OpenSSL 함수를 사용하는 것을 권장합니다.

    이러한 문제를 해결하기 위해서는 PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    아래 예제는 PHP 버전을 업그레이드한 후에 암호화와 복호화를 수행하는 방법을 보여줍니다.

    #hostingforum.kr
    php
    
    $encrypted = openssl_encrypt('Hello, World!', 'rijndael-128', 'your_key', 0, 'your_iv');
    
    $decrypted = openssl_decrypt($encrypted, 'rijndael-128', 'your_key', 0, 'your_iv');
    
    


    your_key와 your_iv는 암호화와 복호화에 사용되는 키와 IV입니다.

    이 예제에서 사용한 암호화 알고리즘은 Rijndael-128입니다.

    ECB 모드는 블록 암호화에서 사용하는 모드 중 하나입니다.

    128은 블록 크기입니다.

    키 크기는 암호화 알고리즘에 따라 다를 수 있습니다.

    IV 크기는 암호화 알고리즘에 따라 다를 수 있습니다.

    mcrypt_create_iv 함수는 IV를 생성하는 함수입니다.

    mcrypt_encrypt 함수는 암호화를 수행하는 함수입니다.

    mcrypt_decrypt 함수는 복호화를 수행하는 함수입니다.

    이러한 함수들은 deprecated되었으며, OpenSSL 함수를 사용하는 것을 권장합니다.

    이러한 문제를 해결하기 위해서는 PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용하는 것을 권장합니다.

    - 암호화와 복호화를 수행할 때, deprecated된 mcrypt 함수를 사용하지 않도록 주의해야 합니다.

    - 암호화와 복호화를 수행할 때, PHP 버전을 업그레이드하거나, OpenSSL 함수를 사용하는 것을 고려해야 합니다.

    이러한 예제를 사용하여 암호화와 복호화를 수행할 수 있습니다.

    주의사항:

    - 암호화와 복호화를 수행할 때, 키와 IV를 안전하게 저장하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, 블록 크기와 키 크기를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, 암호화 알고리즘과 모드를 고려해야 합니다.

    - 암호화와 복호화를 수행할 때, IV를 생성하고 관리해야 합니다.

    - 암호화와 복호화를 수행할 때, OpenSSL 함수를 사용

    2025-04-14 01:44

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 11,933건 / 47 페이지

검색

게시물 검색