CN114070598A - 文件加密的一种方法与实施 - Google Patents

文件加密的一种方法与实施 Download PDF

Info

Publication number
CN114070598A
CN114070598A CN202111329733.6A CN202111329733A CN114070598A CN 114070598 A CN114070598 A CN 114070598A CN 202111329733 A CN202111329733 A CN 202111329733A CN 114070598 A CN114070598 A CN 114070598A
Authority
CN
China
Prior art keywords
cipher
file
encryption
party
key
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
Application number
CN202111329733.6A
Other languages
English (en)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN202111329733.6A priority Critical patent/CN114070598A/zh
Publication of CN114070598A publication Critical patent/CN114070598A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明属于数据信息安全技术领域。在一个文件加密方法中一般都是采用单一的一种“密码算法”。不同的是,本发明文件加密方法采用了两种“密码算法”,一种是“流密码”(属对称密码),另一种是非对称密码(国标密码SM2)。前者负责对文件加密,后者负责对加密中使用的“密钥”进行加密。本发明文件加密方法既对文件加密,又可对“密钥”加密,简称之为“双加密”。“文件”加密前称为“明文”,加密后称为“密文”。经过“双加密”之后,第三方要破译“密文”,务必先破译被加密了的“密钥”,否则想要破译“密文”是难上加难。所以,本发明“双加密”增加了第三方破译的难度,提高了文件加密的强度,可确保文件更加安全。

Description

