一种云数据加密方法技术

技术编号:19150931 阅读:23 留言:0更新日期:2018-10-13 10:29
本发明专利技术提出了一种云数据加密方法,包括如下步骤:S101:采用随机数生成一级密钥;S201:根据一级密钥,生成二级密钥,利用二级密钥对数据库进行加密/脱密处理,所述二级密钥包括若干位需要校验存储于数据库表中的记录名字段以及若干位数据库表中临时产生的列信息字段,且在数据库中每增加一个记录名时,在记录名后添加所述列信息,本发明专利技术能够大大增加大数分解的困难性,并且最大程度上保证公钥密码的安全性,保证数据的安全。

A cloud data encryption method

The invention proposes a cloud data encryption method, which comprises the following steps: S101: generating a primary key with random numbers; S201: generating a secondary key according to the primary key, and encrypting/de-encrypting the database with the secondary key. The secondary key comprises a number of records that need to be checked and stored in the database table. The name segment and the temporary column information field generated in a number of bits database table are added after each record name is added to the database. The invention can greatly increase the difficulty of large number decomposition, ensure the security of public key cryptography to the greatest extent, and ensure the safety of data.

【技术实现步骤摘要】
一种云数据加密方法
本专利技术属于云数据安全管理
,特别涉及一种云数据加密方法。
技术介绍
目前,随着计算机和电子通讯技术,包括因特网的迅猛发展,金融电子化的步伐大大加快,这种电子化、数字化的趋势已经波及社会生活的几乎所有的方面。人与人之间的许多交往活动,包括商业贸易、金融财务和其他经济活动中,不少已以数字化信息的方式在网上流动着,电子商业、电子银行和电子货币的研究、实施和标准化正在紧锣密鼓地进行中。许多传统上基于纸面的,常常需要签名盖章的重要凭证,诸如存单、支票、股票、公函、合同、租约、遗嘱、选票、法律文书等等,已陆续转化为数字电子媒体的形式出现。这种转化方兴未艾,前景辉煌,虽然未必会有百分之百的转化,但对社会、经济、商业、金融乃至个人生活各方面的影响将是深刻的。云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。相比于常规的技术来说,云技术真正做到了资源的整合利用,具有更高的便利性和灵活性,但是由于资源的共享导致的安全性问题也不容忽视,随时计算机技术的发展,传统的加密方法由于细节上的漏洞而忽略受到各种攻击,导致公钥密码被破解致使数据的泄漏。因此,本专利技术提供一种云数据加密方法,能够大大增加大数分解的困难性,并且最大程度上保证公钥密码的安全性,保证数据的安全。
技术实现思路
本专利技术提出一种云数据加密方法,解决了现有技术中的问题。本专利技术的技术方案是这样实现的:云数据加密方法,包括如下步骤:S101:采用随机数生成一级密钥;S201:根据一级密钥,生成二级密钥,利用二级密钥对数据库进行加密/脱密处理。作为一种优选的实施方式,所述二级密钥包括若干位需要校验存储于数据库表中的记录名字段以及若干位数据库表中临时产生的列信息字段,且在数据库中每增加一个记录名时,在记录名后添加所述列信息。作为一种优选的实施方式,定义记录名字段长度为x,列信息字段长度为y,产生n比特长的随机数后,设定搜索区间【N,N+1】,再用小于2000的素数在此区间进行筛值,得到伪素数;在剩余的伪素数中利用素数测试算法进行素数检测,得到大素数x和y,确定大素数记录名字段长度x和列信息字段长度y。作为一种优选的实施方式,在确定大素数x和y之后,计算模n和欧拉函数φ(n)=(x-1)*(y-1),选择一个满足gcd(a,φ(n))=1的小奇整数e,求e模φ(n)的乘法逆元d得到一级密钥=(n,e),二级密钥=(n,d)。作为一种优选的实施方式,e*d=1(mod(x-1)(y-1)),且e与φ(n)互素,则d与φ(n)互素,e为加密指数或者解密指数中的一个,d为加密指数或者解密指数的另一个。作为一种优选的实施方式,若e为加密指数,则利用e对信息m进行加密时,首先把m分为若干段,m1,m2……mi,每段段长均为s,其中2s<=n,且s尽可能大。作为一种优选的实施方式,利用加密指数e对信息m进行加密时,表示为c1=m1e(modn),ck=mk+mk-1(modn),k=j,j-1,j-2……2,利用解密指数进行解密运算时,表示为m1=c1d(modn),mk=ck-mk-1(modn),k=2,3……j。作为一种优选的实施方式,加密指数满足ei=1(modφ(n)),且i>=(x-1)(y-1)/2。作为一种优选的实施方式,解密指数满足d>N1/4。作为一种优选的实施方式,N具有1024位的位数。采用了上述技术方案后,本专利技术的有益效果是:1、利用双重加密的方法,使云数据得到较为安全的保密;2、二级密钥包括若干位需要校验存储于数据库表中的记录名字段以及若干位数据库表中临时产生的列信息字段,既可以保证二级密钥的保密性,又便于区分;3、则利用e对信息m进行加密时,首先把m分为若干段,m1,m2……mi,每段段长均为s,其中2s<=n,且s尽可能大,在每段信息的长度尽可能大的前提下,保密性越好;4、加密指数e对信息m进行加密时,表示为c1=m1e(modn),ck=mk+mk-1(modn),k=j,j-1,j-2……2,利用解密指数进行解密运算时,表示为m1=c1d(modn),mk=ck-mk-1(modn),k=2,3……j,通过进一步的对加密表示变化为ck=mk+mk-1(modn),k=j,j-1,j-2……2,和解密表示变化为mk=ck-mk-1(modn),k=2,3……j,增加了密码破解的难度;5、在N具有1024位的位数前提下,使密钥可能的数据量非常之大,即便采用万亿次速率的计算机利用穷举法也需要数年时间才能将可能性一一列举,保证了加密数据的安全。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术的流程示意图;图2为本专利技术确定大素数的流程示意图;图3为本专利技术确定一级密钥和二级密钥的流程示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,本云数据加密方法,包括如下步骤:S101:采用随机数生成一级密钥;S201:根据一级密钥,生成二级密钥,利用二级密钥对数据库进行加密/脱密处理。所述二级密钥包括若干位需要校验存储于数据库表中的记录名字段以及若干位数据库表中临时产生的列信息字段,且在数据库中每增加一个记录名时,在记录名后添加所述列信息。请参照图2,定义记录名字段长度为x,列信息字段长度为y,产生n比特长的随机数后,设定搜索区间【N,N+1】,再用小于2000的素数在此区间进行筛值,得到伪素数;在剩余的伪素数中利用素数测试算法进行素数检测,得到大素数x和y,确定大素数记录名字段长度x和列信息字段长度y,大素数x和y应为随机产生,不能具有特殊形式或取自某个素数表,显然,具有特殊形式的素数首先是因子分解的尝试对象,模n应足够大,防止采用穷举搜索来寻找n的因子。至于究竟需要多大,和当前的因子分解技术和具体密码系统的应用背景有关。只要满足使因子分解的代价大于解密获取的利益即可,x和y相差不能太小,因为若x和y大小相若,则可通过对模n取平方根,较快地找到x、y。下面结合图3,在确定大素数x和y之后,计算模n和欧拉函数φ(n)=(x-1)*(y-1),选择一个满足gcd(a,φ(n))=1的小奇整数e,求e模φ(n)的乘法逆元d得到一级密钥=(n,e),二级密钥=(n,d)。e*d=1(mod(x-1)(y-1)),且e与φ(n)互素,则d与φ(n)互素,e为加密指数或者解密指数中的一个,d为加密指数或者解密指数的另一个。若e为加密指数,则利用e对信息m进行加密时,首先把m分为若干段,m1,m2……mi,每段段长均为s,其中2s<=n,且s尽可能大。利用加密本文档来自技高网...

