您的位置:

包含javaasn1sequence的词条

本文目录一览:

ASN.1的定义

抽象语法定义:

ASN.1是描述在网络上传输信息格式的标准方法。它有两部分:一部分描述信息内数据,数据类型及序列格式;另一部分描述如何将各部分组成消息。它原来是作为X.409的一部分而开发的,后来才自己独立成为一个标准。ASN.1在OSI的ISO 8824/ITU X.208(说明语法)和ISO 8825/ITU X.209(说明基本编码规则)规范。

例如:

Report ::= SEQUENCE {

author OCTET STRING,

title OCTET STRING,

body OCTET STRING,

biblio Bibliography

}

在这个例子中,"Report"是由名字类型的信息组成的,而SEQUENCE表示消息是许多数据单元构成的,前三个数据单元的类型是OCTET STRING,而最后一个数据类型见下面的ASN.1语法表示它的意义:

Bibliography ::= SEQUENCE {

author OCTET STRING

title OCTET STRING

publisher OCTET STRING

year OCTET STRING

}

如何用java实现asn1编解码..急急急急急急急急急!!!

byte[] content=contentStr.getBytes("asn1"); //如果asn1是一种编码,这就是将字符串转换成asn1的二进制

ios支付宝怎么把私钥转换成pkcs8 格式

用途:

pkcs8格式的私钥转换工具。它处理在PKCS#8格式中的私钥文件。它可以用多样的PKCS#5 (v1.5 and v2.0)和 PKCS#12算法来处理没有解密的PKCS#8 PrivateKeyInfo格式和EncryptedPrivateKeyInfo格式。

用法:

[cpp] view plaincopy

openssl pkcs8 [-inform PEM|DER] [-outform PEM|DER] [-in filename] [-passin arg] [-out filename]

[-passout arg] [-topk8] [-noiter] [-nocrypt] [-nooct] [-embed] [-nsdb] [-v2 alg] [-v1 alg] [-engine id]

选项说明:

-inform PEM|DER::输入文件格式,DER或者PEM格式。DER格式采用ASN1的DER标准格式。一般用的多的都是PEM格式,就是base64编码格式。

-outform DER|PEM:输出文件格式,DER或者PEM格式。

-in filename:输入的密钥文件,默认为标准输入。如果密钥被加密,会提示输入一个密钥口令。

-passin arg:输入文件口令保护来源。

-out filename:输出文件,默认为标准输出。如果任何加密操作已经执行,会提示输入一个密钥值。输出的文件名字不能和输入的文件名一样。

-passout arg:输出文件口令保护来源。

-topk8:通常的是输入一个pkcs8文件和传统的格式私钥文件将会被写出。设置了此选项后,位置转换过来:输入一个传统格式的私钥文件,输出一个PKCS#8格式的文件。

-noiter:MAC保护计算次数为1。

-nocrypt:PKCS#8密钥产生或输入一般用一个适当地密钥来加密PKCS#8 EncryptedPrivateKeyInfo结构。设置了此选项后,一个不加密的PrivateKeyInfo结构将会被输出。这个选项一直不加密私钥文件,在绝对必要的时候才能够使用。某些软件例如一些JAVA代码签名软件使用不加密的私钥文件。

-nooct:这个选项产生的RSA私钥文件是一个坏的格式,一些软件将会使用。特别的是,私钥文件必须附上一个八位组字符串,但是一些软件仅仅包含本身的结构体没有使八位组字符串所环绕。不采用八位组表示私钥。

-embed:这个选项产生的RSA私钥文件是一个坏的格式。在私钥结构体中采用嵌入式DSA参数格式。在这个表单中,八位组字符串包含了ASN1 SEQUENCE中的两种结构:一个SEQUENCE包含了密钥参数,一个ASN1 INTEGER包含私钥值。

-nsdb:这个选项产生的RSA私钥文件是一个坏的格式并兼容了Netscape私钥文件数据库。采用NetscapeDB的DSA格式。

-v2 alg:采用PKCS#5 v2.0,并指定加密算法,默认的是PKCS#8私钥文件被叫做BpbeWithMD5AndDES-CBC(该算法用56字节的DES加密但是在PKCS#5 v1.5中有更加强壮的加密算法)的加密算法用口令进行加密。用B-v2选项,PKCS#5 v2.0相关的算法将会被使用,可以是des3(168字节)和rc2(128字节),推荐des3。

