如何确定需要的 UUDecoding 方法?
How to determine UUDecoding method needed?
我正在与 returns uuencoded 数据的设备通信:
ASCII:EZQAEgETAhMQIBwIAUkAAABj
十六进制: 45-5A-51-41-45-67-45-54-41-68-4D-51-49-42-77-49-41 -55-6B-41-41-41-42-6A
此设备的文档指出上面的内容是 uuencoded,但我不知道如何对其进行解码。最终结果不是人类可读的字符串,但第一个字节显示了后续产品数据的字节数。 (23 还是 24?)
我试过使用 Crypt2 对其进行解码;它似乎与 644、666、744 模式不匹配。
我试着按照维基手写出来:https://en.wikipedia.org/wiki/Uuencoding#Formatting_mechanism
没有意义!如何解码此 uuencoded 数据?
正如@HansKilian 在评论中所说,这不是 uuencoded。
如果你对其进行 base64 解码,你会得到(十六进制):
11 94 00 12 01 13 02 13 10 20 1c 08 01 49 00 00 00 63
第一个数字,十进制的 17,与后面的字节数相同,匹配:
The final result won't be a human readable string but the first byte reveals the number of bytes for the following product data.
(@HansKilian 最初调用它是 base64 编码的。这个答案通过查看第一个解码字节提供了确认,但请接受他的回答)
我同意@canton7 的观点,它看起来像是 base64 编码的。你可以这样解码
byte[] decoded = Convert.FromBase64String("EZQAEgETAhMQIBwIAUkAAABj");
如果需要,您可以像这样打印十六进制值
Console.WriteLine(BitConverter.ToString(decoded));
打印
11-94-00-12-01-13-02-13-10-20-1C-08-01-49-00-00-00-63
我正在与 returns uuencoded 数据的设备通信:
ASCII:EZQAEgETAhMQIBwIAUkAAABj
十六进制: 45-5A-51-41-45-67-45-54-41-68-4D-51-49-42-77-49-41 -55-6B-41-41-41-42-6A
此设备的文档指出上面的内容是 uuencoded,但我不知道如何对其进行解码。最终结果不是人类可读的字符串,但第一个字节显示了后续产品数据的字节数。 (23 还是 24?)
我试过使用 Crypt2 对其进行解码;它似乎与 644、666、744 模式不匹配。
我试着按照维基手写出来:https://en.wikipedia.org/wiki/Uuencoding#Formatting_mechanism
没有意义!如何解码此 uuencoded 数据?
正如@HansKilian 在评论中所说,这不是 uuencoded。
如果你对其进行 base64 解码,你会得到(十六进制):
11 94 00 12 01 13 02 13 10 20 1c 08 01 49 00 00 00 63
第一个数字,十进制的 17,与后面的字节数相同,匹配:
The final result won't be a human readable string but the first byte reveals the number of bytes for the following product data.
(@HansKilian 最初调用它是 base64 编码的。这个答案通过查看第一个解码字节提供了确认,但请接受他的回答)
我同意@canton7 的观点,它看起来像是 base64 编码的。你可以这样解码
byte[] decoded = Convert.FromBase64String("EZQAEgETAhMQIBwIAUkAAABj");
如果需要,您可以像这样打印十六进制值
Console.WriteLine(BitConverter.ToString(decoded));
打印
11-94-00-12-01-13-02-13-10-20-1C-08-01-49-00-00-00-63