이 글은 주로 Laravel에서 MAC이 유효하지 않다는 오류에 대한 해결책에 대해 설명합니다. 이는 특정 참조 값을 갖고 있으며 관심 있는 친구들이 이에 대해 배울 수 있습니다.
웹사이트 개발을 위해 laravel 프레임워크를 사용하는 경우 정보 암호화를 위해 laravel의 Crypt 클래스를 사용하여 사용자의 비밀번호를 암호화합니다. Crypt 클래스는 데이터를 암호화할 때 APP_KEY를 사용하므로 APP_KEY를 교체할 때 Crypt::를 사용할 때 decrypt() 함수를 사용하면 로그인 확인 중에 "MAC가 유효하지 않습니다."라는 오류가 보고됩니다.
그래서 해결 방법은 원본 APP_KEY의 암호 해독을 통해 사용자의 원본 데이터를 얻은 다음 새로운 APP_KEY에 따라 사용자 데이터를 다시 암호화하여 데이터베이스에 저장하는 것입니다.
설명서에는 다음과 같이 설명되어 있습니다.
설정:
Laravel의 암호화 기능을 사용하기 전에 config/app.php 구성 파일에서 APP_KEY 매개변수에 대한 값을 설정해야 합니다. 이 값은 임의의 32개 문자를 포함하는 문자열입니다. 이 값이 올바르게 설정되지 않으면 Laravel에서 암호화된 모든 데이터는 안전하지 않습니다.
기본 사용법:
Crypt 파사드를 통해 데이터 조각을 암호화할 수 있습니다. 모든 암호화에는 OpenSSL 및 AES-256-CBC 암호화가 사용됩니다. 또한 모든 암호화된 데이터에는 암호화된 문자열이 변조되는 것을 방지하기 위해 "메시지 인증 코드"(MAC)가 할당됩니다.
이것은 encrypt로 생성된 값이 APP_KEY와 관련되어 있음을 보여주며, 데이터를 암호화한 후 복호화 시 보안 검증을 위해 Mac을 부여하게 되는데, 프로젝트 환경 변경 후 APP_KEY를 다시 생성해야 하므로 이전에 생성된 데이터는 새로운 환경에서는 사용할 수 없습니다 .
MAC 값이 유효하지 않다는 위의 오류 보고서는 컴퓨터의 Mac 주소가 아니지만 laravel의 암호화 암호화는 app_key와 관련되어 있으며 각 데이터에는 특별한 mac 인증 코드가 부여됩니다.
환경을 변경한 후에는 먼저 APP_KEY를 재생성해야 하며, 그런 다음 데이터베이스에서 암호화를 사용하여 암호화된 데이터를 다시 암호화해야 합니다.
관련 튜토리얼: PHP 비디오 튜토리얼
위 내용은 laravel 오류를 해결하는 방법 MAC이 유효하지 않습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!