CN111431716B - 数据传输方法、装置、计算机设备和存储介质 - Google Patents
数据传输方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111431716B CN111431716B CN202010236912.4A CN202010236912A CN111431716B CN 111431716 B CN111431716 B CN 111431716B CN 202010236912 A CN202010236912 A CN 202010236912A CN 111431716 B CN111431716 B CN 111431716B
- Authority
- CN
- China
- Prior art keywords
- data
- bit string
- bit
- string
- fibonacci
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请涉及一种数据传输方法、装置、计算机设备和存储介质。所述方法包括:获取待传输的明文数据和数据接收方发送的公钥数据,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串,根据公钥数据对截位串进行加密,得到加密截位串,将加密截位串和比特串传输至数据接收方。本申请还涉及一种数据传输方法、装置、计算机设备和存储介质,方法包括:获取私钥数据以及及比特串和加密截位串,根据私钥数据对加密截位串进行解密,根据解密后的截位串,将比特串转换成明文数据。采用上述方法能提高数据传输的安全性,且能缩短操作时间,减少硬件资源消耗。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据传输方法、装置、计算机设备和存储介质。
背景技术
随着电子信息技术和互联网技术的高速发展,数据广泛地在互联网上传输,信息的安全问题成为人们关注的焦点。数据传输对数据加密技术也提出了更高的要求。
因为二进制在数据表示方面具有唯一性,故当前的计算机***大多使用二进制***,也就是说,对于任何一个信息(字符、数字)所编码形成的二进制序列是固定的。例如,在物联网领域中,尤其是无线传感网络、LORA等物联网协议的简易设计,由于处理器算力瓶颈和存储器容量的限制,数据加密操作会消耗大量计算资源和时间,因此数据传输的方式大部分采用明文传输,明文传输造成极大的网络安全隐患的同时,也使得固定的二进制编码形式变得不够安全。
由此看来,目前的数据传输方式存在安全性不高的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高安全性的数据传输方法、装置、计算机设备和存储介质。
一种数据传输方法,所述方法包括:
获取待传输的明文数据和数据接收方发送的公钥数据;
采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串;
对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串;
根据公钥数据对截位串进行加密,得到加密截位串;
将加密截位串和比特串传输至数据接收方。
在一个实施例中,采用预设斐波那契编码器将待传输的明文数据编码成比特串包括:
遍历斐波那契数列,将待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,斐波那契表达式携带各斐波那契数在斐波那契数列的位置信息;
根据位置信息,将斐波那契表达式中各斐波那契数映射为比特串。
在一个实施例中,对比特串进行截位处理,得到与比特串等长的截位串包括:
遍历比特串;
当遍历至截止位时,将截止位置为1,否则置为0,截止位表征单个已编码的数据对应的比特串的末位。
在一个实施例中,将加密截位串和比特串发送至数据接收方包括:
将加密截位串和比特串以流的方式传输至数据接收方。
在一个实施例中,预设斐波那契编码器的编码规则具有不唯一性。
一种数据传输装置,装置包括:
基础数据获取模块,用于获取待传输的明文数据和数据接收方发送的公钥数据;
数据编码模块,用于采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串;
数据截位模块,用于对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串;
数据加密模块,用于根据公钥数据对截位串进行加密,得到加密截位串;
数据传输模块,用于将加密截位串和比特串传输至数据接收方。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待传输的明文数据和数据接收方发送的公钥数据;
采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串;
对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串;
根据公钥数据对截位串进行加密,得到加密截位串;
将加密截位串和比特串传输至数据接收方。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待传输的明文数据和数据接收方发送的公钥数据;
采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串;
对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串;
根据公钥数据对截位串进行加密,得到加密截位串;
将加密截位串和比特串传输至数据接收方。
上述数据传输方法、装置、计算机设备和存储介质中,不同于常规的二进制编码方式,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,使得一个待编码的数字或字符具备多种编码方式,且通过对比特串进行截位得到截位串,并对截位串进行加密,进行数据传输,使得即使攻击者窃取到斐波那契进制比特串的情况下,由于斐波那契进制的编码方式多种多样,在其不知道截位信息的情况下,根据排列组合的思想,其暴力破解明文的概率也变得极低,因此,能够使得数据传输更具安全性。
一种数据传输方法,方法包括:
获取私钥数据以及数据发送方发送的比特串和加密截位串;
根据私钥数据对加密截位串进行解密,得到解密后的截位串;
根据截位串,将比特串转换成十进制数据,得到明文数据;
其中,比特串由数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,加密截位串由数据发送方根据公钥数据对截位串加密得到,截位串由数据发送方对比特串进行截位得到,公钥数据与私钥数据对应。
一种数据传输装置,装置包括:
数据获取模块,用于获取私钥数据以及数据发送方发送的比特串和加密截位串;
数据解密模块,用于根据私钥数据对加密截位串进行解密,得到解密后的截位串;
数据转换模块,用于根据截位串,将比特串转换成十进制数据,得到明文数据;
其中,比特串由数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,加密截位串由数据发送方根据公钥数据对截位串加密得到,截位串由数据发送方对比特串进行截位得到,公钥数据与私钥数据对应。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取私钥数据以及数据发送方发送的比特串和加密截位串;
根据私钥数据对加密截位串进行解密,得到解密后的截位串;
根据截位串,将比特串转换成十进制数据,得到明文数据;
其中,比特串由数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,加密截位串由数据发送方根据公钥数据对截位串加密得到,截位串由数据发送方对比特串进行截位得到,公钥数据与私钥数据对应。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取私钥数据以及数据发送方发送的比特串和加密截位串;
根据私钥数据对加密截位串进行解密,得到解密后的截位串;
根据截位串,将比特串转换成十进制数据,得到明文数据;
其中,比特串由数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,加密截位串由数据发送方根据公钥数据对截位串加密得到,截位串由数据发送方对比特串进行截位得到,公钥数据与私钥数据对应。
上述数据传输方法、装置、计算机设备和存储介质,获取私钥数据以及数据发送方发送的比特串和加密截位串,根据私钥数据对加密截位串进行解密,得到解密后的截位串,根据截位串,将比特串转换成十进制数据,得到明文数据。上述方案,用于比特串是通过斐波那契编码器编码得到,使得一个待编码的数字或字符具备多种编码方式,提高数据传输安全性,并且通过将截位串作为密钥,能够快速将斐波那契进制的比特串恢复成明文数据,在安全传输的同时,缩短操作时间,减少硬件资源的消耗。
附图说明
图1为一个实施例中数据传输方法的应用环境图;
图2为一个实施例中数据传输方法的流程示意图;
图3为一个实施例中数据传输方法的详细流程示意图;
图4为另一个实施例中数据传输方法的流程示意图;
图5为另一个实施例中数据传输装置的结构框图;
图6为另一个实施例中数据传输装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据传输方法,可以应用于如图1所示的应用环境中。其中,数据发送方(预设有斐波那契编码器)102通过网络与数据接收方104(预设有斐波那契编码器)通过网络进行通信。具体的,数据发送方102和数据接收方104建立连接时,数据接收方104发送自身的公钥数据至数据发送方102,数据发送方102接收该公钥数据,并获取待传输的明文数据(可以是物联网数据),采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,然后,对比特串进行截位处理,得到与比特串等长的可用于解密比特串的截位串(包含截位信息),然后,根据公钥数据对截位串进行加密,得到加密截位串,再将加密截位串和比特串传输至数据接收方104,以使得数据接收方104对接收到的数据进行解密得到明文数据(物联网数据),完成数据的传输。其中,数据发送方102和数据接收方104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图2所示,提供了一种数据传输方法,以该方法应用于图1中的数据发送方(终端)为例进行说明,包括以下步骤:
步骤202,获取待传输的明文数据和数据接收方发送的公钥数据。
明文,是指没有加密的文字(或者字符串),在通信***中它可能是比特流,如文本、位图、数字化的语音或者数字化的视频图像等。一般可以简单地认为明文是有意义的字符或比特集,或通过某种公开的编码标准就能获得的消息。本实施例中,待传输的数据也就是未加密的数据即可视为明文数据。公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。比如用公钥加密数据就必须用私钥解密,如果用私钥加密也必须用公钥解密,否则解密将不会成功。具体实施时,数据发送方102(以物联网设备终端为例)与数据接收方104(服务器网关为例)建立连接时,服务器网关会发送自身的公钥数据至物联网设备终端,同时,物联网设备终端的处理器实时获取待传输的由传感器采集的传感器数据。
步骤204,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串。
斐波那契数又称黄金分割数列,也称为兔子数列,其指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n≥3,n∈N*),特点即从第3项开始,每一项都等于前两项之和。本实施例中,预设斐波那契编码器是基于斐波那契进制设计的编码器,即采用斐波那契编码器进行编码,能够将任意一个整数都用一个或多个斐波那契数来表示,进而可以将该些斐波那契数转换为比特串。具体的,比特串可以是特定含义的0,1比特串。也由于斐波那契数列的特性,使得该编码器的编码规则具有不唯一性。
步骤206,对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串。
本实施例中,比特串是包括0和1。截位串是指与比特串等长的也只包含0和1的字符串。本实施例中,截位处理即指当检测到某个位置标志着某个整数对应的编码序列结束时而下一个整数的编码序列开始时,即将当前位置的字符串置为1,否则置为0。由此,得到截位串。根据截位串能够区分不同的整数对应的编码序列。
步骤208,根据公钥数据对截位串进行加密,得到加密截位串。
当得到截位串之后,为了提高数据传输的安全性,根据数据接收方的公钥数据对截位串进行加密处理,得到加密截位串。将截位信息作为密钥,使得攻击者在即使窃取了比特串,但未获取到截位信息的情况下,几乎无法破解该比特串。
步骤210,将加密截位串和比特串传输至数据接收方。
承接上述实施例,在得到加密截位串和比特串后,将加密截位串和比特串传输至数据接收方,使得数据接收方能够利用自身的私钥解密加密截位串,获取截位信息(截位串),进行根据截位串恢复斐波那契进制比特串为十进制的原始的数据。具体的,可以是以流的方式将加密截位串和比特串传输至数据接收方。采用流的方式传输数据,能够极大的缩短数据传输的耗时。可以理解的是,在其他实施例中,还可采用其他数据传输方式在此不做限定,具体可视情况而定。
上述数据传输方法中,不同于常规的二进制编码方式,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,使得一个待编码的数字或字符具备多种编码方式,且通过对比特串进行截位得到截位串,并对截位串进行加密,进行数据传输,使得即使攻击者窃取到斐波那契进制比特串的情况下,由于斐波那契进制的编码方式多种多样,在其不知道截位信息的情况下,根据排列组合的思想,其暴力破解明文的概率也变得极低,因此,能够使得数据传输更具安全性。
在一个实施例中,如图3所示,步骤204包括:步骤224,遍历斐波那契数列,将待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,斐波那契表达式携带各斐波那契数在斐波那契数列的位置信息,根据位置信息,将斐波那契表达式中各斐波那契数映射为比特串。
具体实施时,使用斐波那契编码器的编码过程可以包括:
S1、遍历斐波那契数列{0,1,1,2,3,5,8,13,21,34,55,89…},把待传输(即待传输)的整数N表示为互异的r个斐波那契数之和,得到斐波那契表达式:其中,k1、k2、…kr表示斐波那契数在斐波那契数列中的位置信息;
S2、按位置信息将斐波那契数映射到0,1组成的比特串(Binary Sequence)中,即将比特串第k1,k2,…,kr位置1,其余位置0,得到斐波那契进制的比特串。举例说明,将整数17和20采用斐波拉契数据编码器转换的过程包括(注意,在进制转换中,右边为低位,从右往左读数,斐波那契数列第一个数0即代表F0,下一位1即代表F1):首先,将整数17表示为互异的斐波那契数之和,则有:17=1+3+13,则得到的斐波那契表达式为17=F1+F4+F7,对应的将下标位置(从第0位开始)的第1位,第4位以及第7位置为1,其余位置0,得到整数17的斐波那契进制比特串为01001001。整数20可表示20=2+5+13,则对应的斐波那契表达式为20=F3+F5+F7,对应的将下标位置(从第0位开始)的第3位,第5位以及第7位置为1,其余位置0,得到整数20的斐波那契进制比特串为00010101。
…89 55 34 21 13 8 5 3 2 1 1 0
1 0 0 1 0 0 1 0(17=F1+F4+F7)
1 0 101 0 00(20=F3+F5+F7)
本实施例中,斐波那契编码器的设计原则包括:(1)“100”(右边为低位)可转换成“011”;(2)因为F0=0,故最低位可取0也可取1;(3)由于F1=F2=1,因此,若斐波那契表达式要加1,那么,数字1可产生在第1位,也可产生在第2位。由此,斐波那契编码器形成的编码具备不唯一性,增加编码的多样性。例如,某物联网设备采集的传感器数据流为:70,105,98,111,110,97,99,99,105,设数字N的编码结果有CountFibExp(N)种,(即用斐波那契编码器的进行编码的编码方式),则CountFibExp(70)=20,CountFibExp(105)=30,CountFibExp(98)=30,CountFibExp(111)=28,CountFibExp(110)=20,CountFibExp(97)=24,CountFibExp(99)=24。因此,上述传感器数据流的编码种类共有:20×30×30×28×20×24×24×24×30=4180377600000种。其中,数据流70,105,98,111,110,97,99,99,105对应编码长度最长的比特串是[1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0]。本实施例中,采用上述斐波那契编码器进行编码,使得一个数字具备多种编码方式,根据排列组合的思想,一个数据流的编码方式将不再是只有传统的一种方式,将演变出多种多样的编码方式,由此,无疑增加了破解的难度,实现了质的飞跃。
在一个实施例中,步骤206包括:步骤226,遍历比特串,当遍历至截止位时,将截止位置为1,否则置为0,截止位表征单个已编码的数据对应的比特串的末位。
具体实施时,包括遍历由斐波那契编码器编码得到的比特串,当遍历到表征某个整数的编码结束(即该整数对应的比特串的末位)下一个整数的编码即将开始的位置时,将该位置标记为截止位,并在对应的截止位置1,其余位置0,上述方式可概括在表征某个已编码的数据对应的比特串的末位置1,其余置0。由此,上述实施例中提到的数据流70,105,98,111,110,97,99,99,105编码长度最长的比特串的截位串为[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,01,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]。本实施例中,通过对比特串进行截位处理,将截位信息作为密钥,使得若想得到明文数据,则必须同时获取截位串和比特串,攻击者即使窃取了比特串,由于没有截位串,也很难破解比特串,提高数据传输的安全性。
在一个实施例中,如图4所示,提供了一种数据传输方法,以该方法应用于图1中的数据接收方(终端)为例进行说明,包括以下步骤:
步骤302,获取私钥数据以及数据发送方发送的比特串和加密截位串。
私钥即指上述与公钥组成的密钥对中不对外公开的隐私部分数据。私钥只有自身知道,用公钥加密的数据只有对应的私钥可以解密。本实施例中,当接收到数据发送方基于斐波那契编码器对待传输的数据进行一系列处理,得到相应比特串和加密截位串之后,便获取私钥数据,以进行数据解密。
步骤304,根据私钥数据对加密截位串进行解密,得到解密后的截位串。
由于数据发送方发送的加密截位串是基于数据接收方的公钥数据进行加密的,因此,可利用数据接收方的私钥数据进行解密,得到原始截位串。如,数据发送方以数据接收方的公钥PK加密截位串S,得到加密截位串EPK(S),数据接收方用自身的私钥SK解密DSK(EPK(S))=S,便可获取截位串S。
步骤306,根据截位串,将比特串转换成十进制数据,得到明文数据;
其中,比特串由数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,加密截位串由数据发送方根据公钥数据对截位串加密得到,截位串由数据发送方对比特串进行截位得到,公钥数据与私钥数据对应。
数据传输流仍以70,105,98,111,110,97,99,99,105为例,在解密出截位串S之后,可基于比特串F,以截位串为单个已编码的数据的标识符,逐段进行斐波那契进制转十进制,恢复明文数据即上述数据传输流70,105,98,111,110,97,99,99,105。
上述数据传输方法中,获取私钥数据以及数据发送方发送的比特串和加密截位串,根据私钥数据对加密截位串进行解密,得到解密后的截位串,根据截位串,将比特串转换成十进制数据,得到明文数据。上述方法,由于比特串是通过斐波那契编码器编码得到,使得一个待编码的数字或字符具备多种编码方式,提高数据传输安全性,并且通过将截位串作为密钥,能够快速将斐波那契进制的比特串恢复成明文数据,在安全传输的同时,缩短操作时间,减少硬件资源的消耗。
为更清楚地对本申请提供的数据传输方法进行说明,下面将结合一个实例进行说明,其中,数据发送方以物联网设备终端为例,数据接收方以服务器网关为例,待传输的数据以传感器数据为例,服务器网关和物联网设备终端在建立连接时,发送自身的公钥数据至物联网设备终端:
第一步,物联网设备终端获取待传输的传感器数据以及服务器网关发送的公钥数据;
第三步,物联网设备终端对比特串F进行截位处理(在对应截止位置1,其余位置0),生成与比特串F长度等长(设为n)的截位串S;
第四步,物联网设备终以服务器网关的公钥PK加密S,得到加密截位串EPK(S),并将EPK(S)发送给接收方;
第四步,服务器网关接收给EPK(S),并以自己的私钥SK解密DSK(EPK(S))=S,获取截位信息S;
第五步,物联网设备终端MCU发送比特串F(在条件允许的情况下,比特串F也可与加密截位串一同发送至服务器网关);
第六步,服务器网关根据截位信息串S,恢复斐波拉契进制比特串F为十进制的真实传感器数据。
按照上述情况,假设,攻击者窃取到斐波拉契进制比特串F,攻击者在不知道截位信息的情况下,若他想将比特串划分成k个数,根据排列组合的思想,会有种情况,而k有不同的取值可能。则,暴力破解F得到正确的明文的概率为:
如此,上述方法采用斐波那契编码器编码得到比特串,并采用截位串作为密钥,双重保障数据的安全性,同时,还能缩短操作时间,减少硬件资源的消耗。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种数据传输装置,包括:基础数据获取模块510、数据编码模块520、数据截位模块530、数据加密模块540和数据传输模块550,其中:
基础数据获取模块510,用于获取待传输的明文数据和数据接收方发送的公钥数据;
数据编码模块520,用于采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串;
数据截位模块530,用于对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串;
数据加密模块540,用于根据公钥数据对截位串进行加密,得到加密截位串;
数据传输模块550,用于将加密截位串和比特串传输至数据接收方。
在一个实施例中,数据编码模块520还用于遍历斐波那契数列,将待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,斐波那契表达式携带各斐波那契数在斐波那契数列的位置信息,根据位置信息,将斐波那契表达式中各斐波那契数映射为比特串。
在一个实施例中,数据截位模块530还用于遍历比特串,当遍历至截止位时,将截止位置为1,否则置为0,截止位表征单个已编码的数据对应的比特串的末位。
在一个实施例中,数据传输模块550还用于将加密截位串和比特串以流的方式传输至数据接收方。
关于数据传输装置的具体限定可以参见上文中对于数据传输方法的限定,在此不再赘述。上述数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图6所示,提供了一种数据传输装置,包括:数据获取模块610、数据解密模块620和数据转换模块630,其中:
数据获取模块610,用于获取私钥数据以及数据发送方发送的比特串和加密截位串;
数据解密模块620,用于根据私钥数据对加密截位串进行解密,得到解密后的截位串;
数据转换模块630,用于根据截位串,将比特串转换成十进制数据,得到明文数据。
关于数据传输装置的具体限定可以参见上文中对于数据传输方法的限定,在此不再赘述。上述数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据传输方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取待传输的明文数据和数据接收方发送的公钥数据,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串,根据公钥数据对截位串进行加密,得到加密截位串,将加密截位串和比特串传输至数据接收方;在其他实施例中,该处理器执行计算机程序时还可实现以下步骤:获取私钥数据以及数据发送方发送的比特串和加密截位串,根据私钥数据对加密截位串进行解密,得到解密后的截位串,根据截位串,将比特串转换成十进制数据,得到明文数据。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:遍历斐波那契数列,将待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,斐波那契表达式携带各斐波那契数在斐波那契数列的位置信息,根据位置信息,将斐波那契表达式中各斐波那契数映射为比特串。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:遍历比特串;
当遍历至截止位时,将截止位置为1,否则置为0,截止位表征单个已编码的数据对应的比特串的末位。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将加密截位串和比特串以流的方式传输至数据接收方。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待传输的明文数据和数据接收方发送的公钥数据,采用预设斐波那契编码器将待传输的明文数据编码成斐波那契进制的比特串,对比特串进行截位处理,得到与比特串等长的截位串,截位串可用于解密比特串,根据公钥数据对截位串进行加密,得到加密截位串,将加密截位串和比特串传输至数据接收方;在其他实施例中,计算机程序被处理器执行时还可实现以下步骤:获取私钥数据以及数据发送方发送的比特串和加密截位串,根据私钥数据对加密截位串进行解密,得到解密后的截位串,根据截位串,将比特串转换成十进制数据,得到明文数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:遍历斐波那契数列,将待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,斐波那契表达式携带各斐波那契数在斐波那契数列的位置信息,根据位置信息,将斐波那契表达式中各斐波那契数映射为比特串。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:遍历比特串;
当遍历至截止位时,将截止位置为1,否则置为0,截止位表征单个已编码的数据对应的比特串的末位。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将加密截位串和比特串以流的方式传输至数据接收方。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据传输方法,其特征在于,所述方法包括:
获取待传输的明文数据和数据接收方发送的公钥数据;
遍历斐波那契数列,将所述待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,根据所述斐波那契表达式携带的各斐波那契数在所述斐波那契数列的位置信息,将所述斐波那契表达式中各斐波那契数映射为比特串;
对所述比特串进行截位处理,得到与所述比特串等长的截位串,所述截位串用于解密所述比特串;
根据所述公钥数据对所述截位串进行加密,得到加密截位串;
将所述加密截位串和所述比特串传输至所述数据接收方;
所述对所述比特串进行截位处理,得到与所述比特串等长的截位串包括:遍历所述比特串,当遍历至截止位时,将所述截止位置为1,否则置为0,所述截止位表征单个已编码的数据对应的比特串的末位。
2.根据权利要求1所述的方法,其特征在于,所述比特串为包含0和1的比特串。
3.根据权利要求1所述的方法,其特征在于,所述将所述加密截位串和所述比特串传输至所述数据接收方包括:
将所述加密截位串和所述比特串以流的方式传输至数据接收方。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述比特串为采用预设斐波那契编码器将待传输的明文数据编码得到的斐波那契进制的比特串,所述预设斐波那契编码器的编码规则具有不唯一性。
5.一种数据传输方法,其特征在于,所述方法包括:
获取私钥数据以及数据发送方发送的比特串和加密截位串;
根据所述私钥数据对所述加密截位串进行解密,得到解密后的截位串;
根据所述截位串,将所述比特串转换成十进制数据,得到明文数据;
其中,所述比特串由所述数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,所述加密截位串由所述数据发送方根据公钥数据对截位串加密得到,所述截位串由所述数据发送方对所述比特串进行截位得到,所述公钥数据与所述私钥数据对应;
所述数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到比特串包括:遍历斐波那契数列,将所述待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,根据所述斐波那契表达式携带的各斐波那契数在所述斐波那契数列的位置信息,将所述斐波那契表达式中各斐波那契数映射为比特串;
所述数据发送方对所述比特串进行截位得到截位串包括:遍历所述比特串,当遍历至截止位时,将所述截止位置为1,否则置为0,所述截止位表征单个已编码的数据对应的比特串的末位。
6.一种数据传输装置,其特征在于,所述装置包括:
基础数据获取模块,用于获取待传输的明文数据和数据接收方发送的公钥数据;
数据编码模块,用于遍历斐波那契数列,将所述待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,根据所述斐波那契表达式携带的各斐波那契数在所述斐波那契数列的位置信息,将所述斐波那契表达式中各斐波那契数映射为比特串;
数据截位模块,用于遍历所述比特串,当遍历至截止位时,将所述截止位置为1,否则置为0,得到截位串,所述截止位表征单个已编码的数据对应的比特串的末位,所述截位串用于解密所述比特串;
数据加密模块,用于根据所述公钥数据对所述截位串进行加密,得到加密截位串;
数据传输模块,用于将所述加密截位串和所述比特串传输至所述数据接收方。
7.根据权利要求6所述的装置,其特征在于,所述数据传输模块还用于将所述加密截位串和所述比特串以流的方式传输至所述数据接收方。
8.一种数据传输装置,其特征在于,所述装置包括:
数据获取模块,用于获取私钥数据以及数据发送方发送的比特串和加密截位串;
数据解密模块,用于根据所述私钥数据对所述加密截位串进行解密,得到解密后的截位串;
数据转换模块,用于根据所述截位串,将所述比特串转换成十进制数据,得到明文数据;
其中,所述比特串由所述数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到,所述加密截位串由所述数据发送方根据公钥数据对截位串加密得到,所述截位串由所述数据发送方对所述比特串进行截位得到,所述公钥数据与所述私钥数据对应;
所述数据发送方采用预设斐波那契编码器对待传输的明文数据进行编码得到比特串包括:遍历斐波那契数列,将所述待传输的明文数据表示为互异的斐波那契数之和,得到斐波那契表达式,根据所述斐波那契表达式携带的各斐波那契数在所述斐波那契数列的位置信息,将所述斐波那契表达式中各斐波那契数映射为比特串;
所述数据发送方对所述比特串进行截位得到截位串包括:遍历所述比特串,当遍历至截止位时,将所述截止位置为1,否则置为0,所述截止位表征单个已编码的数据对应的比特串的末位。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010236912.4A CN111431716B (zh) | 2020-03-30 | 2020-03-30 | 数据传输方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010236912.4A CN111431716B (zh) | 2020-03-30 | 2020-03-30 | 数据传输方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111431716A CN111431716A (zh) | 2020-07-17 |
CN111431716B true CN111431716B (zh) | 2021-03-16 |
Family
ID=71549251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010236912.4A Active CN111431716B (zh) | 2020-03-30 | 2020-03-30 | 数据传输方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111431716B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468993B (zh) * | 2020-09-25 | 2023-07-04 | 中信科智联科技有限公司 | 消息发送方法、接收方法、装置及设备 |
CN112202548A (zh) * | 2020-12-07 | 2021-01-08 | 卓尔智联(武汉)研究院有限公司 | 流加密密钥流生成方法、装置、电路和加密方法 |
CN112235319B (zh) * | 2020-12-09 | 2021-03-16 | 卓尔智联(武汉)研究院有限公司 | 数据加密、解密方法、装置和加解密电路 |
CN112231740B (zh) * | 2020-12-10 | 2021-03-16 | 卓尔智联(武汉)研究院有限公司 | 数据加密方法、数据解密方法、装置、计算机设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758756A (zh) * | 2005-11-03 | 2006-04-12 | 浙江大学 | 一种用于将待编码数据进行二进制化编码的方法和装置 |
CN101601087A (zh) * | 2006-11-16 | 2009-12-09 | 弗劳恩霍夫应用研究促进协会 | 用于编码和解码的设备 |
CN104954124A (zh) * | 2014-03-28 | 2015-09-30 | 华为技术有限公司 | 加密和解密数据处理方法、装置和*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7126502B2 (en) * | 2005-02-01 | 2006-10-24 | Hitachi Global Storage Technologies Netherlands B.V. | Techniques for using interleaved encoders to obtain modulation constraints |
US7696908B2 (en) * | 2006-01-04 | 2010-04-13 | Hitachi Global Storage Technologies Netherlands, B.V. | Techniques for reducing error propagation using modulation codes having a variable span |
CN107276744B (zh) * | 2017-05-27 | 2020-12-18 | 王蕴卓 | 一种文件存储加密方法及*** |
CN107231354A (zh) * | 2017-06-02 | 2017-10-03 | 四川铭扬通信科技有限公司 | 一种数据传输单元的数据传输方法及*** |
CN108337087B (zh) * | 2018-02-06 | 2023-09-12 | 南京晓庄学院 | 基于密码向量和斐波纳契矩阵的Diffie-Hellman加密方法 |
-
2020
- 2020-03-30 CN CN202010236912.4A patent/CN111431716B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758756A (zh) * | 2005-11-03 | 2006-04-12 | 浙江大学 | 一种用于将待编码数据进行二进制化编码的方法和装置 |
CN101601087A (zh) * | 2006-11-16 | 2009-12-09 | 弗劳恩霍夫应用研究促进协会 | 用于编码和解码的设备 |
CN104954124A (zh) * | 2014-03-28 | 2015-09-30 | 华为技术有限公司 | 加密和解密数据处理方法、装置和*** |
Also Published As
Publication number | Publication date |
---|---|
CN111431716A (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111431716B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
Zhang et al. | Embedding cryptographic features in compressive sensing | |
EP3178190B1 (en) | Encoder, decoder and method | |
CN111464296B (zh) | 序列密码生成方法、数据加密方法和数据解密方法 | |
EP3195519B1 (en) | Encoder, decoder and methods employing partial data encryption | |
CN105426709A (zh) | 基于jpeg图像信息隐藏的私密信息通信方法与*** | |
US8180048B2 (en) | Method and system for computational transformation | |
CN114244507B (zh) | 基于单路传输的量子直接通信方法、装置、设备和*** | |
JP2016522931A (ja) | パスワードへの攻撃を阻害すること | |
US8458452B1 (en) | System and method for encryption and decryption of data transferred between computer systems | |
WO2021196960A1 (zh) | 加密视频通话方法、装置、设备和存储介质 | |
CN111277605B (zh) | 数据分享方法、装置、计算机设备以及存储介质 | |
CN117134914A (zh) | 一种基于硬件特征的一次一密的随机秘钥流式加密算法及*** | |
CN108737443B (zh) | 一种基于密码算法的隐匿邮件地址方法 | |
CN116566597A (zh) | 基于比特币地址混淆密文的可控安全等级隐蔽通信方法 | |
Kumar et al. | A novel approach for securing data in IoTcloud using DNA cryptography and Huffman coding algorithm | |
Sharma et al. | Compression and encryption: An integrated approach | |
CN113518244B (zh) | 基于替代文组合的数字电视信号数据发送方法和装置 | |
CN111654362A (zh) | Wep加密算法的改进方法 | |
Kumari et al. | One time pad encryption technique in cryptography | |
BC et al. | Data encryption and decryption using DNA and embedded technology | |
CN113221131B (zh) | 一种基于lwe的qr码加密解密方法 | |
Sangeetha et al. | Email Protection in the Digital Age: Evaluating Symmetric Cryptographic Algorithms | |
CN117436110A (zh) | 数据加密、数据解密方法和装置 | |
Savant et al. | Data Solution |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |