Bonjours, je créé actuellement un serveur/client communicant par message crypté, j'ai donc un échange au début de la communication en cryptage asymétrique créant une clé secrète envoyé cryptée au serveur.
pour crypter et décrypter j'utilise des byte[] pouvant donc crypter un peu tout mais pour une secretKey je sèche
j'ai créé ces deux methodes:
la première cotes client pour récupérer le byte[] correspondant a ma secreteKey et l'autre cotes serveur pour recréer ma secretKey avec ce byte[] mais impossible a rendre fonctionnel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public byte[] getSecretKey() throws NoSuchAlgorithmException, InvalidKeySpecException { SecretKeyFactory desFactory = SecretKeyFactory.getInstance("DES"); DESKeySpec spec = (DESKeySpec) desFactory.getKeySpec(secret_Key, DESKeySpec.class); return spec.getKey(); } public void setSecret_Key(byte[] secretKey) throws NoSuchAlgorithmException, InvalidKeySpecException, InvalidKeyException { SecretKeyFactory skFactory = SecretKeyFactory.getInstance("DES"); DESKeySpec sspec = new DESKeySpec(secretKey); secret_Key = skFactory.generateSecret(sspec); }
(envoyer ma secretkey en writeObject() fonctionne parfaitement et mon cryptage asymétrique aussi donc ça ne peut venir que de la pour moi.)
si quelqu'un a une idée sur la réalisation de: secretKey -> byte[] -> secretKey
je suis preneur...
Partager