当前位置:首页 » 文件管理 » sha1文件夹加密工具

sha1文件夹加密工具

发布时间: 2022-09-13 04:24:05

㈠ c#怎样实现 文本文件加密解密

这个加密方法我还是不知道,给文本文件加密,我用的是超级加密3000试试。

给文件加密,我用的是超级加密3000.

超级加密3000采用国际上成熟的加密算法和安全快速的加密方法,可以有效保障数据安全!

具体操作方法:

1 下载安装超级加密3000。

2 然后在需要加密的文件上单击鼠标右键选择加密。

3 在弹出的文件加密窗口中设置文件加密密码就OK了。

超级加密3000的下载地址你可以在网络上搜索超级加密3000,第一个就是。

㈡ 公钥真实性两种机制

一、基础知识:
1、互联网上中间人攻击通常用的三种方式:1)窃听 2)数据篡改 3)会话劫持
2、数据加密的常用的三种方式有:对称加密、非对称加密、单向加密。
3、ssl:secure socket layer,安全的套接字层。
4、TLS:Transport Layer Security,功能类似于ssl。
5、随机数生成器:/dev/random 和 /dev/urandom 。 -salt:依赖于随机数生成器。
6、随机数的来源:熵池和伪随机数生成器。熵池中的随机数来自块设备中断和键盘和鼠标的敲击时间间隔;伪随机数生成器中的随机数来自于熵池和软件产生。
7、openssl rand [base64] num 也可以用来生成随机数。
8、echo –n “QQ”|openssl base64,表示对QQ做base64编码。
二、对称加密:
1、加密方和解密方使用同一个密钥。
2、加密解密的速度比较快,适合数据比较长时的使用。
3、密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦。
4、加密算法:DES(Data Encryption Standard)、3DES、AES(Advanced Encryption Standard,支持128、192、256、512位密钥的加密)、Blowfish。
5、加密工具:openssl、gpg(pgp工具)
三、非对称加密(公钥加密):
1、每个用户拥用一对密钥加密:公钥和私钥。
2、公钥加密,私钥解密;私钥加密,公钥解密。
3、公钥传输的过程不安全,易被窃取和替换。
4、由于公钥使用的密钥长度非常长,所以公钥加密速度非常慢,一般不使用其去加密。
5、某一个用户用其私钥加密,其他用户用其公钥解密,实现数字签名的作用。
6、公钥加密的另一个作用是实现密钥交换。
7、加密和签名算法:RSA、ELGamal。
8、公钥签名算法:DSA。
9、加密工具:gpg、openssl
四、单向加密:
1、特征:雪崩效应、定长输出和不可逆。
2、作用是:确保数据的完整性。
3、加密算法:md5(标准密钥长度128位)、sha1(标准密钥长度160位)、md4、CRC-32
4、加密工具:md5sum、sha1sum、openssl dgst。
5、计算某个文件的hash值,例如:md5sum/shalsum FileName,openssl dgst –md5/-sha1 FileName。
五、密钥交换的两种机制:
1、公钥加密实现:发送方用接收方的公钥加密自己的密钥,接收方用自己的私钥解密得到发送方的密钥,逆过来亦然,从而实现密钥交换。
2、使用DH算法:前提发送方和接受方协商使用同一个大素数P和生成数g,各自产生的随机数X和Y。发送方将g的X次方mod P产生的数值发送给接收方,接受方将g的Y次方mod P产生的数值发送给发送方,发送方再对接收的结果做X次方运算,接受方对接收的结果做Y次方运算,最终密码形成,密钥交换完成。
六、同时实现数据的完整性、数据加密和身份验证所使用到的机制如下:
假设Bob和Rose进行通信:
1】加密过程:
Bob使用单向加密算法得出发送数据的特征码(用于数据完整性检测),Bob用自己的私钥加密此特征码(实现身份验证),并将此特征码置于数据的后面。Bob再生成一个密码D,用此密码加密加密过的特征码和数据(实现数据加密),此时生成的数据我们称其为Q,最后用Rose的公钥加密该密码D,并将D置于Q的后面。
2】解密过程:
Rose用自己的私钥解密得到D,然后用D解密得到数据和加密过得特征码,再用Bob的公钥解密此特征码,如果可以解密,则说明该数据是Bob发送的,反之,则不是。最后用单向加密算法计算该段数据的特征码,通过比较发送过来的特征码和Rose通过计算得到的特征码来确定此数据是否被篡改掉,如果特征码一致,则数据未发生改变;如果特征码不一致,则数据发生过改变。
七、openssl:
1)组件:libcrypto:加密库。
libssl:实现ssl功能的库。
openssl:多用途的加密工具,能够提供对称加密、公钥加密、单向加密,且可以作为一个简单的本地CA用。
2)在对称加密中,使用openssl实现对某个文件加密:
openssl enc -des3 -salt -a -in plaintext -out ciphertext.des3
使用openssl实现解密:
openssl enc -d -des3 -salt -a -in ciphertext.des3 -out plaintext
3)openssl version:查看openssl的版本信息。
4)openssl :进入openssl的命令行模式。
5)openssl speed:测试某种加密算法加密不同长度密钥的速率。
6)在公钥加密中,openssl可以用来生成私钥。
openssl genrsa 指定生成的私钥长度 > 保存到的文件名
openssl genrsa [des3] -out 保存到的文件名 指定生成的私钥长度
在生成密钥文件的同时修改密钥文件的权限:(umask 077; openssl genrsa 指定生成的私钥长度> 保存到的文件名)
openssl genrsa 指定生成的私钥长度 [-des3](加密私钥文件) > 保存到的文件名。
openssl genrsa [-des3] -out 保存到的文件名 指定生成的私钥长度
当私钥在生成的时候,文件未加密,则可以使用如下格式对未加密的私钥文件进行加密并保存:openssl rsa in 未加密私钥存放的文件 –des3 -out 保存到的文件名
解密私钥:openssl rsa in 需要解密的私钥文件 –out 保存到的文件名。
7)公钥在私钥中提取出:openssl rsa –in my.key -pubout 指定保存公钥的文件名。

