本文简介:目前,对文件加密主要有身份验证式密码加密和文件内容加密两种方式,前者容易被破解,后者相对比较安全。针对目前的加密方法“防频度统计法”破解能力较弱的特点,基于L0gistic混沌映射,我们提出了密钥以明文的不同而不同的随机生成法和加密算法的随机调用技术,从而提高了文件加密的可靠性。一、数据加密的原理所谓加密就是把有序的可理解的数据变换成无序的不可理解的数据,从而提高其在使用、保存和传送等环节上的安全
目前,对文件加密主要有身份验证式密码加密和文件内容加密两种方式,前者容易被破解,后者相对比较安全。针对目前的加密方法“防频度统计法”破解能力较弱的特点,基于L0gistic混沌映射,我们提出了密钥以明文的不同而不同的随机生成法和加密算法的随机调用技术,从而提高了文件加密的可靠性。
一、数据加密的原理
所谓加密就是把有序的可理解的数据变换成无序的不可理解的数据,从而提高其在使用、保存和传送等环节上的安全性的过程。保密通信机理如图1所示。
加密过程可表示为:C= Ek( M);解密过程可表示为:M= Dk(C)。M为明文;K为密钥;C为通过加密后的密文;E,D分别为加密算法和解密算法。
二、文件加密、解密的原理
从本质上来说,计算机中的文件可以看成是从文件头到文件尾的字节的集合.无论是DOS下的文件还是WINDOWS下的文件;无论是有文件头的文件还是没有文件头的;无论是可执行文件还是非可执行文件,都可以只是将它们看成字节流。要对文件加密,使得加密后的文件面目全非,其实就是要将文件的每个字节看成明文,然后用特定的密钥在加密算法的作用下将明文处理成密文。这样被加密后的文件的内容被破坏,不能正常使用,达到了加密的效果。
对文件加密和解密的示意图如图2所示。
三、混沌映射原理
混沌映射具有很好的性质,即非常相近的初始条件在进行了一定次数的迭代以后会生成两个截然不同的序列;不可由序列的本身预测将产生的下一个数值;而且生成的序列具有白噪声性,即等概率地分布在值域上。由于这些良好的性质,它非常适合于文件加密。
L0gistic迭代公式如下:
其中,参数a∈(0,4);X(n)∈(O,1),n=0,1,2,…。
由该映射产生的序列将呈现出混沌态。由于要将构成文件的一个一个字节加密,所以对生成的实数的集合{X(n)}还要处理成由整数构成的伪随机序列,从而用这些数做加密密钥或者加密算法的随机选择数。
四、基于混沌映射的多随机性文件加密算法
1、文件加密的要求
1)能对基于DOS和WINDOWS的文件加密。
2)对同一个文件,每次加密时,输入的密码不同,则采用不同的加密算法来加密。
3)对构成文件的一个一个字节加密时,要求密钥不同,从而避免被“频度统计法”解密。
4)要区分加密,对有文件头的,只加密前100个字节;对没有文件头的数据文件,全文加密。
2、常用加密算法
对字节流的加密和解密其实就是有规律地破坏和恢复数据,为了实现多种加密方法的随机调用,特设计如下几种加密方法。
1)加减法
将每个字节看成(0~255)之间的一个数,加密时将每个字节加M,解密时将每个字节减M,当然要考虑不能溢出。
2)求反法
将每个字节求反。变成其反码。
3)移位法
将每个字节循环左移M位。
4)替代法
将(0~255)这256个数构造一个换码表,形成一一对应的关系,加密时换码,解密时反换码。
5)异或法
将每个字节跟一个特定的字节M异或,解密时,再跟M异或就还原了。
6)错序文件头法
对于只加密文件头的情况,只要破坏了文件头中各字节的排列顺序,其结构就被破坏,从而达到加密的目的。如将奇偶字节交换位置。
3、加密方法的随机性实现
为了防止别人用“频度统计”的方法解密被加密的文件,对文件加密时,加密算法要随机调用。
本文基于L0gistic迭代公式混沌映射机制,加密算法的随机调用的思想为:
1)由用户输入的密码生成实数a和X(0);
2)利用公式迭代1 00次,求得X (IOO);
3)求得X (IOO)的小数点后的4,5,6位组成的整数Y;
4) Z=Y mc)cl 6,即将Y对6取余数,得到小于6的整数Z;
5)Z就是所求得的用以选择加密算法的伪随机数,0对应算法1;1对应算法2;依次类推。
4、密钥的随机性实现
密码和密钥是不同的,密码是用户对文件加密和解密的一个保密的字符串;密钥是由密码生成的一个在对明文加密过程中起作用的字符串。
假设对一个含文件头的文件加密,只加密前100个字节,要采用异或的方法加密。
为了防止有人对加密后的文件内容按照“频度统计法”解密,对每个字节加密的密钥字符应该不同,为此采用了基于L0gistic混沌影射的密钥生成方法:
1)由用户输入的密码生成实数a和X(0);
2)利用公式迭代2000次求得X (2000);
3)求得X( 2000)的小数点后的4,5,6位组成的整数Y;
4) Z=Y mc)cl 256,即将Y对256取余数,得到小于255的整数Z;
5)Z就是所求得的对第一个字节进行异或加密的密钥;
6)对X( 2000)再迭代5次,继续3,4步求得的Z就是对第二个字节进行异或的密钥;
7)对X( 2005)再迭代5次,继续3,4步求得的Z就是对第三个字节进行异或的密钥;
8)依次类推。
这样对100个字节虽然都是采用异或的方法加密,但是因为每个字节的密钥是各不相同的,所以加密后的密文没有规律可言,基本上不可能被解密。
5、密钥的传递
由于采用了对称加密机制,即加密和解密的密码是相同的,那么解密的时候必须知道加密时候的密码,只有密码正确才能解密。为此必须将加密时的密码(当然要做简单加密,防止别人用16进制工具查看文件中的字符串)保存在某个地方,以便解密时,将输入的解密密码和加密密码对比。
本文将处理过的密码加到被加密文件的尾部,又因为不能将未加密的文件错误解密,所以在被加密文件的尾部还增加了加密标志“#JIAMI#’’,形成了被加密文件的特定文件尾结构,如图3所示。
这样,每个被加密的文件处理后的密码和加密标志都追加到了尾部,解密时,只有判断出是被加密的文件并且用户输入的密码正确才解密,从而保证了解密程序不会因误操作而破坏那些没有加密的文件。
6、具体实现
本文件加密解密软件采用了VB编制,界面简洁友好,能实现各种文件的加密和解密,并且加密和解密的速度适中,能满足用户要求。加密后的文件,有文件头的不能再被相应的应用程序打开;没有文件头的纯数据文件被打开后都是乱码。达到了加密的目的。
小知识之字节流字节流(byte stream)是一种比特流,不过里面的比特被打包成一个个我们叫做字节(Bytes)的单位。
基于动态信任的内生安全架构
动态信任是一种新型的信息安全架构,近年来随着物联网、云计算和移动化等技术的发展而逐渐受到关注。传统的信息安全架构往往是建立在固定的信任模型之上,而动态信任则更加灵活和自适应,可以根据实际情况动态调整信任度,从而提高整个系统的安全性。本文将从以下几个方面来探讨基于动态信任的内生安全架构,包括动态信任的概念、功能特点、应用场景、实现方法等。
一、动态信任的概念
动态信任是指基于多方交互和数据分析,根据实时风险评估结果自适应调整信任度的一种信任模型。它与传统的访问控制模型不同,传统模型是基于身份验证和访问授权来限制访问权限的,而动态信任则更加注重实时风险评估和动态调整信任度。动态信任由于其灵活性和自适应性被广泛应用于物联网、云计算和移动化等领域,成为一种新型的内生安全框架。
二、动态信任的功能特点
1、实时风险评估
动态信任的核心是实时风险评估,通过对多方交互数据的分析、模型预测和机器学习等方法,从而实现对用户、设备、应用以及网络等方面的风险评估。同时,动态信任支持多种评估方法,可以根据实际情况选择不同的评估方法来评估系统的安全性。
2、动态调整信任度
动态信任可以根据实时风险评估结果自适应调整信任度,从而提高整个系统的安全性。例如,对于一个新的设备或应用,由于缺少足够的信任度,系统可以限制其访问权限,等到其表现良好后再逐步增加信任度。另外,在不同的应用场景中,可以根据不同的容错需求设置不同的信任阈值,从而更加灵活地调整系统的安全性。
3、安全事件的自适应响应
基于动态信任的内生安全框架可以根据实时风险评估结果自适应响应安全事件,例如实时阻断异常访问或异常信任行为等,从而保护整个系统的安全。另外,动态信任还可以实现安全威胁预警和安全日志审计等功能,为后续的安全事件响应提供支持。
三、动态信任的应用场景
基于动态信任的内生安全框架适用于物联网、云计算和移动化等领域,可以提高系统的安全性和稳定性。具体应用场景如下:
1、物联网领域
对于物联网场景,动态信任可以实现对设备、应用、用户等的实时风险评估和动态信任管理,从而保护整个物联网系统的安全。例如,可以基于设备的行为、属性等数据进行风险评估,判断设备是否存在安全风险,并进行相应的防御措施。
2、云计算领域
对于云计算场景,动态信任可以实现对用户、应用、网络等的实时风险评估和自适应调整信任度,从而提高整个云计算系统的安全性和稳定性。例如,可以根据用户的访问情况和应用的行为数据等进行风险评估,判断用户和应用是否存在安全风险,并相应的限制其访问权限。
3、移动化场景
对于移动应用场景,动态信任可以实现对应用、用户等的实时风险评估和自适应调整信任度,从而保护整个移动应用系统的安全。例如,可以根据应用的行为数据、用户的位置信息等进行风险评估,判断应用和用户是否存在安全风险,并相应的限制其访问权限。
四、动态信任的实现方法
基于动态信任的内生安全框架的实现方法主要包括以下几个方面:
1、机器学习技术
机器学习技术可以实现对多方交互数据的分析和预测,进而实现实时风险评估和动态信任管理。例如,可以使用支持向量机、神经网络、朴素贝叶斯等算法对数据进行分类和预测,从而实现安全风险评估。
2、分布式计算技术
分布式计算技术可以实现对大规模数据的分析和处理,多种评估方法的实现和系统的扩展性等。例如,可以使用MapReduce等分布式计算技术来实现大规模数据的分析和处理,从而提高系统的效率和准确性。
3、安全日志管理技术
安全日志管理技术可以实现对安全事件的记录、分析和响应等功能,从而提高系统的安全性和稳定性。例如,可以使用SIEM技术来实现安全事件的实时监测、分析和响应,从而提供相应的安全保障。
总之,基于动态信任的内生安全框架是一种新型的信息安全架构,其具有灵活性和自适应性等特点,可以根据实际情况动态调整信任度,提高整个系统的安全性。在物联网、云计算和移动化等领域具有广泛的应用前景,同时也面临着各种技术挑战和安全威胁。因此,我们需要进一步探索动态信任技术的研究和应用,并积极探索基于动态信任的内生安全框架的实现方法和应用策略,从而实现网络信息安全的可靠保障。
本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。/cjwt/16336.html