Bonjour,

J'ai une clé publique sous la forme d'un byte[] de 76 cases, ce qui fait donc 608bits.

Quand je fais un generatePublic de ma clé avec une KeyFactory, je me prends une exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Exception java.security.InvalidKeyException: RSA keys must be at least 512 bits long
Donc je me demande si qqpart on se moque pas un peu de moi.

Plus sérieusement, est ce que qqun sait d'où ça sort ? Est ce qu'il y a moyen de contourner ça ? Je dois remplir avec des 0 ?

Bon, voila le code sinon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
// Le format X.509 c'est pas moi qui le choisit, je reçoit la clé comme ça.
X509EncodedKeySpec keySpec = new X509EncodedKeySpec(bytePublicKey);
// keySpec.getEncoded retourne bien un byte[76]
 
KeyFactory kfac = KeyFactory.getInstance("RSA");
myPublicKey = (RSAPublicKey) kfac.generatePublic(keySpec); // <- c'est la que ça plante :/
Merci d'avance