Tag: asn.1

ASN.1模块描述

我尝试使用ASN.1进行客户端服务器通信,但我不确定我是否正确理解它。 客户端必须向服务器发送一个整数,服务器读取它并发回一个数字和一个字符串,客户端读取它们并发回一个字符串,服务器读取它并发回一个字符串。 就是这样的。 Client —> server 1 integer Server –> Client 1 integer Server –> Client 1 String Client —> server 1 String Server –> Client 1 String 我写了下面的ASN.1模块,我成功用jac asn1生成了类,但我不确定模块的描述是否正确,因为两个序列完全相同。 我不确定我是否只需要输入我将发送或接收的变量或两者兼而有之。 Demo-module DEFINITIONS ::= — Module-name DEFINITIONS ::= BEGIN BEGIN 客户端:: = SEQUENCE { clientInt INTEGER, serverInt INTEGER, serverString BIT STRING, clientString BIT STRING,serverResponse BIT […]

X.509v3 ASN.1到C数据结构

我正在尝试在C(OpenSSL)中创建X509代理证书请求(ProxyCertInfo扩展RFC3820 ),但我无法弄清楚应该如何定义ProxyCertInfo的数据结构。 RFC定义ASN.1语言如下: PKIXproxy88 { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) id-mod(0) proxy-cert-extns(25) } DEFINITIONS EXPLICIT TAGS ::= BEGIN — EXPORTS ALL — — IMPORTS NONE — — PKIX specific OIDs id-pkix OBJECT IDENTIFIER ::= { iso(1) identified-organization(3) dod(6) internet(1) security(5) mechanisms(5) pkix(7) } — private certificate extensions id-pe OBJECT IDENTIFIER ::= { id-pkix […]

以与语言无关的二进制格式序列化数据的最佳方法是什么?

我正在研究一种机制,用于在与语言无关的机制中通过套接字或共享内存传递序列化数据。 我不愿意使用XML,因为这些数据将非常结构化,编码/解码速度至关重要。 拥有一个获得自由许可的优秀C API非常重要,但理想情况下应该支持大量其他语言。 我看过谷歌的协议缓冲区和ASN.1 。 我是在正确的轨道上吗? 还有更好的东西吗? 我应该只实现自己的打包结构,而不是寻找一些标准?