0
$key = md5('secret password');
// this^would be supplied by the user every login, never stored
Crypt::setKey($key);
$encrypted = Crypt::encrypt('secret message');
// this^would be stored in a database
$decrypted = Crypt::decrypt($encrypted);
return $decrypted;
這會比僅僅傳遞密鑰的純文本更安全嗎?我想知道如何保護敏感數據。在Laravel中使用AES有多安全?
以這種方式使用AES有什麼意義?如果我默認使用應用程序密鑰進行加密,那麼有人可以進入我的服務器並獲取密鑰,所有內容都可以被解密。 – zackify
如果密鑰是一個用戶輸入,然後你使用password_hash密鑰加密之前,它是相當危險的安全,只要用戶輸入(密碼)不會在整個地方或任何地方重複使用。 password_hash旨在花費很長時間來暴力。 – Helpful
我想我明白你在看什麼,但是:一個靜態的鍵,放入頁面,用編碼是一個壞主意。就像你說的,有人可以得到並利用它。一個可變的密鑰(如用戶輸入)是很好的 - 只要它沒有存儲在任何地方 - 而password_hash可能是矯枉過正的。 – Helpful