﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-捕风之巢-文章分类-java安全</title><link>http://www.blogjava.net/zhhp1314520/category/16188.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 02 Mar 2007 07:43:31 GMT</lastBuildDate><pubDate>Fri, 02 Mar 2007 07:43:31 GMT</pubDate><ttl>60</ttl><item><title>配置Tomcat 4使用SSL</title><link>http://www.blogjava.net/zhhp1314520/articles/tomcat_ssl.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Thu, 19 Oct 2006 09:31:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/tomcat_ssl.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/76227.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/tomcat_ssl.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/76227.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/76227.html</trackback:ping><description><![CDATA[
		<p>
				<a name="1">
						<span class="atitle2">Tomcat简介</span>
				</a>
				<br />Tomcat是 Apache Jakarta的子项目之一，作为一个优秀的开源web应用服务器，全面支持jsp1.2以及servlet2.3规范。因其技术先进、性能稳定，而且免费，因而深受Java爱好者的喜爱并得到了部分软件开发商的认可，成为目前比较流行的web应用服务器。</p>
		<p>
				<a name="2">
						<span class="atitle2">SSL(Server Socket Layer)简介</span>
				</a>
				<br />在网络上信息在源-宿的传递过程中会经过其它的计算机。一般情况下，中间的计算机不会监听路过的信息。但在使用网上银行或者进行信用卡交易的时候有可能被监视，从而导致个人隐私的泄露。由于Internet和Intranet体系结构的原因，总有某些人能够读取并替换用户发出的信息。随着网上支付的不断发展，人们对信息安全的要求越来越高。因此Netscape公司提出了SSL协议，旨在达到在开放网络(Internet)上安全保密地传输信息的目的，这种协议在WEB上获得了广泛的应用。之后IETF(www.ietf.org)对SSL作了标准化，即RFC2246，并将其称为TLS（Transport Layer Security），从技术上讲，TLS1.0与SSL3.0的差别非常微小。</p>
		<p>
				<a name="3">
						<span class="atitle2">SSL工作原理</span>
				</a>
				<br />SSL协议使用不对称加密技术实现会话双方之间信息的安全传递。可以实现信息传递的保密性、完整性，并且会话双方能鉴别对方身份。不同于常用的http协议，我们在与网站建立SSL安全连接时使用https协议，即采用https://ip:port/的方式来访问。</p>
		<p>当我们与一个网站建立https连接时，我们的浏览器与Web Server之间要经过一个握手的过程来完成身份鉴定与密钥交换，从而建立安全连接。具体过程如下：</p>
		<ol xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
				<li>用户浏览器将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送到服务器。 </li>
				<li>服务器将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送给浏览器，同时发给浏览器的还有服务器的证书。如果配置服务器的SSL需要验证用户身份，还要发出请求要求浏览器提供用户证书。 </li>
				<li>客户端检查服务器证书，如果检查失败，提示不能建立SSL连接。如果成功，那么继续。 </li>
				<li>客户端浏览器为本次会话生成pre-master secret，并将其用服务器公钥加密后发送给服务器。 </li>
				<li>如果服务器要求鉴别客户身份，客户端还要再对另外一些数据签名后并将其与客户端证书一起发送给服务器。 </li>
				<li>如果服务器要求鉴别客户身份，则检查签署客户证书的CA是否可信。如果不在信任列表中，结束本次会话。如果检查通过，服务器用自己的私钥解密收到的pre-master secret，并用它通过某些算法生成本次会话的master secret。 </li>
				<li>客户端与服务器均使用此master secret生成本次会话的会话密钥(对称密钥)。在双方SSL握手结束后传递任何消息均使用此会话密钥。这样做的主要原因是对称加密比非对称加密的运算量低一个数量级以上，能够显著提高双方会话时的运算速度。 </li>
				<li>客户端通知服务器此后发送的消息都使用这个会话密钥进行加密。并通知服务器客户端已经完成本次SSL握手。 </li>
				<li>服务器通知客户端此后发送的消息都使用这个会话密钥进行加密。并通知客户端服务器已经完成本次SSL握手。 </li>
				<li>本次握手过程结束，会话已经建立。双方使用同一个会话密钥分别对发送以及接受的信息进行加、解密。 </li>
		</ol>
		<p>
				<a name="4">
						<span class="atitle2">配置Tomcat 4.x 使用SSL</span>
				</a>
				<br />
		</p>
		<p>
				<a name="N1007F">
						<span class="atitle3">4.1 用到的软件包</span>
				</a>
				<br />
		</p>
		<ul xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
				<li>Tomcat 4.0.2 
<p>用途：Web Server。 <br />下载： <a href="http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.3/bin/">http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.3/bin/</a></p></li>
				<li>JSSE 1.0,2 
<p>用途：用来产生Tocmcat使用的秘钥对(keystore)。 <br />下载： <a href="http://java.sun.com/products/jsse/">http://java.sun.com/products/jsse/</a></p></li>
				<li>Openssl 0.9.9.6 
