<?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; security</title>
	<atom:link href="http://cocobear.info/blog/tag/security/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>CPU卡相关</title>
		<link>http://cocobear.info/blog/2009/05/21/about-smartcard/</link>
		<comments>http://cocobear.info/blog/2009/05/21/about-smartcard/#comments</comments>
		<pubDate>Thu, 21 May 2009 08:46:30 +0000</pubDate>
		<dc:creator>可可熊</dc:creator>
				<category><![CDATA[安全相关]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://cocobear.info/blog/?p=665</guid>
		<description><![CDATA[智能卡又称CPU卡。CPU卡内嵌芯片相当于一个特殊类型的单片机，内部除了带有控制器，存储器，时序控制逻辑等外，还带有算法单元和操作系统，由于CPU卡有存储容量大，处理能力强，信息存储安全等特性。因此，广泛用于信息安全性要求特别高的场合。 http://baike.eccn.com/eewiki/index.php/智能卡(CPU卡) CPU卡在国内的最广泛应用应该是手机的SIM卡了，CPU卡要做应用一般都需要有一个上层的COS来支持，例如SIM卡就有基于GSM11.14和GSM11.11规范实现的COS。 COS是一个完整的系统，在结构上COS分为四大块：文件管理、安全机制、传输协议、命令解释。COS不是一个标准的操作系统，它是针对不同的应用来设计的，不过在一些底层的结构上还是基本相同的，比如文件管理、安全机制、传输协议，不同的应用在COS里体现在命令解释这一块。一般都有针对行业相关的命令标准，例如SIM卡相关的GSM11.11标准，金融相关的PBOC。关于CPU卡和COS最重要的规范就是ISO7816这一系列的标准，例如ISO7816-3规定了COS中的传输协议这一块，ISO7816-4规定了命令解释这一块，当然这里只是规定了最基本的一些命令，不同的应用可以有自己的扩展。 CPU卡在芯片级就做了很好的安全保护工作，比如对存放在CPU卡里数据的保密，以及CPU卡的物理攻击防范，举个简单的例子，你可能花很大的精力把一个CPU卡分解开(芯片的分层封装可以防卡轻松把一个CPU卡分解为ROM，CPU，EPROM等)，得到的数据仍然是经过加密的。因此在很大程度上防止了卡的复制，而目前银行的磁条卡是很容易被复制的，只要知道卡号，密码和这个卡对应的一个随机数(据说可以直接读出来……而某些使用算法产生的也不安全，因为相关的算法很弱)就可以很轻松的复制出来一张银行卡。 国外很多银行已经开始采用基于CPU卡的银行卡，中国也有相应的标准出台：PBOC，不过涉及到数十亿磁条卡的更换，标准制定多年来一直没有得以推广，对于这种投资大(更换ATM机、POST终端、后台系统、人员培训)，而不会有很明显回报的事，国内的银行还是表现的很&#8221;理智的&#8221;。]]></description>
		<wfw:commentRss>http://cocobear.info/blog/2009/05/21/about-smartcard/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<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>
		<item>
		<title>也谈网银</title>
		<link>http://cocobear.info/blog/2009/05/15/about-ebank/</link>
		<comments>http://cocobear.info/blog/2009/05/15/about-ebank/#comments</comments>
		<pubDate>Fri, 15 May 2009 05:43:24 +0000</pubDate>
		<dc:creator>可可熊</dc:creator>
				<category><![CDATA[互联网]]></category>
		<category><![CDATA[ebank]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://cocobear.info/blog/?p=652</guid>
		<description><![CDATA[先给大家看一个关于网银与USB-KEY的科普教程： http://apex.ncksoft.com/archives/tag/usb-key 写得还不错，看完后你对目前网银的安全模式应该有个大概的了解。 目前公认最安全的网银模式就是使用2代U-KEY，就是在普通的USB-KEY的基础上增加一个确认按钮和LCD显示屏，这样可以极大的确保每一笔交易是经过你的确认。目前工行已经推出了二代U-KEY。 这里解释下二代KEY出现的背景，由于我们平时使用的电脑是“不可信环境”(在病毒、木马泛滥的年代，大部分人的电脑都可以被被木马随意操作)，所以我们不能相信自己的鼠标，比如我们点了下鼠标，做了一笔转帐交易，木马很可能帮你再点一次，这个时候就得在U-KEY上加一个确认按钮，防止木马偷偷做交易；我们也不能相信自己的眼睛，例如本来打算用1000块钱买个手机，结果木马把这个数字在发往U-KEY时改成了1W，而在屏幕上显示的仍然是1000，我们很无辜。这个时候你得在U-KEY上确认下我刚才是不是花了1000块去买那个手机。 U-KEY其实已经是一台完整的计算机了，根据冯·诺依曼原理，输入设备(LCD显示，按钮)、存储设备(16-32K)、运算器、控制器(智能卡CPU)，而且U-KEY还有自己的操作系统COS(Card Operating System)。由于平台的特殊性我们可以假定不会有木马进入这个U-KEY，因为所有针对U-KEY的操作都要通过COS对外提供的接口来完成，而且不同厂家的COS一般是不同的。这个时候U-KEY是一个“可信环境”，所以我们可以确保在按下“确认”按钮的时候U-KEY一定是对LCD上显示的交易进行了签名，签名算法可以确保该签名后的数据无法被修改。 最近公司在做U-KEY，不过不是传统意义上的USB-KEY，所以得和SSL,openssl，CSP，PKI，X509等这些安全、加密、证书相关的东西打交道。]]></description>
		<wfw:commentRss>http://cocobear.info/blog/2009/05/15/about-ebank/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>说说网站密码的安全问题</title>
		<link>http://cocobear.info/blog/2008/04/02/%e8%af%b4%e8%af%b4%e7%bd%91%e7%ab%99%e5%af%86%e7%a0%81%e7%9a%84%e5%ae%89%e5%85%a8%e9%97%ae%e9%a2%98/</link>
		<comments>http://cocobear.info/blog/2008/04/02/%e8%af%b4%e8%af%b4%e7%bd%91%e7%ab%99%e5%af%86%e7%a0%81%e7%9a%84%e5%ae%89%e5%85%a8%e9%97%ae%e9%a2%98/#comments</comments>
		<pubDate>Wed, 02 Apr 2008 11:28:41 +0000</pubDate>
		<dc:creator>可可熊</dc:creator>
				<category><![CDATA[互联网]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://cocobear.info/blog/?p=254</guid>
		<description><![CDATA[今天和一同学谈到了网站密码安全问题，大家应该在上网的时候都使用统一的用户名和密码吧，至少我是这样的，我相信大多数的人都是这样的。对于大多数的网站用户的密码都是经过一种不可逆的算法加密的（例如MD5,目前很多的网站都是MD5加密用户的密码），这里有一个假设，这些网站都存储的是加密后的用户密码，而昨天我就在学校选毕业设计时看到办公的老师直接从SQL2000里直接查询出所有带毕设老师的用户ID以及“明文”的密码，那么我在这里的密码也不就“赤裸裸”的暴露在这些老师的眼里吗？ 由此我们可以联想到还会有多少网站的密码是明文保存的呢？再假如有人有意做一个这样的陷阱网站（比如娱乐资源类），然后在后台中保存了所有用户的明文密码，那将会是一件多么可怕的事情！ 所以定期更换密码是很有必要的，还有在大多数的小网站不要使用你比较重要的密码（或者用户名），还有一个我认为比较实用的方法，可以去一些MD5查询的网站检查一下你的密码是否已经在人家的数据库里，这里推荐一个站点： 12位及12位以下数字、8位字母、全部7位及以下字母加数字等组合 我试了下10位的一个随机数，可以查到，11位的也可以查到，不过好像一个IP查询有限制，要收费了，呵呵。看来使用全数字的密码是很不安全的。赶快改吧！ 贴个MD5的代码： import hashlib hashlib.md5(&#8220;11348231&#8243;).hexdigest()]]></description>
		<wfw:commentRss>http://cocobear.info/blog/2008/04/02/%e8%af%b4%e8%af%b4%e7%bd%91%e7%ab%99%e5%af%86%e7%a0%81%e7%9a%84%e5%ae%89%e5%85%a8%e9%97%ae%e9%a2%98/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

