この記事では、主に MySQL の暗号化と復号化の例について詳しく紹介します。必要な方は、
MySQL の暗号化と復号化の例を詳しく参照してください
データの暗号化と復号化は、 の分野では非常に重要です。セキュリティ。プログラマーにとって、ユーザーのパスワードを暗号文でデータベースに保存することは、ユーザーのプライバシーを盗む侵入者にとって非常に重要です。 データの暗号化と復号化に使用できるさまざまなフロントエンド暗号化アルゴリズムがあります。以下では、シンプルなデータベース レベルのデータ暗号化と復号化ソリューションをお勧めします。
MySQL データベース を例にとると、対応する暗号化 関数 (AES_ENCRYPT()) と復号化関数 (AES_DECRYPT()) が組み込まれています。
下の図に示すように、テーブルを作成するときはフィールドの種類に注意してください:
テーブルに暗号化されたデータを挿入します
フィールド「ユーザー名」、「パスワード」、「暗号化されたパスワード」の上にステートメントを挿入します。 AES_ENCRYPT() 関数には、暗号化を支援するための「キー」が必要であり、復号化にも必要です (これを覚えておいてください)。
以下はテーブル内のデータのスクリーンショットです:
上記の挿入ステートメントには、「ユーザー名」、「パスワード」、「暗号化されたパスワード」の 3 つのフィールドがあります。 AES_ENCRYPT() 関数には、暗号化を支援するための「キー」が必要であり、復号化にも必要です (これを覚えておいてください)。
以下は、テーブル内のデータのスクリーンショットです:
クエリ
テーブルからの暗号化されたデータ上記のクエリ ステートメントは、AES_DECRYPT() 関数を使用します。結果は次のとおりです:
上のスクリーンショットでは、「password」フィールドと「decryptedpassword」フィールドの値が同じであることがわかります。つまり、ユーザーのパスワードが復号化されました。
以上がMySQLの暗号化と復号化例の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。