【技术保护点】
1.一种云数据加密方法,其特征在于,包括如下步骤:S101:采用随机数生成一级密钥;S201:根据一级密钥,生成二级密钥,利用二级密钥对数据库进行加密/脱密处理。

【技术特征摘要】
1.一种云数据加密方法,其特征在于,包括如下步骤:S101:采用随机数生成一级密钥;S201:根据一级密钥,生成二级密钥,利用二级密钥对数据库进行加密/脱密处理。2.根据权利要求1所述的云数据加密方法,其特征在于,所述二级密钥包括若干位需要校验存储于数据库表中的记录名字段以及若干位数据库表中临时产生的列信息字段,且在数据库中每增加一个记录名时,在记录名后添加所述列信息。3.根据权利要求2所述的云数据加密方法,其特征在于,定义记录名字段长度为x,列信息字段长度为y,产生n比特长的随机数后,设定搜索区间【N,N+1】,再用小于2000的素数在此区间进行筛值,得到伪素数;在剩余的伪素数中利用素数测试算法进行素数检测,得到大素数x和y,确定大素数记录名字段长度x和列信息字段长度y。4.根据权利要求3所述的云数据加密方法,其特征在于,在确定大素数x和y之后,计算模n和欧拉函数φ(n)=(x-1)*(y-1),选择一个满足gcd(a,φ(n))=1的小奇整数e,求e模φ(n)的乘法逆元d得到一级密钥=(n,e),二级密钥=(n,d)。5.根据权利要求4所述的云数据加...

【专利技术属性】
技术研发人员:王爽李泽猛
申请(专利权)人:无锡知更鸟网络科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1