㈢ 如何计算一个文件的 MD5 或 sha-1 加密哈希值

当您将此哈希算法应用到任意数量的数据例如,一个二进制文件,结果是一个散列或消息摘要。此哈希具有固定的大小。MD5 是创建一个 128 位的哈希值的哈希算法。Sha-1 是创建一个 160 位的哈希值的哈希算法。
文件校验和完整性验证程序 (FCIV) 实用程序可用于计算一个文件的 MD5 或 sha-1 加密哈希值。有关文件校验和完整性验证程序 (FCIV) 实用程序的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
841290可用性和文件校验和完整性验证程序实用程序的说明
计算的 MD5 和 sha-1 哈希值的文件,请在命令行键入以下命令:
FCIV-md5-sha1 path\filename.ext
例如,若要计算在%Systemroot%文件夹中 \System32 Shdocvw.dll 文件的 MD5 和 sha-1 哈希值,请键入下面的命令:
FCIV-md5-sha1 c:\windows\system32\shdocvw.dll

㈣ 下载的时候经常看到个MD5校验码,是什么意思,做什么用的

MD5是message-digest algorithm 5(信息-摘要算法)的缩写,被广泛用于加密和解密技术上,它可以说是文件的“数字指纹”。任何一个文件,无论是可执行程序、图像文件、临时文件或者其他任何类型的文件,也不管它体积多大,都有且只有一个独一无二的MD5信息值,并且如果这个文件被修改过,它的MD5值也将随之改变。因此,我们可以通过对比同一文件的MD5值,来校验这个文件是否被“篡改”过。

MD5的作用:
当我们下载了一个软件以后,如果想知道下载的这个软件和网站的原始文件是否一模一样,就可以给自己下载的文件做个MD5校验。如果得到的MD5值和网站公布的相同,可确认所下载的文件是完整的。如有不同,说明你下载的文件是不完整的:要么就是在网络下载的过程中出现错误,要么就是此文件已被别人修改。为防止他人更改该文件时放入病毒,最好不要使用。
当我们用E-mail给好友发送文件时,可以将要发送文件的MD5值告诉对方,这样好友收到该文件以后即可对其进行校验,来确定文件是否安全。
再比如:在刚安装好系统后可以给系统文件做个MD5校验,过了一段时间后如果你怀疑某些文件被人换掉,那么就可以给那些被怀疑的文件做个MD5校验,若和从前得到的MD5校验码不一样,那么就可以肯定是有问题的。

