CN113656816B - 一种文本加密方法 - Google Patents
一种文本加密方法 Download PDFInfo
- Publication number
- CN113656816B CN113656816B CN202110930639.XA CN202110930639A CN113656816B CN 113656816 B CN113656816 B CN 113656816B CN 202110930639 A CN202110930639 A CN 202110930639A CN 113656816 B CN113656816 B CN 113656816B
- Authority
- CN
- China
- Prior art keywords
- byte
- private key
- bits
- key factor
- ascii
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
- Document Processing Apparatus (AREA)
Abstract
一种文本加密方法,原文本增噪,私钥变换,接着原文本与私钥两者混合在一起加密,再变化成可见文字,最后增加校验码,加密后的密文支持解密还原;算法步骤如下:计算私钥因子:通过分段异或算法,将私钥字串转换成私钥因子,简称PF;按序给每个bit位增噪:将原文本按序分解成字节byte,按bit位向右移动1位,原文本某字节byte的最后一位转移至下一字节byte的最高位;转换后的字串为SM;加密私钥和私钥因子长度。待加密原文可以包含不可见字符。加密过程中主要运用了位运算,加密后的文字呈现为可见文字,且包含校验码。可通过调整输入参数来提升安全级别。
Description
技术领域
本发明涉及文本加密技术,可应用在数据库字段加密、登录密码加密、License生成等场景下。
背景技术
随着网络安全法的实施,政府和企业单位高度重视主机安全、***安全和网络安全。在网络安全中,比较重要的措施是数据加密。网络连接了越来越多的终端,各终端存储了各种各样的数据。有些数据通过http协议经认证后向用户开放,有些数据只向内网开放。由于网络的存在,只要攻破网路,就可能获得机密数据。在网络传输的数据,如果传输过程中被截获,很容易造成数据泄露。而数据加密为网络安全增加了一道安全屏障,只有拥有解密钥匙,且知晓算法的人才可以真正明白所获数据的含义。
利用各自的私钥因子来通过计算获知公共密钥对,来产生公共随机性。设置的过程需运行一次。生成:设置后,节点切换到持续性的随机性生成模式。信息安全上是通过私钥因子矩阵与公钥因子矩阵的映射算法来获得有关信息的加密与解密。
CN200610115754.7一种基于标识的组合密钥管理方法和***。该方法包括步骤:根据密钥因子矩阵参数控制装置生成密钥因子矩阵的划分参数,将密钥因子矩阵划分为多个密钥因子分矩阵,并由所述多个密钥因子生成装置保存所述多个密钥因子分矩阵中的私钥因子分矩阵;密钥因子生成装置根据与身份标识对应的行列标映射组合计算私钥因子分量,并将该私钥因子分量发送给密钥分发装置;密钥分发装置根据接收到的与所述身份标识对应的所有私钥因子分量计算出相应的私钥。通过本发明,可分散生成与保管私钥因子矩阵;实现相互制约的密钥托管,避免了权利的误用;各个密钥因子生成装置分别保管各自的秘密,增强了***的安全性和可靠性;可以实现大规模的密钥管理。
CN2019106009801基于SM2算法的私钥处理方法、终端及密钥中心,解决了现有技术中在开放环境下私钥的安全保护问题。所述方法应用于密钥中心,所述方法包括:接收客户端的密钥申请消息,所述密钥申请消息中包括所述客户端的密钥标识和第一私钥因子;根据密钥生成规则,得到所述密钥标识对应的私钥;根据所述密钥标识对应的私钥和所述第一私钥因子,得到第二私钥因子;将所述第二私钥因子发送至服务器端,以便所述服务器端加密存储所述第二私钥因子。本发明实施例适用于在开放环境下私钥的分散存储和使用过程。
发明内容
本发明的目的在于,提供一种应用在数据库字段加密、登录密码加密、License生成等场景下的文本加密方法。
本发明的技术方案是,一种文本加密方法,其特征在于,原文本增噪,私钥变换,接着原文本与私钥两者混合在一起加密,再变化成可见文字,最后增加校验码,加密后的密文支持解密还原;加密方法,算法步骤如下:
[S01]计算私钥因子:通过分段异或算法,将私钥字串转换成私钥因子,简称PF;
[S02]按序给每个bit位增噪:将原文本按序分解成字节byte,按bit位向右移动1位,原文本某字节byte的最后一位转移至下一字节byte的最高位;转换后的字串为SM;
[S03]PF和SM混合加密:PF可以是一个字节,也可以是多个字节;SM与PM按顺序依次异或;
[S04]多规则变换为可见字符串:
6)如果字节是ascii字符0-9,则分别变换为ascii字符a-j;
7)如果字节高低四位数值均为0,则变为赋值为ascii字符k;
8)如果低四位为0,高四位不为0,则按照高四位数值1-15分别对应变为ASCII小写英文字母lmnopqrstuvwxyz;
9)如果高四位为0,低四位不为0,则按照低四位数值1-15变为ascii字符A-O;
10)如果高低四位全部不为0,则高四位按照数值1-15变为ascii字符123456789PQRSTU;低四位做同样变换,即1-15变为ascii字符123456789PQRSTU;
[S05]增加校验码:
以第S04步输出所有字节为基础,按字节分别异或后,得出一个字节,生成2个16进制码;
[S06]输出密码:S04和S05前后合并后,生成最终密文;
解密方法,算法步骤如下:
[D01]分离出校验码,记为OldCheckCode
取出最后两个字符,两个字符必须是16进制代码,否则停止解密;
以16进制方式转换换成byte,比如最后两个字符是2C,转后成从10进制数值为44。
[D02]重新生成校验码,记为NewCheckCode
在D01步骤中,截去掉最后两个字符后,剩余字符串(记为EncryptCode)从前到后按字节进行异或运算,最终生成校验码;
[D03]完整性验证
当NewCheckCode和OldCheckCode一致时,初步证明密文未被篡改;否则表明输入的密文已被篡改,或者不是密文;
[D04]对EncryptCode进行一次转换,从字符和数字码变换成二进制码
从左向右按字节逐个转换还原,
1)当字节数值为ASCII a-j时,转换为ASCII 1-9;
2)当字节数值为ASCII k时,转换字节值为0;
3)当字节数值为ASCII l-y时,转换成高四位不为0,低四位为0的字节;
4)当字节数值为ASCII A-O时,转换成高四位为0,低4位不为0的字节;
5)当字节数值为ASCII 123456789PQRSTU时,当前字节转换成高四位,下一字节转换成低四位的字节。
[D05]求出私钥因子;
[D06]每个字节与私钥因子做异或运算;
[D07]降噪还原,各bit位向左移动一位;
[D07]转换成原文:把字节码转换成字串。
有益效果:本发明加密过的密文,支持解密还原。在安全方面,S01生成的私钥因子越长,越安全。加密过程中主要运用了位运算,加密后的文字呈现为可见文字,且包含校验码。可通过调整输入参数来提升安全级别。
附图说明
图1:私钥原文变换为私钥因子原理图;
图2:将原文按bit位增噪原理图;
图3:混合加密原理图;
图4:多规则变换可见字符原理图。
图5授权软件图;
图6流程图。
具体实施方式
图1,首先确认私钥因子字节数,然后以私钥因子字节数将私钥原文按byte分段,首段byte与其他各段异或后,生成私钥因子。
最后修正私钥因子各字节,当高四位为0时,变更为二进制1010;当低四位为0时,变更为二进制0110。
图2,本发明增噪流程:私钥原文byte字节各二进制位(bit)向右移动一位,最后字节的二进制末尾移至第一个字节二进制首位。将原文按bit位增噪原理图)
图3:混合加密原理图,,已增噪原文和私钥因子PF依次异或后,生成加密二进制码。
图4:多规则变换可见字符原理图,将已加密的二进制数据按字节分类转换成可见字符。最后再增加校验码,附在已转换可见字符串的最后。具体校验方法见[D01][D02][D03]。
1)生成软件***License
①授权原文
有效期至:2022-08-31
授权给:南京联创数据科技有限公司
***名称:网络安全防护***
授权数量:5
②授权密文:
1T1U9UP4149P9R97262PTTTUTTTTT16UTQT16T6U72929P93P3PQ8QP62P95t28P31722PSPS928928992814P9P99T1Ut18PQ221228U2t2S112T16J2T14P62P91K96842UPT93P22R17PP25t2S112T72929P93P392891728262PTS08
③授权密文美化:
LICENSEBEGIN1T1U9UP4149P9R97262PTTTUTTTTT16UTQT16T6U72929P93P3PQ8QP62P95t28P31722PSPS928928992814P9P99T1Ut18PQ221228U2t2S112T16J2T14P62P91K96842UPT93P22R17PP25t2S112T72929P93P392891728262PTS08ENDLICENSE
④软件授权:如图5所示。
文本加密方法,原文本增噪,私钥变换,接着原文本与私钥两者混合在一起加密,再变化成可见文字,最后增加校验码,加密后的密文支持解密还原;
加密方法,算法步骤如下:
[S01]计算私钥因子:通过分段异或算法,将私钥字串转换成私钥因子,简称PF。
分段异或算法:
1)将私钥按私钥因子长度分段,缺失部分补充0
比如:私钥为98%op%$#Z1,假设私钥因子长度预设为3时,以每3字节对私钥进行分段,最后一段用0补齐,如下所示:
98%op%$#Z 100
2)将各段按位异或运算,输出私钥因子
98%异或op%异或$#Z异或100,最后得出三字节私钥因子
异或后生成的私钥因子
私钥因子 | 对应16进制 | 对应二进制 |
C[j | 43 5B 6A | 01000011 01011011 01101010 |
[S02]按序给每个bit位增噪:将原文本按序分解成字节byte,按bit位向右移动1位,原文本某字节byte的最后一位转移至下一字节byte的最高位;转换后的字串为SM;
[S03]PF和SM混合加密:PF可以是一个字节,也可以是多个字节;SM与PM按顺序依次异或;
[S04]多规则变换为可见字符串:
11)如果字节是ascii字符0-9,则分别变换为ascii字符a-j;
12)如果字节高低四位数值均为0,则变为赋值为ascii字符k;
13)如果低四位为0,高四位不为0,则按照高四位数值1-15分别对应变为ASCII小写英文字母lmnopqrstuvwxyz;
14)如果高四位为0,低四位不为0,则按照低四位数值1-15变为ascii字符A-O;
15)如果高低四位全部不为0,则高四位按照数值1-15变为ascii字符123456789PQRSTU;低四位做同样变换,即1-15变为ascii字符
123456789PQRSTU;
[S05]增加校验码:
以第S04步输出所有字节为基础,按字节分别异或后,得出一个字节,生成2个16进制码。
[S06]输出密码:S04和S05前后合并后,生成最终密文。
本发明解密方法,算法步骤如下:
[D01]分离出校验码,记为OldCheckCode
取出最后两个字符,两个字符必须是16进制代码,否则停止解密。
以16进制方式转换换成byte,比如最后两个字符是2C,转后成从10进制数值为44。
[D02]重新生成校验码,记为NewCheckCode
在D01步骤中,截去掉最后两个字符后,剩余字符串(记为EncryptCode)从前到后按字节进行异或运算,最终生成校验码。
[D03]完整性验证
当NewCheckCode和OldCheckCode一致时,初步证明密文未被篡改;否则表明输入的密文已被篡改,或者不是密文。
[D04]对EncryptCode进行一次转换,从字符和数字码变换成二进制码
从左向右按字节逐个转换还原,
1)当字节数值为ASCII a-j时,转换为ASCII 1-9;
2)当字节数值为ASCII k时,转换字节值为0;
3)当字节数值为ASCII l-y时,转换成高四位不为0,低四位为0的字节;
4)当字节数值为ASCII A-O时,转换成高四位为0,低4位不为0的字节;
5)当字节数值为ASCII 123456789PQRSTU时,当前字节转换成高四位,下一字节转换成低四位的字节。
[D05]求出私钥因子;
[D06]每个字节与私钥因子做异或运算;
[D07]降噪还原,各bit位向左移动一位;
[D07]转换成原文:把字节码转换成字串。
加密方法中,待加密原文中可包含不可见字符,适合制作license字串。
私钥因子越长,越不容易破解,安全性越高。假设私钥因子是10字节,破解尝试25610次,合计1208925819614629174706176次,基本不可能被破解。
密文是可见文字,在转变成可见文字过程中,没有采用16进制码呈现,而是采用字节数据不同分别转换为不同码段字符的方法。
Claims (2)
1.一种文本加密方法,其特征在于,私钥变换,原文本增噪,接着原文本与私钥两者混合在一起加密,再变化成可见文字,最后增加校验码,加密后的密文支持解密还原;算法步骤如下:
[S01]计算私钥因子:通过分段异或算法,将私钥字串转换成私钥因子,简称PF;私钥字串转换成私钥因子的方法为:密钥、密钥因子长度、密钥因子三者密切相关;根据密钥和密钥因子长度,通过分段异或,生成密钥因子:
首先确认私钥因子字节数,然后以私钥因子字节数将私钥原文按byte分段,首段byte与其他各段异或后,生成私钥因子;
最后修正私钥因子各字节,当高四位为0时,变更为二进制1010;当低四位为0时,变更为二进制0110;
[S02]按序给每个bit位增噪:将原文本按序分解成字节byte,按bit位向右移动1位,原文本某字节byte的最后一位转移至下一字节byte的最高位;转换后的字串为SM;
[S03] PF和SM混合加密:PF是一个字节,或是多个字节;SM与PF按顺序依次异或;
[S04]PF和SM混合加密后的字节多规则变换为可见字符串:
1)如果字节是ASCII字符0-9,则分别变换为ASCII字符a-j;
2)如果字节高低四位数值均为0,则变为赋值为ASCII字符k;
3)如果低四位为0,高四位不为0,则按照高四位数值1-15分别对应变为ASCII小写英文字母lmnopqrstuvwxyz;
4)如果高四位为0,低四位不为0,则按照低四位数值1-15变为ASCII字符A-O;
5)如果高低四位全部不为0,则高四位按照数值1-15变为ASCII字符123456789PQRSTU;低四位做同样变换,即1-15变为ASCII字符123456789PQRSTU;
[S05]增加校验码:
以第S04步输出所有字节为基础,按字节分别异或后,得出一个字节,生成2个16进制码;
[S06] 输出密码:S04得到的可见字符串和S05得到的校验码前后合并后,生成最终密文;
解密方法,算法步骤如下:
[D01] 分离出校验码,记为OldCheckCode;
取出最后两个字符,两个字符必须是16进制代码,否则停止解密;
以16进制方式转换换成byte;
[D02] 重新生成校验码,记为NewCheckCode;
在D01步骤中,截去掉最后两个字符后,剩余字符串、记为EncryptCode,从前到后按字节进行异或运算,最终生成校验码;
[D03] 完整性验证,当NewCheckCode和OldCheckCode一致时,初步证明密文未被篡改;否则表明输入的密文已被篡改,或者不是密文;
[D04] 对EncryptCode进行一次转换,从字符和数字码变换成二进制码;
从左向右按字节逐个转换还原,
1)当字节数值为ASCII a-j时,转换为ASCII 0-9;
2)当字节数值为ASCII k时,转换字节值为0;
3) 当字节数值为ASCII l-z时,转换成高四位不为0,低四位为0的字节;
4)当字节数值为ASCII A-O时,转换成高四位为0,低四位不为0的字节;
5)当字节数值为ASCII 123456789PQRSTU时,当前字节转换成高四位,下一字节转换成低四位的字节;
[D05] 求出私钥因子;
[D06] 每个字节与私钥因子做异或运算;
[D07] 降噪还原,各bit位向左移动一位;
[D08] 转换成原文:把字节码转换成字串。
2.根据权利要求1所述的文本加密方法,其特征在于,加密方法中,待加密原文中能包含不可见字符,适合制作license字串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110930639.XA CN113656816B (zh) | 2021-08-13 | 2021-08-13 | 一种文本加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110930639.XA CN113656816B (zh) | 2021-08-13 | 2021-08-13 | 一种文本加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113656816A CN113656816A (zh) | 2021-11-16 |
CN113656816B true CN113656816B (zh) | 2022-08-05 |
Family
ID=78479886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110930639.XA Active CN113656816B (zh) | 2021-08-13 | 2021-08-13 | 一种文本加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113656816B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996298A (zh) * | 2009-08-14 | 2011-03-30 | 鸿富锦精密工业(深圳)有限公司 | 加密方法及与加密方法相对应的解密方法 |
CN109412799A (zh) * | 2018-12-21 | 2019-03-01 | 北京思源互联科技有限公司 | 一种生成本地密钥的***及其方法 |
CN110768785A (zh) * | 2019-10-22 | 2020-02-07 | 宜人恒业科技发展(北京)有限公司 | 一种编、解码方法、相关装置及计算机设备 |
-
2021
- 2021-08-13 CN CN202110930639.XA patent/CN113656816B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996298A (zh) * | 2009-08-14 | 2011-03-30 | 鸿富锦精密工业(深圳)有限公司 | 加密方法及与加密方法相对应的解密方法 |
CN109412799A (zh) * | 2018-12-21 | 2019-03-01 | 北京思源互联科技有限公司 | 一种生成本地密钥的***及其方法 |
CN110768785A (zh) * | 2019-10-22 | 2020-02-07 | 宜人恒业科技发展(北京)有限公司 | 一种编、解码方法、相关装置及计算机设备 |
Non-Patent Citations (1)
Title |
---|
《基于AES和RSA组合算法的软件加密***的研究与应用》;卜晓燕;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20080915;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113656816A (zh) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11516201B2 (en) | Encryption and decryption techniques using shuffle function | |
US8892881B2 (en) | Split key secure access system | |
CN106506487A (zh) | 一种信息加、解密方法及装置 | |
JP2004534333A (ja) | コンピュータネットワークにおける分散データ処理に関する統合された保護方法及びシステム | |
CN110138739B (zh) | 数据信息加密方法、装置、计算机设备及存储介质 | |
CN107528689B (zh) | 一种基于Ukey的密码修改方法 | |
KR102011043B1 (ko) | 양자 키 분배 기반 디지털 서명 방법 및 이를 수행하는 시스템 | |
CN112069547A (zh) | 一种供应链责任主体身份认证方法及*** | |
CN113711564A (zh) | 用于加密数据的计算机实现的方法和*** | |
CN114978525B (zh) | 基于bim的数据安全认证方法及*** | |
CN110365468B (zh) | 匿名化处理方法、装置、设备及存储介质 | |
CN107241184A (zh) | 基于改良aes的个人密码生成和管理方法 | |
CN112738051A (zh) | 数据信息加密方法、***及计算机可读存储介质 | |
CN102222188A (zh) | 一种信息***用户密码的生成方法 | |
CN116108410A (zh) | 一种身份凭证生成方法及装置 | |
CN112235104A (zh) | 一种数据加密传输方法、***、终端及存储介质 | |
CN115276978A (zh) | 一种数据处理方法以及相关装置 | |
Yevseiev et al. | The development of the method of multifactor authentication based on hybrid cryptocode constructions on defective codes | |
CN113656816B (zh) | 一种文本加密方法 | |
JP4350961B2 (ja) | データ処理装置 | |
CN116866029B (zh) | 随机数加密数据传输方法、装置、计算机设备及存储介质 | |
CN111431721A (zh) | 一种智能医疗环境下基于ibe的物联网设备加密方法 | |
CN113449338B (zh) | 基于区块链的信息加密存储方法及*** | |
CN113343269B (zh) | 一种加密方法及装置 | |
CN114598478B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |