배경:
PHP 애플리케이션은 현재 데이터 암호화를 위해 Mcrypt를 사용합니다. 복어 암호 및 ECB 모드. 그러나 암호화를 위해 OpenSSL로 마이그레이션해야 하는 문제에 직면하게 됩니다.
주요 차이점:
해결책:
중요한 코딩 없이 원활하게 마이그레이션하려면 다음 단계를 따르십시오.
암호화된 데이터 재생성: 이전에 PKCS#7로 데이터를 수동으로 채웁니다. Mcrypt로 암호화합니다. 예제 코드는 아래에 제공됩니다.
$key = "anotherpassword1"; $str = "does it work 12"; $enc = mcrypt_encrypt(MCRYPT_BLOWFISH, $key, $str."", MCRYPT_MODE_ECB);
복호화에 OpenSSL 사용: 암호화된 데이터를 다시 생성한 후 OpenSSL을 사용하여 올바른 암호와 모드:
$key = "anotherpassword1"; $enc = "0e93dce9a6a88e343fe5f90d1307684c"; $dec = openssl_decrypt($enc, 'bf-ecb', $key, true); echo $dec;
참고: Mcrypt(56) 및 OpenSSL(0)에 서로 다른 IV 길이가 필요하다고 언급하셨습니다. 그러나 ECB 모드는 IV를 활용하지 않습니다.
이 단계를 따르면 광범위한 코드 수정 없이 Mcrypt에서 OpenSSL로 마이그레이션하여 기존 암호화된 데이터와의 호환성을 보장할 수 있습니다.
위 내용은 중요한 코드 변경 없이 Mcrypt에서 OpenSSL로 마이그레이션하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!