CN105430017A - 数据安全通信方法 - Google Patents

数据安全通信方法 Download PDF

Info

Publication number
CN105430017A
CN105430017A CN201511026048.0A CN201511026048A CN105430017A CN 105430017 A CN105430017 A CN 105430017A CN 201511026048 A CN201511026048 A CN 201511026048A CN 105430017 A CN105430017 A CN 105430017A
Authority
CN
China
Prior art keywords
data
control centre
interactive terminal
certificate
algorithm
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.)
Granted
Application number
CN201511026048.0A
Other languages
English (en)
Other versions
CN105430017B (zh
Inventor
马华杰
邱梅
庞占星
赵晓雪
郎需栋
高继轩
陈万强
许朋波
刘刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STATE GRID SHANDONG LINQU POWER SUPPLY Co Ltd
State Grid Corp of China SGCC
Weifang Power Supply Co of State Grid Shandong Electric Power Co Ltd
Original Assignee
STATE GRID SHANDONG LINQU POWER SUPPLY Co Ltd
State Grid Corp of China SGCC
Weifang Power Supply Co of State Grid Shandong Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by STATE GRID SHANDONG LINQU POWER SUPPLY Co Ltd, State Grid Corp of China SGCC, Weifang Power Supply Co of State Grid Shandong Electric Power Co Ltd filed Critical STATE GRID SHANDONG LINQU POWER SUPPLY Co Ltd
Priority to CN201511026048.0A priority Critical patent/CN105430017B/zh
Publication of CN105430017A publication Critical patent/CN105430017A/zh
Application granted granted Critical
Publication of CN105430017B publication Critical patent/CN105430017B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

发明涉数据通信技术领域,具体涉及一种数据安全通信方法,包括如下步骤:1)控制中心对交互终端进行安全验证并建立安全通信通道;2)控制中心允许安全验证通过的交互终端通过安全通信通道对交互介质进行数据操作,阻止安全验证未通过的交互终端对交互介质进行数据操作。本发明的方法可更快速地建立安全通信通道,加大了数字证书的破解难度,可增强数据通信过程的安全性和可靠性,并且可降低通信过程中对通信系统资源的消耗。

Description

