Cryptage Java simple
Je voudrais crypter un texte (configuration) fichier stocké sur le disque.
Essayez d'utiliser DES de chiffrement j'ai eu des erreur fatale sur les machines client, j'ai appris plus tard que l'algorithme ne pouvait pas gérer les caractères accentués (!)
Je soupçonne que c'était parce que j'ai été en utilisant les anciens paquets (sun.misc.BASE64Decoder
) - mais je ne suis pas sûr que ce soit la raison.
Cependant, je suis à la recherche d'une solution plus simple - je vraiment besoin d'un chiffrement simple (je sais que certaines personnes ne serait pas d'accord) - pas RSA de clés 128 bits ou plus, juste obscurcir le texte à partir des yeux curieux.
C'est vraiment bizarre que je ne pouvais pas trouver une simple solution sur le web.
Comment puis-je mettre en œuvre un simple schéma de chiffrement?
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Découvrez la Java Simplifié De Chiffrement (Jasypt).
Je suis en utilisant ce simple One-Time-Pad algorithme:
N'oubliez pas d'ajouter
commons-codec
à classpath.Algorithmes de chiffrement travail sur les matières octets, pas de caractères.
La raison pour laquelle vous ne pouvais pas gérer les caractères accentués était parce que le code que vous utilisez pour convertir les caractères et à partir des matières premières octets ne gère pas l'Unicode.
Vous devez utiliser AES; pour un exemple de la façon de l'utiliser en Java, voir ici.
MODIFIER: maintenant, vous êtes peut-être cacher les yeux curieux, mais on ne sait pas ce que l'avenir nous réserve, et il est toujours beaucoup préférable d'utiliser un chiffrement fort maintenant et de ne pas savoir, à la fin, que vous devriez avoir, mais n'a pas.
Comment sur ROT13? C'est probablement le plus simple et le pire de chiffrement jamais (on l'appelait aussi le César du Cipher)
Voici une implémentation de base en Java par Jay Kominek:
Si vous ne cherchez pas à vraiment chiffrer le texte, pourquoi ne pas encoder en Base64? Ça va ressembler à un non sens, et il est très facile à décoder. De Plus, vous êtes déjà à l'aide de code Base64...
Si vous avez un seul élément de texte à chiffrer, que penser d'un one-time-pad? Un one-time-pad est très facile de créer; tous vous avez besoin est une séquence aléatoire d'octets de la même longueur que les données que vous chiffrez
Voir Comment puis-je utiliser le cryptage 3des/déchiffrement en Java?
BASE64Encoder
est utilisé pour représenter l'chiffré tableau d'octets, pas de l'entrée.