<p>用途：用来产生CA证书、签名并生成IE可导入的PKCS#12格式私钥。 <br />下载： <a href="http://www.openssl.org/">http://www.openssl.org/</a></p></li>
		</ul>
		<p>以上工具的安装过程可以参考自带的帮助，本文就不再详细描述了。</p>
		<p>
				<a name="N100B1">
						<span class="atitle3">4.2 建立自己的CA</span>
				</a>
				<br />
		</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.2.1 建立工作目录</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<code>
						<font face="新宋体">mkdir ca</font>
				</code>
		</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.2.2 生成CA私钥以及自签名根证书</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.2.2.1 生成CA私钥</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<code>
						<font face="新宋体">openssl genrsa -out ca\ca-key.pem 1024</font>
				</code>
		</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.2.2.2 生成待签名证书</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<code>
						<font face="新宋体">openssl req -new -out ca\ca-req.csr -key ca\ca-key.pem</font>
				</code>
		</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.2.2.3 用CA私钥进行自签名</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<code>
						<font face="新宋体">openssl x509 -req -in ca\ca-req.csr -out ca\ca-cert.pem -signkey ca\ca-key.pem -days 365</font>
				</code>
		</p>
		<p>
				<a name="N100EE">
						<span class="atitle3">4.3 设置Tomcat 4.x</span>
				</a>
				<br />
		</p>
		<p>在本文中用符号"%JDK_HOME%"来表示JDK的安装位置，用符号"%TCAT_HOME%" 表示Tomcat的安装位置。</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.3.1建立工作目录</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
				<code>
						<font face="新宋体">mkdir server</font>
				</code>
		</p>
		<p>
				<b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.3.2 生成server端证书</b>
				<br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />4.3.2.1 生成KeyPair <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">%JDK_HOME%\bin\keytool -genkey -alias tomcat_server -validity 365 -keyalg RSA -keysize 1024 -keypass changeit -storepass changeit -dname "cn=localhost, ou=department, o=company, l=Beijing, st=Beijing, c=CN" -keystore server\server_keystore</font></code></p>
		<p>4.3.2.2 生成待签名证书 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">%JDK_HOME%\bin\keytool -certreq -alias tomcat_server -sigalg MD5withRSA -file server\server.csr -keypass changeit -keystore server\server_keystore -storepass changeit</font></code></p>
		<p>4.3.2.3 用CA私钥进行签名 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">openssl x509 -req -in server\server.csr -out server\server-cert.pem -CA ca\ca-cert.pem -CAkey ca\ca-key.pem -days 365</font></code></p>
		<p>4.3.2.4 导入信任的CA根证书到JSSE的默认位置(%JDK_ROOT %/jre/security/cacerts) <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">%JDK_HOME%\bin\keytool -import -v -trustcacerts -storepass changeit -alias my_ca_root -file ca\ca-cert.pem -keystore %JDK_HOME%\jre\lib\security\cacerts</font></code></p>
		<p>4.3.2.5 把CA签名后的server端证书导入keystore <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">%JDK_HOME%\bin\keytool -import -v -trustcacerts -storepass changeit -alias tomcat_server -file server\server-cert.pem -keystore server\server_keystore</font></code></p>
		<p>4.3.2.6 查看server端证书 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">keytool -list -keystore %JDK_HOME%\jre\lib\security\cacerts keytool -list -keystore server\server_keystore</font></code></p>
		<p>4.3.3 修改server.xml使Tomcat支持SSL <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />首先找到以下内容，去掉对其的注释。然后参照红色部分修改。如果配置Tomcat不验证客户身份，可以设置clientAuth="false"。 </p>
		<p>
		</p>
		<table cellspacing="0" cellpadding="5" width="100%" bgcolor="#cccccc" border="1">
				<tbody>
						<tr>
								<td>
										<pre>
												<code>&lt;Connector className="org.apache.catalina.connector.http.HttpConnector"
           port="8443" minProcessors="5" maxProcessors="75"
           enableLookups="true"
           acceptCount="10" debug="0" scheme="https" secure="true"&gt;
&lt;Factory className="org.apache.catalina.net.SSLServerSocketFactory"
           clientAuth="true" protocol="TLS"
keystoreFile="%TCAT_HOME%/conf/server_keystore" keystorePass="changeit"
           /&gt;