读取和校验MD5信息:
了解了MD5信息以后,下面我们来看一看如何读取并校验文件的MD5信息。这需要一款检测MD5值的专门小软件——Windows MD5 Check(下载地址:http://vnet2.onlinedown.net/down/WinMD5.rar,版本为2.0 Build 0123)。这是一款绿色软件,解压缩后运行其中的MD5.EXE文件即可。软件的使用非常简单,点击“Open”按钮,选择并打开想要进行校验的文件,稍等片刻后,在MD5一栏中便会显示该文件的MD5值,将该数值同网站公布的数值进行比较即可确定文件是否完整了。点击“Save”按钮可以将读取的MD5保存为一个.MD5文件,用记事本打开该文件,可以将MD5值复制出来。
为了验证文件修改后的MD5值是否发生变化,可能用一个文本文件进行了测试。第一个文件为进行测试的原始文件,第二个文件为进行修改后的文件(不过只是在打开原始文件的基础上加入了一个空格),第三个文件为原始文件的复制文件。尽管改动不大,但是两个文件的MD5值却大相径庭,而复制得到的文件则不会发生变化。

㈤ Md5是什么MD5怎么校验Md5校验工具怎么用

,MD5全名Message-Digest Algorithm 5(信息-摘要算法)是一种不可逆的加密算法。

那么MD5校验又是怎么回事呢?
一般软件或者说文件都有自己的固定文件格式或者架构信息,说简单一点就是。”世界上没有完全相同的2片叶子” ,因为MD5是一种不可逆的加密算法。

那么对于某些网上公开下载的软件,视频,尤其是镜像文件。如果被修改了可能会导致用不了或者其他的问题,发布者镜像MD5算法计算一组数值。让下载的用户进行MD5数值对比,也就是MD5校验啦。由于MD5加密不可逆算,如果数值一样,那就表示文件没有被修改的。反之,则被修改了
MD5校验工具,其实就是一个MD5加密计算的软件啦。把下载好的软件或工具拖动放到软件里面计算然后得到软件的MD5值。

下面我们到网上去搜索”MD5校验工具“下载一个
安装好之后,运行MD5校验工具。一般都会是下面这个图片这种格局显示啦,点击”浏览”选项,可以浏览添加你需要校验的软件,镜像或视频文件等等
MD5校验---下载软件,记录MD5值
打开搜索一个镜像,比如win7旗舰版。我找到下载该软件的文件系统信息MD5值如下图( 注意下载软件之前把这个MD5数值最好拷贝截图下来,待会软件下载好之后需要进行验证的喔)
步骤阅读
下面我们就下载找一个范例吧,你们自己可以下载进行测试哈。不一定是光盘的,只要下载提供者有提供MD5建议都尝试校验一下。好的就对比一下我刚刚的那个镜像文件吧,点击浏览进行添加文件

添加好文件之后,md5校验会自动开始计算。计算的时间,根据文件的大小和压缩包内的数量不同。稍等片刻,校验好了之后,如下图会出现当前下载的MD5和sha1值。
对比一下之前的那个备份的,如果相同表示文件没有被修改过,如果不同,那建议不要使用
MD5加密是一直复杂的不可逆的加密算法技术,通过MD5校验可以有效的检测下载资源的软件,镜像等资源。就不会出现,下载了一晚上,某X大片后来发现居然是 “葫芦娃”的悲剧。O(∩_∩)O哈哈~

㈥ 谁知道怎么给文件加密啊

关于加密和安全
安全在计算机行业中可能会是个永久的话题。2004年到2005年间,山东大学王小云教授攻破MD5,降低了SHA-1的安全强度,这更是引起了大家的关注。并且,随着网络技术的发展和普及,大家的网络安全意识也越来越强。因此,在这里对加密和安全的基础知识做一点入门性质的介绍,以便大家能对这方面有更准确的了解和把握,能更好地保护自己重要数据的安全。

本文侧重密码方面的基础知识的介绍。本文一直在逐步修改和完善。 如果哪位朋友在安全方面存在疑惑和问题,欢迎提出来,我们将尽力帮忙寻求解答,并丰富本文的内容,以便能帮助更多的人。如果本文存在问题和错误,也欢迎诸位给予批评指正。

1. 请大家准备好,开工了
密码学的方法离我们并不遥远。它应用很广泛,在我们日常使用计算机的时候就会经常用到,只不过我们没有多加留意而已。比如我们启动Windows的时候,我们要输入口令,这个口令在系统中就是加密后保存的。在我们上网时,有些网站需要我们建立安全连接,这时也是在密码算法支持下进行的。在你的IE浏览器中,看一下工具->Internet选项->内容->证书,会发现密码技术其实早已在后台默默地为我们工作了。

密码算法有很多种。包括对称算法、非对称算法、消息摘要算法等。对称加密算法包括DES和AES等;非对称加密算法包括RSA、DSA、椭圆曲线算法等。

接下来将以逐条解释基本概念的形式对主要的密码安全技术做一个简单的介绍。

2. 朴素的密码
“天王盖地虎,宝塔镇河妖……”大家一定在电影里看过土匪对暗号的场面。其实,土匪口中的“黑话”就是一种最朴素的密码。只不过这种密码过于简单,经不起密码学家的分析,非常容易破译。

3. 凯撒密码
这是一个古老的加密方法,当年凯撒大帝行军打仗时用这种方法进行通信,因此得名。它的原理很简单,其实就是单字母的替换。让我们看一个简单的例子:“This is Caesar Code”。用凯撒密码加密后字符串变为“vjku ku Ecguct Eqfg”。看起来似乎加密得很“安全”。可是你可以尝试一下,把这段很难懂的东西每一个字母换为字母表中前移2位的字母……哦,结果出来了。

凯撒密码的字母对应关系:

A b c d e f g h i … x y z

C d e f g h I j k … z a b

4. rot13
ROT13是网络上常见的一种简单的“加密”方式。它是用字母表里a-m的字符来代替n-z,用n-z的字符来代替a-m字符。它的原理和凯撒密码非常类似。凯撒密码移了2位,而ROT13移了13位。ROT13通常作为简单的手段使得我们的电子信件不能被直接识别和阅读,也不会被那些匹配程序用通常的方法直接找到。

如"V Ybir lbh!" 这个句子实际上是"I Love you!"。

ROT13字母对应关系:

A b c d e f g h I … x y z

N o p q r s t u v … k l m

明白了吗?“解密”一下下面的内容:
jrypbxr gb jjj.syntjner.arg

5. 受限密码
上面讨论的“加密”是非常简单的,简单到不用计算机的帮助就能手工破译,简单到只能防止3岁的小妹妹偷看你的文件 J

我们可以把这些算法变得更复杂,引入更多的变换、更多的交叉和扩散 …… 这样也许会更难破译些。但是,在这个基础上变得再复杂,也还跳不出“受限密码”的范畴。所谓“受限密码”,是指算法的安全性是建立在算法保密的基础上的。一旦算法泄漏,所加密的内容也就完全没有安全性可言了。我们前面讨论的算法就是有这个特点的。

算法泄漏的问题使得这类算法的应用范围受到很大的限制。基本上,现在已经没人用了。

6. 现代密码技术的开始:密钥与算法分离
受限密码一旦泄漏了算法,那么所有加密的内容都会曝露在光天化日之下。使用这样的方法来保护重要信息是很危险的。因此,密码学家提出了算法和密钥分离的思想。这是密码学的一个里程碑。

它的思想是,密码的安全性取决于一个密钥,而不是取决于一个算法。每条消息用一个Key加密,只要Key不泄露,消息就是安全的。即使算法公开了,也威胁不到消息的安全性。现代的密码算法,如3DES,AES等,都是属于这一类。后面我们将会对这些算法做简要的介绍。

7. 澄清一个观念:通常没有绝对的信息安全
在介绍现代的密码和信息安全技术之前,有必要澄清一个观念:密码技术里所提到的信息安全性通常不是绝对的,它是一个相对的范畴。

一位密码学家曾经这样评论:如果你想让你的信息绝对安全的话,你得把你要保密的信息写下来装在保险柜里,把保险柜焊死,到太平洋海底某个不为人知的角落挖坑深埋,这样也许会接近绝对的安全。可是这样的安全是没有用的,因为这并不能让需要信息的人得到它。所以,这种“安全”是没有用的。实际上,这不能叫做“信息安全”,把它叫做“信息隐藏”也许更为合适。

我们所讨论的信息安全,是有使用价值的信息安全。这种安全是相对的安全。

不过“相对安全”并不意味着不安全。我们日常生活中用的“锁”其实也是相对的安全。事实上,密码算法的安全强度要比平常的锁的安全强度高出很多倍。

8. 相对的安全
在数学家香农(Claude E.Shanon)创立的信息论中,用严格的数学方法证明了这么一个结论:一切密码算法,除了一次一密以外,在理论上都是可以破解的。这些密码算法,包括现在的和过去的,已知的和未知的,不管它多么复杂、多么先进,只要有足够强大的计算机,有足够多的密文,一定可以破译。

那么就产生了这样一个问题:既然这样,那密码还有什么用呢?

这就是为什么我们要讨论相对安全的原因。

前面提到了,一切密码,理论上都是可以破译的。但是,只有在拥有足够强大的计算机的情况下才有可能破译。在实际上,也许并不存在这么强的计算机。如果破译一个算法需要现在最强的计算机运算几百年,那么这样的算法即使理论上可以破译,在实践中也还是有实用价值的。

因此,我们可以这样理解相对安全的观念:假如一条信息需要保密10年,如果要花20年的时间才能破解它,那么信息就是安全的。否则就不安全。

在现实中,能获得的计算能力在一定程度上与付出的经济代价成比例。因此,也可以从经济的角度来衡量安全程度。假如一条信息价值一百万元,如果需要要花1000万元的代价才能制造出足够强的计算机来破解它,那它就是安全的。但是,如果信息价值1000万,用100万元就能获得足够的计算能力来破解它,那么它就是不安全的。

9. 一次一密
前面提到除了一次一密以外,其它的密码理论上都是可以破解的。那么什么是一次一密呢?一次一密就是每一次加密都使用一个不同的密钥(废话,和没说一样J)。严格的说,满足以下条件的密码才是真正的一次一密:

a.密钥是随机产生的,并且必须是真随机数,而不是伪随机数;
b.密钥不能重复使用;
c.密钥的有效长度不小于密文的长度。

一次一密是最安全的加密算法,双方一旦安全交换了密钥,之后交换信息的过程就是安全的。这种算法一直在一些要求高度机密的场合使用,据说美国和前苏联之间的热线电话、前苏联的间谍都是使用一次一密的方式加密的。不管有多强的超级计算机,不管超级计算机工作多久,也不管多少人,用什么方法和技术,具有多大的计算能力,都不可能破解用一次一密方法加密的信息,除非回到那个时代拿到他用过的密码本(也就是密钥)。前苏联间谍用一次一密方法加密过的信息将成为永久的谜。

10. 对称算法的概念
所谓对称算法就是指加密和解密过程均采用同一把密钥。如DES,3DES,AES等算法都属于对称算法。下面会对这几种有代表性的算法一一做介绍。

11. DES算法
DES(Data Encryption Standard)是一种经典的对称算法。其数据分组长度为64位,使用的密钥为64位,有效密钥长度为56位(有8位用于奇偶校验)。它由IBM公司在70年代开发,经过政府的加密标准筛选后,于1976年11月被美国政府采用,随后被美国国家标准局和美国国家标准协会(American National Standard Institute, ANSI) 承认。

该技术算法公开,在各行业有着广泛的应用。DES算法从公布到现在已有20多年的历史,随着计算机能力的飞速发展,DES的56位密钥长度显得有些短了。现在,已经有可能通过穷举的方法来对其进行攻击。但是除此以外,还没有发现穷举以外的能有效破译DES的方法。

DES算法的数据流程图如下图所示:

12. 三重DES
DES算法现在已经不能提供足够的安全性,因为其有效密钥只有56位。因此,后来又提出了三重DES(或称3DES),该方法的强度大约和112比特的密钥强度相当。

这种方法用两个密钥对明文进行三次运算。设两个密钥是K1和K2,其算法的步骤如图所示:

1. 用密钥K1进行DES加密。

2. 用K2对步骤1的结果进行DES解密。

3. 用步骤2的结果使用密钥K1进行DES加密。

13. AES算法
1997年1月美国国家标准和技术研究所(NIST)宣布征集新的加密算法。2000年10月2日,由比利时设计者Joan Daemen和Vincent Rijmen设计的Rijndael算法以其优秀的性能和抗攻击能力,最终赢得了胜利,成为新一代的加密标准AES(Advanced Encryption Standard)。

Rijndael加密:

Rijndael是一个密钥迭代分组密码,包含了轮变换对状态的重复作用。轮数Nr 的值取决于分组和密钥的长度。对于AES,当密钥长度为128比特时,Nr =10;当密钥长度为192比特时,Nr =12;当密钥长度为256比特时,Nr =14。

Rijndael算法的加密过程如图1所示。它包括一个初始密钥加法,记作AddRoundKey,接着进行Nr-1次轮变换(Round),最后再使用一个轮变换(FinalRound)。

轮变换由4个步骤组成:SubBytes,ShiftRows,MixColumns和AddRoundKey。最后一轮与前Nr -1次轮变换稍有不同,省掉了其中的MixColumns步骤。

步骤SubBytes是Rijndael算法中唯一的非线性变换。

步骤ShiftRows是一个字节换位,它将状态中的行按照不同的偏移量进行循环移位。使第i 行第j 位的字节移动到位置(j -Ci)mod Nb,移动偏移量Ci 的值依赖于Nb 的取值。其中Nb =分组长度/32,对于AES,Nb 取固定长度4。

步骤MixColumns是作用在状态各列的置换算法。

密钥加法AddRoundKey将状态与一个轮密钥进行异或。轮密钥是由密码密钥通过密钥编排方案[1]导出。轮密钥的长度等于分组的长度。

Rijndael解密:

Rijndael解密算法有2种形式。一种是直接解密算法,即直接利用步骤InsubBytes,InvShiftRows,InvMixColumns和AddRoundKey的逆并倒置其次序对数据进行解密。

另一种是等价解密算法,其实现原理如图2所示。等价解密算法有利于有效实现良好的运算次序。

14. 非对称算法的概念
所谓非对称算法就是指加密和解密用的不是同一个密钥。

非对称算法的密钥分为二部分,通常称为“公钥”和“私钥”(或者称为“公开密钥”和“秘密密钥”)。公钥和私钥存在数学上的关系,使得用公钥加密的数据只能用对应的私钥解密,用私钥加密的数据只能用对应的公钥解密。但是从公钥中推导出私钥是很难的(理论上是可以推导出来的,但是实际上找不到这么强的计算能力)。

RSA,DSA等算法属于非对称算法。

15. RSA算法
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从1978年提出到现在已近三十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。通常认为破译RSA的难度与大数分解难度等价。算法以三个发明者的名字命名:Ron Rivest, Adi Shamir 和Leonard Adleman。

RSA算法的原理:

1、密钥对的产生:

选择两个大素数,p 和q 。计算: n = p * q

然后随机选择加密密钥e,要求 e 和 ( p - 1 ) * ( q - 1 ) 互质。最后,利用
Euclid 算法计算解密密钥d, 使其满足

e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) )