数据安全通信方法
技术领域
本发明涉数据通信技术领域,具体涉及一种数据安全通信方法。
背景技术
现如今随着信息时代的发展,信息交互安全也越来越受到人们的关注。目前,在各种数据交互中都有采取一些加密的措施,主要都是运用一些数字加密的方法。
数字证书是一种电子身份证明,通常数字证书是一个不变的加密数据,我们所使用的密码,口令以及数字证书为了安全,已经很少采用明文数据了,都采用了加密数据,加密数据都是利用程序设定一个加密协议,即通过一定的算法保障加密解密的一致性以方便验证
现在非常普遍的一种安全通信通道建立与数据保护方法是使用安全传输层协议(TLS),用于在两个通信终端之间基于数字证书的特性,提供保密性和数据完整性。TLS握手协议分为单向认证与双向认证。如果要保障通讯双方的数据以及业务安全,需要使用双向认证的方式,就是双方都会互相认证,也就是两者之间将会交换证书。以下仅介绍双向认证流程,基本的过程为交互终端向服务器发送连接申请,在服务器端将服务器端的证书、经控制中心私钥签名后的协商数据、数字签名以及协商的结果一起发送给交互终端。交互终端则使用控制中心证书中的公钥对协商数据的签名验证成功后,将交互终端证书以及使用交互终端私钥签名后的密钥协商数据与数字签名回复给服务器端。而服务器端则会用交互终端证书中的公钥来验证数字签名的合法性。
但这种通信方式依然存在较大泄密的风险,因为没有动态数据参与加密运算,那么加密的结果是不会改变的,从技术原理上看,仅仅依靠用户输入的密码,没有动态数据参与,无论加密过程多么复杂,一旦源代码泄露,都难逃被大面积破解的命运,道理很简单,掌握了源代码,密码破解者就可以采用输入密码获得加密结果,而网站需要面对数量众多的终端,对所有的终端必须采取相同的通信协议,否则,就可能假终端能通过验证。
还有一种是生物密码,也就是利用人体某些器官或组织的一些特殊结构终身具有一定的稳定性和单一性,这种特殊结构能够被计算机系统读取的验证码,比方说指纹或虹膜,这类密码的缺点是密码所有人无法主动修改,欠缺能动性,而且服务器存贮的数据与待检验的数据并不完全一致,需要利用模糊算法通过比较获得答案,模糊算法很耗系统资源。
发明内容
本发明提供一种数据安全通信方法,该方法可更快速地建立安全通信通道,加大了数字证书的破解难度,可增强数据通信过程的安全性和可靠性,并且可降低通信过程中对通信系统资源的消耗。
为了实现上述目的,本发明提供一种数据安全通信方法,包括如下步骤:
1)控制中心对交互终端进行安全验证并建立安全通信通道;
2)控制中心允许安全验证通过的交互终端通过安全通信通道对交互介质进行数据操作,阻止安全验证未通过的交互终端对交互介质进行数据操作。
进一步,所述步骤1)具体包括如下步骤:
101)交互终端查询已缓存的与控制中心的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将会话号与摘要计算结果写入连接申请数据包;
102)交互终端查询已缓存的控制中心证书,将控制中心证书的序列号及交互终端证书的序列号写入连接申请数据包;
103)交互终端将非对称加密和数字签名算法组合列表写入连接申请数据包,并向控制中心发送连接申请数据包;
104)控制中心接收交互终端发送的连接申请数据包,根据会话ID查询缓存的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将计算结果与交互终端发送的会话密钥的摘要数据进行比对,如果对比结果一致,则将会话密钥与对称算法作为安全通信通道中数据保护的密钥与算法,并则执行步骤105);
105)控制中心向交互终端发送协商结束命令,终交互端收到控制中心发送的协商结束命令后,安全通道建立。
进一步,所述步骤104)中,若会话密钥的摘要数据对比不一致,则执行以下步骤:
106)控制中心读取交互终端发送的控制中心证书的序列号,验证是否控制中心使用的证书序列号一致,如是,则执行下一步,如否,则向交互终端发送控制中心证书数据包后执行下一步;
107)控制中心读取交互终端发送的交互终端证书的序列号,根据该序列号查询是否已缓存交互终端证书,如是,则执行下一步;如否,则向交互终端发送申请交互终端证书的申请数据包后执行下一步;
108)控制中心读取交互终端发送的算法组合列表,选择一组加密强度最高的非对称算法组合作为密钥协商算法组合;
109)控制中心生成一组临时的非对称密钥对,使用控制中心的私钥以及步骤108)中所选择的算法组合中的非对称算法对临时公钥进行数字签名,将签名结果与临时公钥组包为密钥协商数据包向终端发送;
110)向交互终端发送连接申请结束数据包;
111)交互终端收到控制中心发送的数据包,缓存密钥协商算法组合与会话号;
交互终端若收到控制中心发送的控制中心证书数据包,则对控制中心证书进行合法性验证,验证成功,则使用控制中心证书中的序列号作为标识,缓存控制中心证书;验证失败,则退出本流程,断开连接;
交互终端若收到控制中心发送的申请交互终端证书的申请数据包,则将本交互终端的证书组包成证书数据包,向控制中心发送;
交互终端收到控制中心发送的密钥交互数据包,使用缓存的控制中心证书中的公钥与所述缓存的密钥协商算法组合中的非对称算法,对控制中心的临时公钥签名信息进行验证,如果验证不成功则断开链接;如果验证成功则执行下一步;
112)交互终端随机生成一个会话密钥,作为安全通道中数据保护的密钥,使用算法组合中的对称算法作为保护算法;使用会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;使用非对称算法对会话密钥进行加密,并使用非对称算法对加密后的会话密钥进行数字签名;将加密后的会话密钥以及数字签名组包,向控制中心发送密钥协商数据包;
113)交互终端向控制中心发送协商结束命令;
114)控制中心若接收到交互终端证书数据包,则对交互终端证书进行合法性验证,如果验证成功,使用交互终端证书中的序列号作为标识,缓存交互终端证书如果验证失败,则断开链接;
控制中心收到交互终端发送的密钥协商数据包后,使用交互终端证书中的公钥以及步骤108)中所选择的算法组合中的非对称算法对签名数据进行签名验证,如果签名验证不成功则断开链接;如果成功则使用控制中心私钥与非对称算法解密会话密钥,并使用步骤104)中产生的会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;并将会话密钥与对称算法名作为安全通信通道中数据保护的密钥与算法;执行步骤105)。
进一步,步骤2)中,所述的数据操作包括如下步骤:
21)导入源数据;
22)从步骤21)导入的源数据中截取数据;
23)对步骤22)截取的数据进制转换、字符转码、数据重组、字符串替代以及数据缺失存贮中的至少一种操作。
进一步,所述步骤21)中,导入源数据包括直接引进和间接引进两种方式。
进一步,步骤23)中,所述数据缺失存贮中缺失数据为2-3个。
与现有技术相比,本发明具有以下优点和有益效果:
(1)安全通信通道建立过程中,针对移动通信网分组域通信的特性以及在保障交互终端与控制中心服务端数据通讯过程中的数据安全的情况下,可大量减少通信双方的握手次数,通信双方不必一直维持TCP链接,需要进行通讯时,双方重新建立TCP链接后,不用进行重新握手,便可快速恢复安全通讯通道。
(2)安全通信通道的建立减少了移动交互终端对多余的电量消耗。即使双方需要更新安全通信通道的会话密钥而重新进行握手时,亦可减少双方通讯的数据流量,提高握手协议速度,缩短了安全通信通道建立时间。
(3)数据存储和交换过程的加密算法,极大提高了数据通信的安全性和可靠性。
附图说明
图1示出了本发明的一种数据安全通信方法流程图。
具体实施方式
参见图1,本实施例的数据安全通信方法,包括如下步骤:
数据安全通信方法,包括如下步骤:
1)控制中心对交互终端进行安全验证并建立安全通信通道;具体包括如下步骤:
101)交互终端查询已缓存的与控制中心的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将会话号与摘要计算结果写入连接申请数据包;
102)交互终端查询已缓存的控制中心证书,将控制中心证书的序列号及交互终端证书的序列号写入连接申请数据包;
103)交互终端将非对称加密和数字签名算法组合列表写入连接申请数据包,并向控制中心发送连接申请数据包;
104)控制中心接收交互终端发送的连接申请数据包,根据会话ID查询缓存的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将计算结果与交互终端发送的会话密钥的摘要数据进行比对,如果对比结果一致,则将会话密钥与对称算法作为安全通信通道中数据保护的密钥与算法,并则执行步骤105);若会话密钥的摘要数据对比不一致,则执行步骤1041);
1041)控制中心读取交互终端发送的控制中心证书的序列号,验证是否控制中心使用的证书序列号一致,如是,则执行下一步,如否,则向交互终端发送控制中心证书数据包后执行下一步;
1042)控制中心读取交互终端发送的交互终端证书的序列号,根据该序列号查询是否已缓存交互终端证书,如是,则执行下一步;如否,则向交互终端发送申请交互终端证书的申请数据包后执行下一步;
1043)控制中心读取交互终端发送的算法组合列表,选择一组加密强度最高的非对称算法组合作为密钥协商算法组合;
1044)控制中心生成一组临时的非对称密钥对,使用控制中心的私钥以及步骤1043)中所选择的算法组合中的非对称算法对临时公钥进行数字签名,将签名结果与临时公钥组包为密钥协商数据包向终端发送;
1045)向交互终端发送连接申请结束数据包;
1046)交互终端收到控制中心发送的数据包,缓存密钥协商算法组合与会话号;
交互终端若收到控制中心发送的控制中心证书数据包,则对控制中心证书进行合法性验证,验证成功,则使用控制中心证书中的序列号作为标识,缓存控制中心证书;验证失败,则退出本流程,断开连接;
交互终端若收到控制中心发送的申请交互终端证书的申请数据包,则将本交互终端的证书组包成证书数据包,向控制中心发送;
交互终端收到控制中心发送的密钥交互数据包,使用缓存的控制中心证书中的公钥与所述缓存的密钥协商算法组合中的非对称算法,对控制中心的临时公钥签名信息进行验证,如果验证不成功则断开链接;如果验证成功则执行下一步;
1047)交互终端随机生成一个会话密钥,作为安全通道中数据保护的密钥,使用算法组合中的对称算法作为保护算法;使用会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;使用非对称算法对会话密钥进行加密,并使用非对称算法对加密后的会话密钥进行数字签名;将加密后的会话密钥以及数字签名组包,向控制中心发送密钥协商数据包;
1048)交互终端向控制中心发送协商结束命令;
1049)控制中心若接收到交互终端证书数据包,则对交互终端证书进行合法性验证,如果验证成功,使用交互终端证书中的序列号作为标识,缓存交互终端证书如果验证失败,则断开链接;
控制中心收到交互终端发送的密钥协商数据包后,使用交互终端证书中的公钥以及步骤1043)中所选择的算法组合中的非对称算法对签名数据进行签名验证,如果签名验证不成功则断开链接;如果成功则使用控制中心私钥与非对称算法解密会话密钥,并使用步骤104)中产生的会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;并将会话密钥与对称算法名作为安全通信通道中数据保护的密钥与算法;执行步骤105)。
105)控制中心向交互终端发送协商结束命令,终交互端收到控制中心发送的协商结束命令后,安全通道建立;
2)控制中心允许安全验证通过的交互终端通过安全通信通道对交互介质进行数据操作,阻止安全验证未通过的交互终端对交互介质进行数据操作;所述的数据操作包括如下步骤:
31)导入源数据;包括直接引进和间接引进两种方式,直接引进为通过数据输入设备被计算机系统直接引进,如扫描、键盘输入、手写板输入、读取磁条信息等;间接引进是由简单数据获得复杂数据,如磁条数据、机器码或服务器返回的数据不太复杂时,用于加密,其加密强度不是很好,就可以利用间接引进。
32)从步骤31)导入的源数据中截取数据;在截取字符的函数中,需要三个元素,即待截取字符,截取的位数和截取的起始位置,源数据是待截取字符,而截取的长度是预先指定的,截取的起始位置值是将用户输入的密码,机器码,或服务器端返回的数据拆分成个数加1,拆分的个数需要和计划导入的源数据的组数相同。
以MID(text,start_num,num_chars)函数通过银行卡密码截取为例,其中text表示待截取字符也就是源数据,num_chars表示截取的位数,start_num即表示截取的起始位置,num_chars可以指定,需要升级时,只需要将源数据位数改变,并重新指定num_chars值,例如将num_chars值由10位指定成20位,则截取的字符由10位变成20位,这就是扩充算法,而start_num值可以将银行卡输入密码的6个数字进行分拆,将其拆分的值加1,作为start_num值截取字符即可,拆分方法比较多,示例MID(password,1,1),MID(password,2,1),MID(password,3,1),MID(password,4,1),MID(password,5,1),MID(password,6,1),即将6位password值变成了6位单独的字符,例如,源数据的6组中第一组记为text1,利用MID(text1,MID(password,1,1)+1,20),就可以以密码password的第一位数字加1的位置开始截取text1,截取20位,截取字符的目的是将简单数据混杂在复杂数据中,例如,在银行卡密码的设计过程中,通过这一步,将密码混杂在源数据中,引进6组源数据后,text值就是源数据,而start_num值就是MID(password,A,1)+1值,A是密码字符的位置,这样,就可以获得6组新数据,它们是截取了从第1位到第10位中的一个位数开始的num_chars值长度的数据,例如,密码拆分后的数据为6,就表示从第7位开始截取,num_chars值为20,就表示截取的位数为20,在一个简单密码000000和复杂密码658973中,二者的意义分别表示前者是从6个源数据的第1位开始截取,而后者表示从6个源数据的第7位,第6位,第9位,第10位,第8位,第4位开始截取,与密码的复杂程度无关,只要密码输入人员没有将硬件提供给别人,并同时让别人看到密码输入动作,单单从存贮的密码进行破解时,二者的破解难度是没有区别的,在这一步过程中,每一个源数据存在10个子数据,也就是密码组合数增加了一百万倍。
33)对步骤32)截取的数据进制转换、字符转码、数据重组、字符串替代以及数据缺失存贮,本步骤中的数据进制转换、字符转码、数据重组、字符串替代以及数据缺失存贮可任意组合及调整顺序。
进制转换,是将一种进制的数据转换成另一种进制的数据,在低进制数据转换成高进制数据的过程中,由于高进制数据需要更多的基本元素表示,这里的基本元素就是类似10进制的0到9这10个数字,可以将比较简单的数据变成复杂的数据,同时缩短了数据长度,比方说纯数字数据变成数字和字母混合的数据,有时候,需要将复杂数据变成简单数据或者将非数字数据转换成数字数据。
比方说机器码一般是数字和字母混合数据,而汉字是非数字数据,在GB2312标准中,可以直接引用汉字的区位码,将其转换成数字数据,或者将GB2312标准的文本理解成7445进制的数字(7445包含非汉字符号),据此将中文文档进行加密或应用于数字证书,将中文文本理解成7445进制,转换成10进制,其数据庞大得惊人,以5位数为例,转换成10进制,位数达20位,最高值是2.2873E+19,再转换成62进制数据,也就是转换成数字和字母混合数据即可,加密不使用负数数据,因此,进位和10进制数据一样,也是进制数的一次方,二次方,三次方等依次递增,转换后的数据位数达不到程序设计需要的位数时,用0补足高位数,例如转换后的10进制数据为123,而需要的位数是5位,就在高位上加0为00123补足5位,大部分人接触英文字母和数字比较多,示例是62进制和10进制转换,用阿拉伯数字0到9表示0到9,字母的小写a到z表示10到35,字母的大写A到Z表示36到61,亦可以有其他的指定方案,后面部分讲述的数字或字母的本位码,转码算法也遵循同样的规律,例如将62进制数据A6bJ9转换成10进制数据为36*624+6*623+11*622+45*62+9=533423147,是9位数。
字符转码是利用字符转码算法实现的,用一个字符或一组字符通过转码算法获得另一个字符或一组字符的方法就是字符转码,无论是单个字符还是一组字符,转码都是一一转码,只是后者是同时转换几个字符,单一字符的转码意义是不大的,所以是字符组进行转码,字符组转码需要转码算法指令集和转码表共同实现。
示例是设计四种数字与字母的转码算法,命名为ABCD算法,转码算法遵循以下规律:
1:不同的源码相同的算法转换之后结果是不能相同的;
2:同一源码的几种算法的转换结果互相也不能相同;
3:转码的结果不能与源码相同;
4:转码要设置几种转码算法,以强化密码的组合复杂性,
示例是以数字和字母的本位码为基础条件进行转换的,数字0到9的本位码分别是数字0到9,小写字母a到z的本位码分别是数字10到35;大写字母A到Z的本位码分别是数字36到61。
在ABCD算法中,其中第1算法,第2算法,第3算法是以本位码为基础进行的数学运算,但是第4算法经过人工调整,没有什么算法规律,
第1算法:数字或字母的本位码加该本位码后的第2位奇数就是此数字或字母的转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母;
第2算法:数字或字母的本位码加该本位码后第13位奇数就是此数字或字母的B转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母;
第3算法:数字或字母的本位码加30就是该数字或字母的转码算法,结果≥62的,就减62,记载其本位码对应的数字或字母;
第4算法:第4算法部分遵循数字或字母的本位码加该本位码后的第3个偶数就是该数字或字母的转码算法,结果≥62的,就减62,为了防止数据相同性冲突,做了部分位置调整,记载其本位码对应的数字或字母,从它的设计原理可以知道,转码前后的每一个数字和字母都不会相同,这是一个最基本的设计要点,调用时,第1算法,第2算法,第3算法都可以直接使用数据表调用,也可以使用数学运算换算,但是,第4算法经过了人工调整,需要使用数据表调用,也可以设计其他的转码算法,示例的转码算法利用了同类字段进行算法的ABCD排序。
转码算法指令集:待转码的每个字符作为源码,需要指令转码方向才能获得正确的结果,指令集的数据和待转码的数据存在对应关系,即一个指令字符对应一个待转码字符,经过指令规则转换成另外一个字符,例如,指令集数据为BACC,待转码数据为1234,就是将1234的四个数据分别执行B算法,A算法,C算法,C算法。
替代字符串是将字符中的部分字符用别的字符替代的一种加密技术,替代可以是单个替代,也可以是字符串替代,较优的设计方案是字符串替代,替代利用字符替代表完成,字符替代表数据分为记录编号和替代字符串,记录编号出现的字符就是需要替代的字符。
例如记录编号出现5,A,b,6,就是将要替代的数据中所有的5,A,b,6字符都抽取出来,进行分组,分组后的字符位数需要与记录编号位数一致,最后一组没有相应的位数时,可以放弃替代或指定增加位数,例如指定第一个字符叠加到符合位数,查找字符替代表中与之对应的记录编号,确定替代字符串,由于抽取出来的几个字符原位置是不相同的,需要确定插入位置,较常见的方法是将抽取出来的几个字符转换成10进制数据,利用取余函数确定,例如,余数加1为几,就在第几个字符的原位置插入,将其他字符的空格清除,获得新数据,字符替代表的记录编号设计需要注意,记录编号需要列举所有可能出现的组合,否则可能出现运算错误,3位替代时,需要27组,也就是3的三次方,4位替代时,记录编号就需要256组,是4的4次方,如果是5位就是5的5次方,已经高达3125组,所以替代的字符数需要适中,数据表数据太庞大和太小都不妥当,替代数据不应太长,否则有可能被长数据查找到字符替代表,4位替代时,替代数据只需要256组,用英文大小写字母和数字表示时,一位和两位就足够了,如此短的数据替代,便没有办法通过查找替代字符串反向查找到字符替代表,不允许出现加密过程或加密数据不存在的字符,这也是为了防止通过替代字符串查找到字符替代表,原因很简单,假如某个字符只在某个数据表中出现,一下子就能查找到,只要是加密过程或加密数据存在的字符都可以作为替代字符,即使是替代的原数据字符也可以出现,例如,替换5,A,b,6这四个字符,那么,替代数据中仍旧允许出现5,A,b,6,由于替代的字符位数不等,所以最终密码的位数是不确定的,替代字符可以采用叠加加密方法多次加密,设计多份字符替代表,通过多个变量连接数据完成多次加密,例如变量数据2356,6987,3075,9837,8863,5534,将6组数据分别除以字符替代表的总数,连接到对应的数据表依次完成替代,也就是先通过2356连接到对应的数据表完成替代,又以替代后的数据作为源数据,用第2组数据连接到对应的数据表完成替代,依次类推,字符替代表与同类数据表有一点区别,就是不同的表记录编号可以是不同的,是指记录编号位数也可以不同,例如,表1是替代5,A,b,6,表2是替代c,8,H,k,或者表1完成3位字符替代,表2完成的是4位字符替代,因为程序是设计通过检索记录编号的位数和字符,确定替代的字符和分组位数,在程序设计中,字符转码,进制转换和截取字符以获得固定长度的数据为佳,而字符替代完成后,数据长度不确定,这给重排字符位置这一步加密过程的字符长度分割表的编制工作带来困难,字符长度分割表的不确定长度值虽然取值比较随意,但也不能出现负值,也就是其他确定长度值的总数不能大于数据的位数,为此,字符替代这一步需要在其他步骤之后,数据缺失保存之前,否则设计有难度。
缺失算法,由于连接变量引进源数据时,连接变量往往有几组,连接变量分成几组,相应的引进的源数据也有几组,连接变量组数太少,密码容易破解,如果连接变量未能记录完全,那么,依据该数据的值域,也就是该数据可能出现的值,依次加密,也能获得和加密结果一致的值,而计算可能需要的次数与缺失的值的多少有关,缺失值越多时,可能需要的计算次数越多。
例如,缺失一组数据ABCD,ABCD的取值范围都是0到9,那么,从0000到9999,始终都可以找到匹配值,假如源数据是6639,则从0000运算到6639,就会获得结果,在这个过程中,最多需要10000次运算,而对于加密的结果,如果数据记录同样不全,但这种不全的数据位置能够由运算时获取,在依次加密进行比对时,实际上加密的结果被不全的这几个字符分割成了几段,运算的结果需要和这几段数据全部吻合,如果加密后的数据位数很长,那么,出现相同密码的可能性也微乎其微,由于数据记录不全,从记录的密码进行破解几乎没有可能,缺失算法的缺失值不能太复杂,否则迟迟获不到结果,缺失算法的缺点是和非对称算法一样很耗时,没有必要,可以不采用,
数据缺失存贮具体方法如下,数据缺失保存是指加密后的最终数据和硬件连接变量数据存贮不全,缺失部分字符,对于缺失的数据的保存和验证,利用缺失算法完成,为了方便描述,缺失的硬件连接变量数据称为缺失源,而加密后的结果的缺失字符称为加密缺失符,缺失需要有限制条件,缺失源需要指明原数据的值域和字符长度,而加密缺失符需要限制字符位置,加密缺失符的位置限制由缺失源所在的连接变量确定,也就是连接变量限制加密缺失符的位置后,将连接变量数据的字符全部或部分删除作为缺失源,这种限制是加密运算过程的一部分,缺失数据保存的前提是加密后的数据的字符长度不能太短,否则,出现同密码的机会增大,缺失数据保存由于保存的数据字符不全,是很难从保存的数据破解的。
例如,下文中的示例,177个字符缺失2个字符,则密码排列组合是177*88*3844为59874144种,即从1加到176,每位字符取值都是62种,但是,缺失算法验证很耗时间,缺失的数据不能太复杂,加密缺失符和缺失源的字符,以2至三个为宜,缺失字符只有1个,则缺失意义也不大,缺失验证和非对称算法一样,运算时间应该控制在普通加密算法的1000倍左右,例如:6组连接变量数据2356,6987,35,9837,8863,5534:程序需要指明连接变量数据35所在的组存在2个缺失源字符,缺失源的字符值域为0到9,缺失源和已经存在的字符位置不确定,据此,计算机最多经过1200次运算,就可以将所有的情况枚举完毕,也就是35**,3*5*,3**5,*3*5,*35*,**35,53**,5*3*,5**3,*5*3,*53*,**53,其中*就是缺失源字符,加密运算的最后一步就是缺失算法,以便确定出缺失源和加密缺失符的位置,依旧以上述数据为例,连接变量数据是2356,6987,5803,9837,8863,5534,随机取一组数字,例如以其中的5803除以加密后的结果的字符长度,余数加1即为其中一个加密缺失符的位置,例如,加密后的字符总长度为177,5803/177,余数加1为140,也就是第140个字符为加密缺失符,第二个加密缺失符的确定,5803这一组不参与,将5803除以剩下的字符组数,这里是5组,余数加1为4,也就是第4组数据8863确定第2个缺失加密符的位置,8863/177,余数加1为14,也就是第14个字符为加密缺失符,将这两个字符删除,重新组合成175个字符长度的数据,存贮,并将5803两个字符删除,最终存贮的是35,通过上述方法计算出两个加密缺失符是同一位置时,只取一位加密缺失符,另一位加密缺失符通过这位加密缺失符确定,例如,连接变量数据2356,6987,5803,9837,5980,5534,通过上述方法计算时,都指向第140位字符,假如140位字符是9,那么,将位数加9再加1也就是150位为加密缺失符,,只所以加1是防止0出现程序错误,加法出现空值时,则执行减法,例如176位为9,数据没有186位,则执行减法也就是166位为加密缺失符,字符是英文等字母或其他非数字符号的,通过规则转换成数字字符,再执行即可,确定运算次数有多种方法,例如指定是3位缺失源,取值是0到9,如1***,1的位置确定,或者是635*,5*98,669*,缺失源的取值是0到9,那么,这两种方法都是最高运算1000次。
加密缺失符可以引进别的加密步骤,例如,加密后的结果是62进制数据,将其按组转换,例如10个62进制数据转换成2进制数据,不再补齐高位,这样就会获得字符长度不等的二进制数据,转换之后,将其组合成长数据,再确定加密缺失符的位置,将结果再按照几个一组再转换成62进制数据,经过这样一步,示例177位62进制只有177*88种位置关系,而转换成2进制数据,位置关系更加复杂,因为62进制数据用2进制表示具有更多的字符。
通过数据缺失保存,实际是将加密结果分割成了长度不确定的几段,然后计算机通过可能存在的缺失源值不停的运算,直到运算到结果完全相符,从理论上,加密缺失算法也存在相同的可能,也就是几段字符长度完全相符,而加密缺失值却不相同,那么,计算机判断这两种情况密码是相符的,而实际情况是并不相符,实际上MD5算法和指纹密码也存在同样的情况,据山东大学王小云教授的研究成果,MD5算法并非是唯一的值,关键是相同的值出现的概率,指纹密码可以出现亿分之一的相同率,由于这种密码是动态密码,数据变换比较快,所以数据相同的漏洞很难有什么用武之地,这也是本算法强调加密结果的字符长度不能太短的原因,字符长度太短,则出现相同的可能性就很大了。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

