- 博客(59)
- 资源 (25)
- 收藏
- 关注

原创 利用计算机内部计数器生成真随机数原理及实现
一、手动产生随机数方法 计数器是精密器件不能直接产生随机数,但可以让其为产生随机数服务。每个计算机都有其工作频率称为主频,与之相对应的是时钟周期,下面的程序段DWORD n;_asm//嵌入汇编语言{rdtsc//读计数器值mov n,eax//计数器低位值进入n} 的作用是读取自开机以来CPU经历的时钟周期数的低32位数值(高位值变化缓慢在此无用)放到变量 n中,每调用一次 n的数值等于其现
2010-02-22 06:56:00
1855
原创 文件加密与自毁长城
文件加密软件是保护文件的,可是多数此类软件,也在无形中帮助了窃密者,否则可靠性要更高些。大家知道有一些利用软件自身运算能力的破解方式,穷举法、字典攻击、暴力破解都是这一类的,就是用试解的方式进行攻击。这样的文件加密软件,如果接受的正确的密码,就像锁一样啪的一声开了,并显示出与解密失败时完全不同的界面,这就让破解者省事了,只要拿不同的数据当作密码去试就行了,监视页面的变化就知道是否破
2020-03-05 15:55:30
3597
5
原创 RSA流密码互补加密
RSA加密具有非对称性可以完成诸如数字签名及验签之类的事情,这是对称密码所不能完成的,但是能加密的内容很少速度较慢,且密钥冗长不便于使用。而流密码加密是一种对称加密简单并且安全性很高,且速度很快能加密的信息量很大。如果将两者结合起来就能做出一种能完成数字认证又能快速加密大量信息的软件。 实际上只要简单的让两者都参与加密即可,RSA的参与使加密具有了不对称性,流密码的参与形成了坚实的加密,这...
2019-09-18 20:41:52
363
原创 人造的和天然的随机数
提起真随机数,人们往往认为:“真正的随机数是使用物理现象产生的:比如掷钱币、骰子、转轮、使用电子元件的噪音、核裂变等等,这样的随机数发生器叫做物理性随机数发生器,它们的缺点是技术要求比较高。 ----百度百科”,这种认识实际是一种偏见,或成见。 不借助于物理设备也是可以生成真随机数的。所谓真随机数,实际说的是随机数组,真随机数的定义是其元素不可预测,不可重复产生,说现实中真随机数...
2019-03-30 10:36:58
582
原创 随机函数加密信息
随机函数所生成的数据的随机性并不太好,这是由于其生成机制所造成的,例如数据生成于同样的公式或条件,被称为伪随机数,要想将数据当成密钥,人们觉得那是不可靠的,就是因为其不够随机,前面的帖子也说过如何将不够随机的数组通过随机排序改造成随机数组的方法,但是实际上并无必要,因为具体应用时,这些数据并不是单独出现的,而且还通过了数据加工最后的结果体现在密文了,所以你从为随机数组的随机性不好这些缺陷得不到...
2019-03-05 13:37:38
205
原创 真随机数发生
我们希望建造真随机数组,有两种方法一种是采集,一种是自造。一、采集法建造真随机数 这需要有产生随机数的物理环境,例如环境噪声,宇宙射线计数等等需要专门的设备在此就不讨论了,利用计算机本身的一些随机事件,也能采集到真随机数,但是效率太低,不能快速的得到大量的随机数,所以不适于应用。二、自造方法 真随机数并不神秘,只是些分布均匀的乱码而已。要办到这些需要现成的随机源,例如庞大的乱码库,...
2018-12-08 21:56:42
711
原创 加密算法和加密方法
好的算法可以对抗分析法攻击,但仍然是不安全的,因为攻击者可以用穷举法,因为用户密码是有限的,所以只要有足够的时间都是可以攻破的。这是明文有特征的情况,但是如果明文无特征你就无法攻击了,因为你连目标是什么东西都不知道就没有办法进行判断和攻击。所以说光有好的算法是不够的,还要有好的方法。 好的方法也就是对抗攻击的策略,利用现有条件使安全性最大化,多次加密就是实现安全加密的好方法,最简单的就是二...
2018-11-16 16:01:15
383
原创 安全加密
机密的东西为了安全起见,对其进行加密,所谓安全加密是指不能被破解的加密。 有人认为凡是加密都能被破解,那是愚见。能被破解都是自己不严谨造成的。 加密实际就是一种数值变换,一般都是制作一些随机数组作为密钥进行加密的,密钥数组的质量很重要,如果密钥数组能通过NIST检测就算是比较好的。 先看下面的例子:有一个乱码组成的文件,我们对这个文件进行加密,结果依然是乱码。这样的文件就是不可破解...
2018-10-30 19:41:50
1009
原创 报告解密结果是加密软件的一大漏洞
被加密数据千差万别,有的数据从外表也许能看出是什么东西,但大多数是看不出的,其实也没有必要看是什么东西,而加密的作用是使被加密数据变形了变成另外的数据形式,解密就是数据还原原来的形式,由于密码的不同被加密的状态也不同,这里被加密信息是一种空间,作为工具的密钥数组是一种空间,形成的密文是一种空间,各个空间都有无数的状态,如果没有偏颇实际的被加密信息和密钥数组都只是一种机缘巧合的产物,生成的密文相...
2018-10-11 10:58:55
855
原创 另类密码输入法——多点输入
一般文件加密软件的密码输入框只有一个,这是一般的情况,也就是一点输入只有一个输入口。顾名思义多点输入就是多个点输入。虽然只是这一点差别,抗攻击的作用却不一般。 实际通过键盘输入密码局限性很大,现在文件的文件结构都是由字节数组或其一部分构成的,也就是由256个元素或其中一部分构成,输入的密码只能是键盘能够接受的ASCII码,加上汉字输入法能输入的汉字等,一共也就能用到180左右个ASCII码...
2018-10-07 04:20:46
696
原创 另类密码输入法——关联法
此方法的特点是操作简单,容易记忆,抗穷举攻击,保密性强。你甚至不需要使用键盘,只用鼠标点击就完成了文件加密、解密的工作。 原理是:让用户选择一些关联文件,程序从这些关联文件中得到一些数据,然后以这些数据为基础,营造出密钥数组,从而完成加密、解密。对关联文件没有多少要求,只要别太小了不是空文件即可。如果关联文件是不可读的程序会改变其属性读完后恢复其原属性。只要是稳定存在于磁盘的文件,不经常删...
2018-10-04 08:28:30
305
原创 一次一密密码本方式的现代应用
一次一密密码本加密已经有100年的历史了,下面尝试将此加密方法用于现在,当然不再局限于26个字母作为元素的范围,而是以字节为单位256个元素,以适合现在信息加密的需要。 一次一密密码本适用于两地通讯的信息加密,两地的密码本是完全一样的,并且每加密长度为 L字节的文件,密码本就要损失 L字节,直到密码本消耗完毕。 实现加密、解密都很容易,关键是密码本的处置,如果有U盘最好放在那里并只在加...
2018-09-27 22:09:27
1594
原创 流密码文件加密
文件加密不同于实时通讯加密在速度上要求不高,所以密钥数组可以做得更强大一些,这也就避免了什么流密码密钥混乱程度不够的偏见,要想信息安全密钥数组要做到唯一性,独一无二的密钥数组只能用一次,这样就避免了已知明文攻击的阴影。但是如果用户使用了相同的密码,如果生成密钥的方法固定仍然可以形成相同的密钥数组,这可以用一下两种方法解决:1)让加密软件自己生成用户密码,这样可以产生出随机性很强的用户密码,几乎没有
2017-08-21 18:51:35
694
原创 一次一密文件加密程序
安全加密是什么概念?它加密的东西你就是动用所有计算能力,使用无限长的时间也无法破解的。 只有至少一次一密才能达到安全加密的目的,那种由少量用户密码参与即使密钥数组全部是真随机数也是不安全的,因为限制了密钥空间也就是不能复现所有状态状态的概率不一样,所以能使穷举攻击等有效,而一次一密时所有状态是等概率的所有攻击都是无效的。这里的尝试是在现有条件下如何较为高效的使用此项加密技术,达到安全
2017-06-06 20:27:57
756
原创 大众密码学
分组密码实际很不科学,限制了基础密钥的长度,为穷举攻击提供方便,靠提高分组长度来提高保密性也是很消极的,随着计算速度的增加更加凹显了这种趋势。所以建议淘汰这类算法。 流密码就没有这样的缺陷,用户密码长度不受限制长一些穷举攻击就是白费力气,技术关键是做出元素之间毫无关联的密钥数组,这样就能抗拒任何分析破解的企图,达到数据的安全可靠。简单实用的密码技术,不需要高深的数学基础,安全可靠的实现信息加密。
2015-05-17 07:27:03
1537
原创 32位无符号随机函数
这里公布一个新近研发的随机函数,随机性和均匀性都是很好的。因周期太大设备能力有限现在还无法测知。欢迎大家多提意见。 一、函数及全局变量定义unsigned int SJhs(); //随机函数void CSHhs(char*zz); //初始化函数char* Zy(char *s1,char *s2,int N,int n);//N字节数组序列号左移n次函数int kk
2013-11-19 13:47:37
2248
原创 812加密算法——欢迎大家指正
这是本人开发的一款文件加密算法,欢迎大家挑毛病,指出其缺陷。谢谢!算法原理: 采用流密码,独立密钥加密,首先造一个元素均匀的初始密钥串,然后用随机函数等对其做随机排序处理得到密钥串,用其加密解密即可。根据热力学第二定律,随机排序只能使排序向着混乱的方向发展而不能向相反方向发展,这样就达到了密钥串的无序化、无规律化,从而可以作为密钥使用。
2013-08-22 10:05:53
1621
原创 欢迎破解——按不可破解模式制作的文件加密软件
这里展示的文件加密软件,其特点是被它加密的文件将不可破解,其实达到这一点并不难,只要加密用的密钥数组是独立的未知变量即可,并且计算是不可逆的,所以关键就看你数据变换的方法了,有了好方法实现不可破解就是很轻松的事。欢迎您来印证我说的话。 实际展示的软件所用的方法加密强度是可以控制的,这里只是强度最低的形式,还可以加强许多许多,但笔者认为实现不可破解已经足够了。
2013-08-03 22:18:05
1280
原创 流密码密钥库文件加密探索
这里的加密方式是对称密码中的流密码方式,结合密钥库完成对文件的加密或解密。使用密钥库的好处是: 1)因为加密有密钥库的间接参与,没有它解密是绝对不可能的,所以对于处于传输状态的孤立密文,可以确保其安全,如果密钥库做的较大,企图破解者想要得到也比较费事。 2)密钥库较大,容易实现一明文一密钥的加密方式,甚至一明文二密钥,所以加密强度高。配合使用大周期随机函数,破解的可能性很小。
2012-12-26 06:45:25
824
原创 半自动密码输入技术
在文件加密软件中,用户输入少量密码(3、5个),确认输入后,加密程序自动将这几个密码补足为多位密码,例如30位或者更多位。密码的补足部分是根据用户输入的那几位密码通过随机函数或CRC算法或哈希函数衍生出来的。 1)由于衍生出的密码有很大的随机性看上去和乱码一样,可以提高用户密码的质量杜绝白痴密码的输入,提高加密强度。 2)由于密码位数多。穷举攻击将无法取胜。程序能很轻易的提高密码位数,
2012-12-13 09:50:35
574
原创 穷举法的末路——致文件加密软件作者
现在网上盛传某种利用显卡GPU(“图形处理器)协助穷举攻击的说法。说是比CPU的处理速度高出千百倍云云。 其实穷举法之所以可以横行是加密软件自身缺陷造成的,如果没有这些缺陷穷举攻击并没有什么可怕之处。这种缺陷实际上是很合情合理的产生的,加密软件一般是这样做的,用户密码来了,检查一下密码是否正确,如果密码错误则告诉用户,好让其重新输入,密码正确则向下运行进行解密工作等。 正是这种检查密码
2012-11-26 11:47:43
832
原创 《不可破解文件加密程序设计》帖中所附的软件为何不可破解?
首先一个原因程序没有密码正误的检测,许多软件有这种东西,检测密码的正误,发现密码错误给出提示,密码正确则向下运行。这样似乎很合理实际是将自己出卖了,因为破解者可以用穷举法、字典攻击等利用你的程序攻击你,如果文件较大解密是要花费时间的,但密码检测却能快速的查出密码是否正确,所以能够帮助破解者迫害你自己,多么可悲的事啊。本程序则是不做此检测,只要密码符合基本要求(如字节数长度等)就可以向下运行,密码正
2012-09-06 10:03:24
866
原创 不可破解文件加密程序设计
不可破解文件加密的原理在“不可破解文件加密方案”帖子里说明了,任何人都可以依据此方法做出不可破解的文件加密软件,这里是笔者的一种尝试。 首先是如何得到真随机数,笔者已在多个帖子里介绍了多种方法,就不在此多述了。由于是加密软件首先要求输入用户密码,密码至少5个字节多则不限,然后选择加密或解密。 程序得到密码后,根据密码用随机函数算出一些参数,这里称为密码相关参数共八个32位无符号整形数,
2012-09-06 10:00:15
1025
原创 不可破解文件加密方案
加密 1.得到明文,建立等长真随机数的密钥文件 2.明文+密钥=密文 3.加密密钥文件得到密密钥文件 4.密文和密密钥文件进入传播或存储解密 1.得到密文和密密钥文件 2.解密密密钥文件得到密钥文件 3.密文-密钥=明文 参照一次一密乱码本方式设计本程序。明文用真随机数加密,形成密文。密钥文件用随机函数加密,并且独立存在。这里密钥文件本身是乱码堆
2012-09-06 09:57:21
1194
原创 随机函数直接用于加密及其破解
随机函数作为密钥 随机函数直接加密是指直接用随机函数的生成值作为密钥或密钥的一部分参与文件加密。我们知道只要为随机函数设定好种子,运算一次随机函数就可以产生一个新的函数值,这些数值可以直接或通过计算作为密钥来加密明文,它可以乘上一个非零的系数或者再加一个常数项作为密钥。解密则是加密的逆运算。破解随机函数的加密 通过阅读程序可以知道加密使用什么随机函数,如果是直接加密(密钥无参数
2012-01-15 21:24:37
1121
原创 利用winrar安全加密
利用winrar加密很容易,但是如果方法不当还是不安全的,例如密码字符个数过少,字符过于常用,尤其是只使用数字更是危险,破解者不用费多大力气就可以破解了。 要实现安全加密也很容易,只要增加密码字符个数即可,但问题又来了,字符多了就不好记住了,怎样做到又安全又好记呢?
2011-08-01 06:26:24
1312
原创 用随机函数生成无周期随机序列(数组)
随机函数生成的随机数是有周期、有规律的(源于同样的算式)。用随机函数辅助生成没有周期、没有规律的(或者很难找到规律)序列值是很有意义的,密码学需要这样的序列(数组)。
2010-11-18 11:08:00
1524
1
原创 文件加密——外盐法及其应用
在文件加密软件里使用加盐值技术,可以大大提高密文的抗攻击能力。这里说一种加盐值的方法和以往的不同,主要是盐值存放的地方不同,以往的加盐是将盐值存放在密文中,而这里是将盐值让用户保存,解密时让用户输入到特定的位置。当然这需要对作为盐值的随机数进行筛选让其是可显示可输入的字符或汉字。 工作原理:用户输入密码后,选择好明文,程序随机产生几个随机数并改造成盐值,盐值和用户密码一同参与加密明文的运算,
2010-05-28 20:24:00
884
原创 尝试文件安全加密
这里我们尝试安全加密,下述方法可能有漏洞、也可能有冗余的操作,欢迎批评指正。一、文件加密 a.得到密钥 对密钥的要求是真随机数组,这些数据从来没有展示过,并且在第一次使用完后立即销毁。真随机数可以来自专用的发生器、或采自随机的物理事件,在使用前再做一次检验,发现不均匀或者有连续0等严重缺陷加以修补。 b.加密明文 首先需要得到用户密码,用户密码的作用是控制程序流程,随意选取一段和明
2010-05-15 13:48:00
677
原创 浅说一次一密乱码本加密
这种加密方式简单实用是唯一不可破解的安全加密,下面看看它为什么能做到这一点。 大家都知道一次方程里面要是有两个未知数是无法求解的。无法求得确切的解,也就是无解。“一次一密”加密方式与此类似,它用一个密钥加密一个明文,也就是 加密 明文(运算)密钥=密文 (一) 解密 密文(逆运算)密钥=明文 (二) 在(一)式里只知道密文是不能求解密钥或明
2010-05-09 08:30:00
4701
2
原创 随机数杂谈
什么是随机数,顾名思义是具有随机性的数,也就是未知规律的数。有一种定义是:看起来杂乱无章,不可预料不可重复产生的数。例如投掷硬币,虽然只有两种可能性但我们无法预知结果,所以可以得到二进制的随机数。 因为随机数在许多领域应用,所以人们对它的要求也就比较高,往往听到评论说你这个不够随机、那个是伪随机数。许多人认定必须来自物理现象的才是随机数,例如粒子辐射、热噪声、电噪声数据等才能得到随机数。实际
2010-03-22 08:40:00
826
原创 随机函数用于加密——加盐法
随机函数用于加密,前面已经介绍了组合法、跳变法、重排法、多模法,这里再介绍一种方法:加盐法。 加盐法的最大特色是增加加密强度,它是一种动态方法。经过加盐处理可以做到,即使用同样的明文、同样的用户密码每次加密得到的密文都不一样,密码、明文、密文没有固定的对应关系这样当然不好分析了。 下面介绍如何加盐,所谓盐也是随机数,怎么获得盐?作为盐的随机数可以让程序读取时间流而得到,如果需要多个可以截取
2010-03-08 21:10:00
1688
原创 随机函数用于加密——多模法
随机函数用于加密,以前已经介绍了组合法、跳变法、重排法,这里再介绍一种方法:多模法,这种方法简单实用。 【模运算基本概念】对于正整数p和整数a,取模运算:a % p (或a mod p),表示a除以p的余数。 【加密原理】随机函数产生的数据经过多次适当的模运算后作为加密或解密密钥,通过做不同数值的模运算提高解密复杂度。 我们知道文件一般都是以字节为单位,所以加密文件的最终密钥也是字节随机
2010-03-08 21:03:00
931
原创 rand()函数及其改造
C语言里有个随机函数rand()在Visual C++等里一直沿用着,下面是这个函数及其种子设置函数的源码。这个函数比较简单执行速度快。但是这个函数的周期较小只有16M左右。#define MUL 0x015a4e35L#define INC 1static long Seed=1;void srand(long seed);int rand(void);void srand(long s
2010-03-02 07:27:00
726
原创 用随机乱序建造理想的密钥数组
这里的目的是通过随机乱序方法来建立作为密钥的随机数组。要建立的随机数组要求具有真随机数的某些性质,例如数组元素之间没有任何关系,每个元素都是独立的存在,你无法由前面的数据推算后面的数据,没有周期等,但它们又是可以控制的可以重复产生,目的是用来做加密文件的密钥,所以它的产生要和用户密码密切关联,用户密码是独立于加密软件和密文或明文的,要充分利用这一点,控制密钥数组的产生。 随机乱序是将一个数组
2010-02-06 08:35:00
941
原创 用密钥池实现一次一密文件加密(附试验程序)
【密钥池】是随机数的容器,本身就是一个大文件。它可以提供加密文件所需要的密钥。密钥池无需保密可以公开在网站上,或提供下载。 【密钥池的使用】加密程序从密钥池取得密钥组成密钥串,但不要直接使用密钥池的密钥,而是经过一个不可逆的随机变换后再使用,这样密钥池作为密钥的模版就可以反复使用了。并且使用时并不是从开始位置依次向后取得密钥,而是可能从池的任何位置开始,从何处开始取决于用户密码和算法,当
2009-09-19 15:44:00
2736
1
不可破解的文件加密程序
2017-06-20
无敌加密金刚3.0(文件加密软件)
2010-01-01
无敌加密金刚2.1
2008-08-09
文件加密星1.0
2008-03-13
无敌加密小金刚1.0
2007-11-09
蓝精灵(文件打包、压缩、AES加密、字符串搜索、彻底删除)1.5
2007-08-08
金刚文件加密 1.2
2007-02-25
《加密小金刚》6.7
2007-02-08
真随机数发生器0.5
2007-01-27
真随机数发生器0.1
2007-01-25
无敌文件加密1.5
2007-01-14
超级文本替换0.1
2006-09-16
《加密小金刚》5.5
2006-07-20
《加密小金刚》5.5
2006-07-20
加密小金刚(钥匙盘型)
2006-07-14
加密小金刚5.5
2006-07-14
加密小金刚(钥匙盘型)
2006-07-14
加密小金刚5.5
2006-07-14
文本局部加密宝
2006-06-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人