在调用Confidentiality Policy时,如果用到了X509证书并对传递的数据进行加密处理,会报找不到加密算法的异常,信息如下:
WSHandler: Encryption: error during message processingorg.apache.ws.security.WSSecurityException: An unsupported signature or encryption algorithm was used (unsupported key transport encryption algorithm: No such algorithm: http://www.w3.org/2001/04/xmlenc#rsa-1_5)
原因分析
JDK所带的JRE默认引入的是受限的Java Cryptography Extension(JCE)策略文件,相关jar文件对应的路径为:
<jre-home>/lib/security/local_policy.jar
<jre-home>/lib/security/US_export_policy.jar
针对不同的国家,对于JCE策略有不同的限制,在SUN网站 http://java.sun.com/javase/downloads/index.jsp#docs最底下上有详细的说明。
处理策略
1、可以下载无限制的版本并利用其对以上的两个Jar进行替换以满足要求,不过现在好像仅提供1.6版本的下载了。
2、重新选择JCE的实现,并作为provider添加
下载bouncycastle.jar (http://www.bouncycastle.org/latest_releases.html),,放到<jre_home>/lib/ext 目录下
添加security.provider,在<jre_home>/lib/security/java.security 文件进行修改添加
security.provider.7=org.bouncycastle.jce.provider.BouncyCastleProvider
3、把下载的bouncycastle.jar放到工程的classpath当中。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
如何看待AWS中的数据加密?
我们并不确定公有云是否适合我们,因为我们对数据的隐私有的高标准的要求。AWS如何加密数据?它提供了哪些关键的管理选项?
-
移动应用怎么保护都不过分
在移动设备和应用程序上运行需要较高水平的安全性。设备本身就非常容易丢失和被盗,而一些包含敏感数据的活动都会使用这些移动设备。
-
2014年的云计算:走向零信任安全模式
2013年6月,美国国家安全局(NSA)窃取数据的秘密文件的曝光又重新燃起了人们对存储在云上的企业数据安全的担忧。
-
IaaS云安全:用户责任知多少
随着企业不断进入云端,选择云厂商以及同这个厂商签订合同一项重要的考虑就是要明确规定责任。大多数云环境以共享安全责任为特征。