CN111881463A - 一种串口通信加密方法、系统及串口设备 - Google Patents
一种串口通信加密方法、系统及串口设备 Download PDFInfo
- Publication number
- CN111881463A CN111881463A CN202010691216.2A CN202010691216A CN111881463A CN 111881463 A CN111881463 A CN 111881463A CN 202010691216 A CN202010691216 A CN 202010691216A CN 111881463 A CN111881463 A CN 111881463A
- Authority
- CN
- China
- Prior art keywords
- serial port
- key
- version number
- serial
- port device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种串口通信加密方法、系统及串口设备,用于在第一串口设备和第二串口设备之间进行通信加密,所述方法包括:所述第一串口设备和所述第二串口设备开始建立通信连接后,所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并将所述动态密钥和所述干扰密钥混合在一个版本号数据包中返回给所述第一串口设备;所述第一串口设备使用约定的算法对返回的版本号数据包进行解析,得到所述动态密钥,并采用所述动态密钥在所述第一串口设备和所述第二串口设备之间建立加密通信连接。采用本发明的技术方案,可以提高串口通信的安全性。
Description
技术领域
本发明涉及串口通信技术领域,尤其涉及一种串口通信加密方法、系统及串口设备。
背景技术
串口通信(Serial Communication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。串口通信基于外设和计算机之间的通信协议,通过该通信协议即可控制外设或获取外设的数据。
现有的串口通信方式,可以通过串口监听助手,将外设与计算机之间的通信协议全部监听出来。如果通讯协议没有经过加密,将会很容易被人抄袭、仿造,自己生产的外设产品也很容易就被他人控制。即使使用了加密技术,监听出来的密文也是可以有效使用的,安全性仍然不高。
发明内容
本发明的目的在于提供一种串口通信加密方法、系统及串口设备,从而可以提高串口通信的安全性。
本发明实施例中,提供了一种串口通信加密方法,用于在第一串口设备和第二串口设备之间进行通信加密,所述方法包括:
所述第一串口设备和所述第二串口设备开始建立通信连接后,所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并将所述动态密钥和所述干扰密钥混合在一个版本号数据包中返回给所述第一串口设备;
所述第一串口设备使用约定的算法对返回的版本号数据包进行解析,排除所述干扰密钥,得到所述动态密钥,并采用所述动态密钥在所述第一串口设备和所述第二串口设备之间建立加密通信连接。
本发明实施例中,所述的串口通信加密方法还包括:
所述第一串口设备和所述第二串口设备一开始建立物理连接时,所述第一串口设备和所述第二串口设备之间采用一个固定密钥进行加密通信连接。
本发明实施例中,所述第一串口设备和所述第二串口设备采用所述固定密钥建立加密通信连接时,所述第一串口设备一直发送版本号请求数据包给所述第二串口设备,如果在设定的时间内未接收到所述第二串口设备返回的版本号数据包,则需重新使用所述固定密钥与所述第二串口设备建立加密通信连接。
本发明实施例中,所述版本号数据包中包括硬件设备号、硬件版本号、软件版本号、动态密钥和干扰密钥。
本发明实施例中,所述干扰密钥与所述动态密钥设置于所述版本号协议包中的设定位置。
本发明实施例中,所述第一串口设备和所述第二串口设备采用DES对称加密算法进行加密通信。
本发明实施例中,还提供了一种串口通信加密系统,其包括第一串口设备和第二串口设备,所述第一串口设备和所述第二串口设备进行通信时,采用上述的串口通信加密方法。
本发明实施例中,还提供了一种串口设备,其包括:
密钥生成模块,用于在接到与所述串口通信设备连接的另一个串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥;
数据包生成模块,用于将所述动态密钥和所述干扰密钥混合在一个版本号数据包中并返回给所述另一个串口设备,
通信连接模块,用于在所述另一个串口设备从所述版本号数据包中解析出所述动态密钥后,采用所述动态密钥与所述另一个串口通信设备建立加密通信连接。
与现有技术相比较,采用本发明的串口通信加密方法及系统,所述第一串口设备和所述第二串口设备开始建立通信连接后,采用固定密钥进行加密通信,所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并返回给所述第一串口设备,所述第一串口解析出所述动态密钥后,采用所述动态密钥在所述第一串口设备和所述第二串口设备之间建立加密通信连接,将固定密钥、干扰密钥、动态密钥结合起来,使得通信协议不仅仅是加密的,而且是临时的、动态的,就算被监听出来,也是无效地通信协议,提高了所述第一串口设备和所述第二串口设备之间通信的安全性。
附图说明
图1是本发明实施例的串口通信加密系统的结构示意图。
图2是本发明实施例的串口通信加密方法的流程图。
图3是本发明实施例的串口设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的实现进行详细描述。
如图1所示,本发明实施例中,提供了一种串口通信加密系统,其包括通过串口进行通信连接的第一串口设备和第二串口设备。需要说明的是,所述第一串口设备和所述第二串口设备可以是具有串口的计算机设备,也可以是具有串口的计算机外设。
如图2所示,所述串口通信加密系统中,所述第一串口设备和所述第二串口设备的加密通信过程包括步骤S1-步骤S5。下面分别进行说明。
步骤S1:所述第一串口设备和所述第二串口设备通过串口建立物理连接后,建立通信连接;
步骤S2:所述第一串口设备向所述第二串口设备发出的版本号请求数据包,请求获得所述第二串口设备的版本号;
步骤S3:所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并将所述动态密钥和所述干扰密钥混合在一个版本号数据包中返回给所述第一串口设备;
步骤S4:所述第一串口设备使用约定的算法对返回的版本号数据包进行解析,排除所述干扰密钥,得到所述动态密钥;
步骤S5:所述第一串口设备和所述第二串口设备采用所述动态密钥建立加密通信连接。
需要说明的是,本发明实施例中,在所述第一串口设备和所述第二串口设备建立物理连接后,可以采用一个固定密钥进行加密通信连接,从而确保通信的安全性。在步骤S2和S3中,所述第一串口设备和所述第二串口设备的通信数据包中,都采用了所述固定密钥进行加密。
例如,加密前串口协议数据包的格式如下:
数据头 | 索引 | 功能单元 | 命令字 | 长度高位 | 长度低位 | 数据 | CRC |
0xF5 | 1Byte | 1Byte | 1Byte | 1Byte | 1Byte | N Byte | 1Byte |
加密后的串口协议数据包的格式如下:
所述固定密钥可以是8个字节:"a"、"b"、"c"、"d"、"e"、"f"、"g"、"h",所述第一串口设备和所述第二串口设备采用所述固定密钥建立加密通信连接后,所述第一串口设备一直发送版本号请求数据包给所述第二串口设备,如果在设定的时间内(例如5秒)未接收到所述第二串口设备返回的版本号数据包,则需重新使用所述固定密钥与所述第二串口设备建立加密通信连接。
所述版本号数据包中包括硬件设备号、硬件版本号、软件版本号、动态密钥和干扰密钥,如下表所示:
本发明实施例中,未经过所述固定密钥加密前,所述版本号数据包的数据格式如下:
数据头 | 索引 | 功能单元 | 命令字 | 长度高位 | 长度低位 | 数据 | CRC |
0xF5 | Xx | 0x00 | 0x00 | 0x00 | 12 | 18Byte | CRC |
其中,所述版本号数据包中,18Byte的数据内容如下:
硬件设备号 | 硬件版本号 | 软件版本号 | 干扰密钥 | 动态密钥 |
2Byte | 2Byte | 2Byte | 4Byte | 8Byte |
需要说明的是,本发明实施例中,所述动态密钥和所述干扰密钥都是随机生成的,每一次所述第一串口设备和所述第二串口设备开始建立连接时,都需要采用一个新的动态密钥进行连接。所述干扰密钥与所述动态密钥可以设置于所述版本号协议包中的设定位置,可以相互混杂设置于设定的位置,由于每一次建立连接时,所述动态密钥和所述干扰密钥都是变化的,在所述干扰密钥的干扰下,监听者无法获取到所述动态密钥;即使所述动态密钥被监听出来,在下一次连接时,所述动态密钥又发生了变化,从而提高所述第一串口设备和所述第二串口设备之间通信的安全性。
本发明实施例中,所述第一串口设备和所述第二串口设备采用DES对称加密算法进行加密通信。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。所述第一串口设备和所述第二串口设备采用所述固定密钥进行加密通信时,Key即为所述固定密钥。所述第一串口设备和所述第二串口设备采用所述固定密钥进行加密通信时,Key即为所述动态密钥。
如图3所示,本发明实施例中,还提供了一种串口设备,其包括密钥生成模块1、数据包生成模块2和通信连接模块3。下面分别进行说明。
所示密钥生成模块1,用于在接到与所述串口通信设备连接的另一个串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥。
所示数据包生成模块2,用于将所述动态密钥和所述干扰密钥混合在一个版本号数据包中并返回给所述另一个串口设备。
所示通信连接模块3,用于在所述另一个串口设备从所述版本号数据包中解析出所述动态密钥后,采用所述动态密钥与所述另一个串口通信设备建立加密通信连接。
综上所述,采用本发明的串口通信加密方法及系统,所述第一串口设备和所述第二串口设备开始建立通信连接后,采用固定密钥进行加密通信,所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并返回给所述第一串口设备,所述第一串口解析出所述动态密钥后,采用所述动态密钥在所述第一串口设备和所述第二串口设备之间建立加密通信连接,将固定密钥、干扰密钥、动态密钥结合起来,使得通信协议不仅仅是加密的,而且是临时的、动态的,就算被监听出来,也是无效地通信协议,提高了所述第一串口设备和所述第二串口设备之间通信的安全性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种串口通信加密方法,用于在第一串口设备和第二串口设备之间进行通信加密,其特征在于,所述方法包括:
所述第一串口设备和所述第二串口设备开始建立通信连接后,所述第二串口设备在收到所述第一串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥并将所述动态密钥和所述干扰密钥混合在一个版本号数据包中返回给所述第一串口设备;
所述第一串口设备使用约定的算法对返回的版本号数据包进行解析,排除所述干扰密钥,得到所述动态密钥,并采用所述动态密钥在所述第一串口设备和所述第二串口设备之间建立加密通信连接。
2.如权利要求1所述的串口通信加密方法,其特征在于, 所述第一串口设备和所述第二串口设备一开始建立物理连接时,所述第一串口设备和所述第二串口设备之间采用一个固定密钥进行加密通信连接。
3.如权利要求2所述的串口通信加密方法,其特征在于,所述第一串口设备和所述第二串口设备采用所述固定密钥建立加密通信连接时,所述第一串口设备一直发送版本号请求数据包给所述第二串口设备,如果在设定的时间内未接收到所述第二串口设备返回的版本号数据包,则需重新使用所述固定密钥与所述第二串口设备建立加密通信连接。
4.如权利要求1所述的串口通信加密方法,其特征在于,所述版本号数据包中包括硬件设备号、硬件版本号、软件版本号、动态密钥和干扰密钥。
5.如权利要求4所述的串口通信加密方法,其特征在于,所述干扰密钥与所述动态密钥设置于所述版本号协议包中的设定位置。
6.如权利要求1所述的串口通信加密方法,其特征在于,所述第一串口设备和所述第二串口设备采用DES对称加密算法进行加密通信。
7.一种串口通信加密系统,其特征在于,包括第一串口设备和第二串口设备,所述第一串口设备和所述第二串口设备进行通信时,采用如权利要求1-6任一项所述的串口通信加密方法。
8.一种串口设备,其特征在于,包括:
密钥生成模块,用于在接到与所述串口通信设备连接的另一个串口设备发出的版本号请求数据包后,生成动态密钥和干扰密钥;
数据包生成模块,用于将所述动态密钥和所述干扰密钥混合在一个版本号数据包中并返回给所述另一个串口设备,
通信连接模块,用于在所述另一个串口设备从所述版本号数据包中解析出所述动态密钥后,采用所述动态密钥与所述另一个串口通信设备建立加密通信连接。
9.如权利要求8所述的串口设备,其特征在于,所述版本号数据包中包括硬件设备号、硬件版本号、软件版本号、动态密钥和干扰密钥。
10.如权利要求9所述的串口设备,其特征在于,所述干扰密钥与所述动态密钥设置于所述版本号协议包中的设定位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010691216.2A CN111881463A (zh) | 2020-07-17 | 2020-07-17 | 一种串口通信加密方法、系统及串口设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010691216.2A CN111881463A (zh) | 2020-07-17 | 2020-07-17 | 一种串口通信加密方法、系统及串口设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111881463A true CN111881463A (zh) | 2020-11-03 |
Family
ID=73154764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010691216.2A Pending CN111881463A (zh) | 2020-07-17 | 2020-07-17 | 一种串口通信加密方法、系统及串口设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111881463A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910878A (zh) * | 2021-01-28 | 2021-06-04 | 武汉市博畅软件开发有限公司 | 一种基于串口通信的数据传输方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1831834A (zh) * | 2006-04-20 | 2006-09-13 | 成都昊芯科技有限公司 | 信息的动态加密方法和加密电路 |
US20060269066A1 (en) * | 2005-05-06 | 2006-11-30 | Schweitzer Engineering Laboratories, Inc. | System and method for converting serial data into secure data packets configured for wireless transmission in a power system |
CN101706854A (zh) * | 2009-11-03 | 2010-05-12 | 北京深思洛克软件技术股份有限公司 | Usb信息安全设备与主机通信的方法及usb信息安全设备 |
CN102118392A (zh) * | 2011-01-18 | 2011-07-06 | 南京朗睿软件科技有限公司 | 数据传输的加密/解密方法及系统 |
CN102546824A (zh) * | 2012-02-20 | 2012-07-04 | 沈文策 | Flash数据传输方法及系统、服务器和客户端 |
WO2015085754A1 (zh) * | 2013-12-10 | 2015-06-18 | 飞天诚信科技股份有限公司 | 一种安全通讯的方法 |
CN106712939A (zh) * | 2016-12-27 | 2017-05-24 | 百富计算机技术(深圳)有限公司 | 密钥离线传输方法和装置 |
CN109861819A (zh) * | 2019-03-19 | 2019-06-07 | 天津中德应用技术大学 | 基于混淆加密块算法的数据加密方法及解密方法 |
WO2020101087A1 (ko) * | 2018-11-16 | 2020-05-22 | (주) 더존비즈온 | 개인정보 처리를 위한 암호화 시스템 및 방법 |
-
2020
- 2020-07-17 CN CN202010691216.2A patent/CN111881463A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060269066A1 (en) * | 2005-05-06 | 2006-11-30 | Schweitzer Engineering Laboratories, Inc. | System and method for converting serial data into secure data packets configured for wireless transmission in a power system |
CN1831834A (zh) * | 2006-04-20 | 2006-09-13 | 成都昊芯科技有限公司 | 信息的动态加密方法和加密电路 |
CN101706854A (zh) * | 2009-11-03 | 2010-05-12 | 北京深思洛克软件技术股份有限公司 | Usb信息安全设备与主机通信的方法及usb信息安全设备 |
CN102118392A (zh) * | 2011-01-18 | 2011-07-06 | 南京朗睿软件科技有限公司 | 数据传输的加密/解密方法及系统 |
CN102546824A (zh) * | 2012-02-20 | 2012-07-04 | 沈文策 | Flash数据传输方法及系统、服务器和客户端 |
WO2015085754A1 (zh) * | 2013-12-10 | 2015-06-18 | 飞天诚信科技股份有限公司 | 一种安全通讯的方法 |
CN106712939A (zh) * | 2016-12-27 | 2017-05-24 | 百富计算机技术(深圳)有限公司 | 密钥离线传输方法和装置 |
WO2020101087A1 (ko) * | 2018-11-16 | 2020-05-22 | (주) 더존비즈온 | 개인정보 처리를 위한 암호화 시스템 및 방법 |
CN109861819A (zh) * | 2019-03-19 | 2019-06-07 | 天津中德应用技术大学 | 基于混淆加密块算法的数据加密方法及解密方法 |
Non-Patent Citations (2)
Title |
---|
江冰;辛元雪;孙前庆;: "空间信息传输的改进式混合加密策略", 计算机工程与设计, no. 09 * |
陈绍钧;: "一种基于混沌理论的字符串加密算法", 计算机应用与软件, no. 06 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910878A (zh) * | 2021-01-28 | 2021-06-04 | 武汉市博畅软件开发有限公司 | 一种基于串口通信的数据传输方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1883154B (zh) | 向物理层收发器传输安全性/加密信息的方法和装置 | |
KR100772548B1 (ko) | 공유된 통신 채널상에서 효율적인 폴된 프레임 교환 | |
CN113194097B (zh) | 一种安全网关的数据处理方法、装置及安全网关 | |
US20100161980A1 (en) | Apparatus and method of security identity checker | |
CN111600829A (zh) | 用于物联网设备间的安全通信方法和系统 | |
CN111881463A (zh) | 一种串口通信加密方法、系统及串口设备 | |
CN110022374A (zh) | 基于物联网的网络连接方法、装置、通信设备及存储介质 | |
US20210314351A1 (en) | METHODS, SYSTEMS, AND COMPUTER READABLE MEDIA FOR SOFTWARE-BASED EMULATION OF MEDIA ACCESS CONTROL SECURITY (MACsec) | |
US20200351106A1 (en) | Method for checking the data transport across a first communication connection between two data processing devices, said first communication connection being realized between two first interface units, and motor vehicle | |
CN101431411A (zh) | 一种网络游戏数据的动态加密方法 | |
Thirumavalavasethurayar et al. | Implementation of replay attack in controller area network bus using universal verification methodology | |
CN102026186B (zh) | 服务网络探测系统及方法 | |
JP2022528075A (ja) | ヘテロジニアスオペレーティングシステムに基づくメッセージ伝送システム、方法及び車両 | |
US20130297938A1 (en) | Communication apparatus, control method, and storage medium | |
EP1942625A2 (en) | Methods and apparatuses for performing security error recovery in a wireless communications system | |
CN112350823B (zh) | 车载控制器间can fd通信方法 | |
CN112929166A (zh) | 一种基于Modbus-TCP协议的主站、从站及数据传输系统 | |
CN1856951B (zh) | 将链路层安全性集成到物理层收发器中的方法和装置 | |
US20200120493A1 (en) | Apparatus and method for communications | |
Lakshmanan et al. | Security enhancement in In-vehicle controller area networks by electronic control unit authentication | |
CN106506379A (zh) | 一种基于局域网的数据传输方法、系统及发送端 | |
CN112395647A (zh) | 一种区块链轻节点数据采集系统 | |
CN105553676A (zh) | 具有设备认证功能的北斗串口通信方法及发送、接收装置 | |
CN201134102Y (zh) | 一种电子签名工具 | |
US9237441B2 (en) | Method and apparatus for configuring signaling radio bearer in a wireless communications system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |