ホームページ >Java >&#&チュートリアル >構成ファイル内のパスワードを安全に暗号化する方法: キーはどうですか?
設定ファイル内のパスワードを安全に暗号化する方法
設定ファイルに保存されているパスワードの暗号化は、機密データを保護するために重要です。 Java でパスワード ベースの暗号化 (PBE) を使用した信頼性の高いアプローチは次のとおりです。
PBE を使用すると、パスワードを使用してデータを暗号化および復号化できます。これには、「AES/CBC/PKCS5Padding」アルゴリズムを使用して「javax.crypto.Cipher」を初期化し、「PBKDF2WithHmacSHA512」アルゴリズムを使用して「javax.crypto.SecretKeyFactory」からキーを取得することが含まれます。
import java.security.AlgorithmParameters; import java.security.GeneralSecurityException; import java.security.spec.IvParameterSpec; import java.util.Base64; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.PBEKeySpec; import javax.crypto.spec.SecretKeySpec; public class SecureConfigFile { // Encrypt the original password using a password-protected key private static String encrypt(String originalPassword, SecretKeySpec key) { ... } // Decrypt the encrypted password using the same password-protected key private static String decrypt(String encryptedPassword, SecretKeySpec key) { ... } // Create a password-protected key using PBKDF2WithHmacSHA512 private static SecretKeySpec createSecretKey(char[] password, byte[] salt) { ... } }
1 回暗号化されたパスワードを持っている場合は、構成ファイルに安全に保存できます。パスワードにアクセスする必要がある場合は、同じパスワードを使用して復号化するだけです。
主要なパスワードの保存
重要な課題は、保護に使用するパスワードを保存することです。暗号化されたパスワード。難読化してソース ファイルに保存することもオプションですが、発見されやすくなります。あるいは、Java プロセスの開始時にシステム プロパティとしてパスワードを指定することもできます (-DpropertyProtectionPassword=...)。ただし、これにもセキュリティ上の制限があります。
最終的には、キーのパスワードを保護することが課題として残りますが、強力な暗号化アルゴリズムと安全なキーの保管方法を使用すると、構成ファイル内の機密データの保護を大幅に強化できます。
以上が構成ファイル内のパスワードを安全に暗号化する方法: キーはどうですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。