Claims (6)

1.数据安全通信方法,其特征在于:包括如下步骤:
1)控制中心对交互终端进行安全验证并建立安全通信通道;
2)控制中心允许安全验证通过的交互终端通过安全通信通道对交互介质进行数据操作,阻止安全验证未通过的交互终端对交互介质进行数据操作。
2.根据权利要求1中所述的数据安全通信方法,其特征在于:所述步骤1)具体包括如下步骤:
101)交互终端查询已缓存的与控制中心的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将会话号与摘要计算结果写入连接申请数据包;
102)交互终端查询已缓存的控制中心证书,将控制中心证书的序列号及交互终端证书的序列号写入连接申请数据包;
103)交互终端将非对称加密和数字签名算法组合列表写入连接申请数据包,并向控制中心发送连接申请数据包;
104)控制中心接收交互终端发送的连接申请数据包,根据会话ID查询缓存的会话连接信息,使用会话连接信息中缓存的摘要算法对会话密钥进行摘要计算,将计算结果与交互终端发送的会话密钥的摘要数据进行比对,如果对比结果一致,则将会话密钥与对称算法作为安全通信通道中数据保护的密钥与算法,并则执行步骤105);
105)控制中心向交互终端发送协商结束命令,终交互端收到控制中心发送的协商结束命令后,安全通道建立。
3.根据权利要求2所述的数据安全通信方法,其特征在于:所述步骤104)中,若会话密钥的摘要数据对比不一致,则执行以下步骤:
106)控制中心读取交互终端发送的控制中心证书的序列号,验证是否控制中心使用的证书序列号一致,如是,则执行下一步,如否,则向交互终端发送控制中心证书数据包后执行下一步;
107)控制中心读取交互终端发送的交互终端证书的序列号,根据该序列号查询是否已缓存交互终端证书,如是,则执行下一步;如否,则向交互终端发送申请交互终端证书的申请数据包后执行下一步;
108)控制中心读取交互终端发送的算法组合列表,选择一组加密强度最高的非对称算法组合作为密钥协商算法组合;
109)控制中心生成一组临时的非对称密钥对,使用控制中心的私钥以及步骤108)中所选择的算法组合中的非对称算法对临时公钥进行数字签名,将签名结果与临时公钥组包为密钥协商数据包向终端发送;
110)向交互终端发送连接申请结束数据包;
111)交互终端收到控制中心发送的数据包,缓存密钥协商算法组合与会话号;
交互终端若收到控制中心发送的控制中心证书数据包,则对控制中心证书进行合法性验证,验证成功,则使用控制中心证书中的序列号作为标识,缓存控制中心证书;验证失败,则退出本流程,断开连接;
交互终端若收到控制中心发送的申请交互终端证书的申请数据包,则将本交互终端的证书组包成证书数据包,向控制中心发送;
交互终端收到控制中心发送的密钥交互数据包,使用缓存的控制中心证书中的公钥与所述缓存的密钥协商算法组合中的非对称算法,对控制中心的临时公钥签名信息进行验证,如果验证不成功则断开链接;如果验证成功则执行下一步;
112)交互终端随机生成一个会话密钥,作为安全通道中数据保护的密钥,使用算法组合中的对称算法作为保护算法;使用会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;使用非对称算法对会话密钥进行加密,并使用非对称算法对加密后的会话密钥进行数字签名;将加密后的会话密钥以及数字签名组包,向控制中心发送密钥协商数据包;
113)交互终端向控制中心发送协商结束命令;
114)控制中心若接收到交互终端证书数据包,则对交互终端证书进行合法性验证,如果验证成功,使用交互终端证书中的序列号作为标识,缓存交互终端证书;如果验证失败,则断开链接;
控制中心收到交互终端发送的密钥协商数据包后,使用交互终端证书中的公钥以及步骤108)中所选择的算法组合中的非对称算法对签名数据进行签名验证,如果签名验证不成功则断开链接;如果成功则使用控制中心私钥与非对称算法解密会话密钥,并使用步骤104)中产生的会话号作为标识,将会话密钥、对称算法与摘要算法进行缓存;并将会话密钥与对称算法名作为安全通信通道中数据保护的密钥与算法;执行步骤105)。
4.根据权利要求1-3中任一项所述的数据安全通信方法,其特征在于:步骤2)中,所述的数据操作包括如下步骤:
21)导入源数据;
22)从步骤21)导入的源数据中截取数据;
23)对步骤22)截取的数据进制转换、字符转码、数据重组、字符串替代以及数据缺失存贮中的至少一种操作。
5.根据权利要4的数据安全通信方法,其特征在于:所述步骤21)中,导入源数据包括直接引进和间接引进两种方式。
6.根据权利要4的数据安全通信方法,其特征在于:步骤23)中,所述数据缺失存贮中缺失数据为2-3个。
CN201511026048.0A 2015-12-31 2015-12-31 数据安全通信方法 Expired - Fee Related CN105430017B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511026048.0A CN105430017B (zh) 2015-12-31 2015-12-31 数据安全通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511026048.0A CN105430017B (zh) 2015-12-31 2015-12-31 数据安全通信方法