其中n和d要互质。数e和n是公钥,d是私钥。两个素数p和q不再需要,应该丢弃,不要让任何人知道。

2、加密

加密信息 m(二进制表示)时,首先把m分成等长数据块 m1 ,m2,..., mi ,块长s,其中 2^s <= n, s 尽可能的大。加密的公式是:

ci = mi^e ( mod n )
3、解密
解密时作如下计算:
mi = ci^d ( mod n )

16. 散列算法
散列算法,也称为单向散列函数、杂凑函数、哈希算法、HASH算法或消息摘要算法。它通过把一个单向数学函数应用于数据,将任意长度的一块数据转换为一个定长的、不可逆转的数据。这段数据通常叫做消息摘要(比如,对一个几兆字节的文件应用散列算法,得到一个128位的消息摘要)。消息摘要代表了原始数据的特征,当原始数据发生改变时,重新生成的消息摘要也会随之变化,即使原始数据的变化非常小,也可以引起消息摘要的很大变化。因此,消息摘要算法可以敏感地检测到数据是否被篡改。消息摘要算法再结合其它的算法就可以用来保护数据的完整性。

好的单向散列函数必须具有以下特性:

1) 计算的单向性:给定M和H,求h=H(M)容易,但反过来给定h和H,求M=H-1(h)在计算上是不可行的。

