ASN1之DER编码规则

在说DER之前先了解一个概念,数据的序列化。

什么是数据的序列化呢,将高级语言代码转变成二进制流的过程就是数据的序列化。数据序列化的目的就是物理存储和网络传输。在高级语言中有许多结构化的结构,比如,树,图,结构体等,高级语言里的代码最终在网络中都是以二进制流的形式进行传输的,但是对于结构化的数据除了编成二进制码外,他们之间存有一定的关系,为了在对方仍然知道这些关系以用来还原之前的结构,因此除了对结构化的数据进行编码外还得需要保存好他们的结构关系。

为了解决高级语言中结构化数据在网络传输中的结构关系能送达目的地进行还原,常见的几种数据序列化的方法有:

ASN.1,XML,JSON、

JSON:用于跟服务器交换数据。在跨平台传输上有很大优势。JSON其实就是键值对存储数据

var  a = {"one":"一","two":"二"},a就是一个json,a.one的值就是一

JSON可以内嵌数组,var b={"A":"[1,2,3,4,5,6,7]","B":"[a,b,c,d,e]"},b.A[0]的值就是1,json变量里还可内嵌数组。

ASN.1有两部分:一部分描述信息内数据,数据类型及序列号格式;另一部分描述如何将各部分组成信息。

ASN.1编码规则有BER,DER,PER等。DER编码规则原理就是做TLV操作。

ASN1之DER编码规则_第1张图片



你可能感兴趣的:(技术文档)