CN110489978A - 一种文件加解密方法 - Google Patents

一种文件加解密方法 Download PDF

Info

Publication number
CN110489978A
CN110489978A CN201910615408.2A CN201910615408A CN110489978A CN 110489978 A CN110489978 A CN 110489978A CN 201910615408 A CN201910615408 A CN 201910615408A CN 110489978 A CN110489978 A CN 110489978A
Authority
CN
China
Prior art keywords
file
fragment
encryption
decryption
current
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
CN201910615408.2A
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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201910615408.2A priority Critical patent/CN110489978A/zh
Publication of CN110489978A publication Critical patent/CN110489978A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种文件加解密方法,文件加密方法包括读取待加密文件,从样本文件中随机选取一段文件作为当前文件,将待加密文件与当前文件异或处理,得到中间文件;将中间文件中分片的顺序打乱,得到当前中间文件;对当前中间文件的分片进行异或操作,得到初步中间文件;根据初步加密文件的迭代运算得到加密文件;生成密钥文件,得到加密密钥。文件解密方法包括读取密钥中的加密文件,将加密文件作为当前解密文件;对当前解密文件解密,得到明文文件;将明文文件作为当前解密文件,得到初步解密文件;将初步解密文件与样本文件异或处理,得到解密文件;对加密文件进行解密。本发明实现了每次文件的“个性加密”,达到“一次一密”的加密效果。

Description