Publications (2)

Publication Number Publication Date
CN105430017A true CN105430017A (zh) 2016-03-23
CN105430017B CN105430017B (zh) 2018-10-09

Family

ID=55507958

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511026048.0A Expired - Fee Related CN105430017B (zh) 2015-12-31 2015-12-31 数据安全通信方法

Country Status (1)

Country Link
CN (1) CN105430017B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106205090A (zh) * 2016-07-22 2016-12-07 汤亮 一种电力电网用实时监控系统及其控制方法
CN106953880A (zh) * 2017-05-17 2017-07-14 北京汇通金财信息科技有限公司 一种数据处理方法及系统、子服务器和主服务器
CN109600231A (zh) * 2018-12-05 2019-04-09 深圳市琦迹技术服务有限公司 数据安全通信系统和方法
CN109768948A (zh) * 2017-11-10 2019-05-17 中国电信股份有限公司 消息推送方法、系统以及消息设备
CN112422275A (zh) * 2020-10-26 2021-02-26 深圳Tcl新技术有限公司 Uart通信中的秘钥协商方法、系统、设备及计算机存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101521667A (zh) * 2009-04-15 2009-09-02 山东渔翁信息技术股份有限公司 一种安全的数据通信方法及装置
CN102780698A (zh) * 2012-07-24 2012-11-14 南京邮电大学 物联网平台中用户终端安全通信的方法
CN105024818A (zh) * 2015-03-19 2015-11-04 泉州天地星电子有限公司 一种构建数据加密存储与交换系统的方法
CN105491015A (zh) * 2015-11-21 2016-04-13 国网山东潍坊市寒亭区供电公司 一种数据通信及存储方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101521667A (zh) * 2009-04-15 2009-09-02 山东渔翁信息技术股份有限公司 一种安全的数据通信方法及装置
CN102780698A (zh) * 2012-07-24 2012-11-14 南京邮电大学 物联网平台中用户终端安全通信的方法
CN105024818A (zh) * 2015-03-19 2015-11-04 泉州天地星电子有限公司 一种构建数据加密存储与交换系统的方法
CN105491015A (zh) * 2015-11-21 2016-04-13 国网山东潍坊市寒亭区供电公司 一种数据通信及存储方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106205090A (zh) * 2016-07-22 2016-12-07 汤亮 一种电力电网用实时监控系统及其控制方法
CN106953880A (zh) * 2017-05-17 2017-07-14 北京汇通金财信息科技有限公司 一种数据处理方法及系统、子服务器和主服务器
CN106953880B (zh) * 2017-05-17 2020-05-01 北京汇通金财信息科技有限公司 一种数据处理方法及系统、子服务器和主服务器
CN109768948A (zh) * 2017-11-10 2019-05-17 中国电信股份有限公司 消息推送方法、系统以及消息设备
CN109600231A (zh) * 2018-12-05 2019-04-09 深圳市琦迹技术服务有限公司 数据安全通信系统和方法
CN109600231B (zh) * 2018-12-05 2021-10-29 深圳市琦迹技术服务有限公司 数据安全通信系统和方法
CN112422275A (zh) * 2020-10-26 2021-02-26 深圳Tcl新技术有限公司 Uart通信中的秘钥协商方法、系统、设备及计算机存储介质