2) 弱碰撞自由:给定M,要寻找另一信息 M′,满足 H(M′)=H(M)在计算上不可行。

3) 强碰撞自由:,要寻找不同的信息M 和M′,满足 H(M′)=H(M)在计算上不可行。

单向散列函数的使用方法为:用散列函数对数据生成散列值并保存,以后每次使用时都对数据使用相同的散列函数进行散列,如果得到的值与保存的散列值相等,则认为数据未被修改(数据完整性验证)或两次所散列的原始数据相同(口令验证)。

典型的散列函数有:MD5,SHA-1,HMAC,GOST等。单向散列函数主要用在一些只需加密不需解密的场合:如验证数据的完整性、口令表的加密、数字签名、身份认证等。

17. 关于MD5和SHA-1等
2004年,山东大学王小云教授攻破了MD5算法,引起密码学界的轩然大波。

MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。

2004年8月17日的美国加州圣巴巴拉召开的国际密码学会议(Crypto’2004)安排了三场关于杂凑函数的特别报告。在国际着名密码学家Eli Biham和Antoine Joux相继做了对SHA-1的分析与给出SHA-0的一个碰撞之后,来自山东大学的王小云教授做了破译MD5、HAVAL-128、 MD4和RIPEMD算法的报告。王小云教授的报告轰动了全场,得到了与会专家的赞叹。