一种文件加解密方法
技术领域
本发明涉及数据加密技术领域,具体涉及一种文件加解密方法。
背景技术
现代信息加密技术一般都采用“算法+密钥”的基本思想。不论对称加密算法还是非对称加密算法,一旦算法选定,信息加密的强度就主要依赖“密钥”的强度。随着计算机运算速度的不断提升,各种新型高效的解密工具的不断涌现,破解“算法+密钥”的这种加密算法已经存在可能,窃取保密信息变得越来越容易,传统加密算法正在面临被破解的威胁。
发明内容
针对现有技术中存在的不足,本发明的目的在于,提供一种文件加解密方法,解决现有的加解密文件方法容易被破解的技术问题。
为了解决上述技术问题,本申请采用如下技术方案予以实现:
一种文件加密方法,包括以下步骤:
步骤1,读取待加密文件,所述待加密文件长度为L;从样本文件中随机选取长度为L的一段文件作为当前文件,将待加密文件与当前文件进行异或操作,得到中间文件,其中L大于等于1,单位为字节;
步骤2,随机生成n个分片长度,根据分片长度将中间文件分成n个分片;
步骤3,将中间文件中的n个分片的顺序打乱,得到当前中间文件;
步骤4,对当前中间文件的n个分片进行异或操作,得到初步中间文件;
包括:
步骤41,令i=1,i为加密循环因子;
步骤42,将新顺序排列的n个分片中的第i个分片片与第i+1个分片进行异或操作,得到第i′个分片;
步骤43,i=i+1,重复步骤42,直至i=n-1,得到第1′个分片,….,第(n-1)′个分片;
步骤44,从当前中间文件中随机选取一个分片作为当前分片,将当前中间文件中的第n个分片与当前分片进行异或操作,得到第n′个分片;
将第1′个分片,….,第(n-1)′个分片,第n′个分片作为初步加密文件;
步骤5,将初步加密文件作为当前中间文件,重复步骤3至步骤4p次,得到加密文件,p为大于1的自然数,所述加密文件中包括按照顺序排列的n个分片;
步骤6,根据加密文件,生成密钥文件,将密钥文件与样本文件进行异或操作,得到加密密钥。
本发明还提供了一种文件解密方法,包括以下步骤:
步骤1,读取密钥中的加密文件,所述加密文件包括m个分片,将加密文件作为当前解密文件;
步骤2,对当前解密文件中的m个分片进行解密,得到明文文件;
包括:
步骤21,从样本文件中随机获取一段文件作为当前解密分片,将当前解密文件中的第m个分片与当前解密分片进行异或操作,得到明文文件的第m′个分片;
步骤22,令j=m-1,j为解密循环因子;
步骤23,将当前解密文件中的第j个分片与明文文件的第(j+1)′个分片进行异或操作,得到明文文件的第j′个分片;
步骤24,重复步骤23,直至j=1,得到明文文件,所述明文文件包括第1′个分片,…,第(m-1)′个分片,第m′个分片;
步骤3,将明文文件作为当前解密文件,重复步骤2q次,得到初步解密文件;
步骤4,将初步解密文件与样本文件进行异或操作,得到解密文件;
步骤5,使用解密文件对加密文件进行解密。
进一步地,所述步骤5中,若解密文件对加密文件进行解密的次数大于H,则将加密文件进行销毁,H为大于1的自然数。
进一步地,对所述加密文件进行销毁,包括:
读取加密文件的长度和密钥文件的长度;
随机生成与加密文件相同长度的第一覆盖文件,随机生成与密钥文件相同长度的第二覆盖文件;
将第一覆盖文件覆盖加密文件,将第二覆盖文件覆盖密钥文件。
本发明还提供了一种文件加解密方法,包括文件加密方法和文件解密方法。
本发明与现有技术相比,有益的技术效果是:
1、本发明采用了基于“规则”的加密算法,改变完全依赖密钥的文件保密方式,实现每次文件的“个性加密”,达到“一次一密”的加密效果;
2、本发明实现不同密级文件的不同深度加密,为应急、突发及特殊网络环境下的信息保密存储和传输提供新的技术手段;
3、本发明可以实现保密信息被窃取后对信息内容的销毁和破坏,保证信息不被破译。
附图说明
图1为文件加密过程中对分片进行迭代运算的示意图;
图2为文件解密过程中对分片进行迭代运算的示意图;
图3为销毁加密文件和密钥文件的流程示意图;
图4为文件加解密的流程示意图。
以下结合附图和实施例对本发明的具体内容作进一步详细解释说明。
具体实施方式
以下给出本发明的具体实施例,需要说明的是本发明并不局限于以下具体实施例,凡在本申请技术方案基础上做的等同变换均落入本发明的保护范围。
实施例1:
本实施例给出一种文件加密方法,包括以下步骤:
步骤1,读取待加密文件,所述待加密文件长度为L;从样本文件中随机选取长度为L的一段文件作为当前文件,将待加密文件与当前文件进行异或操作,得到中间文件,其中L大于等于1,单位为字节;
步骤2,随机生成n个分片长度,根据分片长度将中间文件分成n个分片;
步骤3,将中间文件中的n个分片的顺序打乱,得到当前中间文件;
步骤4,对当前中间文件的n个分片进行异或操作,得到初步中间文件;
如图1所示,包括:
步骤41,令i=1,i为加密循环因子;
步骤42,将新顺序排列的n个分片中的第i个分片片与第i+1个分片进行异或操作,得到第i′个分片;
步骤43,i=i+1,重复步骤42,直至i=n-1,得到第1′个分片,….,第(n-1)′个分片;
步骤44,从当前中间文件中随机选取一个分片作为当前分片,将当前中间文件中的第n个分片与当前分片进行异或操作,得到第n′个分片;
将第1′个分片,….,第(n-1)′个分片,第n′个分片作为初步加密文件;
步骤5,将初步加密文件作为当前中间文件,重复步骤3至步骤4p次,得到加密文件,p为大于1的自然数,所述加密文件中包括按照顺序排列的n个分片;
本发明根据待加密文件所处的不同秘密级别,对重复次数p设置不同的数值,进行不同程度的安全保护,满足信息保密的需要。
具体地,当待加密文件为秘密级文件时,重复次数p为3;当待加密文件为机密文件时,重复次数p为5;当待加密文件为绝密文件时,重复次数p为7。
步骤6,根据加密文件,生成密钥文件,将密钥文件与样本文件进行异或操作,得到加密密钥。
具体地,将加密文件中每个分片的长度、分片数量、分片的排序、样本文件的读取位置、待加密文件的扩展名等信息整合,生成一次密钥文件。
本实施例中样本文件的选取是随机的,可以选择视频、语音、图片、文件等,选取的要求是样本文件的大小要远大于待加密文件的大小(10倍待加密文件<样本文件)。
本发明中的待加密文件可以为文本、图片、音频、视频等多种类型文件,且能够运行于主流操作***上,***能够在Windows 2000、Windows XP、Windows 7等多种常规操作***中运行,满足当前网络中绝大多数用户的使用要求。
本发明通过对文件的乱序处理后进行迭代异或运算,能够针对穷举式密码破解手段,进行待加密文件的破解保护,防止保密信息被窃取后信息内容的泄漏。
实施例2:
本实施例提供了一种文件解密方法,包括以下步骤:
步骤1,读取密钥中的加密文件,所述加密文件包括m个分片,将加密文件作为当前解密文件;
步骤2,对当前解密文件中的m个分片进行解密,得到明文文件;
如图2所示,包括:
步骤21,从样本文件中随机获取一段文件作为当前解密分片,将当前解密文件中的第m个分片与当前解密分片进行异或操作,得到明文文件的第m′个分片;
步骤22,令j=m-1,j为解密循环因子;
步骤23,将当前解密文件中的第j个分片与明文文件的第(j+1)′个分片进行异或操作,得到明文文件的第j′个分片;
步骤24,重复步骤23,直至j=1,得到明文文件,所述明文文件包括第1′个分片,…,第(m-1)′个分片,第m′个分片;
步骤3,将明文文件作为当前解密文件,重复步骤2q次,得到初步解密文件;
本发明根据密文等级设置q的数值,密文级数越高,q的数值越大。
步骤4,将初步解密文件与样本文件进行异或操作,得到解密文件;
步骤5,使用解密文件对加密文件进行解密。
本实施例中的样本文件与实施例1中的样本文件为同一样本文件。
为了防止用户在非法获得密钥文件或加密文件后进行尝试破解,本发明中加入了对密钥的破解保护;
若解密文件对加密文件进行解密的次数大于H,则将加密文件进行销毁,H为大于1的自然数。
本发明根据密文等级设置最大容错次数H,秘密级为5次,机密级为4次,绝密级为2次,当用户尝试破解时,一旦错误次数超过限定,程序会在静默状态下擦写密钥文件和加密文件内容,并强制关机。具体的对比内容包括:密钥格式是否符合要求、样本文件是否一致、秘密等级是否一致、文件分片数量是否一致等关键信息。
对所述加密文件进行销毁,如图3所示,包括:
读取加密文件的长度和密钥文件的长度;
随机生成与加密文件相同长度的第一覆盖文件,随机生成与密钥文件相同长度的第二覆盖文件;
将第一覆盖文件覆盖加密文件,将第二覆盖文件覆盖密钥文件。
实施例3:
本实施例提供了一种文件加解密方法,如图4所示,包括实施例1提供的文件加密方法和实施例2提供的文件解密方法。

