Maison >Java >javaDidacticiel >Comment pouvons-nous éviter d'installer des fichiers de stratégie JCE de force illimitée tout en conservant un cryptage fort ?
Atténuation du recours aux fichiers de stratégie JCE « à force illimitée »
Lors du déploiement d'applications qui utilisent un cryptage à haute résistance (par exemple, AES 256 bits ), les développeurs sont souvent confrontés au défi de garantir une prise en charge adéquate de ce type de chiffrement sur les machines des utilisateurs finaux. Bien que l'installation des fichiers de stratégie JCE « Force illimitée » dans le dossier de sécurité résolve ce problème pour les développeurs, la distribution de ces fichiers aux utilisateurs finaux peut s'avérer peu pratique ou peu pratique.
Alternatives à l'installation des fichiers de stratégie
Deux approches courantes existent :
L'approche de réflexion en détail
Le Java suivant le code démontre l'approche basée sur la réflexion :
private static void removeCryptographyRestrictions() { // Check if restrictions exist if (!isRestrictedCryptography()) { return; } try { // ... (Reflection to remove restrictions) logger.fine("Successfully removed cryptography restrictions"); } catch (Exception e) { logger.log(Level.WARNING, "Failed to remove cryptography restrictions", e); } } private static boolean isRestrictedCryptography() { // Check for specific Java versions (Oracle Java 7 and 8) where restrictions apply // ... }
Appelez simplement removeCryptographyRestrictions() à partir d'un initialiseur statique ou avant d'effectuer une opération de cryptographie. Les opérations permettent l'utilisation de chiffrements 256 bits et de suites de chiffrement TLS sans installer de fichiers de stratégie.
Limitations
Bien que l'approche de réflexion contourne efficacement les exigences des fichiers de stratégie, elle reste un solution imparfaite :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!