一种嵌入式设备串口加密协议

阅读: 评论:0

⼀种嵌⼊式设备串⼝加密协议嵌⼊式设备串⼝通讯⼀般都会明⽂通讯,但在某些应⽤场合我们也有加密需求, 以下为⼀种加密⽅式的建议.上位机(主机)定义为Master,下位机(从机)定义为Slaver
通讯协议建议:
完整数据格式: 帧头Header+数据长度Length+数据内容Body+数据校验CRC
Header(1Byte):  M-->S ( 0x55 ) , S-->M( 0xaa )
Length(1Byte):  除了帧头和长度字节,后⾯数据的长度
Body(N Byte): 内容长度为 Length -帧头长-数据长-CRC长
CRC(1Byte):从帧头到的数据的校验,选择⽅式有:CRC8,代数和,异或
数据内容建议:
0. 帧头,数据,和校验字节的长度,可⾃⾏根据项⽬通讯内容字节数量⾃⼰修改,⼀般在2byte以内.
1.数据可采⽤c语⾔的结构体的⼩端数据对齐
2.数据组成,oper+sn+playload+check
3.check为保证数据加密后的完整性校验
4.sn为通讯数据序列,每帧数据⾃增1,⽤于防重放攻击和数据统计.
5.当slaver发给master的sn少于当前⾃⾝的sn,则认为该指令⽆效,可以选择性的回复错误代码.
数据加密步骤:
1.当建⽴通讯之间,Slaver向Master请求通讯密钥key1,和随机初始序列sn1.⽤于后续通讯,以防⽌重放偷听.
2.master和slave代码内部约定⼀个固定的密钥key2.
3.每帧数据加密/解密⽅式采⽤对称加密. 通讯数据=原始数据^key1^key2.
4.body加密部分为oper后⾯的内容(不包含oper字节).
---<;待续>

本文发布于:2023-05-07 11:06:47,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/90769.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   加密   内容   字节   长度   以防
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图