问题描述
我想解码 LoRaWAN 数据包并以文本形式获取其有效负载。
我尝试过的是
final LoraDecrypter decrypter = new LoraDecrypter(
Hex.decode("2B7E151628AED2A6ABF7158809CF4F3C"));
final byte[] decrypt = decrypter
.decrypt("gRWQH+IAAAAAAAAAAAAAAACXIjkjAAj7");
final String hexString = ByteUtils.toHexString(decrypt);
System.out.println(hexString);
有效负载 hexString 的预期值为 8115901FE2000000000000000000000000972239230008FB 但我得到了 bb03a676609aef0f7d4c6d044e0b>
是否有其他库可以将 LoRaWAN 数据包有效负载数据作为十六进制字符串获取?
Assuming base64-encoded packet
gRWQH+IAAAAAAAAAAAAAAACXIjkjAAj7
Message Type = Data
PHYPayload = 8115901FE2000000000000000000000000972239230008FB
( PHYPayload = MHDR[1] | MACPayload[..] | MIC[4] )
MHDR = 81
MACPayload = 15901FE2000000000000000000000000972239
MIC = 230008FB
( MACPayload = FHDR | FPort | FRMPayload )
FHDR = 15901FE2000000
FPort = 00
FRMPayload = 0000000000000000972239
( FHDR = DevAddr[4] | FCtrl[1] | FCnt[2] | FOpts[0..15] )
DevAddr = E21F9015 (Big Endian)
FCtrl = 00
FCnt = 0000 (Big Endian)
FOpts =
Message Type = Confirmed Data Up
Direction = up
FCnt = 0
FCtrl.ACK = false
FCtrl.ADR = false
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)