oid隐形码_OID的编解码(即在报文中的体现)
先上干货:
我们常见到OID的地方是SNMP和MIB,实际上理论上所有对象都可以有自己的ID。已存在的ID可以在http://www.oid-info.com/查到。这些ID在报文里并非字符串或直接的文本而是遵循的规则可以在https://docs.microsoft.com/zh-cn/windows/desktop/SecCertEnroll/about-object-identifier查到,但这个好像没有中文,我来通俗化的解释下:
1. 整体OID是TLV的方式,以06标识开始,首先是一个字节表示长度,如09表示该OID由下面9个字节表示;
2. 前两个字节(如为X和Y)被编码为一个字节40*X+Y,如1和2,编码的结果为40*1+2=42,也就是2a。
3. 后面的数字若不超过127(即7个位可以表示的范围),则直接为1个字节表示,如04即表示4;若超过128,则使用多个字节表示,不管是2个字节、3个字节或是多个字节,最左边字节的最高位为1,如130的编码是0x81、0x02(1*128+2),840的编码是0x86、0x48(6*128+72)。
4.举个整体的例子:sha256WithRSAEncryption的OID是1.2.840.113549.1.1.11的编码是06 09 2a 86 48 86 f7 0d 01 01 0b。
如果比较懒,可以在线解码http://lapo.it/asn1js/:06开头,然后是长度,然后是编码,如上述4里的例子,可以直接贴到链接里进行解码。
来自百度的解释:对象标识符(Object identifier, OID)又称为物联网域名是由ISO/IEC、ITU国际标准组织共同提出的标识机制,用于对任何类型的对象、概念或者“事物”进行全球无歧义、唯一命名。一旦命名,该名称终生有效。由于OID具有分层灵活、可扩展性强等特点,适合作为现有各种编码方案之间进行交换的元标识机制。
oid隐形码_OID的编解码(即在报文中的体现)相关推荐
- oid隐形码_OID编码规则 | 学步园
对象标识符(OBJECT IDENTIFIER, OID)的编码规则 对象标识符类型 对象标识符(OBJECT IDENTIFIER, OID)类型用层次的形式来表示标准规范.标识符树通过一个点分的十 ...
- Wangle源码分析:编解码Handler
2019独角兽企业重金招聘Python工程师标准>>> 前言 编解码是协议相关的,如果没有编解码Handler,那么在处理网络的粘包.拆包时会变得很复杂.除了http之类的公有协议之 ...
- Android视频编辑器(五)音频编解码、从视频中分离音频、音频混音、音频音量调节等
前言 这篇博客,主要讲解的是android端的音频处理,在开发Android视频编辑器的时候,有一个非常重要的点就是音频的相关处理.比如如何从视频中分离音频(保存为mp3文件),然后分离出来的音频如何 ...
- Web 上的隐形负担:视频编解码
原文标题:An Invisible Tax on the Web: Video Codecs 作者:Judy DeMocker Web上不可见的负担:视频编解码 目前存在一个事实,我们需要花钱才能观看 ...
- VB URL的编解码源码 GB2312 UTF-8编解码
界面如下 源码如下 'UTF-8 URL解码 Public Function UTF8_UrlDecode(ByVal URL As String)Dim B, ub ''中文字的Unicode码(2 ...
- 音视频编解码: YUV采样格式中的YUV444,YUV422,YUV420理解
YUV各种采样格式的说明 通常我们用RGB表示一种彩色.计算机系统里的LCD显示的数据就是RGB来表示每个像素的颜色. 而在我们生活里,有黑白电视机与彩色电视机两种,拍摄节目源时不可以用两种不同的摄像 ...
- Python基于二维码实现的在线编解码系统
目 录 摘 要 I Abstract II 第一章 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 工作环境和背景 2 1.3.1 操作系统 3 1.3.2 编程语言 3 1.3.3编码 ...
- 网页直播源码与编解码
在网页直播源码开发过程中我们一定会涉及到音视频压缩编码知识,压缩编码过程是一种有损的压缩,它的目的是减少音视频文件所需占用的空间和带宽并提高兼容性,在此期间还要尽可能保障音视频"不失真&qu ...
- 【H.264/AVC视频编解码技术具体解释】十三、熵编码算法(4):H.264使用CAVLC解析宏块的残差数据...
<H.264/AVC视频编解码技术具体解释>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战project的形式对H.2 ...
最新文章
- 做百度推广需要投入多少费用?
- java 不知道键值名_java-如果您知道曲线名称和原始私钥/点,如...
- android telephony phone application
- 李宏毅线性代数笔记9:特征值与特征向量
- boost::multi_array模块实现编写调整大小函数的测试,multi_arrays 将使用来自另一个的范围来构建自己
- 云原生编程挑战赛--Serverless创新应用赛邀您提交方案啦!
- oracle vertica性能对比,测试Vertica性能
- exsist什么意思_exists是什么意思_exists的翻译_音标_读音_用法_例句_爱词霸在线词典...
- ssl 的jks 生成工具
- 利用html5看雪花飘落的效果
- leetcode —— 40. 组合总和 II
- Music-Downloader:功能强大的音乐下载器
- NetBIOS和NBNS
- TLQ的安装路径不存在或不正确
- 用好这 43 款 Chrome 插件,让你开发学习一下子好轻松!
- Qt制作透明背景图片与裁剪图片
- Java内存泄漏的排查总结
- 计算机与音乐,计算机音乐与midi
- 【扫盲】Pulse消除马赛克(老司机福利)
- 科兴未来:科星路演|集成电路专场路演