J'ai la clé publique générée en C# avec RSACryptoServiceProvider:Quels types de données exposent et modulent dans C# RSACryptoServiceProvider?
<RSAKeyValue>
<Modulus>
4kKhD/FWAMtQTRifArfXjxZN+6bOXTkHrVpyz/1wODhSOBqDewoSOFAp5boBd3wFjXszHA+gpUxZNWHRTj898Q==
</Modulus>
<Exponent>
AQAB
</Exponent>
<RSAKeyValue>
Ces paramètres sont générés dans une variable RSA initialisé sur 512 bits
new RSACryptoServiceProvider(512)
Maintenant, je dois les utiliser (module et exposant) pour crypter certaines données, mais dans groovy (groovyscript dans un test SoapUI). Dans groovy, je testais le cryptage RSA, et pour sa clé publique, il obtient le module et l'exposant avec seulement un nombre décimal. Les Modulus ci-dessus ressemble une chaîne base64, mais quand j'ai essayé de décoder en Groovy, il obtient des caractères spéciaux, le code que j'utilise pour cela est
byte[] decoded = encoded.decodeBase64()
string s == new String(decoded)
ce que je dois enfin est de savoir comment utiliser le module et exposant obtenu en C# pour crypter certaines données dans groovy. Un peu d'aide pour faire cela?
quelle méthode avez-vous utilisé pour convertir cette chaîne base64 en décimal finale? Je comprends ce que vous avez dit mais je ne peux pas atteindre le même résultat @bartonjs –
@JuanFranciscoCaballero J'ai utilisé http://tomeko.net/online_tools/base64.php?lang=fr pour Base64-> Hex et http: // www. mobilefish.com/services/big_number/big_number.php pour Hex-> BigInteger. Veillez à ne pas convertir chaque octet en nombre entier, car ce n'est pas une conversion précise. – bartonjs