민감한 데이터를 데이터베이스에 저장하는 가장 좋은 방법이 무엇인지 알아보기위한 검색이 있습니까? 프로젝트를 위해 암호 화폐 지갑의 비밀 키를 DB에 저장해야하는데 상담없이이 일을하는 것은 너무 위험합니다.
나트륨을 시도하고 암호화에 여러 방법을 사용할 수 있지만 가장 좋고 안전한 방법이 무엇인지 모르겠습니다.
$secret = 'xxxxx';
$key = random_bytes(SODIUM_CRYPTO_SECRETBOX_KEYBYTES);
$nonce = random_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES);
// Encrypt
$ciphertext = sodium_crypto_secretbox($msg, $nonce, $key);
// Decrypt
$plaintext = sodium_crypto_secretbox_open($ciphertext, $nonce, $key);
암호화 및 암호화 데이터에 대한 경험이 있으시면 저를 안내하십시오.
이 프로젝트에 PHP 7.3과 laravel을 사용하고 암호 화폐 지갑의 모든 사용자를위한 패키지를 만들고 싶습니다.이 정보가 유용합니다.
암호화가 작동하는 방식을 이해해야합니다. 실제로 두 가지 유형의 암호화가 있습니다.
여기에서 확인하십시오 : http://books.gigatux.nl/mirror/securitytools/ddu/ch09lev1sec1.html
코드를 기반으로 공유 키를 사용한 대칭 암호화를 사용하고 있습니다. laravel을 사용하고 있으므로 ENV에 Secret Key를 저장할 수 있으므로 반드시 디버깅을 끄십시오. laravel을 사용하고 있으므로 https://laravel.com/docs/5.7/encryption에 있는 내장 된 암호화 / 복호화 방법을 사용할 수 있습니다.
Laravel 내장 암호화는 OpenSSL을 사용하여 AES-256 및 AES-128 암호화를 제공하며 Laravel의 모든 암호화 된 값은 메시지 인증 코드 (MAC)를 사용하여 서명되므로 암호화 된 기본 값은 수정할 수 없습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다