基于数字信号数据的动态加密方法和装置与流程

文档序号:17125333发布日期:2019-03-16 00:20阅读:324来源:国知局
基于数字信号数据的动态加密方法和装置与流程

本公开涉及数字通信和数据加密技术领域,具体而言,涉及一种基于数字信号数据的动态加密方法和装置。



背景技术:

数据通信技术发展至今已有数十年,一般数据对于保密的要求不高;但是不排除有保密要求的数据通信。这些数据可能会以不同方式传输,在传输的过程中多处流程都有可能会造成数据泄露。在这种情况下,数据加密是必不可少的。然而,静态的加密方法因其静态特性,只要有足够的数据量就可以用“穷举法”使用计算机轻易破解,而动态加密方法则不易寻找到规律,难于破解。

无论有线通信还是无线通信,其数据被提取都是难免的。数据的加密方法已使用数十年,“内核加密”一般都是使用特定方法对每一个数据进行加密,这样就算是数据被截获也不会轻易被破解。但是,从计算机出现以来,使用“穷举法”进行解密的成本及时间大幅度降低。需要说明的是,静态加密算法数据示意如图6所示,数据的结构一般为:前导码—有效数据位—校验码—结束码。其中,有效数据经过特定的运算而生成,需要逆向运算还原。对于破解方,可以将数据输入计算机,进行各种试算反推,直到破解为止。若有足够的数据量,可以相互验证得到的破解方法是否正确。

进一步地,现有技术中,需要保密的数据传输,通常使用外壳加密算法,而没有对数据的本身进行改写或者计算,故此很容易对传输数据进行解密操作;此外,在传输过程中,需要保密的数据传输被截获的现象也经常发生。由此,更无法保障数据传输的安全性。



技术实现要素:

为了解决现有技术中的技术问题,本公开实施例提供了一种基于数字信号数据的动态加密方法和装置,对待传输数据进行预处理;对处理后的待传输数据按照预设数据格式打包生成加密数据;对加密数据进行传输。该方法对于以数据为传输单位的数据动态加密方法,通过对传输数据进行指定范围的随机数运算,生成动态指针及加密算法代码号;在指针指定位置生成数据加密基础码组,以此数码组为基准,按加密代码号指定的加密算法进行运算,生成加密数据。在数据被接收后,根据数据中的算法代码号指定的算法,以及指针指定的数码组进行数据运算,还原数据。该方法可以有效地应用于高保密性要求的以数据为基础的数据传输,防止数据在传输中泄密,具有应用的精准性、灵活性与易用性。

第一方面,本公开实施例提供了一种基于数字信号数据的动态加密方法,包括以下步骤:对待传输数据进行预处理;对处理后的所述待传输数据按照预设数据格式打包生成加密数据;对所述加密数据进行传输。

在其中一个实施例中,所述对待传输数据进行预处理包括:对所述待传输数据进行随机数运算,以使得所述随机数运算为符合预设规则的加密算法代码号运算;根据运算结果随机选择加密算法,其中,所述加密算法为从多种算法中随机选取的算法。

在其中一个实施例中,还包括:对所述待传输数据进行随机数运算,生成符合预设规则的定位指针。

在其中一个实施例中,还包括:对所述待传输数据进行多组随机数运算,生成数据加密基础码组,并将所述数据加密基础码组设置在所述定位指针指定的位置,其中,所述多组随机数运算以8组或8组的整数倍进行运算。

在其中一个实施例中,对处理后的所述待传输数据按照预设数据格式打包生成加密数据包括:针对所述待传输数据完成随机数运算的数据按照所述预设数据包格式,将定位指针、加密算法代码号、数据加密基础码组以及待加密数据进行打包,生成所述加密数据。

在其中一个实施例中,所述数据加密基础码组为随机生成。

在其中一个实施例中,所述数据加密基础码组被设置的位置为随机事件。

第二方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的方法的步骤。

第三方面,本公开实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法的步骤。

第四方面,本公开实施例提供了一种基于数字信号数据的动态加密装置,所述装置包括:预处理模块,用于对待传输数据进行预处理;打包生成模块,用于对处理后的所述待传输数据按照预设数据格式打包生成加密数据;传输模块,用于对所述加密数据进行传输。

本发明提供的一种基于数字信号数据的动态加密方法和装置,对待传输数据进行预处理;对处理后的待传输数据按照预设数据格式打包生成加密数据;对加密数据进行传输。该方法对于以数据为传输单位的数据动态加密方法,通过对传输数据进行指定范围的随机改写运算,生成动态指针及加密算法代码号;在指针指定位置生成数据加密基础码组,以此数码组为基准,按加密代码号指定的加密算法进行运算,生成加密数据。在数据被接收后,根据数据中的算法代码号指定的算法,以及指针指定的数码组进行数据运算,还原数据。该方法可以有效地应用于高保密性要求的以数据为基础的数据传输,防止数据在传输中泄密,具有应用的精准性、灵活性与易用性。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面对实施例描述中所需要使用的附图作简单地介绍:

图1为本发明一个实施例中的一种基于数字信号数据的动态加密方法的步骤流程示意图;

