坏男孩上的导师可靠吗的情感导师能教我怎么在网上搭话吗?

Bouncy Castle Java 平台轻量级密码术包 - 小强博客 - ITeye技术网站
博客分类:
Bouncy Castle 是一种用于 Java 平台的开放源码的轻量级密码术包。它支持大量的密码术算法,并提供 JCE 1.2.1 的实现。因为 Bouncy Castle 被设计成轻量级的,所以从 J2SE 1.4 到 J2ME(包括 MIDP)平台,它都可以运行。它是在 MIDP 上运行的唯一完整的密码术包。
Bouncy Castle的Java JCE安装方法
1、去官方站点下载Bouncy Castle的JCE Provider包 bcprov-ext-jdk15-145.jar
2、把jar文件复制到 $JAVA_HOME$\jre\lib\ext 目录下面
3、修改配置文件\jre\lib\security\java.security
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=com.sun.net.ssl.internal.ssl.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider
security.provider.6=com.sun.security.sasl.Provider
#前面是java环境已经提供的,尾部加上这一行即可
security.provider.7=org.bouncycastle.jce.provider.BouncyCastleProvider
4、可以写个小程序查看本地java系统中安装的所有的JCE提供者,和一些相应算法。
可参考:/blog/1985565
-------列出加密服务提供者-----
Provider:SUN - version:1.6
SUN (DSA key/ DSA SHA-1, MD5 SecureR X.509 JKS PKIX CertPathV PKIX CertPathB LDAP, Collection CertStores, JavaPolicy P JavaLoginConfig Configuration)
Provider:SunRsaSign - version:1.5
Sun RSA signature provider
Provider:SunJSSE - version:1.6
Sun JSSE provider(PKCS12, SunX509 key/trust factories, SSLv3, TLSv1)
Provider:SunJCE - version:1.6
SunJCE Provider (implements RSA, DES, Triple DES, AES, Blowfish, ARCFOUR, RC2, PBE, Diffie-Hellman, HMAC)
Provider:SunJGSS - version:1.0
Sun (Kerberos v5, SPNEGO)
Provider:SunSASL - version:1.5
Sun SASL provider(implements client mechanisms for: DIGEST-MD5, GSSAPI, EXTERNAL, PLAIN, CRAM-MD5; server mechanisms for: DIGEST-MD5, GSSAPI, CRAM-MD5)
Provider:XMLDSig - version:1.0
XMLDSig (DOM XMLSignatureF DOM KeyInfoFactory)
Provider:SunPCSC - version:1.6
Sun PC/SC provider
Provider:SunMSCAPI - version:1.6
Sun's Microsoft Crypto API provider
Provider:BC - version:1.5
BouncyCastle Security Provider v1.50
-------列出系统支持的消息摘要算法:
SKEIN-256-160
SKEIN-512-160
SKEIN-512-512
SKEIN-256-256
SKEIN-256-128
SKEIN-512-256
SHA-512/256
SKEIN-512-224
SKEIN-512-384
SHA-512/224
SKEIN-256-224
SKEIN-512-128
-------列出系统支持的生成公钥和私钥对的算法:
ECGOST3410
DIFFIEHELLMAN
附件中是JDK1.5-JDK1.7中需要的Jar包
下载次数: 241
下载次数: 132
(584.6 KB)
下载次数: 79
(254.3 KB)
下载次数: 80
下载次数: 75
浏览 10131
浏览: 558824 次
来自: 北京
太好了,谢谢啊。
学习了,谢谢您~
算法有问题,会产生不可见字符,造成信息丢失
该图片仅限百度用户内部交流Android中SSL通信中使用的bks格式证书的生成 - 简书
<div class="fixed-btn note-fixed-download" data-toggle="popover" data-placement="left" data-html="true" data-trigger="hover" data-content=''>
写了19124字,被128人关注,获得了206个喜欢
Android中SSL通信中使用的bks格式证书的生成
上一篇提到需要加载jks格式的证书来构建SSLContext。实际上在Android中是无法使用jks证书的。Android 系统中使用的证书要求是bks格式。一般来说,我们使用jdk的keytool只能生成jks的证书库,如果生成bks的则需要下载BouncyCastle库。搜集了各方资料,整理了以下如何将服务端提供的crt格式证书转换成Android上使用的bks证书。
1 Introduction
JKS和JCEKS是Java密钥库(KeyStore)的两种比较常见类型,JKS的Provider是SUN,在每个版本的JDK中都有。BKS来自BouncyCastleProvider,它使用的也是TripleDES来保护密钥库中的Key,它能够防止证书库被不小心修改(Keystore的keyentry改掉1个bit都会产生错误),BKS能够跟JKS互操作。
要生成bks证书,需要bcprov-ext-jdk15on-151.jar()。且将该文件放到Java\jdk1.8.0_20\jre\lib\ext目录下。
我们的后端同事提供了自签名的服务器证书server.crt,我们需要把这个server.crt转换成Android系统的bks格式证书。使用以下命令行:keytool -importcert -trustcacerts -keystore e:\key.bks -file e:\server.crt -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider按照提示重复输入两次密码(在Java的KeyStore对象加载证书时会用到这个密码。),然后就成功将E:\目录下的server.crt转成key.bks证书。
把证书复制到Android项目的asset目录中,参考上篇文章即可实现单向的SSL加密TCP通信。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
被以下专题收入,发现更多相似内容:
如果你是程序员,或者有一颗喜欢写程序的心,喜欢分享技术干货、项目经验、程序员日常囧事等等,欢迎投稿《程序员》专题。
专题主编:小...
· 273120人关注
分享Android开发的知识,教程,解析,前沿信息,都可以,欢迎大家投稿~
内容可搞笑,可逗比,另外欢迎申请管理员
· 25391人关注
Android老鸟给新人的建议、资源。
更优质的原创内容,欢迎关注技术公众号,微信搜索:“Open软件开发小组”或者“open_dev”
· 15038人关注
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
选择支付方式:获取私钥从BouncyCastle的X509证书? C#-c#,x509certificate,bouncycastle,privatekey-CodeGo.net
获取私钥从BouncyCastle的X509证书? C#
通常,当我抓住一个X509Certificate2我的密钥库,我可以打电话.PrivateKey检索证书的私钥作为AsymmetricAlgorithm。不过我已经决定castle和它的实例X509Certificate仅具有getPublicKey();我看不到一种方式来获得私钥出证书的。任何想法?
我从我的Windows-MY密钥库得到一个的X509Certificate2
//mycert is an X509Certificate2 retrieved from Windows-MY Keystore
X509CertificateParser certParser = new X509CertificateParser();
X509Certificate privateCertBouncy = certParser.ReadCertificate(mycert.GetRawCertData());
AsymmetricKeyParameter pubKey = privateCertBouncy.GetPublicKey();
//how do i now get the private key to make a keypair?
反正有一个转换AsymmetricAlgorithm(C#私钥)到AsymmetricKeyParameter(BouncyCastle的私有密钥)?
本文地址 :CodeGo.net/174881/
-------------------------------------------------------------------------------------------------------------------------
1. 不知道BouncyCastle的那么多,但它似乎是简单的事是重新创建基于关键中的关键
public static AsymmetricKeyParameter TransformRSAPrivateKey(AsymmetricAlgorithm privateKey)
RSACryptoServiceProvider prov = privateKey as RSACryptoServiceP
RSAParameters parameters = prov.ExportParameters(true);
return new RsaPrivateCrtKeyParameters(
new BigInteger(1,parameters.Modulus),
new BigInteger(1,parameters.Exponent),
new BigInteger(1,parameters.D),
new BigInteger(1,parameters.P),
new BigInteger(1,parameters.Q),
new BigInteger(1,parameters.DP),
new BigInteger(1,parameters.DQ),
new BigInteger(1,parameters.InverseQ));
你可以调用的代码
AsymmetricKeyParameter bouncyCastlePrivateKey = TransformRSAPrivateKey(mycert.PrivateKey);
该证书包含一个RSA密钥,但结果可以为DSA实现与DSACryptoServiceProvider和DSAParameters
Akp = Org.BouncyCastle.Security.DotNetUtilities.GetKeyPair(this.Certificate.PrivateKey).P
1下接受投票
不知道BouncyCastle的那么多,但它似乎是简单的事是重新创建基于关键中的关键
public static AsymmetricKeyParameter TransformRSAPrivateKey(AsymmetricAlgorithm privateKey)
RSACryptoServiceProvider prov = privateKey as RSACryptoServiceP
RSAParameters parameters = prov.ExportParameters(true);
return new RsaPrivateCrtKeyParameters(
new BigInteger(1,parameters.Modulus),
new BigInteger(1,parameters.Exponent),
new BigInteger(1,parameters.D),
new BigInteger(1,parameters.P),
new BigInteger(1,parameters.Q),
new BigInteger(1,parameters.DP),
new BigInteger(1,parameters.DQ),
new BigInteger(1,parameters.InverseQ));
你可以调用的代码
AsymmetricKeyParameter bouncyCastlePrivateKey = TransformRSAPrivateKey(mycert.PrivateKey);
该证书包含一个RSA密钥,但结果可以实现对DSA与DSACryptoServiceProvider和
问题是,你只能这样做,如果私钥设置exportable.Otherwise你只能导出和指数是不够的decryption.There必须的方式来获得私有密钥的证书存储区直接在castle的API。
我不知道出路,但不知道它不会工作...!
本文标题 :获取私钥从BouncyCastle的X509证书? C#
本文地址 :CodeGo.net/174881/
Copyright (C) 2014 CodeGo.net

我要回帖

更多关于 坏男孩导师排名 的文章

 

随机推荐