La création de clés RSA de paramètres connus en Java
Je suis en train de travailler sur la mise en œuvre de Bing Cashback. Afin de vérifier la réception d'une demande à partir de Bing comme valide qu'ils fournissent une signature. La signature est un 160 bits SHA-1 hash de l'url chiffré à l'aide de RSA.
Microsoft fournit le RSA "clé publique", le module et l'exposant, avec qui je suis censé décrypter le code de hachage.
Est-il un moyen de créer la Java des objets clés nécessaires pour déchiffrer le hachage comme dit Microsoft?
Tout ce que je peux trouver crée des paires de clés RSA automatiquement puisque c'est la façon dont RSA est censé fonctionner. Je tiens vraiment à utiliser les objets Java si à tout possible, car évidemment c'est plus fiable qu'une main codé solution.
L'exemple de code qu'ils ont fourni .NET et utilise un .NET fonction de la bibliothèque pour vérifier le hachage. Plus Précisément RSACryptoServiceProvider.VerifyHash()
OriginalL'auteur meleager | 2010-01-07
Vous devez vous connecter pour publier un commentaire.
Oui, l'algorithme de chiffrement RSA la mise en œuvre de la plupart des fournisseurs d'accepter un public clé pour le déchiffrement. Ils seront à même de vérifier le bon remplissage. Cependant, il est préférable d'utiliser un
Signature
instance. Je vais mettre à jour ma réponse à démontrer.OriginalL'auteur erickson
Utiliser java.de sécurité.spec.RSAPublicKeySpec. Il est possible de construire une clé à partir de l'exposant et le module. Ensuite, l'utilisation de java.de sécurité.KeyFactory.generatePublic() avec la clé spec comme un paramètre.
OriginalL'auteur Seva Alekseyev
Quelque chose comme cela devrait faire l'affaire:
Cela suppose que la clé Publique est donnée sous forme de chaîne hexadécimale, et vous aurez besoin de la Apache Commons bibliothèque de Codecs
Si vous avez la clé dans un format différent, essayez le KeyFactory pour plus d'informations.
Si vous êtes à l'aide de la JRE de Sun, mais pas la version IBM. Par coïncidence, l'un JRE IBM en utilisant le Château Gonflable crypto fournisseur de travail.
Merci, je vais donner un coup de feu.
Il peut sembler incongru,mais ce que vous faites est essentiellement le décryptage de la signature de hachage. Une fois déchiffré, la valeur de hachage calculée et la valeur de hachage est donné par Microsoft devrait correspondre.
...mais c'est dur de la façon de faire que erickson a fait de la bonne façon.
OriginalL'auteur Jason Nichols