-v1 alg:采用PKCS#5 v1.5或pkcs12,并指定加密算法。可采用的算法见下面。

-engine id:指定硬件引擎。

注意:

加密了的PEM编码PKCS#8文件表单用下面的头部和尾部:

-----BEGIN ENCRYPTED PRIVATE KEY-----

-----END ENCRYPTED PRIVATE KEY-----

未加密的表单用:

-----BEGIN PRIVATE KEY-----

-----END PRIVATE KEY-----

跟传统的SSLeay算法相比,用PKCS#5 v2.0系列的算法加密私钥,有更高的安全性以及迭代次数。于是附加的安全性是经过深思熟虑的。

默认的加密算法仅仅是56字节的,是因为它是PKCS#8所支持的最好的方法。

有一些软件使用PKCS#12基于密钥的加密算法来加密PKCS#8格式的私钥:它们会自动的处理但是没有选项来操作。

在PKCS#8格式中,有可能的是输出DER编码格式的经过加密的私钥文件,是因为加密的详细说明包含在DER等级中,相反的是传统的格式包含在PEM邓丽中。

PKCS#5 v1.5和 PKCS#12 算法:

各种各样的算法可以被选项-v1所使用。包含PKCS#5 v1.5和 PKCS#12 算法。详细描述如下:

BPBE-MD2-DES PBE-MD5-DES:这两个算法包含在PKCS#5 v1.5中。它们仅仅提供56字节的保护,加密算法用DES。

BPBE-SHA1-RC2-64 PBE-MD2-RC2-64 PBE-MD5-RC2-64 PBE-SHA1-DES:它们在传统的PKCS#5 v1.5中没有被提到,但是它们用同样地密钥引出算法,被一些软件所支持。在PKCS#5 v2.0中所提到。它们使用64字节的RC2以及56字节的DES。

BPBE-SHA1-RC4-128 PBE-SHA1-RC4-40 PBE-SHA1-3DES PBE-SHA1-2DES PBE-SHA1-RC2-128 PBE-SHA1-RC2-40:它们是PKCS#12基于密钥的加密算法,它们允许使用高强度的加密算法,例如3des或128位的RC2。

实例:

用3des算法将传统的私钥文件转换为PKCS#5 v2.0:

[cpp] view plaincopy

openssl pkcs8 -in key.pem -topk8 -v2 des3 -out enckey.pem

用PKCS#5 1.5兼容的DES算法将私钥文件转换为pkcs8文件:

[html] view plaincopy

openssl pkcs8 -in ocspserverkey.pem -topk8 -out ocspkcs8key.pem

用PKCS#12兼容的3DES算法将私钥文件转换为pkcs8文件:

[html] view plaincopy

openssl pkcs8 -in key.pem -topk8 -out enckey.pem -v1 PBE-SHA1-3DES

读取一个DER格式加密了的PKCS#8格式的私钥:

[cpp] view plaincopy

openssl pkcs8 -inform DER -nocrypt -in key.der -out key.pem

转换一个PKCS#8格式的私钥到传统的私钥:

[cpp] view plaincopy

openssl pkcs8 -in pk8.pem -out key.pem

pkcs8中的私钥以明文存放:

[html] view plaincopy

openssl pkcs8 -in ocspserverkey.pem -topk8 -nocrypt -out ocspkcs8key.pem

标准:

PKCS#5 v2.0的测试向量的实现是以通告的形式用高强度的迭代次数算法3DES、DES和RC2来加密的。很多人要确认能够解密产生的私钥。

PKCS#8格式的DSA私钥文件没有备注文件中的:在PKCS#11 v2.01中的11.9节被隐藏了的。OpenSSL的默认DSA PKCS#8私钥格式隐藏在这个标准中。

BUGs:

必须有一个选项打印使用的加密算法的其他详细细节,例如迭代次数。

PKCS#8用3DES和PKCS#5 v2.0必须是默认的私钥文件:目前为了命令的兼容性。

总是报找不到方法

要把项目所需的Jar包都上传到相应的目录中。

还有就是,你检查是否在代码中使用了绝对路径。

上网的话,必须用相对路径,多数都这情况。

asn1primitive.java在哪个包里面?

 java没有utils这个类,除非是同事写的,没有告诉自己,所以找不到

不过java有 java.util这个package。

包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包

ASN.1的数据结构

ASN.1 还能够定义如下的数据结构类型:

结构 ( SEQUENCE )

列表 ( SEQUENCE OF )

类型选择 ( CHOICE )