Also Published As

Publication number Publication date
CN105430017B (zh) 2018-10-09

Similar Documents

Publication Publication Date Title
US11516201B2 (en) Encryption and decryption techniques using shuffle function
CN106161006B (zh) 一种数字加密算法
JP4881119B2 (ja) ユーザ認証方法、ユーザ側認証装置、および、プログラム
CN105430017A (zh) 数据安全通信方法
CN108243166A (zh) 一种基于USBKey的身份认证方法和系统
US11652629B2 (en) Generating keys using controlled corruption in computer networks
EP3698514A1 (en) System and method for generating and depositing keys for multi-point authentication
CN105827395A (zh) 一种网络用户认证方法
CN106130716A (zh) 基于认证信息的密钥交换系统及方法
CN107277059A (zh) 一种基于二维码的一次性口令身份认证方法及系统
US10887110B2 (en) Method for digital signing with multiple devices operating multiparty computation with a split key
CN111541713A (zh) 基于区块链和用户签名的身份认证方法及装置
CN105491015A (zh) 一种数据通信及存储方法
CN105553667A (zh) 一种动态口令的生成方法
CN107241184A (zh) 基于改良aes的个人密码生成和管理方法
KR20040083570A (ko) N-차원 정보를 이용한 정보 전송 시스템 및 전송 방법.
CN105827404A (zh) 一种身份认证方法、装置及服务器
CN108512832A (zh) 一种针对OpenStack身份认证的安全增强方法
US20230049768A1 (en) A method for symmetric asynchronous generative encryption
CN114244509A (zh) 使用移动终端进行sm2一次一密双向认证开锁的方法
CN116018592A (zh) 使用计算机网络中的受控讹误生成密钥
CN105827591B (zh) 一种身份认证方法、客户端、服务器及系统
Li et al. Digital Signature Technology of Mobile Phone Verification Code based on Biometrics
CN115967488A (zh) 一种虚拟服务端分布式密钥管理系统及方法
CN116318870A (zh) 一种泛终端国密的票据认证方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Ma Huajie

Inventor after: Liu Gang

Inventor after: Qiu Mei

Inventor after: Zhang Bengxi

Inventor after: Pang Zhanxing

Inventor after: Zhao Xiaoxue

Inventor after: Lang Xudong

Inventor after: Gao Jixuan

Inventor after: Chen Wanqiang

Inventor after: Xu Pengbo

Inventor before: Ma Huajie

Inventor before: Qiu Mei

Inventor before: Pang Zhanxing

Inventor before: Zhao Xiaoxue

Inventor before: Lang Xudong

Inventor before: Gao Jixuan

Inventor before: Chen Wanqiang

Inventor before: Xu Pengbo

Inventor before: Liu Gang

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181009

Termination date: 20201231

CF01 Termination of patent right due to non-payment of annual fee