암호화는 제3의 사용자가 정보를 읽을 수 없도록 일부 알고리즘을 사용하여 일반 텍스트를 메시지로 변환하는 프로세스입니다. 이는 침입자가 전송된 정보를 표적으로 삼을 가능성이 적기 때문에 민감한 정보를 전송하는 데 도움이 됩니다.
암호화는암호화라는 프로세스를 사용하여 수행됩니다. 암호화할 텍스트를일반 텍스트라고 하고, 암호화 후에 얻은 텍스트나 메시지를암호 텍스트라고 합니다. 암호문을 일반 텍스트로 변환하는 과정을Decryption이라고 합니다.
Laravel은 암호화에 Open SSL을 사용하는AES-256및AES-128암호화기를 사용합니다. Laravel에 포함된 모든 값은메시지 인증 코드프로토콜을 사용하여 서명되므로 일단 암호화되면 기본 값이 변조될 수 없습니다.
Laravel에서key을 생성하는 데 사용되는 명령은 다음과 같습니다.
php artisan key:generate
이 명령은 PHP 보안 임의 바이트 생성기를 사용하며 아래 제공된 스크린샷에 표시된 대로 출력을 볼 수 있습니다. −
위에 제공된 명령은 키 생성에 도움이 됩니다. 웹 애플리케이션에서 사용할 수 있습니다. 아래에 표시된 스크린샷을 살펴보세요. −
암호화 값은config/app.php파일에서 올바르게 정렬되어 있으며, 여기에는 두 개의 암호화 매개변수key및cipher가 포함되어 있습니다. 이 키를 사용하는 값이 제대로 정렬되지 않으면 Laravel에서 암호화된 모든 값은 안전하지 않게 됩니다.
값 암호화는 Laravel 클래스의 컨트롤러에 있는encrypt 도우미를 사용하여 수행할 수 있습니다. 이러한 값은 OpenSSL 및 AES-256 암호화를 사용하여 암호화됩니다. 암호화된 모든 값은 메시지 인증 코드(MAC)로 서명되어 암호화된 문자열의 수정 사항을 확인합니다.
아래 표시된 코드는 컨트롤러에서 언급되며 비밀 또는 민감한 메시지를 저장하는 데 사용됩니다.
채우기([ '비밀' => 암호화($request->비밀) ])->저장(); } }
값의 복호화는decrypt 도우미를 사용하여 수행됩니다. 다음 코드 줄을 관찰하세요 −
use IlluminateContractsEncryptionDecryptException; // 파사드에 던져진 복호화에 대한 예외 노력하다 { $decrypted = decrypt($encryptedValue); } catch (DecryptException $e) { // }
잘못된 MAC을 사용하여 암호 해독 프로세스가 성공하지 못한 경우 적절한 예외가 발생한다는 점에 유의하세요.
위 내용은 Laravel - 암호화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!