包含javaasn1sequence的词条

2023-01-03
包含chinesejstrucchem的词条

本文目录一览: 1、关于一个叫Chemene JSDraw for ipad的化学结构画图软件如何安装、使用? 关于一个叫Chemene JSDraw for ipad的化学结构画图软件如何安装、使用

2023-12-08
包含extjs6.0的词条

本文目录一览: 1、extjs6.0数据表格(带复选框) 2、谁能帮忙用EXTJS6.0 做出一份图表,里面要一个曲线图,一个饼状图,相互关联 3、在eclipse里使用extjs6.0版本应该引用哪

2023-12-08
包含cqm360omegajshdcq的词条

本文目录一览: 1、js 下载文件 不提示保存 直接下载 2、电影《冰封:永恒之门》完整版高清HD迅雷下载? 3、求一个免费升级的杀毒软件? 4、js中弹出对话框并下载文件 5、为什么360安全卫士提

2023-12-08
包含extjs定义关闭按钮的词条

本文目录一览: 1、extjs 定义window的时候有一个右上角有一个关闭按钮,点击时是隐藏操作,如何让它做关闭操作 2、Extjs 怎样关闭当前窗口 3、extjs 获取一个panel 如何禁用b

2023-12-08
包含golangbreak的词条

2022-11-26
包含cqm360longinesjshdcq的词条

本文目录一览: 1、求卡巴斯基6.0注册码,真诚跪求,骗人的和过期的不要来1 2、卡巴斯基的问题 3、卡巴基斯病毒库过期怎么办啊 求卡巴斯基6.0注册码,真诚跪求,骗人的和过期的不要来1 你先下载一个

2023-12-08
包含imgolang的词条

2022-11-27
包含cojsiderate的词条

本文目录一览: 1、considerate是什么意思 2、considerate和considerable的区别是什么? 3、Considerate是什么意思 4、单词considerate 和 co

2023-12-08
包含cjs.is.my.boy.的词条

本文目录一览: 1、自我介绍英语作文 2、is,my,baother,baby,boy,this连词成句? 3、MY BOY怎么用 4、我的男孩英语怎么写 自我介绍英语作文 英语的自我介绍主要是对自己

2023-12-08
包含asp.netvue.js的词条

本文目录一览: 1、在.net开发中,vue.js怎样融合进去,如何不与.net冲突并构建应用 2、ASP.net MVC视图文件中的{{item.text}}是什么意思,用法是什么样的 3、女生软件

2023-12-08
包含cutocad2014mjs插件的词条

本文目录一览: 1、cutocad2010中出现记事本,咋回事 2、用cutoCAD画图如何使标注的文字变大小? 3、电脑打开cutocad2014黑屏怎么回事 4、AUCUTOCAD 2014使用注

2023-12-08
包含config.json门罗币的词条

本文目录一览: 1、xml币怎么挖 2、config.json是什么文件 3、如何修改游戏mod中后缀为json的文件? xml币怎么挖 具体步骤如下:门罗币xmr挖矿需要准备两个软件:一个是门罗币钱

2023-12-08
包含stormgolang的词条

本文目录一览: 1、2017年,Web 后端出现了哪些新的思想和技术 2、webstorm 怎么添加 golang 求助 3、phpstorm golang开发环境如何配置 4、golang ide

2023-12-08
包含chenfjs4113的词条

本文目录一览: 1、@163.com邮箱怎么登录 2、wifi:T:WPA;S:WSJzxm;P:WSJ880303zxm;H:false是什么意思? 3、法士特小8档 型号为8JS85A.8JS85

2023-12-08
包含content报错js的词条

本文目录一览: 1、JS调用C#.net的webservice,使用"application/json"的ContentType出500错误 2、网页 js错误问题(null为空或不是对象) 3、网页

2023-12-08
包含python相关的函数知识的词条

2022-11-10
包含cocojs2d的词条

本文目录一览: 1、cocos2d 跟 cocos creator有什么区别吗 2、怎样看待越来越多cocos2dx程序员转unity3d,unity是否是大势所趋 3、一文秒懂厂商推送 4、目前做2

2023-12-08
包含gjm7ry的词条

2023-01-09
包含cdnbootstrap.min.js的词条

本文目录一览: 1、Bootstrap免费 CDN 加速服务/Bootstrap文件怎么引入 2、bootstrap怎么快速使用 3、bootstrap 导航条下拉菜单点击无反应? 4、怎么在页面里引

2023-12-08