Re: maj 2.9 : probleme de publicKey
Teukan a dit : "Si j'ai bien compris le d correspond au résultat de (P-1)(Q-1) à la création de la clé privée."
non, d est calculé à partir de p, q et e :
[url:c8j1pgad a dit : "http://www.apprendre-en-ligne.net/crypto/rsa/[/url]"]
L'instruction d=PowerMod[e,-1,(p-1)(q-1)] de Mathematica permet de calculer d facilement."
mais c'est de la sauce interne, les fonctions qui le font sont déjà écrites.
Sinon, de mon côté, j'ai essayé d'extraire une signature du "key", reçu dans le HelloConnectMessage
avec la classe com.ankamagames.jerakine.utils.crypto.SignatureKey, qui permet ensuite de retrouver la clé publique (quand ça marche ^^)
mais c'est pas encore pour cette fois, car : nouveau plantage :
public function setPublicKey(param1:Vector.<int>) : void {
var _loc_2:ByteArray = new ByteArray();
_loc_2.writeUTF("DofusPublicKey");
var _loc_3:int = 0;
while (_loc_3 < param1.length){
_loc_2.writeByte(param1[_loc_3]);
_loc_3++;
}
_loc_2.position = 0;
var sk:SignatureKey = SignatureKey.fromByte(_loc_2); // ------------------> ça plante ici (déjà ...) <------------------------
var rsak:RSAKey = new RSAKey(sk.n, sk.e);
var _loc_4:ByteArray = new ByteArray();
rsak.verify(_loc_2, _loc_4, _loc_2.length);
this._publicKey = "-----BEGIN PUBLIC KEY-----\n" + Base64.encodeByteArray(_loc_4) + "-----END PUBLIC KEY-----";
return;
}// end function
dans la fonction "SignatureKey.fromByte(...)" c'est le 1er readUTF() qui plante (Error: Error #2030: End of file was encountered.), dans la ligne :
_loc_3 = RSAKey.parsePublicKey(param1.readUTF(), param1.readUTF());
donc, si signature il y a, j'ai fait une erreur quelque part, ou alors pas de signature et retour à la case départ :( :(
Alors, je vais continuer à chercher... et pourtant, je suis sûr que c'est un truc tout c** ^^
ça m'énerve, c'est la 1ere fois que mon bot reste HS aussi longtemps, et j'arrive pas à mettre la main sur le grain de sable...
Atlantide
ps : existe-t-il des softs qui permettent de sniffer, non pas des échanges réseau, mais l'exécution du code à l'intérieur d'un programme ?