图2为本发明一个实施例中的一种基于数字信号数据的动态加密方法的数据结构示意图;

图3为本发明一个实施例中的一种基于数字信号数据的动态加密方法的加密数据示意图;

图4为本发明一个实施例中的一种基于数字信号数据的动态加密方法的应用示例图;

图5为本发明一个实施例中的一种基于数字信号数据的动态加密装置的结构示意图;

图6为现有技术中静态加密算法数据示意图。

具体实施方式

下面结合附图和实施例对本申请进行进一步的详细介绍。

在下述介绍中,术语“第一”、“第二”仅为用于描述的目的,而不能理解为指示或暗示相对重要性。下述介绍提供了本公开的多个实施例,不同实施例之间可以替换或者合并组合,因此本申请也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含特征a、b、c,另一个实施例包含特征b、d,那么本申请也应视为包括含有a、b、c、d的一个或多个所有其他可能的组合的实施例,尽管该实施例可能并未在以下内容中有明确的文字记载。

为了使本发明的目的、技术方案及优点更加清楚明白,以下通过实施例,并结合附图,对本发明一种基于数字信号数据的动态加密方法和装置的具体实施方式进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本公开提出的基于数字信号数据的动态加密方法的原理为:对待传输数据进行随机数运算,生成指定范围内的指针,用于指定数据加密基础码组进行随机数运算,生成指定范围内的加密算法代码号;再次进行多组随机改写运算,置于指针指定的数据区域,作为数据加密基础码组,以加密数据基础码组为基准,以上指定加密算法号对数据进行运算,运算结果代替数据置于相应位置;最终数据接收后按照指定的加密算法及指针指定的加密基础码组进行数据解码还原。需要说明的是,编制多种不同的加密算法,并赋予算法代码号的过程中,可以一种算法对应多个代码号,但是一个代码号只能对应一种算法。且代码号可以根据需要进行预设进行更换。由此,更增加了加密的安全性与灵活性。

如图1所示,为一个实施例中的一种基于数字信号数据的动态加密方法的流程示意图,具体包括以下步骤:

步骤102,对待传输数据进行预处理。

具体的,对待传输数据进行预处理包括:对待传输数据进行随机数运算,以使得随机数运算为符合预设规则的加密算法代码号运算;根据运算结果随机选择加密算法,其中,加密算法为从多种算法中随机选取的算法。

此外,还需要说明的是,本公开提出的基于数字信号数据的动态加密方法还包括:对待传输数据进行随机数运算,生成符合预设规则的定位指针。此外,在一个实施例中,本公开提出的基于数字信号数据的动态加密方法,还包括:对待传输数据进行多组随机数运算,生成数据加密基础码组,并将数据加密基础码组设置在定位指针指定的位置,其中,多组随机数运算以8组或8组的整数倍进行运算。由此,提高了定位指针生成的精准性与易用性。

步骤104,对处理后的待传输数据按照预设数据格式打包生成加密数据。

具体的,对处理后的待传输数据按照预设数据格式打包生成加密数据包括:针对待传输数据完成随机数运算的数据按照预设数据包格式,将定位指针、加密算法代码号、数据加密基础码组以及待加密数据进行打包,生成加密数据。其中,需要说明的是,数据加密基础码组为随机生成,且数据加密基础码组被设置的位置为随机事件。可以理解的是,数据加密基础码组的生成为随机,与有效数据混杂在一起,由此,提高了加密数据的安全性。进一步地,数据加密基础码组的设置有效地避开了指针指定位置后,放置运算结果。由此,提高了加密的安全性、灵活性、多样性与适用性。

步骤106,对加密数据进行传输。

需要说明的是,对加密数据的传输,由于使用了多维(多元)算法,由此,增加动态相关单元,加大强行破解的难度。此外,还需要说明的是,接收机收到加密数据后,提取相应的加密算法代码号、数据加密基础码组,并进行逆向运算,还原数据。由此,提高了解密的逻辑性与简便性。

本发明提供的一种基于数字信号数据的动态加密方法,对待传输数据进行预处理;对处理后的待传输数据按照预设数据格式打包生成加密数据;对加密数据进行传输。该方法对于以数据为传输单位的数据动态加密方法,通过对传输数据进行指定范围的随机数运算,生成动态指针及加密算法代码号;在指针指定位置生成数据加密基础码组,以此数码组为基准,按加密代码号指定的加密算法进行运算,生成加密数据。在数据被接收后,根据数据中的算法代码号指定的算法,以及指针指定的数码组进行数据运算,还原数据。该方法可以有效地应用于高保密性要求的以数据为基础的数据传输,防止数据在传输中泄密,具有应用的精准性、灵活性与易用性。

为了更加清楚与准确地理解并应用本公开涉及的一种基于数字信号数据的动态加密方法,结合图2-4进行以下示例,需要说明的是,本公开所保护的范围不限于以下示例。

