ASN1常用函数-树莓派4b+opencv4+python 打开摄像头的实现方法

时间:2024-06-22 11:26:04
【文件属性】:

文件名称:ASN1常用函数-树莓派4b+opencv4+python 打开摄像头的实现方法

文件大小:2.26MB

文件格式:PDF

更新时间:2024-06-22 11:26:04

opensll 加密 解密 数据安全 网络安全

13.7 ASN1常用函数 ASN1的基本的数据类型一般都有如下函数:new、free、i2d、d2i、i2a、a2i、print、set、 get、cmp和 dup。其中 new、free、i2d、d2i函数通过宏定义实现。new函数用于分配空间, 生成 ASN1数据结构;free用于释放空间;i2d函数将 ASN1数据结构转换为 DER编码;d2i 将 DER编码转换为 ASN1数据结构,i2a将内部结构转换为 ASCII码,a2i将 ASCII码转换 为内部数据结构。set函数用于设置 ASN1类型的值,get函数用于获取 ASN1类型值;print 将 ASN1类型打印;cmp用于比较 ASN1数据结构;dup函数进行数据结构的拷贝。 常用的函数有: 1) int a2d_ASN1_OBJECT(unsigned char *out, int olen, const char *buf, int num) 计算 OID的 DER编码,比如将 2.99999.3形式转换为内存形式。示例: #include void main() { const char oid[]={"2.99999.3"}; int i; unsigned char *buf; i=a2d_ASN1_OBJECT(NULL,0,oid,-1); if (i <= 0) return; buf=(unsigned char *)malloc(sizeof(unsigned char)*i); i=a2d_ASN1_OBJECT(buf,i,oid,-1); free(buf); return; } 输出结果:buf内存值为:86 8D 6F 03 2) int a2i_ASN1_INTEGER(BIO *bp,ASN1_INTEGER *bs,char *buf,int size) 将 bp中的 ASC码转换为 ASN1_INTEGER,buf存放 BIO中的 ASC码。示例如下: #include int main() { BIO *bp; ASN1_INTEGER *i;


网友评论