不久,密码学家Lenstra利用王小云提供的MD5碰撞,伪造了符合X.509标准的数字证书,这就说明了MD5的破译已经不仅仅是理论破译结果,而是可以导致实际的攻击,MD5的撤出迫在眉睫。

安全散列算法1(SHA-1)是由NSA设计的,并由NIST将其收录到 FIPS 中,作为散列数据的标准。它可产生一个 160 位的散列值。SHA-1是流行的用于创建数字签名的单向散列算法。

在MD5被王小云为代表的中国专家破译之后,世界密码学界仍然认为SHA-1是安全的。2005年2月7日,美国国家标准技术研究院发表申明,SHA-1没有被攻破,并且没有足够的理由怀疑它会很快被攻破。而仅仅在一周之后,王小云就发布了消息,说明了SHA-1算法寻找一对碰撞的复杂度是2^69,而不是密码学家以前认为的2^80。

如何理解这个结果呢?在很多报道中,包括山东大学的网站上,都说SHA1被攻破了,被破解了,云云。作者对这类说法持保留态度。引用王小云教授论文中的说法:

“对于SHA0,这种攻击很有效,我们能够在不超过2^39次Hash操作中找到实际的碰撞。我们也对弱化到58步的SHA1进行了攻击,并在不超过2^33次Hash操作中找到了实际的碰撞。”

“SHA0和58步的SHA1是作为80步完整SHA1的简化版,用来验证我们的新方法的效率的。此外,我们的分析表明,减弱到70步的SHA1的碰撞复杂度是2^50次Hash操作。基于这个估计,我们期望在现在的超级计算机上能找到70步SHA1的真实碰撞。”

所以,严格说来应该这样理解:这个结果把攻破SHA1的计算量降低了2000倍。在某些情况下,SHA1似乎走到了不安全的边缘。

MD5被攻破了,SHA1也不那么安全了,怎么办呢?现在看来,还有SHA-256和SHA-512等算法可用。密码学家也在研究新的散列算法。

18. 数字鉴名
密码技术除了提供信息的加密解密外,还提供对信息来源的鉴别、保证信息的完整和不可否认等功能,而这三种功能都是结合数字签名技术来实现的。

简单地说,数字签名的原理可以这样理解:用非对称算法的私钥加密的内容只能用对应的公钥来解密。而私钥是不公开的。因此,如果一段信息能用某个人的公钥解密,那么它一定是用此人的私钥加密的。它和物理的签名一样,是很难伪造的。

在实际应用中,数字签名的过程通常是这样实现:

将要传送的明文通过一种函数运算(Hash)转换成报文摘要(不同的明文对应不同的报文摘要),报文摘要用私钥加密后与明文一起传送给接受方,接受方用发送方的公钥来解密报文摘要,再将接受的明文产生新的报文摘要与发送方的报文摘要比较,比较结果一致表示明文确实来自期望的发送方,并且未被改动。如果不一致表示明文已被篡改或不是来自期望的发送方。

19. 数字证书
为了保证互联网上电子交易及支付的安全性,防范交易及支付过程中的欺诈行为,必须在网上建立一种信任机制。这就要求参加电子商务的买方和卖方都必须拥有合法的身份,并且在网上能够有效无误的被进行验证。数字证书是一种权威性的电子文档。它提供了一种在Internet上验证您身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由权威机构----CA证书授权(Certificate Authority)中心发行的,人们可以在互联网交往中用它来识别对方的身份。当然在数字证书认证的过程中,证书认证中心(CA)作为权威的、公正的、可信赖的第三方,其作用是至关重要的。
数字证书颁发过程一般为:用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。用户就可以使用自己的数字证书进行相关的各种活动。数字证书由独立的证书发行机构发布。数字证书各不相同,每种证书可提供不同级别的可信度。可以从证书发行机构获得您自己的数字证书。

