LoRaWAN 中的Base64编码

1.背景

LoRaWAN通信过程中,网关传至服务器端Json数据中data字段数据为经过编码和加密的数据(应用数据)。编码方式为Base64,加密方式为AES_128,具体加密方式可阅览LoRaWAN协议。data数据如下

"data":"VEVTVF9QQUNLRVRfMTIzNA=="

题外话 Base64 是一种加密方式吗???那是在很久很久以前我听过Base64加密,Base64编码,真是傻傻分不清楚,那是几脸懵批呀。后来得一高僧指点(没有头发,应该是剃度了),有钥匙才能开的那叫加密,没钥匙就能开的那是编码。我想在了解了Base64原理之后每个人心里都会有个结论。

2.原理

首先请大家看张表:
Base64 编码表
我当时就在想为啥是Base64而不是Base120。看到这个表我的心静了下来。
Base64编码是基于上表64个字母进行编码的(还有个=,严格来说是Base65)。Base64要求把 每三个8Bit的字节转换为四个6Bit的字节 (3x8 = 4x6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。
这个64个字符可以通过0~63来表示,总共会占6b。
VEVTVF9QQUNLRVRfMTIzNA== 我们看下这串如何操作

  1. 在编码表中寻找对应字符数值。比如V 21,E 4,T 19
    截取了一段数据
  2. 转二进制
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值