文件加密的一种方法与实施
技术领域
“文件加密的一种方法与实施”,旨在提高文件加密的强度,保护文件安全,属于数据信息安全技术领域。
背景技术
对文件进行加密,必须采用一定的“密码算法”,“密码算法”是文件加密方法中的核心。在一个文件加密方法中一般都只对文件加密,采用单一的一种“密码算法”,不会采用两种“密码算法”。如,公开号为CN106878013B的专利在其摘要中阐明:“本发明公开了一种文件加密方法,所述方法包括:生成初始密码;读取所述文件中待加密数据;取所述文件中已加密数据长度,基于所述初始密码和所述已加密数据长度计算得到加密密码;使用所述加密密码对所述待加密数据进行加密,得到加密数据,通过加密密码对文件中的每个字节进行加密,较于传统的加密方法而言,很大程度的提升了密码被破解的难度,提升了数据安全性。”从摘要可知,该专利介绍了对文件本身的加密过程,即一种对文件加密的密码算法,该专利仅涉及这一种密码算法。但是,与该专利不同,本发明对文件加密的方法采用了两种“密码算法”,一种是对称密码,另一种是非对称密码。前者负责对文件本身加密,后者负责在必要时对加密中使用的“密钥”进行加密。当文件在网络上传送时,本发明中文件加密方法不但可以对文件加密,还可以对文件加密用的“密钥”加密,可简称之为“双加密”。“文件”加密之前称为“明文”,加密之后称为“密文”。经过本发明文件加密方法“双加密”之后,第三方要破译“密文”,就务必先破译被加密了的“密钥”,否则要破译“密文”是难上加难。因此,本发明中的“双加密”增加了第三方破译“密文”的难度,提高了文件加密的强度,可更有效地保护文件的安全。再则,在文件安全系统中,常用的实现方式分为静态加密方式和动态加密方式两种。动态加密方式(也称实时加密,透明加密),是指数据在使用过程中(动态)自动对数据进行加密或解密操作。静态加密方式是指在加密期间,待加密的数据处于未使用状态(静态),这些数据一旦加密,在使用前,需首先通过静态解密得到明文,然后才能使用。目前市场上许多加密软件产品就属于这种加密方式,本发明对文件的加密,也属于静态加密方式。文件加密,属于数据信息安全技术领域,是这个技术领域中一个非常重要的方面,市场上有广泛的需求,机关、企业的机要文件需要安全保护,个人隐私也需要安全保护,所以,不仅机关、企业有需求,个人也有需求。
发明内容
本发明对文件加密的方法采用了两种“密码算法”,其中一种是“流密码”,属于对称密码,负责对文件加密。本发明中“流密码”是通过分形中的曼德勃罗图形来生成的。曼德勃罗特图形是分形中最奇异、最瑰丽的图形。曼德勃罗图形看上去,有的地方像海岸线,有的地方像燃烧的火焰,而且,不管把图形放大多少倍,都能看到更加复杂的局部,这些局部图形与整体图形虽不完全相同,但又有某种相似之处。它的这些特征完全符合“流密码”的要求,且增加了“流密码”的加密强度。曼德勃罗图形产生于一个二次项迭代式:
Zi+1=Zi 2+C(i=0,1,2,3...)
其中Zi和C都是复数。对于每一个C,从Z=0+0i开始计算,如果序列Zi(i=0,1,2,3...)收敛,则复数C存在于曼德勃罗特图形之中,满足该条件的所有复数C构成的集合就是曼德勃罗图形。
本发明中文件加密方法采用的第二种“密码算法”是非对称密码,即密码SM2,负责对加密中使用的“密钥”进行加密。相对于RSA,SM2是一种更先进更安全的“密码算法”。本发明中密码SM2的实现,建立在大数库MIRACL基础之上,借用了一个平台将包含在几十个文件中的库函数生成为一个“动态链接库”,再加载之。
本发明的文件加密方法既可对文件加密,又可对“密钥”进行加密,简称之为“双加密”。“文件”加密之前称为“明文”,加密之后称为“密文”。文件经过“双加密”之后,第三方要破译“密文”,务必先破译被加密了的“密钥”,否则破译“密文”难上加难。也就是说,破译“密文”要经过两道门槛。因此,本发明对文件“双加密”,增加了第三方破译“密文”的难度,更加提高了文件加密的强度,更有效地保护了文件的安全。
附图说明
图1是“文件加密的一种方法与实施”实施框图,框图中的小方框编有序号1、2、3……,这些小方框分别称为方框1、方框2、方框3……。框图的左边设为甲方,右边设为乙方。假设甲方要将“文件”(称为“明文”)在网络上安全地传送给乙方,过程如下:第一步,乙方使用“公钥”对文件加密所使用的“密钥”进行加密,由方框1、方框2、方框3、方框4和方框5完成,其中方框1是“非对称密码公私钥对生成器”,生成器每次生成一对公钥私钥,方框4是“非对称密码加密模块”,负责对“密钥”加密,方框5是加密后的密钥;第二步,乙方将“加密后的密钥”传送给甲方;第三步,甲方使用公钥私钥对中相应的私钥对“加密后的密钥”解密,由方框6、方框7、方框8和方框9完成,方框8是“非对称密码解密模块”,负责对“加密后的密钥”解密,方框9是解密后的“密钥”;第四步,甲方使用解密后的“密钥”
对文件加密,由方框10、方框11和方框12完成,方框11是“对称密码加密模块”,负责对文件加密,方框12是文件加密后的结果“密文”;第五步,甲方将“密文”传送给乙方;第六步,乙方将“密文”解密为“明文”,由方框13和方框14完成,方框13是“对称密码解密模块”负责“密文”解密,方框 14是解密后的“明文”。
具体实施方式
1、本发明中文件加密方法采用的“流密码”,属于对称密码,负责对文件加密。本发明中“流密码”是通过分形中的曼德勃罗图形来生成的。曼德勃罗图形产生于一个二次项迭代式:
Zi+1=Zi 2+C(i=0,1,2,3...)
其中Zi和C都是复数.对于每一个C,从Z=0+0i开始计算,如果序列Zi(i=0,1,2,3...)收敛,则复数C存在于曼德勃罗图形之中,满足该条件的所有复数C构成的集合就是曼德勃罗图形。
2、本发明中文件加密方法采用的第二种“密码算法”是非对称密码SM2。SM2是国标密码,相对于RSA, SM2更先进更安全。本发明中密码SM2建立在大数库MIRACL基础之上,运用一个平台将包含在几十个文件中的库函数生成为一个“动态链接库”,加载这个“动态链接库”之后再引用库函数。下面是公钥私钥生成器的部分代码:
(DllDemoAPIProc34)(123,q1);
(DllDemoAPIProc10)(30,q1,ptr,TRUE);
(DllDemoAPIProc2)(q1,ptr);
(DllDemoAPIProc34)(0,p);
(DllDemoAPIProc34)(0,a);
(DllDemoAPIProc34)(0,b);
(DllDemoAPIProc34)(0,n);
(DllDemoAPIProc34)(0,x);
(DllDemoAPIProc34)(0,y);
(DllDemoAPIProc34)(0,key1);
(DllDemoAPIProc2)(p,cfig->p);
(DllDemoAPIProc2)(a,cfig->a);
(DllDemoAPIProc2)(b,cfig->b);
(DllDemoAPIProc2)(n,cfig->n);
(DllDemoAPIProc2)(x,cfig->x);
(DllDemoAPIProc2)(y,cfig->y);
(DllDemoAPIProc3)(a,b,p,MR_PROJECTIVE);g=epoint_init();
pB=epoint_init();
(DllDemoAPIProc6)(time(NULL)+SEED_CONST);
(DllDemoAPIProc7)(n,key1);
(DllDemoAPIProc8)(key1,g,pB);
(DllDemoAPIProc9)(pB,x,y);
*wxlen=(int)(DllDemoAPIProc10)(0,x,(char*)wx,FALSE);
*wylen=(int)(DllDemoAPIProc10)(0,y,(char*)wy,FALSE);
*privkeylen=(int)(DllDemoAPIProc10)(0,key1,(char*)privkey,FALSE);
(DllDemoAPIProc11)(key1);
(DllDemoAPIProc11)(p);
(DllDemoAPIProc11)(a);
(DllDemoAPIProc11)(b);
(DllDemoAPIProc11)(n);
(DllDemoAPIProc11)(x);
(DllDemoAPIProc11)(y);
(DllDemoAPIProc12)(g);
(DllDemoAPIProc12)(pB);
3、本发明中文件加密方法已用C语言编程实现,并进行了大量测试。