随着Internet的普及、各种电子商务活动和电子政务活动的飞速发展,数字证书开始广泛地应用到各个领域之中,目前主要包括:发送安全电子邮件、访问安全站点、网上招标投标、网上签约、网上订购、安全网上公文传送、网上缴费、网上缴税、网上炒股、网上购物和网上报关等。

20. CA
CA是Certification Authority的缩写。CA中心,又称为数字证书认证中心。CA中心作为电子交易中受信任的第三方,负责为电子商务环境中各个实体颁发数字证书,以证明各实体身份的真实性,并负责在交易中检验和管理证书;数字证书的用户拥有自己的公钥/私钥对。证书中包含有证书主体的身份信息、其公钥数据、发证机构名称等,发证机构验证证书主体为合法注册实体后,就对上述信息进行数字签名,形成证书。在公钥证书体系中,如果某公钥用户需要任何其它已向CA注册的用户的公钥,可直接向该用户索取证书,而后用CA的公钥解密解密即可得到认证的公钥;由于证书中已有CA的签名来实现认证,攻击者不具有CA的签名密钥,很难伪造出合法的证书,从而实现了公钥的认证性。 数字证书认证中心是整个网上电子交易安全的关键环节,是电子交易中信赖的基础。他必须是所有合法注册用户所信赖的具有权威性、信赖性及公正性的第三方机构。
CA的核心功能就是发放和管理数字证书。概括地说,CA认证中心的功能主要有:证书发放、证书更新、证书撤销和证书验证。具体描述如下:

(1)接收验证用户数字证书的申请。

(2)确定是否接受用户数字证书的申请,即证书的审批。

(3)向申请者颁发(或拒绝颁发)数字证书。

(4)接收、处理用户的数字证书更新请求。

(5)接收用户数字证书的查询、撤销。

(6)产生和发布证书的有效期。

(7)数字证书的归档。

(8)密钥归档。

(9)历史数据归档。

21. PGP
PGP是Pretty Good Privacy的缩写。PGP最初是Phil Zimmermann在1991年写的一套程序的名字。这套程序后来由MIT, ViaCrypt, PGP Inc.维护和发布。现在的PGP由Network Associates Inc. (NAI)作为商业软件进行销售。同时,PGP也是一个网络标准的名字(RFC 2440: Open PGP Message Format)。在这里,我们主要讨论作为RFC标准的PGP。

PGP是一种以RSA等密码算法为基础,用来保护电子邮件等信息的安全性的系统。可以用它对你的邮件保密以防止非授权者阅读,它还能对你的邮件加上数字签名从而使收信人可以确信邮件是你发来的。它让你可以安全地和你从未见过的人们通讯,事先并不需要任何保密的渠道用来传递密匙。

它的加密方法用的是我们前面讨论过的算法。它与其它系统不同的地方在于它的密钥管理。

一个成熟的加密体系必然要有一个成熟的密钥管理机制配套。公钥体制的提出就是为了解决传统加密体系的密钥分配过程保密的缺点。比如网络黑客们常用的手段之一就是"监听",如果密钥是通过网络传送就太危险了。对PGP来说公钥本来就要公开,就没有防监听的问题。但公钥的发布中仍然存在安全性问题,例如公钥被篡改(public key tampering),这可能是公钥密码体系中最大漏洞 。用户必须确信用户的公钥属于需要收信的那个人。

下面举个例子来说明这个问题:以用户A和用户B通信为例,现假设用户A想给用户B发信,首先用户A就必需获取用户B的公钥,用户A从BBS上下载或其它途径得到了B的公钥,并用它加密了信件发给了B。不幸的是,用户A和B都不知道,另一个用户C潜入BBS或网络中,侦听或截取到用户B的公钥,然后在自己的PGP系统中用用户B的名字生成密钥对中的公钥替换了用户B的公钥,并放在BBS上或直接以用户B的身份把更换后的用户B的“公钥”发给用户A。那用户A用来发信的公钥是已经是更改过的,实际上是用户C伪装用户B生成的另一个公钥。这样谁都不会起疑心,但这样一来用户B收到用户A的来信后就不能用自己的私钥解密了,更可恶的是,用户C还可伪造用户B的签名给用户A或其他人发信,因为用户A手中的公钥是伪造 ,用户A会以为真是用户B的来信。
防止这种情况出现的最好办法是避免让任何其他人有机会篡改公钥,但能做到这一点的是非常困难的,一种方法是直接从用户B手中得到他的公钥,然而当他在远在他乡或在时间上根本不可达到时,这是不可办到的。
但PGP提出了一种公钥介绍机制来解决这个问题,其思路是这样的:如果用户A和用户B有一个共同的朋友D,而D知道他手中的B的公钥是正确的。这样D就成为用户A和B之间的公证人,用户B为了防止别人篡改自己的公钥,就把经过D签名的自己的公钥上载到BBS上让用户去拿,用户A想要取得用户B的公钥就必需先获取D的公钥来解密BBS或网上经过D签名的B的公钥,这样就等于加了双重保险,一般没有可能去篡改它而不被用户发现,即使是BBS的管理员。这就是从公共渠道传递公钥的安全手段。
说到这里也许有人会想到,只通过一个签名公证力度是不是小了点。 PGP当然考虑到了这一点,它的办法就是把由不同的人签名的自己的公钥收集在一起,发送到公共场合,这样可以希望大部分人至少认识其中一个,从而间接认证了用户的公钥。同样用户签了朋友的公钥后应该寄回给他,这样就可以让他通过该用户被该用户的其他朋友所认证。有点意思吧,和现实社会中人们的交往一样。PGP会自动根据用户拿到的公钥中有哪些是朋友介绍来的,把它们分为不同的信任级别,供用户参考决定对它们的信任程度。也可指定某人有几层转介公钥的能力,这种能力是随着认证的传递而递减的。
如何安全地得到D或其他签名朋友的公钥呢?确实有可能用户A拿到的D或其他签名的朋友的公钥也假的,但这就求这个用户C必须对你们三人甚至很多人都很熟悉,这样的可能性不大,而且必需经过长时间的策划。当然,如果一定要追究这一点的话,那就是由一个大家普遍信任的机构担当这个角色,他被称为认证权威机构,每个由他签过字的公钥都被认为真的,这样大家只要有他的公钥就行了,认证这个人的公钥是方便的,因他广泛提供这个服务,假冒他的公钥是极困难的,因为他的公钥流传广泛。这样的"权威机构"适合由非个人控制组织或政府机构充当----这就是我们前面讨论过的CA。

