小编kar*_*yzz的帖子

ASN.1 对象标识符值大于 128

所以我理解当值小于 127 时值的编码方式。但是,在阅读https://docs.microsoft.com/en-us/windows/desktop/seccertenroll/about-object-identifier 后,我仍然不'不明白大于 128 的值是如何编码的。例如:

1.3.6.1.4.1.311.21.20 
Run Code Online (Sandbox Code Playgroud)

被编码为:

2b 06 01 04 01 82 37 15 14 
Run Code Online (Sandbox Code Playgroud)

怎么311编码成82 37?当您转换8237为十进制时,您会得到33335. 我真的不完全理解这部分。

c# binary encoding cryptography asn.1

2
推荐指数
1
解决办法
302
查看次数

这是交换字节顺序的合法方式吗?

正如标题所说,我有BinaryReader从文件中读取的UInt16 .该文件包含十六进制的顺序为"0x0102",而在读取之后它是相反的.这是合法的吗?我听说BitConverter的工作原理是如何在pc中设置字节序,但我使用它两次,所以看起来一切都应该正常工作?

public static UInt16 EndiannessSwap(UInt16 data)
{
   var step1 = BitConverter.GetBytes(data);
   var step2 = step1.Reverse().ToArray();
   var step3 = BitConverter.ToUInt16(step2, 0);
   return step3;
}
Run Code Online (Sandbox Code Playgroud)

.net c#

1
推荐指数
1
解决办法
73
查看次数

标签 统计

c# ×2

.net ×1

asn.1 ×1

binary ×1

cryptography ×1

encoding ×1