具体的,本公开所要解决的技术问题是如何在对有效数据进行更难破解的动态加密。为此目的,本公开提出了一种数字信号数据的动态加密方法。具体步骤包括:通信是以数据形式发送的数字信号,无论信号是以有线还是无线方式(包含公用通信网络,如4g、nb-iot等)传输;数据格式中增加三部分:指针:用以规定数据加密基础码组的位置,使用随机数运算产生;加密算法代码号:用以指定本次通信使用的加密算法代号,使用随机数运算产生;数据加密基础码组:有效数据进行加密运算的辅助相关数据,使用随机数运算产生。

需要说明的是,指针、加密算法代码号、数据加密基础码组几样与加密有关的数据均为使用随机数运算产生,经过运算后符合数据规则,每次通信均不相同;发送机针对所有的有效数据进行运算,生成与本次通信运算产生的“数据加密基础码组”相关的数据,合成数据。接收机收到数据后,首先提取指针、加密算法代码号及数据加密基础码组,通过逆向运算还原有效数据,完成正常通信。可以理解的是,接收机需要一定缓存存贮,在接收到指针、加密算法代码号、数据加密基础码组三项完整数据后方可进行数据破解还原工作。当前设备平台的mcu运算能力都有富余,一边运算一边进行其它操作并不会影响其处理速度,对设备的运行没有明显影响。

以使用一个数据加密基础码组,即二维加密为例:制定的加密算法应为二维运算,要将有效数据本身以及数据加密基础码组均代入运算,以达到更高的保密效果。如图2所示,数据传输中有前导码、指针、加密算法代码、有效数据、数据加密基础码组、结束码等构成。在有数据需要传输时,发射机需要运算生成指针、加密算法代码,并将加密算法代码放置在指针指定的位置。上述工作完成后,根据随机选取的加密算法计算发送数据的数据z,如图3中所示:

a=f(a’,y)对应到图3中,加密算法为:

a1=f(a′1,y1)

a2=f(a'2,y2)

……

c7=f(c'7,y7)

……

需要说明的是,公式中,a’0、a’1…为初始数据,a0、a1…为加密数据。所有的加密数据与其初始数据均及数据加密基础码组形成多维函数关系。经过多维(多元)加密运算,将运算结果a0、a1…代替初始数据,生成加密数据。

在数据包中,数据加密基础码组可以为1组(8位)也可以为多组,这样第一个公式可以由二维(二元)运算升级为多元运算,加密的保密性更强。在生成加密的数据包,发射机发送此数据;接收机识别到数据时,接收并进行缓存,在收全指针、加密算法代码号、数据加密基础码组后,可以根据需要开始解密运算,或是完全接收后解密运算。上述运行流程可参考图4所示。

此外,还需要说明的是,在使用动态的多组数据加密基础码组进行多维加密运算时,使用传统的“穷举法”进行解密运算已不可能,必须真正了解加密的所有相关资料,包含算法、指针、数据加密基础码组才能进行解密运算。本公开的一种数字信号数据的动态加密方法,充分利用数据本身及硬件的运算能力,进行多维动态加密运算,防止资料被使用“穷举法”等强硬手段强行破解。本公开提出的基于数字信号数据的动态加密方法可以广泛用于有线数据传输、本地无线网数据传输、类似在4g、nb-iot、2g(gprs等)等公用公网中进行的有保密要求的数据的传输。因其算法动态多种,基础数据位置也是动态指定,辅以加密代码号的非规律性变化,具有较高的保密效果。

基于同一发明构思,还提供了一种基于数字信号数据的动态加密装置。由于此装置解决问题的原理与前述一种基于数字信号数据的动态加密方法相似,因此,该装置的实施可以按照前述方法的具体步骤实现,重复之处不再赘述。

如图5所示,为一个实施例中的一种基于数字信号数据的动态加密装置的结构示意图。该基于数字信号数据的动态加密装置10包括:预处理模块200、打包生成模块400和传输模块600。

其中,预处理模块200用于对待传输数据进行预处理;打包生成模块400用于对处理后的待传输数据按照预设数据格式打包生成加密数据;传输模块600用于对加密数据进行传输。

本发明提供的一种基于数字信号数据的动态加密装置,首先通过预处理模块对待传输数据进行预处理;再通过打包生成模块对处理后的待传输数据按照预设数据格式打包生成加密数据;最终通过传输模块对加密数据进行传输。该装置对于以数据为传输单位的数据动态加密方法,通过对传输数据进行指定范围的随机改写运算,生成动态指针及加密算法代码号;在指针指定位置生成数据加密基础码组,以此数码组为基准,按加密代码号指定的加密算法进行运算,生成加密数据。在数据被接收后,根据数据中的算法代码号指定的算法,以及指针指定的数码组进行数据运算,还原数据。该方法可以有效地应用于高保密性要求的以数据为基础的数据传输,防止数据在传输中泄密,具有应用的精准性、灵活性与易用性。

本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被图1-4中处理器执行。

本发明实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得计算机执行上述图1-4的方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。

本公开中涉及的器件、装置、设备、系统的方框图仅作为示例性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

另外,如在此使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,例如“a、b或c的至少一个”的列举意味着a或b或c,或ab或ac或bc,或abc(即a和b和c)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。

还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。

可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。

提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。

为了示例和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1