22. 数字信封
数字信封是一种综合运用对称算法、非对称算法、消息摘要算法和数字签名的消息加密机制。为什么要引入这种机制呢?这是因为:

1、对称算法速度比较快,与同等安全强度的非对称算法相比,一般要快三个数量级左右。但是对称算法需要通过一个安全的通道交换密钥(或协商密钥,或事先约定密钥)之后才能进行通信。

2、非对称算法较慢,但是它的优点是通信双方不必事先约定密钥

㈦ 请问有人知道这个是什么加密方式吗

这个是系统上自带的bitlocker加密哦,U盘换到其他电脑无法使用哦 对U盘上的数据加密,可以试一下U盘超级加密3000,软件是绿色免安装的软件,把软件放到U盘,可以随着U盘转移到其他电脑使用。加密速度快,安全性高。1、下载U盘超级加密3000,保存到计算机硬盘。解压。2、然后把解压后的文件夹,复制到U盘可以了。当然移动硬盘也可以实现同样的加密。3、打开U盘超级加密3000,设置要启动密码。一定要设置启动密码,否则别人可以强制修改密码。4、选择要加密的文件夹,选择加密方式,输入密码。打开文件夹,就必须输入密码了。

㈧ 知道115文件的SHA1。这个文件过期了还能用SHA1下载吗

不能的,只靠SHA1 MD5都是不能下到东西的 加密是不可逆过程~~文件过期只能等别人续期了 或者你按文件名网络看别处有没有 请问你要下什么呢?

㈨ 如何计算 MD5 或 sha-1 加密哈希值的文件

当您将此哈希算法应用到任意数量的数据例如,一个二进制文件,结果是一个散列或消息摘要。此哈希具有固定的大小。MD5 是创建一个 128 位的哈希值的哈希算法。Sha-1 是创建一个 160 位的哈希值的哈希算法。
文件校验和完整性验证程序 (FCIV) 实用程序可用于计算一个文件的 MD5 或 sha-1 加密哈希值。有关文件校验和完整性验证程序 (FCIV) 实用程序的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
841290可用性和文件校验和完整性验证程序实用程序的说明
计算的 MD5 和 sha-1 哈希值的文件,请在命令行键入以下命令:
FCIV-md5-sha1 path\filename.ext
例如,若要计算在%Systemroot%文件夹中 \System32 Shdocvw.dll 文件的 MD5 和 sha-1 哈希值,请键入下面的命令:
FCIV-md5-sha1 c:\windows\system32\shdocvw.dll
这篇文章中的信息适用于:

Customer Service and Support Information
关键字:
kbmt kmcustomerservice kbhowto KB889768 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 889768
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任

㈩ 大部分SHA1算法都是对文件加密,有没有直接对一组数据加密的方法比如一串123456789的数。

可以对字符串加密的,对文件加密也是把文件读入内存以流的方式加密做信息摘要

热点内容
lol浙江省服务器云主机 发布:2024-10-11 05:07:35 浏览:902
安卓抖音没网络怎么设置 发布:2024-10-11 05:07:22 浏览:857
服务器ft测试的是什么 发布:2024-10-11 05:06:50 浏览:109
算法是什 发布:2024-10-11 05:01:46 浏览:176
java图片水印 发布:2024-10-11 04:53:47 浏览:483
linux下mfc编译 发布:2024-10-11 04:43:40 浏览:903
phpfor循环语句 发布:2024-10-11 04:32:55 浏览:869
什么是假的服务器 发布:2024-10-11 04:32:49 浏览:102
笔记本电脑配置够但玩游戏卡怎么办 发布:2024-10-11 04:30:55 浏览:2
scratch编程小游戏跳一跳 发布:2024-10-11 03:50:03 浏览:574