<?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; 安全相关</title>
	<atom:link href="http://cocobear.info/blog/category/%e5%ae%89%e5%85%a8%e7%9b%b8%e5%85%b3/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>Openssl建立SSL连接分析</title>
		<link>http://cocobear.info/blog/2009/05/22/openssl-connect/</link>
		<comments>http://cocobear.info/blog/2009/05/22/openssl-connect/#comments</comments>
		<pubDate>Fri, 22 May 2009 02:29:15 +0000</pubDate>
		<dc:creator>可可熊</dc:creator>
				<category><![CDATA[安全相关]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[openssl]]></category>

		<guid isPermaLink="false">http://cocobear.info/blog/?p=659</guid>
		<description><![CDATA[SSL_library_init(); SSL的初始化过程，只是添加一些算法，使用EVP_add_cipher函数。 ssl_method = SSLv3_client_method(); 设置使用的SSL版本，SSLv3_client_method 函数的定义是通过IMPLEMENT_ssl3_meth_func(ssl/s3_clnt.c)这个宏来实现，而这个宏在ssl/ssl_locl.h 文件中实现，使用了粘贴宏的技巧来根据传入不同的函数名生成不同的函数定义。 SSLv3_client_method 定义了一组关于SSL V3的操作函数： static SSL_METHOD func_name##_data= { SSL3_VERSION, ssl3_new, ssl3_clear, ssl3_free, s_accept, s_connect, ssl3_read, ssl3_peek, ssl3_write, ssl3_shutdown, ssl3_renegotiate, ssl3_renegotiate_check, ssl3_get_message, ssl3_read_bytes, ssl3_write_bytes, ssl3_dispatch_alert, ssl3_ctrl, ssl3_ctx_ctrl, ssl3_get_cipher_by_char, ssl3_put_cipher_by_char, ssl3_pending, ssl3_num_ciphers, ssl3_get_cipher, s_get_meth, ssl3_default_timeout, &#38;SSLv3_enc_data, ssl_undefined_void_function, ssl3_callback_ctrl, ssl3_ctx_callback_ctrl, }; SSL_CTX = SSL_CTX_new(ssl_method); 创建SSL_CTX这个结构体，进行初始化赋值操作，设置一些参数，使用默认的engine。openssl的engine是对基础的加密算法进行了封装，这样可以方便的对底层的加密算法进行替换，例如你可能使用硬件加密来替换掉openssl的软实现加密算法，而你所做的只是按照engine的接口实现相关的算法，然后设置engine的名字。例如U-KEY的RSA签名必须在硬件中完成，这时你就可以通过engine调用CSP来实现签名算法。 SSL_CTX_use_certificate_file(SSL_CTX,&#8221;client.cer&#8221;,SSL_FILETYPE_PEM) 设置客户端使用的证书，从文件中读取BASE64(SSL_FILETYPE_PEM这个参数指定)编码的证书，然后转换为openssl 的X509结构，提取公钥，设置SSL_CTX相关的结构。 SSL_CTX_use_PrivateKey_file(SSL_CTX, &#8220;client.key&#8221;, SSL_FILETYPE_PEM) [...]]]></description>
		<wfw:commentRss>http://cocobear.info/blog/2009/05/22/openssl-connect/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<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>
	</channel>
</rss>