Claims (4)

1.本发明中采用的两种“密码算法”,一种是“流密码”,“流密码”属于对称密码,负责对文件加密;另一种是非对称密码SM2,负责对加密中使用的“密钥”加密。
2.本发明中负责对文件加密的“流密码”,便于硬件实施、加解密处理速度快,它不同于分组密码,以一个元素(一个字母或一个比特)作为基本的处理单元,流密码产生于一个二次项迭代式:
Zi+1=Zi 2+C(i=0,1,2,3...)
其中Zi和C都是复数;这个迭代式是一个神奇的二次项迭代式,当对之限制某些条件之后,它对于其初始值有极高的灵敏度,只要初始值有微小变化,二次项迭代式生成的数据会产生巨大的变化,就是所谓的“蝴蝶效应”;当然,对称密码也可以是其它,如国标密码SM4。
3.本发明中负责对密钥加密的是非对称密码SM2,相对于RSA,SM2是一种更先进安全的密码,密码SM2实现时建立在大数库MIRACL基础之上,利用某平台先将包含在几十个文件中的库函数生成一个“动态链接库”,再由某函数加载之,然后便可引用它的库函数。
4.本发明中文件加密的运作过程:假设甲方要将“文件”(称为“明文”)在网络上安全地传送给乙方;第一步,乙方使用“公钥”对文件加密所使用的“密钥”进行加密;第二步,乙方将“加密后的密钥”传送给甲方;第三步,甲方使用公钥私钥对中相应的私钥对“加密后的密钥”解密;第四步,甲方使用“密钥”对文件加密;第五步,甲方将“密文”传送给乙方;第六步,乙方将“密文”解密为“明文”。
CN202111329733.6A 2021-11-10 2021-11-10 文件加密的一种方法与实施 Pending CN114070598A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111329733.6A CN114070598A (zh) 2021-11-10 2021-11-10 文件加密的一种方法与实施

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111329733.6A CN114070598A (zh) 2021-11-10 2021-11-10 文件加密的一种方法与实施

Publications (1)

Publication Number Publication Date
CN114070598A true CN114070598A (zh) 2022-02-18

Family

ID=80274833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111329733.6A Pending CN114070598A (zh) 2021-11-10 2021-11-10 文件加密的一种方法与实施

Country Status (1)

Country Link
CN (1) CN114070598A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055022A (zh) * 2020-09-09 2020-12-08 浪潮卓数大数据产业发展有限公司 一种高效率高安全性的网络文件传输双重加密方法
CN112671782A (zh) * 2020-12-28 2021-04-16 福建网龙计算机网络信息技术有限公司 一种文件加密方法及终端

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055022A (zh) * 2020-09-09 2020-12-08 浪潮卓数大数据产业发展有限公司 一种高效率高安全性的网络文件传输双重加密方法
CN112671782A (zh) * 2020-12-28 2021-04-16 福建网龙计算机网络信息技术有限公司 一种文件加密方法及终端

Similar Documents

Publication Publication Date Title
Ehrsam et al. A cryptographic key management scheme for implementing the Data Encryption Standard
US6907127B1 (en) Hierarchical key management encoding and decoding
US8681975B2 (en) Encryption method and apparatus using composition of ciphers
CN109543434B (zh) 区块链信息加密方法、解密方法、存储方法及装置
CN106888080A (zh) 保护白盒feistel网络实施方案以防错误攻击
CN103378971A (zh) 一种数据加密系统及方法
JPH0227389A (ja) 暗号化方法及び該暗号方法を用いた暗号化装置/復号化装置
CN104396182A (zh) 加密数据的方法
JP2024511236A (ja) コンピュータファイルのセキュリティ暗号化方法、復号化方法および読み取り可能な記憶媒体
CN102811124B (zh) 基于两卡三码技术的系统验证方法
Veeraragavan et al. Enhanced encryption algorithm (EEA) for protecting users' credentials in public cloud
US6975728B1 (en) Hierarchical key management
CN1607511B (zh) 数据保护方法及保护系统
CN116361849A (zh) 一种加密数据库的备份数据加密、解密方法及装置
CN107294713B (zh) 一种加密认证方法
CN112149166B (zh) 非常规密码保护方法及银行智能机器
CN114070598A (zh) 文件加密的一种方法与实施
CN114826759A (zh) 一种可验证的细粒度访问控制内积函数加密方法
CN113408013A (zh) 多种算法规则混合的加解密芯片构架
CN114765529A (zh) 分布式数据的同态加密存储方法及装置、电子设备及计算机可读介质
EP0356065B1 (en) Secure management of keys using control vectors
Saxena et al. A new way to enhance efficiency & security by using symmetric cryptography
Mursalat et al. Column-Level Database Encryption Using Rijndael Algorithm and Dynamic Key on Learning Management System
US20230269066A1 (en) Method and apparatus for provisioning node-locking confidential data
CN102236754B (zh) 数据保密方法以及使用此数据保密方法的电子装置

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