mel*_*ger 15 java encryption rsa bing
我正在努力实施Bing Cashback.为了验证来自Bing的传入请求是有效的,他们提供签名.签名是使用RSA加密的URL的160位SHA-1哈希.
Microsoft提供了RSA"公钥",模数和指数,我应该用它来解密哈希.
有没有办法创建解密哈希所需的Java密钥对象,正如微软所说的那样?
我能找到的所有东西都会自动创建RSA密钥对,因为这就是RSA应该如何工作的.如果可能的话,我真的很想使用Java对象,因为这显然比手动编码解决方案更可靠.
他们提供的示例代码是在.NET中,并使用.NET库函数来验证哈希.特别是RSACryptoServiceProvider.VerifyHash()
eri*_*son 28
RSAPublicKeySpec spec = new RSAPublicKeySpec(modulus, exponent);
KeyFactory factory = KeyFactory.getInstance("RSA");
PublicKey pub = factory.generatePublic(spec);
Signature verifier = Signature.getInstance("SHA1withRSA");
verifier.initVerify(pub);
verifier.update(url.getBytes("UTF-8")); // Or whatever interface specifies.
boolean okay = verifier.verify(signature);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13864 次 |
| 最近记录: |