Claims (5)

1.一种文件加密方法,其特征在于,包括以下步骤:
步骤1,读取待加密文件,所述待加密文件长度为L;从样本文件中随机选取长度为L的一段文件作为当前文件,将待加密文件与当前文件进行异或操作,得到中间文件,其中L大于等于1,单位为字节;
步骤2,随机生成n个分片长度,根据分片长度将中间文件分成n个分片;
步骤3,将中间文件中的n个分片的顺序打乱,得到当前中间文件;
步骤4,对当前中间文件的n个分片进行异或操作,得到初步中间文件;
包括:
步骤41,令i=1,i为加密循环因子;
步骤42,将新顺序排列的n个分片中的第i个分片片与第i+1个分片进行异或操作,得到第i′个分片;
步骤43,i=i+1,重复步骤42,直至i=n-1,得到第1′个分片,....,第(n-1)′个分片;
步骤44,从当前中间文件中随机选取一个分片作为当前分片,将当前中间文件中的第n个分片与当前分片进行异或操作,得到第n′个分片;
将第1′个分片,....,第(n-1)′个分片,第n′个分片作为初步加密文件;
步骤5,将初步加密文件作为当前中间文件,重复步骤3至步骤4p次,得到加密文件,p为大于1的自然数,所述加密文件中包括按照顺序排列的n个分片;
步骤6,根据加密文件,生成密钥文件,将密钥文件与样本文件进行异或操作,得到加密密钥。
2.一种文件解密方法,其特征在于,包括以下步骤:
步骤1,读取密钥中的加密文件,所述加密文件包括m个分片,将加密文件作为当前解密文件;
步骤2,对当前解密文件中的m个分片进行解密,得到明文文件;
包括:
步骤21,从样本文件中随机获取一段文件作为当前解密分片,将当前解密文件中的第m个分片与当前解密分片进行异或操作,得到明文文件的第m′个分片;
步骤22,令j=m-1,j为解密循环因子;
步骤23,将当前解密文件中的第j个分片与明文文件的第(j+1)′个分片进行异或操作,得到明文文件的第j′个分片;
步骤24,重复步骤23,直至j=1,得到明文文件,所述明文文件包括第1′个分片,…,第(m-1)′个分片,第m′个分片;
步骤3,将明文文件作为当前解密文件,重复步骤2q次,得到初步解密文件;
步骤4,将初步解密文件与样本文件进行异或操作,得到解密文件;
步骤5,使用解密文件对加密文件进行解密。
3.如权利要求2所述的文件解密方法,其特征在于,所述步骤5中,若解密文件对加密文件进行解密的次数大于H,则将加密文件进行销毁,H为大于1的自然数。
4.如权利要求3所述的文件解密方法,其特征在于,对所述加密文件进行销毁,包括:
读取加密文件的长度和密钥文件的长度;
随机生成与加密文件相同长度的第一覆盖文件,随机生成与密钥文件相同长度的第二覆盖文件;
将第一覆盖文件覆盖加密文件,将第二覆盖文件覆盖密钥文件。
5.一种文件加解密方法,其特征在于,包括权利要求1所述的文件加密方法和权利要求2至4任一项所述的文件解密方法。
CN201910615408.2A 2019-07-09 2019-07-09 一种文件加解密方法 Pending CN110489978A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910615408.2A CN110489978A (zh) 2019-07-09 2019-07-09 一种文件加解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910615408.2A CN110489978A (zh) 2019-07-09 2019-07-09 一种文件加解密方法

