<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>可可熊的窝 &#187; crypto</title>
	<atom:link href="http://cocobear.info/blog/tag/crypto/feed/" rel="self" type="application/rss+xml" />
	<link>http://cocobear.info/blog</link>
	<description>K.I.S.S</description>
	<lastBuildDate>Sat, 10 Dec 2011 16:11:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>加密算法相关</title>
		<link>http://cocobear.info/blog/2009/05/15/about-cryptographic-algorithm/</link>
		<comments>http://cocobear.info/blog/2009/05/15/about-cryptographic-algorithm/#comments</comments>
		<pubDate>Fri, 15 May 2009 08:57:06 +0000</pubDate>
		<dc:creator>可可熊</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[algorithm]]></category>
		<category><![CDATA[crypto]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://cocobear.info/blog/?p=656</guid>
		<description><![CDATA[加密算法: 加密算法一般分为对称加密和和非对称加密，对称加密是指加密与解密使用的是同一密钥，而非对称加密加密解密使用不同的密钥，一般把两个密钥分别称为公钥和私钥。 对称加密算法又分为序列密码算法和分组密码算法，从名字可以看出，序列密码算法在加密的时候每次只加密一个字节，而分组加密是把要加密的内容分为一块一块，例如16个字节，每次对这样一块数据进行加密。 典型的序列密码算法是RC4(由Ron Rivest发明，就是那个RSA的R)，RC4是RSA公司的一种专有密码算法，在1994年的时候有人匿名发出了一份RC4的加密算法的代码，并被证明与RSA公司的RC4是兼容的。RC4是一种密钥长度可变的算法，其密钥长度可以在8~2048位之间。不管密钥有多长，都被扩展为一张固定尺寸的内部状态表，因此不论使用多长的密钥，该算法的运算速度都是一样快。 序列密码算法得到的密文是与明文一一对应的，因此为了防止被修改一般配合一种摘要算法来使用。 分组密码算法每次只能地固定的长度数据进行加密，例如16个字节，如果想要加密更大的数据，得使用ECB(Electronic Codebook)或者CBC(Cipher Block Chaining)模式。ECB只是简单的把消息分割成固定的16个字节，并使用加密算法对各块进行加密，这种方式有着明显的不足，例如两段很相似的明文，另密后也会产生很类似的密码，这会暴露给攻击者很多信息。CBC解决了这个问题，对每个明文分组的加密依赖于前一密文分组的密文。这是通过在加密前会使用前一个密文分组与明文进行异或来实现。这个时候第一个文明分组会与一个叫做IV(初始化向量)的随机分组进行异或。 DES是应用最为广泛的对称式加密算法，它是一种具有56位密钥的64位分组，意思就是以8字节大小的分组进行加密，密钥空间为56位，DES密钥的实际是64位长，但是每个字节的低位用来做奇偶校验。由于计算机速度的提高，DES已经被认为是不安全的了，毕竟密钥太短。在这种情况下3DES算法就出现了，3DES算法一般使用加密-解密-加密(EDE)的模式。 RC2同样是R发明的分组密码，它采用一种经过变形的变长密码，它还具有一种可变的有效密钥长度。 AES至少有128位的分组大小，可以用128、192、256位的密钥长度。 非对称加密： 最出名的算法应该是RSA了，RSA的理论基础很简单，而算法的安全性基于一个数学难题：“对一个大素数进行因数分解”。 Diffie-Hellman(DH)是首个公开发表的公钥加密算法(RSA一开始是有专利的)，一般用于密钥磋商，而RSA用于密钥交换。 摘要算法: 摘要算法比较简单，从设计的角度来看，所有的摘要算法都非常的相似，唯一的区别就是输出尺寸的不同。两种最流行的算法为MD5、SHA-1。由于MD5的输出长度只有128位，而且存在了相关的破解方法，所以一般在PKI中推荐使用SHA-1。]]></description>
		<wfw:commentRss>http://cocobear.info/blog/2009/05/15/about-cryptographic-algorithm/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

