`
lukejin
  • 浏览: 362162 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

导出keystore私钥新法

    博客分类:
  • Java
阅读更多

昨天为了导出私钥,找到了这个工具。见附件。

 

使用说明:

 

 

Java KeyStore文件转换为微软的.pfx文件和OpenSSL的PEM格式文件(.key + .crt)

 

运行方式:

 

JKS2PFX <KeyStore文件> <KeyStore密码> <Alias别名> <导出文件名> [Java Runtime的目录]
 

 

Java Runtime的目录,指包含Java.exe和keytool.exe的目录,如:

c:\progra~1\Java\jre1.5.0_06\bin

 

例如:

 

JKS2PFX server.jks 123456 tomcat exportfile c:\progra~1\Java\jre1.5.0_06\bin
4
1
分享到:
评论
5 楼 xiangguiwang 2016-06-01  
非常给力!

      致敬
4 楼 a418040445 2012-02-20  
搞定了。LZ 密钥库密码和私钥密码 要一样才行,不然会报错的,查了我好久啊,哎。。
3 楼 a418040445 2012-02-20  
JKS2PFX  没有这个命令啊!!
2 楼 boreas_baosj 2010-07-29  
生成的时候报错了  在C#中利用WSE3.0调用java的web服务时c#客户端  出现了异常:
对象只包含密钥对中的公钥。必须同时提供私钥。
未处理 System.Security.Cryptography.CryptographicException
  Message="对象只包含密钥对中的公钥。必须同时提供私钥。"
  Source="mscorlib"
  StackTrace:
       在 System.Security.Cryptography.RSACryptoServiceProvider.SignHash(Byte[] rgbHash, String str)
       在 Microsoft.Web.Services3.Security.Cryptography.RSASHA1SignatureFormatter.SignHash(Byte[] rgbHash)
       在 Microsoft.Web.Services3.Security.Cryptography.RSASHA1SignatureFormatter.Sign(Stream data)
       在 Microsoft.Web.Services3.Security.MessageSignature.BuildSignedInfo(SignatureFormatter formatter)
       在 Microsoft.Web.Services3.Security.MessageSignature.ComputeAsymmetricSignature(AsymmetricKeyAlgorithm key)
       在 Microsoft.Web.Services3.Security.MessageSignature.ComputeSignature()
       在 Microsoft.Web.Services3.Security.Security.SerializeXml(SoapEnvelope document)
       在 Microsoft.Web.Services3.Security.Security.Execute(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Security.SendSecurityFilter.ProcessMessage(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Pipeline.ProcessOutputMessage(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Messaging.SoapSender.FilterMessage(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Messaging.SoapSender.BeginSend(SoapEnvelope envelope, AsyncCallback callback, Object state)
       在 Microsoft.Web.Services3.Messaging.SoapClient.BeginSendOneWay(String methodname, SoapEnvelope envelope, AsyncCallback callback, Object state)
       在 Microsoft.Web.Services3.Messaging.SoapClient.SoapClientAsyncResult..ctor(SoapClient client, String methodname, SoapEnvelope envelope, AsyncCallback callback, Object state)
       在 Microsoft.Web.Services3.Messaging.SoapClient.SendRequestResponse(String methodname, SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Security.SecurityTokenServiceClient.RequestSecurityToken(SecurityTokenMessage request, String methodName)
       在 Microsoft.Web.Services3.Security.SecurityContextTokenServiceClient.RequestSecurityContextToken(AppliesTo appliesTo)
       在 Microsoft.Web.Services3.Security.SecurityContextTokenServiceClient.IssueSecurityContextToken(AppliesTo appliesTo)
       在 Microsoft.Web.Services3.Security.Tokens.SecurityContextTokenManager.RequestTokenFromIssuer(EndpointReference tokenIssuer, String tokenType, AppliesTo appliesTo, Policy policy, SoapProtocolVersion soapVersion, StateManager messageState, StateManager operationState, StateManager sessionState)
       在 Microsoft.Web.Services3.Security.SecureConversationClientSendSecurityFilter.EstablishSecureConversation(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Security.SecureConversationClientSendSecurityFilter.SecureMessage(SoapEnvelope envelope, Security security)
       在 Microsoft.Web.Services3.Security.SendSecurityFilter.ProcessMessage(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Pipeline.ProcessOutputMessage(SoapEnvelope envelope)
       在 Microsoft.Web.Services3.Xml.SoapEnvelopeWriter.Finish()
       在 Microsoft.Web.Services3.Xml.XmlWrappingWriter.Flush()
       在 System.Web.Services.Protocols.SoapHttpClientProtocol.Serialize(SoapClientMessage message)
       在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       在 ZisImplService.saveDataForJson(String softwareName, String jsonData) 位置 D:\C#\ZisClient\ZisClient\ZisImplService.cs:行号 102
       在 ZisClient.Form1.button1_Click(Object sender, EventArgs e) 位置 D:\C#\ZisClient\ZisClient\Form1.cs:行号 22
       在 System.Windows.Forms.Control.OnClick(EventArgs e)
       在 System.Windows.Forms.Button.OnClick(EventArgs e)
       在 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
       在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
       在 System.Windows.Forms.Control.WndProc(Message& m)
       在 System.Windows.Forms.ButtonBase.WndProc(Message& m)
       在 System.Windows.Forms.Button.WndProc(Message& m)
       在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       在 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       在 System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       在 System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
       在 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       在 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       在 System.Windows.Forms.Application.Run(Form mainForm)
       在 ZisClient.Program.Main() 位置 D:\C#\ZisClient\ZisClient\Program.cs:行号 17
       在 System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
       在 System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       在 System.Threading.ThreadHelper.ThreadStart()
1 楼 boreas_baosj 2010-07-29  
D:\jks2pfx>JKS2PFX clientKeystore.jks cs888888 myclientkey zisClientn C:\Progr
Files\Java\jre1.6.0_07\bin
Exception in thread "main" java.lang.NoClassDefFoundError: ExportPrvKey
Caused by: java.lang.ClassNotFoundException: ExportPrvKey
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
Generating new PFX Key/Certificate pair, please enter a password
Loading 'screen' into random state - done
unable to load private key
Created new PEM key  : zisClientn.key  (without password)
Created new PEM cert : zisClientn.crt
Created new PFX file : zisClientn.pfx  (with password)

相关推荐

    KeyStore私钥及证书导出,可命令行直接用[2013-11]

    这个工具不是网上的那种不负责任的代码贴或者是所谓高手的乱侃 此工具可直接用包内的批处理运行(请设定keystore相关参数) 要点:确定JDK环境安装是完整的

    导出JVM KeyStore中私钥的Java程序

    从code-google中导出的源码,用于从JDK keytool创建的keystore中导出私钥,通常用于nginx配置SSL时使用

    java keystore导出.pfx .key .crt 私钥

    JKS2PFX &lt;KeyStore文件&gt; &lt;KeyStore密码&gt; 别名&gt; &lt;导出文件名&gt; [Java Runtime的目录] Java Runtime的目录,指包含Java.exe和keytool.exe的目录,如: c:\progra~1\Java\jre1.5.0_06\bin 例如: JKS2PFX server.jks ...

    kse-543.dmg keystore-explorer: 5.4.3

    广泛的格式支持KeyStore Explorer支持多种KeyStore,密钥对,私钥和证书格式,并可在它们之间进行转换。请参阅功能,以获取受支持格式的列表。 CA的基本功能KeyStore Explorer可以用于创建自己的CA证书并使用它签名...

    PFX格式证书和JAVA keyStore证书相互转换

    java 生成的有私钥的证书导入IE,或者把IE导出的证书导入java的KeyStore

    对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,pfx

    对密钥,密钥对,公钥,证书,私钥,jks,keystore,truststore,cer,pfx

    keystore_export导出密钥工具

    一个简单的java程序,keytool密钥导出工具,导出keytool工具生成的keystore中的密钥。

    apk签名文件keystore制作生成工具

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore MyACP.keystore -storepass android -keypass android -signedjar release.apk debug.apk android。说明:。-keystore MyACP.keystore :签名...

    java-exportpriv.zip

    java exportpriv 是一个java工具,可以用来导出 JSSE Keystore 中的私钥。由于JDK自带的keytool不提供导出私钥功能,这个工具可以弥补这个不足。

    keystore转x509pem工具

    在使用signapk工具签名时,是需要 x509.pem + pk8格式的证书,它是一个公私钥分开存放的格式,在电脑上生成的证书一般是以 keystore格式存放的,有时在证书签发机构申请的证书也是 keystore格式的。这时用signapk...

    java keytool安全证书学习

    JSSE(Java Security Socket ...1)KeyStore: 其中保存服务端的私钥 2)Trust KeyStore:其中保存客户端的授权证书 Client需要: 1)KeyStore:其中保存客户端的私钥 2)Trust KeyStore:其中保存服务端的授权证书

    Android_Keystore_Password_Recover_1.07.jar

    3:如果出现 Unsupported major.minor version 52.0 则表示该文件的版本与本地的jdk版本不匹配 经测试 jdk1.7.0使用1.05版本的AndroidKeystore jdk1.8.0使用1.07版本的AndroidKeystore (资源里面两个版本的都有) ...

    keystore处理

    keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理 keystore,批处理

    portecle keystore制作工具

    portecle keystore相关工具

    Android系统签名的debug.keystore

    这是一个debug.keystore文件,用于Eclipse对APK进行Android系统的签名。用法:将文件解压在任意目录,在Eclipse的Windows/Preferences/Android/Build中设置"Custom debug keystore"为此文件debug.keystore.编译运行...

    生成android.keystore

    keytool -genkey -alias android.keystore -keyalg RSA -validity 365 -keystore android.keystore (-validity 365代表有效期天数),命令完成后,bin目录中会生成android.keystore 如何查看呢?看命令 keytool -list...

    获取KeyStore信息

    获取KeyStore信息获取KeyStore信息获取KeyStore信息获取KeyStore信息获取KeyStore信息获取KeyStore信息

    keystore中文api

    keystore 中文 api。keystore 中文 api。

    Android_Keystore_Password_Recover_1.07.jar最新版

    最后放到Android_Keystore_Password_Recover_1.07.jar同一个目录下; 2,在终端打入以下命令 Java -jar Android_Keystore_Password_Recover_1.07.jar -m 3 -k "my.keystore" -d "passlib.txt" ,接下来回车,就ok了...

Global site tag (gtag.js) - Google Analytics