互联网服务证书加密解密pfx

WAS使用公私钥证书加密解密的问题

开始使用sun的jdk读公私钥证书加密解密,一切正常。换到WAS7后,用私钥加密时报这个错:
Exception in thread "main" java.security.InvalidKeyException: Private key cannot be used to encrypt.
        at com.ibm.crypto.provider.RSA.engineInit(Unknown Source)
        at javax.crypto.Cipher.a(Unknown Source)
        at javax.crypto.Cipher.a(Unknown Source)
        at javax.crypto.Cipher.init(Unknown Source)
        at javax.crypto.Cipher.init(Unknown Source)
        at com.ebank.CrypPara.encryptByPrivateKey(CrypPara.java:146)
        at com.ebank.CrypPara.main(CrypPara.java:51)

baidu后,找到一个办法,就是在ibm网站上下一个无限制文件:Unrestricted SDK JCE policy files 地址:https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?source=jcesdk

下载文件后,将local_policy.jar和US_export_policy.jar更新到jrelibsecurity的文件夹下。

更新后又报了这个错:


Exception in thread "main" java.lang.ExceptionInInitializerError
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:250)
        at javax.crypto.Mac.getInstance(Unknown Source)
        at com.ibm.security.pkcs12.BasicPFX.calculateMac(BasicPFX.java:1905)
        at com.ibm.security.pkcs12.BasicPFX.verifyMac(BasicPFX.java:1165)
        at com.ibm.security.pkcs12.PFX.verifyMac(PFX.java:795)
        at com.ibm.crypto.provider.PKCS12KeyStore.engineLoad(Unknown Source)
        at java.security.KeyStore.load(KeyStore.java:414)
        at com.ebank.CrypPara.initKey(CrypPara.java:120)
        at com.ebank.CrypPara.main(CrypPara.java:50)
Caused by: java.lang.SecurityException: Cannot set up certs for trusted CAs
        at javax.crypto.b.(Unknown Source)
        at java.lang.J9VMInternals.initializeImpl(Native Method)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:228)
        ... 8 more
Caused by: java.lang.SecurityException: Jurisdiction policy files are not signed by trusted signers!
        at javax.crypto.b.a(Unknown Source)
        at javax.crypto.b.a(Unknown Source)
        at javax.crypto.b.access$600(Unknown Source)
        at javax.crypto.b$0.run(Unknown Source)
        at java.security.AccessController.doPrivileged(AccessController.java:280)
        ... 11 more

请问该如何解决?
参与6

5同行回答

xdtaoxdtao软件开发工程师tt
可参考http://www-01.ibm.com/support/docview.wss?uid=swg1IV18625-Dcom.ibm.crypto.provider.DoRSATypeChecking=false显示全部
可参考
http://www-01.ibm.com/support/docview.wss?uid=swg1IV18625

-Dcom.ibm.crypto.provider.DoRSATypeChecking=false收起
互联网服务 · 2014-11-12
浏览3206
edwards6309edwards6309系统工程师江苏省无锡市交巡警支队交通指挥中心
支持分享各自的经验哦显示全部
支持分享各自的经验哦收起
政府机关 · 2014-08-22
浏览2394
anne_hzanne_hz软件开发工程师asiainfo
请问是如何解决的。目前本人也碰到这个问题,一直搞不定显示全部
请问是如何解决的。目前本人也碰到这个问题,一直搞不定收起
软件开发 · 2014-08-12
浏览2329
beyond_jay2003beyond_jay2003技术经理icbc
哎,自己不能给自己分。显示全部
哎,自己不能给自己分。收起
互联网服务 · 2014-06-26
浏览2398
beyond_jay2003beyond_jay2003技术经理icbc
基本搞定了,使用bouncy castle和老版本的策略文件,有点跑题了,安全相关的。显示全部
基本搞定了,使用bouncy castle和老版本的策略文件,有点跑题了,安全相关的。收起
互联网服务 · 2014-06-26
浏览2399

提问者

beyond_jay2003
技术经理icbc
擅长领域: 中间件

相关问题

问题状态

  • 发布时间:2014-06-24
  • 关注会员:1 人
  • 问题浏览:9182
  • 最近回答:2014-11-12
  • X社区推广