</code>
										</pre>
								</td>
						</tr>
				</tbody>
		</table>然后把文件server\server_keystore复制到目录%TCAT_HOME%\conf\下。 <p><a name="N1014C"><span class="atitle3">4.4 在IE中安装个人证书</span></a><br /><b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.4.1 建立工作目录</b><br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">mkdir client</font></code></p><p><b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.4.2 生成client私钥并用CA私钥签名</b></p><p>4.4.2.1 生成client私钥 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">openssl genrsa -out client\client-key.pem 1024</font></code></p><p>4.4.2.2 生成待签名证书 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">openssl req -new -out client\client-req.csr -key client\client-key.pem</font></code></p><p>4.4.2.3 用CA私钥进行签名 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">openssl x509 -req -in client\client-req.csr -out client\client.crt -signkey client\client-key.pem -CA ca\ca-cert.pem -CAkey ca\ca-key.pem -CAcreateserial -days 365</font></code></p><p>4.4.2.4 生成client端的个人证书 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />因为JSSE1.0.2没有完全实现了对PKCS#12格式文件的操作(只能读取，不能输出)，所以在这里需要用openssl制作client端的个人证书(包含私钥)。 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" /><code><font face="新宋体">openssl pkcs12 -export -clcerts -in client\client.crt -inkey client\client-key.pem -out client\client.p12</font></code></p><p>4.4.2.5 安装信任的根证书 <br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />把ca\ca-key.pem改名为ca\ca-key.cer，在client端的IE中使用"工具 ' Internet选项 ' 内容 ' 证书 ' 导入"把我们生成的CA根证书导入，使其成为用户信任的CA。 </p><p><b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.4.3 安装个人证书</b><br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />把client.p12导入到client端的IE中作为个人证书，导入过程同4.4.2.5。 </p><p><a name="N10197"><span class="atitle3">4.5 用IE浏览器使用SSL协议访问Tomcat</span></a><br /></p><p><b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.5.1 启动Tomcat 4.x</b><br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />执行%TCAT_HOME%\bin\startup.bat启动Tomcat 4.x </p><p><b xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4.5.2 用IE访问Tomcat 4.x</b><br xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />在IE浏览器的地址栏中输入https://localhost:8443，如果前面的操作都正确的话，应该可以看到Tomcat的欢迎页面。同时状态栏上的小锁处于闭合状态，表示您已经成功地与服务器建立了要求客户端验证的SSL安全连接。 </p><p><a name="5"><span class="atitle2">结论</span></a><br />以上我们实现了为Tomcat 4.x配置要求客户端验证的SSL的全过程。对于其它类型的服务器，例如Apache，Netscape Enterprise Server, Websphere，Weblogic等，一般只是在服务器端保存证书的方式略有不同，但它们的原理都是类似的，配置时可以在本文中办法的基础上做出相应的调整。</p><p><a name="resources"><span class="atitle2">参考资料 </span></a></p><ul><li><a href="http://jakarta.apache.org/tomcat/tomcat-4.0-doc/ssl-howto.html" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Tomcat SSL Configuration HOW-TO</a><br /><br /></li><li><a href="http://www.netscape.com/eng/ssl3/" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SSL3.0规范</a><br /><br /></li><li><a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257591" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Description of the Secure Sockets Layer (SSL) Handshake (Q257591)</a><br /><br /></li><li><a href="http://java.sun.com/products/jdk/1.2/docs/tooldocs/solaris/keytool.html" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">keytool - Key and Certificate Management Tool</a><br /><br /></li><li><a href="http://www.openssl.org/docs/apps/openssl.html" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Openssl使用手册</a><br /></li></ul><p></p><table cellspacing="0" cellpadding="0" width="100%" border="0"><tbody><tr><td><a name="author1"></a><span class="atitle2">关于作者</span><br />赵梁，1995年毕业于北京航空航天大学。对J2EE, J2ME以及CORBA, Web Service等技术比较感兴趣。目前的主要工作是采用J2EE技术开发供分销企业使用的供应链/销售链ERP。可以通过电子邮件 <a href="mailto:b-i-d@163.com" xmlns:dw="http://www.ibm.com/developerworks/" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">b-i-d@163.com</a>与作者联系。</td></tr></tbody></table><img src ="http://www.blogjava.net/zhhp1314520/aggbug/76227.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-19 17:31 <a href="http://www.blogjava.net/zhhp1314520/articles/tomcat_ssl.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>openssl简介（二十五）－－指令x509</title><link>http://www.blogjava.net/zhhp1314520/articles/openssl_25.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Tue, 17 Oct 2006 07:51:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/openssl_25.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/75665.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/openssl_25.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/75665.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/75665.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 二十五.     														指令														x509																																用法：										        openssl x509 [-inform DER|PEM|NET] [-outform DER|PEM|NET]          [-key...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhhp1314520/articles/openssl_25.html'>阅读全文</a><img src ="http://www.blogjava.net/zhhp1314520/aggbug/75665.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-17 15:51 <a href="http://www.blogjava.net/zhhp1314520/articles/openssl_25.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>openssl简介（二十四）－－指令speed和指令version</title><link>http://www.blogjava.net/zhhp1314520/articles/openssl_24.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Tue, 17 Oct 2006 07:50:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/openssl_24.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/75661.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/openssl_24.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/75661.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/75661.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt; mso-bidi-font-family: 宋体">
						<span style="mso-list: Ignore">二十四.<span style="FONT: 7pt 'Times New Roman'">     </span></span>
				</span>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">speed</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用法：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    <br />    openssl speed [-elapsed] [md2] [mdc2] [md5] [hmac] [sha1] [rmd160] <br />    <br />     [idea-cbc] [rc2-cbc] [rc5-cbc] [bf-cbc] [des-cbc] [des-ede3] <br />    <br />     [rc4] [rsa512] [rsa1024] [rsa2048] [rsa4096] [dsa512] <br />    <br />     [dsa1024] [dsa2048] [idea] [rc2] [des] [rsa] [blowfish] <br />    <br />     </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">说明：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">算法在你的机器上的测试工具。</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt">
						</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    <br />    OPTIONS <br />    -elapsed <br />    set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">将使测试结果是我们比较容易懂的时间格式，否则将是和</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">time</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令那样子显示的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cpu</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时间。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">其他的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都是算法了。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt; mso-bidi-font-family: 宋体">
						<span style="mso-list: Ignore">二十五.<span style="FONT: 7pt 'Times New Roman'">     </span></span>
				</span>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">version</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用法：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    <br />    openssl version [-a] [-v] [-b] [-o] [-f] [-p] <br />    <br />    <br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">说明：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用来打印版本信息的。最没用的指令和最简单的指令。</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    <br />    OPTIONS <br />    -a <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印所有信息，</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">相当于把其他</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">全</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">起来。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当你向</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">openssl</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">官方站点报</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">bug</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的时候</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">需要把这个指令列出来的东西也告诉他们</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -v <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印当前</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">openssl</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的版本信息。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -b <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印当前版本的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">openssl</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是什么时候弄出来的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -o <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">建立库的时候的各种于加密算法和机器字节有关的信息。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -c <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编译时候的编译其的参数</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -p <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">平台信息</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/75661.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-17 15:50 <a href="http://www.blogjava.net/zhhp1314520/articles/openssl_24.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>openssl简介（二十三）－－指令sess_id</title><link>http://www.blogjava.net/zhhp1314520/articles/openssl_23.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Tue, 17 Oct 2006 07:48:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/openssl_23.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/75658.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/openssl_23.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/75658.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/75658.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt; mso-bidi-font-family: 宋体">
						<span style="mso-list: Ignore">一.<span style="FONT: 7pt 'Times New Roman'">     </span></span>
				</span>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">sess_id</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<b>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">用法：</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
						<br />    <br />    openssl sess_id [-inform PEM|DER] [-outform PEM|DER] [-in filename] <br />    <br />     [-out filename] [-text] [-noout] [-context ID] <br />    <br />    <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">说明：</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">本指令是处理</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">SSL_SESSION</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">结构的，可以打印出其中的细节。这也是一个调试工具。</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				</span>
		</b>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    -inform DER|PEM <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">指定输入格式是</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">DER</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">还是</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">PEM. <br />    -outform DER|PEM <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">指定输出格式是</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">DER</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">还是</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">PEM <br />   -in filename <br />   </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">指定输入的含有</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">信息的文件名，可以通过标准输入得到。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />   -out filename <br />   </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">指定输出</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">信息的文件名</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />   -text <br />   </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">打印出明文的密钥的各个部件。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />   -cert <br />   set</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">本</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">option</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">将会把</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">中使用的证书打印出来。如果</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">-text</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">也被</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">set, </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">那么将会把其用文本格式打印出来。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    -noout <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">不打印出</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的编码版本。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    -context ID <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">设置</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session id. </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">不常用的一个</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">option. <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">本指令的典型的输出是：</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    SSL-Session: <br />    Protocol : TLSv1 <br />    Cipher : 0016 <br />    Session-ID: 871E<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /?><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="62626" unitname="C">62626C</st1:chmetcnv>554CE95488823752CBD<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="5" unitname="F">5F</st1:chmetcnv><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="3673" unitname="a">3673A</st1:chmetcnv>3EF3DCE9 <br />    C67BD<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="916" unitname="C">916C</st1:chmetcnv>809914B40ED <br />    Session-ID-ctx: 01000000 <br />    Master-Key: A7CEFC571974BE02CAC305269DC<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="59" unitname="F">59F</st1:chmetcnv>76EA<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="9" unitname="F">9F</st1:chmetcnv>0B180CB66 <br />    <st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="42697" unitname="a">42697A</st1:chmetcnv><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="68251" unitname="F">68251F</st1:chmetcnv>2D2BB57E51DBBB<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="4" unitname="C">4C</st1:chmetcnv>7885573192AE9AEE220FACD <br />    Key-Arg : None <br />    Start Time: 948459261 <br />   Timeout : 300 (sec) <br />    Verify return code 0 (ok) <br />    Protocol <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">使用的协议版本信息。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    Cipher <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">使用的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">cipher, </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">这里是原始的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">SSL/TLS</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">里定义的代码。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    Session-ID <br />    16</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">进制的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session id <br />    Session-ID-ctx <br />    session-id-ctx</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">16</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">进制格式。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    Master-Key <br />    ssl session master key. <br />    Key-Arg <br />    key</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的参数，只用于</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">SSLv2 <br />    Start Time <br />    session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">开始的时间。标准的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">unix</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">格式。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    Timeout <br />    session-timeout</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">时间。</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    Verify return code <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">证书验证返回值</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">. <br />    ssl session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">文件的</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">pem</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">标准格式的第一行和最后一行是：</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">
				<br />    ---BEGIN SSL SESSION PARAMETERS----- <br />    -----END SSL SESSION PARAMETERS----- <br />    </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">因为</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">ssl session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">输出包含握手的重要信息：</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">master key, </span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">所以一定要用一定的加密算法把起输出加密。一般是禁止在实际应用中把</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">session</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的信息输出。我没用过这个工具。研究</span>
		<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">source</span>
		<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的时候这个可能有点用。</span>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/75658.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-17 15:48 <a href="http://www.blogjava.net/zhhp1314520/articles/openssl_23.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>openssl简介（二十二）－－指令s_server</title><link>http://www.blogjava.net/zhhp1314520/articles/openssl_22.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Tue, 17 Oct 2006 07:47:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/openssl_22.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/75656.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/openssl_22.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/75656.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/75656.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt; mso-bidi-font-family: 宋体">
						<span style="mso-list: Ignore">二十二.<span style="FONT: 7pt 'Times New Roman'">     </span></span>
				</span>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">s_server</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用法：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    <br />    openssl s_server [-accept port] [-context id] [-verify depth] <br />    <br />    [-Verify depth] [-cert filename] [-key keyfile] [-dcert filename] <br />    <br />    [-dkey keyfile] [-dhparam filename] [-nbio] [-nbio_test] [-crlf] <br />    <br />    [-debug] [-state] [-CApath directory] [-CAfile filename] [-nocert] <br />    <br />    [-cipher cipherlist] [-quiet] [-no_tmp_rsa] [-ssl2] [-ssl3] [-tls1] <br />    <br />    [-no_ssl2] [-no_ssl3] [-no_tls1] [-no_dhe] [-bugs] [-hack] [-www] <br />    <br />    [-WWW] [-engine id] <br />    <br />    <br />    <br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">说明：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">s_client</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是反义词，</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt">
						</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模拟一个实现了</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">SSL</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">server. </span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    <br />    <br />    OPTIONS <br />    -accept port <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">监听的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">TCP</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">端口。缺省为</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">4433. <br />    -context id <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设置</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL context</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">id, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可以设置为任何值。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL context</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是什么？编程的章节会详细介绍的。你也可以不</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有缺省的给你用的。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -cert certname <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用的证书文件名。缺省使用</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> ./server.pem <br />    -key keyfile <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用的私有密钥文件。如果没有指定，那么证书文件会被使用。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">???? <br />    The private key to use. If not specified then the certificate <br />    file will be used. <br />    -dcert filename, -dkey keyname <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指定一个附加的证书文件和私有密钥文件。不同的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">需要不同的证书和</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">私有密钥文件。这个不同的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">主要指</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里面的不对称加密算法不同</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">  </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">比如基于</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">RSA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">需要的是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">RSA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的私有密钥文件和证</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">书</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">而基于</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">DSA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的算法</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">  </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">则需要的是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">DSA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的私有密钥文件和证书</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">.</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可以让这样我们的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">同时支持俩种算法的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">成为可</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">能。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -nocert <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不想使用任何证书，</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option. <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目前只有</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">anonymous DH</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">算法有需要这么做。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -dhparam filename <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">DH</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">参数文件名。如果没有</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那么</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">会试图去从证书文件里面获得这些参数。如果证书里面没有这么参数，一些</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">hard code</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的参数就被调用。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -nodhe <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">禁止使用基于</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">EDH</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher. <br />    -no_tmp_rsa <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">现在的出口</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有时会使用临时</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">RSA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">密钥。那就是说每次对话的时候临时生成密钥对。本</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">optio</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就是用来禁止这种情况的。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -verify depth, -Verify depth <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">意义和</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">s_client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一样，但同时表示必须验证</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书。不记得</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书验证是可以选的吗？</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">- verify</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表示向</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">要求证书，但</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">还是可以选择不发送证书，</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">-Verify</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表示一定要</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书验证，否则握手告吹。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -CApath directory <br />    -CAfile file <br />    -state <br />    -debug <br />    -nbio_test <br />    -nbio <br />    -crlf <br />    -quiet <br />    -ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1 <br />    -bugs <br />    -cipher cipherlist <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这些</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">于</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">s_client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的同名</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">意义相同。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面俩个指令模拟一个简单的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">http server. <br />    -www <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连接上来的时候，发回一个网页，内容就是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">握手的一些内容。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -WWW <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用来把具体某个文件当网页发回给</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的请求。比如</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">URL</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">请求是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> https://myhost/page.html ,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就把</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> ./page.html</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">发回给</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client.</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果没有</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set -www, -WWW</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这俩个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">ssl client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连接上来的话它所发过来的任何东西都会显示出来，你在终端输入的任何东西都会发回</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">给</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client.</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你可以通过在终端输入的行的第一个字母控制一些行为</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    q: <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中断当前连接，但不关闭</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server. <br />    Q <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中断当前连接，退出程序。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    r <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">renegotiate</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">行为。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    R <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">renegotiate</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">行为</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">并且要求</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    P <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">TCP</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">层直接送一些明文。这会使</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">认为我们没有按协议的游戏规则进行通信而断开连接。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    S <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印出</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session-cache</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的状态信息。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session-cache</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在编程章节会详细介绍。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    NOTES <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用于调试</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">ssl client. <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下一条指令用来模拟一个小的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">http server, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">监听</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">443</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">端口。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    openssl s_server -accept 443 -www <br />    session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的参数可以用</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">sess_id</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令打印。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我对这条指令实在没有兴趣，一般使用</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">openssl</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都是用做</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">没有机会调试</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client.</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我甚至没有用过这个指令。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/75656.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-17 15:47 <a href="http://www.blogjava.net/zhhp1314520/articles/openssl_22.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>openssl简介（二十一）－－指令s_client</title><link>http://www.blogjava.net/zhhp1314520/articles/openssl_21.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Tue, 17 Oct 2006 07:46:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/openssl_21.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/75654.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/openssl_21.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/75654.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/75654.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="FONT-SIZE: 9pt; mso-bidi-font-family: 宋体">
						<span style="mso-list: Ignore">二十一.<span style="FONT: 7pt 'Times New Roman'">     </span></span>
				</span>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">s_client</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用法：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    <br />    openssl s_client [-connect host:port&gt;;] [-verify depth] [-cert filename] <br />    <br />    [-key filename] [-CApath directory] [-CAfile filename] [-reconnect] <br />    <br />    [-pause] [-showcerts] [-debug] [-nbio_test] [-state] [-nbio] [-crlf] <br />    <br />    [-ign_eof] [-quiet] [-ssl2] [-ssl3] [-tls1] [-no_ssl2] [-no_ssl3] <br />    <br />    [-no_tls1] [-bugs] [-cipher cipherlist] <br />    <br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">描述：</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">
								<br />    </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用于模拟一个普通的</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">SSL/TLS client, </span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对于调试和诊断</span>
				</b>
				<b>
						<span lang="EN-US" style="FONT-SIZE: 9pt">SSL server</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">很有用。</span>
				</b>
				<b>
						<span style="FONT-SIZE: 9pt">
						</span>
				</b>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    <br />    OPTIONS <br />    -connect host:port <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个不用解释了吧，</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连接的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">ip:port. <br />    -cert certname <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用的证书文件。如果</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不要求要证书，这个可以省略。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -key keyfile <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用的私有密钥文件</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -verify depth <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指定验证深度。记得</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也是分层次的吧？如果对方的证书的签名</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">Root CA,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那么你可以再去验证给该</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书签名的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一直到</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">Root CA. </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目前的验证操作即使这条</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">链上的某一个证书验证有问题也不会影响对更深层的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的身份的验证。所以整个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">链上的问题都可以检查出来。当然</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的验证出</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">问题并不会直接造成连接马上断开，好的应用程序可以让你根据验证结果决定下一步怎么走。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -CApath directory <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一个目录。里面全是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的验证资料，该目录必须是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">"</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">哈希结构</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">". verify</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指令里会详细说明。在建立</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书链的时候也有用到这个指令。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -CAfile file <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">某文件，里面是所有你信任的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书的内容。当你要建立</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书链的时候也需要用到这个文件。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -reconnect <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用同样的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session-id</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连接同一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">五次，用来测试</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">缓冲功能是否有问题。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -pause <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">每次读写操作后都挺顿一秒。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -showcerts <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">显示整条</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书链。否则只显示</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -prexit <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当程序退出的时候打印</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的信息。即使连接失败，也会打印出调试信息。一般如果连接成功的话，调试信息将只被打出来一次。本</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">比较有</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用，因为在一次</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">连接中，</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也可能改变，或者连接可能失败。要注意的是：有时候打印出来的东西并不一定准确。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">(</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样也行？？</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">eric, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">言重了</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">.) <br />    -state <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的状态，</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> ssl</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也是一个协议，当然有状态。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -debug <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打印所有的调试信息。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -nbio_test <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">检查非阻塞</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">socket</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">I/O</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">运行情况。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -nbio <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用非阻塞</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">socket <br />    -crlf <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">回把你在终端输入的换行回车转化成</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">/r/n</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">送出去。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    -ign_eof <br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当输入文件到达文件尾的时候并不断开连接。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />   -quiet <br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不打印出</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和证书的信息。同时会打开</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">-ign_eof</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option. <br />   -ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1 <br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">选择用什么版本的协议。很容易理解，不用多解释了吧。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">注意，有些很古老的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就是不能处理</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">TLS1, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所以这个时候要关掉</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">TLS1.n. <br />   -bugs <br />   SSL/TLS</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有几处众所周知的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">bug, set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使出错的可能性缩小。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />   -cipher cipherlist <br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">由我们自己来决定选用什么</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，尽管是由</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">来决定使用什么</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">但它一般都会采用我们送过去的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">列表里的第一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher. <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有哪些</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可用？指令</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">cipher</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对这个解释的更清楚。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一旦和某个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">建立连接之后，所有从</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">得到的数据都会被打印出来，所有你在终端上输入的东西也会被送给</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server. </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这是人机交互式的。这时候不能</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set -quiet</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> -ign_eof</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这俩个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。如果输入的某行开头字母是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">R,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那么在这里</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">session</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">会</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">renegociate, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果输入的某行开头是</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">Q, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那么连接会被断开。你完成整个输入之后连接也会被断开。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    If a connection is established with an SSL server then any data received from the server is displayed and any key presses will be sent to the server. When used interactively (which means neither -quiet nor -ign_eof have been given), the session will be renegociated if the line begins with an R, and if the line begins with a Q or if end of file is reached, the connection will be closed down. <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">本指令主要是来</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">debug</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的。如果想连接某个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL HTTP server,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">输入下一条指令：</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />   openssl s_client -connect servername:443 <br />   </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果连接成功，你可以用</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">HTTP</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的指令，比如</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">"GET /"</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">什么的去获得网页了。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果握手失败，原因可能有以下几种：</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    1. server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">需要验证你的证书，但你没有证书</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    2.</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果肯定不是原因</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">1, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那么就慢慢一个一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">以下几个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option <br />    -bugs, -ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1 <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这可能是因为对方的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">处理</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">SSL</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">bug. <br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有的时候，</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">会报错：没有证书可以使用，或者供选择的证书列表是空的。这一般是因为</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">Server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">没有把给你签名的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的名字列进它自己认为可以</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">信任的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">列表</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">,</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你可以用检查一下</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的信任</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">列表。有的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">http server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">只在</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt"> client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">给出了一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">URL</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之后才验证</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书，这中情况下要</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set -prexit</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">option, </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">并且送给</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一个页面请求。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">即使使用</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">-cert</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">指明使用的证书，如果</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不要求验证</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书，那么该证书也不会被验证。所以不要以为在命令行里加了</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">-cert </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的参数又连接成功就代表你的证书没有问题。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果验证</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书没有问题，就可以</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">set -showcerts</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">来看看</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">server</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的证书的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">CA</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">链了。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">其实这个工具并不好用，</span>
				<span style="FONT-SIZE: 9pt">
				</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">自己写一个</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">client</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的会方便很多。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">举例时间：</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">注意，中间的</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">pop3</span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">协议的指令是我通过终端输入的。其他都是程序输出的对话</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />    </span>
				<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">过程。具体的每行意义不用解释了。</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt">
						<br />
						<br />
						<br />openssl s_client -key server.key -verify 1 -showcerts -prexit -state \ <br />    -crlf -connect 127.0.0.1:5995 <br />    verify depth is 1 <br />    CONNECTED(00000003) <br />    SSL_connect:before/connect initialization <br />    SSL_connect:SSLv2/v3 write client hello A <br />    SSL_connect:SSLv3 read server hello A <br />    depth=0 /C=AU/ST=Some-State/L=gz/O=ai ltd/OU=sw/CN=fordesign/ <br />    Email=xxx@xxx.xom <br />    verify error:num=20:unable to get local issuer certificate <br />    verify return:1 <br />    depth=0 /C=AU/ST=Some-State/L=gz/O=ai ltd/OU=sw/CN=fordesign/ <br />    Email=xxx@xxx.xom <br />    verify error:num=27:certificate not trusted <br />    verify return:1 <br />    depth=0 /C=AU/ST=Some-State/L=gz/O=ai ltd/OU=sw/CN=fordesign/ <br />    Email=xxx@xxx.xom <br />    verify error:num=21:unable to verify the first certificate <br />    verify return:1 <br />    SSL_connect:SSLv3 read server certificate A <br />    SSL_connect:SSLv3 read server done A <br />    SSL_connect:SSLv3 write client key exchange A <br />    SSL_connect:SSLv3 write change cipher spec A <br />    SSL_connect:SSLv3 write finished A <br />    SSL_connect:SSLv3 flush data <br />    SSL_connect:SSLv3 read finished A <br />    Certificate chain <br />    0 s:/C=AU/ST=Some-State/L=gz/O=ai ltd/OU=sw/CN=fordesign/Email=xxx@xxx.xom <br />    i:/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=fordesign/ <br />    Email=fordeisgn@21cn.com <br />    ----BEGIN CERTIFICATE----- <br />    MIIDdzCCAuCgAwIBAgIBATANBgkqhkiG9w0BAQQFADB8MQswCQYDVQQGEwJBVTET <br />    MBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lkZ<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /?><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="2" unitname="l">2l</st1:chmetcnv>0cyBQ <br />    dHkgTHRkMRIwEAYDVQQDEwlmb3JkZXNpZ24xITAfBgkqhkiG9w0BCQEWEmZvcmRl <br />    aXNnbkAyMWNuLmNvbTAeFw0wMDExMTIwNjE5MDNaFw0wMTExMTIwNjE5MDNaMH0x <br />    CzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMQswCQYDVQQHEwJnejEP <br />    MA0GA1UEChMGYWkgbHRkMQswCQYDVQQLEwJzdzESMBAGA1UEAxMJZm9yZGVzaWdu <br />    MRowGAYJKoZIhvcNAQkBFgt4eHhAeHh4LnhvbTCBnzANBgkqhkiG9w0BAQEFAAOB <br />    jQAwgYkCgYEAuQVRVaCyF+a8/927cA9CjlrSEGOL17+Fk1U6rqZ8fJ6UR+kvhUUk <br />    fgyMmzrw4bhnZlk2NV5afZEhiiNdRri<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="9" unitname="F">9f</st1:chmetcnv>8loklGRXRkDfmhyUWtjiFWUDtzkuQoT <br />    6jhWfoqGNCKh/92cjq2wicJpp40wZGlfwTwSnmjN9/eNVwEoXigSy5ECAwEAAaOC <br />    AQYwggECMAkGA1UdEwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJh <br />    dGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBS+WovE66PrvCAtojYMV5pEUYZtjzCB <br />    pwYDVR0jBIGfMIGcgBRpQYdVvVKZ0PXsEX8KAVNYTgt896GBgKR+MHwxCzAJBgNV <br />    BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX <br />    aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMTCWZvcmRlc2lnbjEhMB8GCSqGSIb3DQEJ <br />    ARYSZm9yZGVpc2duQDIxY24uY29tggEAMA0GCSqGSIb3DQEBBAUAA4GBADDOp/O/ <br />    o3mBZV4vc<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="3" unitname="mm">3mm</st1:chmetcnv><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="2" unitname="C">2C</st1:chmetcnv>6CcnB7rRSYEoGm6T6OZsi8mxyF5w1NOK5oI5fJU8xcf8aYFVoi <br />    0i4LlsiQw+EwpnjUXfUBxp/g4Cazlv57mSS6h1t<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="4" unitname="a">4a</st1:chmetcnv>/BPOIwzcZGpo/R<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="3" unitname="g">3g</st1:chmetcnv>/fOPwsF <br />    F/2RC++81s6k78iezFrTs9vnsm/G4vRjngLI <br />    -----END CERTIFICATE----- <br />    --- <br />    Server certificate <br />    subject=/C=AU/ST=Some-State/L=gz/O=ai ltd/OU=sw/CN=fordesign/ <br />    Email=xxx@xxx.xom <br />    issuer=/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=fordesign/ <br />    Email=fordeisgn@21cn.com <br />    --- <br />    No client certificate CA names sent <br />    --- <br />    SSL handshake has read 1069 bytes and written 342 bytes <br />    --- <br />    New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA <br />    Server public key is 1024 bit <br />    SSL-Session: <br />    Protocol : SSLv3 <br />    Cipher : DES-CBC3-SHA <br />    Session-ID: E1EC3B<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="51" unitname="F">051F</st1:chmetcnv>5DB8E2E3D3CD10E<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="4" unitname="C">4C</st1:chmetcnv>0412501DDD6641ACA932B65 <br />    DC25DCD<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="0" unitname="a">0A</st1:chmetcnv><st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="3" unitname="a">3A</st1:chmetcnv>86E <br />    Session-ID-ctx: <br />    Master-Key: 47DB<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="3" unitname="a">3A</st1:chmetcnv>86375DB2E99982AFD<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="8" unitname="F">8F</st1:chmetcnv>5B382B4316385694B01B74BFC3 <br />    FA<st1:chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="26" unitname="C">26C</st1:chmetcnv>7DBD489CABE0EE1B20CE8E95E4ABF930099084B0 <br />    Key-Arg : None <br />    Start Time: 974010506 <br />    Timeout : 300 (sec) <br />    Verify return code: 0 (ok) <br />    --- <br />    +OK AIMC POP service (sol7.gzai.com) is ready. <br />    user ssltest0 <br />    +OK Please enter password for user &lt;ssltest0&gt;;. <br />    pass ssltest0 <br />    +OK ssltest0 has 12 message (282948 octets)