Publications (1)

Publication Number Publication Date
CN110489978A true CN110489978A (zh) 2019-11-22

Family

ID=68546842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910615408.2A Pending CN110489978A (zh) 2019-07-09 2019-07-09 一种文件加解密方法

Country Status (1)

Country Link
CN (1) CN110489978A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111432244A (zh) * 2020-03-17 2020-07-17 中国人民解放军国防科技大学 一种基于属性的轻量级图像加解密方法、装置及***
CN114285562A (zh) * 2021-12-27 2022-04-05 元心信息科技集团有限公司 一种数据加密方法和装置
CN114490963A (zh) * 2021-12-17 2022-05-13 中国人民解放军空军军医大学 一种全媒体出版***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170350A (zh) * 2011-04-11 2011-08-31 桂林电子科技大学 具有误导功能的多重不确定加密***
CN104883257A (zh) * 2014-06-12 2015-09-02 梁庆生 一种大数据加密方法
CN104967518A (zh) * 2015-07-31 2015-10-07 中国人民解放军71777部队 一种提高信息传输安全性的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170350A (zh) * 2011-04-11 2011-08-31 桂林电子科技大学 具有误导功能的多重不确定加密***
CN104883257A (zh) * 2014-06-12 2015-09-02 梁庆生 一种大数据加密方法
CN104967518A (zh) * 2015-07-31 2015-10-07 中国人民解放军71777部队 一种提高信息传输安全性的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111432244A (zh) * 2020-03-17 2020-07-17 中国人民解放军国防科技大学 一种基于属性的轻量级图像加解密方法、装置及***
CN114490963A (zh) * 2021-12-17 2022-05-13 中国人民解放军空军军医大学 一种全媒体出版***
CN114490963B (zh) * 2021-12-17 2023-11-24 中国人民解放军空军军医大学 一种全媒体出版***
CN114285562A (zh) * 2021-12-27 2022-04-05 元心信息科技集团有限公司 一种数据加密方法和装置
CN114285562B (zh) * 2021-12-27 2023-05-09 元心信息科技集团有限公司 一种数据加密方法和装置

Similar Documents

Publication Publication Date Title
CN102904712B (zh) 信息加密方法
US20030056118A1 (en) Method for encryption in an un-trusted environment
CN104660590B (zh) 一种文件加密安全云存储方案
Liu et al. Whispers on ethereum: Blockchain-based covert data embedding schemes
CN110489978A (zh) 一种文件加解密方法
Devi et al. A review on DES, AES and blowfish for image encryption & decryption
CN106778292B (zh) 一种Word加密文档的快速还原方法
Kumar et al. A survey on current key issues and status in cryptography
CN103942500B (zh) 基于噪声的哈希密文再加密方法及再加密后的解密方法
Firdaus et al. Monitoring system with two central facilities protocol
Yahaya et al. Cryptosystem for secure data transmission using Advance Encryption Standard (AES) and Steganography
CN105897568A (zh) 基于多通道的邮件碎片化传输方法
Mohammed et al. Implementation of new secure encryption technique for cloud computing
US11468178B1 (en) Embedded obfuscated channel cryptography
Aghili Improving security using blow fish algorithm on deduplication cloud storage
CN108134799A (zh) 新型加解密方法及其装置
CN104463003A (zh) 一种文件加密保护方法
Sharma et al. Steganography techniques using cryptography-a review paper
CN102647428A (zh) 一种基于通信网络的托管控制加解密***及方法
Singh et al. Cryptography and Steganography Techniques
Patel et al. Triple security of information using steganography and cryptography
Bishoi et al. An algorithm on text based security in modern cryptography
Sadasivam et al. Image Steganography
Reddy et al. Data Storage on Cloud using Split-Merge and Hybrid Cryptographic Techniques
Mondal et al. Frame Based Symmetric Key Cryptography

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191122