bonjour,
je voudrais encrypter des données personnelles dans une base de donnée avec Java JCA (dans le cadre d'une appli web sur serveur distant). J'ai des notions en crypto mais ne suis pas spécialiste donc je préfère vous demander
à priori j'ai ceux-ci de dispo sur ma JVM :
BLOWFISH, ARCFOUR, PBEWITHMD5ANDDES, RC2, RSA, PBEWITHMD5ANDTRIPLEDES, PBEWITHSHA1ANDDESEDE, DESEDE, AESWRAP, AES, DES, DESEDEWRAP, RSA/ECB/PKCS1PADDING, PBEWITHSHA1ANDRC2_40
lequel est le plus fort ? (ou lesquels)
parmi les plus forts quels sont les moins gourmands en ressource CPU, et qui pourraient éventuellement être utilisables pour des données confidentielles mais moins compromettantes ?
j'aurais bien "2-3" questions subsidiaires pour ceux qui souhaitent me répondre :
- En gérant bien la sécurité par Keystores pour conserver les clés de cryptage (avec nécessité de rentrer le mot de passe du JKS au démarrage de l'appli web) est-ce suffisant d'utiliser ces algos pour conserver des infos type n° de CB ? Le keystore Java (JKS) est-il assez robuste correctement utilisé ou m'en conseillerez vous un autre ? Est-ce une bonne/utile mesure que d'effectuer régulièrement une opération de maintenance avec changements de clés et réencodage des attributs cryptés de la BD ? Si oui quelle période ?
- y a-t-il pour vous des systèmes de BD plus sécures que d'autres ? (j'utilise MySQL 5.0)
- Il me semblait que TripleDES faisait partie de la JCE (selon un document Sun) pour laquelle il fallait des permissions légales spéciales, idem pour les hashs genre SHA-512 pourtant je les ai dispos et fonctionnels... peut-être que le document consulté n'était pas à jour ? Où pourrais-je trouver ces spécifs actualisées ?
merci d'avance pour votre aide et vos conseils
amicalement,
seb
Partager