版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网络安全协议安全套接层协议SSL安全电子交易协议SET
在Browser和WebServer之间提供敏感信息传输通道
SocialSecurityNumber(SSN)CreditCard,etc
提供访问控制
OpenClosedSSL被设计用来使用TCP提供一个可靠的端到端安全服务,为两个通讯个体之间提供保密性和完整性(身份鉴别)SSL设计目标
Netscape公司于1994开发
SSLv2releasedin1995SSLv3alsoreleasedin1995duetobugsinv2
1996年IETF成立
TransportLayerSecurity(TLS)committeeTLSv1wasbaseduponSSLv3
Netscape、Microsoft都支持TLSv1SSL历史
SSL提供四个基本功能
AuthenticationEncryption
Integrity
KeyExchangeSSL功能采用两种加密技术
非对称加密
认证
交换加密密钥
对称加密:加密传输数据SSL功能SSL是独立于各种协议的常用于HTTP协议,但也可用于别的协议,如NNTP,TELNET等SSL的结构建立在可靠的传输协议(如TCP)基础上提供连接安全性保密性,使用了对称加密算法完整性,使用HMAC算法用来封装高层的协议SSL记录协议客户和服务器之间相互鉴别协商加密算法和密钥提供连接安全性身份鉴别,至少对一方实现鉴别,也可以是双向鉴别协商得到的共享密钥是安全的,中间人不能知道协商过程是可靠的SSL握手协议协议的使用SSL体系结构连接会话SSL基本概念连接是能提供合适服务类型的传输(在OSI分层模型中的定义)对SSL,这样的连接是对等关系连接是暂时的,每个连接都和一个会话相关连接SSL会话是指在客户机和服务器之间的关联会话由握手协议创建会话定义了一组可以被多个连接共用的密码安全参数对于每个连接,可以利用会话来避免对新的安全参数进行代价昂贵的协商会话在任意一对的双方之间,也许会有多个安全连接理论上,双方可以存在多个同时会话,但在实践中并未用到这个特性连接Vs会话会话状态参数连接状态参数pre_master_secretmastersecretClientwriteMACsecretClientwritesecretClientwriteIVServerwriteMACsecretServerwritesecretServerwriteIV各种密钥SSLHandshakeSSL握手协议报文格式ClientServer一建立安全能力ClientHelloSSLClientSSLServerPort443TheClientHellomessageiscomposedofSSLVersion(highest)thatisunderstoodbytheclient.
TLSv1elseSSLv3b.KeyExchangetoidentifythemethodofexchangingkeys.RSAifnotthenD-H.c.DataEncryptiontoidentifytheencryptionmethodsavailabletotheClient.TripleDesorelseDES
d.MessageDigestfordataintegrity.
SHAorelseMD5e.DataCompressionmethodformessageexchangePKZiporelsegzipf.ARandomnumbertocomputethesecretkeyhttps://www.SSLClientSSLServerServerHelloTheServerHellomessageiscomposedofSSLVersion(highest)thatisunderstoodbytheclient.TLSv1b.KeyExchangetoidentifythemethodofexchangingkeys.RSA.c.DataEncryptiontoidentifytheencryptionmethodsavailabletotheClient.DESd.MessageDigestfordataintegrity.
MD5e.DataCompressionmethodformessageexchangePKZip
f.ARandomnumbertocomputethesecretkey一建立安全能力DataEncryption:
RC2-40RC4-128DESDES403DESIDEA
FortezzaMessageDigest:MD5SHA.KeyExchange.
RSAFixedDiffie-HellmanEphemeralDiffie-HellmanAnonymousDiffie-Hellman
FortezzaDataCompression:PKZipWinZip
gzip
StuffItCipherSuiteAlternativesSSLClientSSLServerServerCertificateTheServerCertificatemessageiscomposedofTheserverIdentifierinformationADigitalCertificateoftheseverinformationencryptedwiththeCAsPrivateKey.Thiscontainstheserver'sPublicKeyClientCertificateRequestTheClientCertificateRequestmessageiscomposedofTheCertificatetypetoindicatethetypeofpublickeyTheCertificateAuthorityisalistofdistinguishednamesofCertificateAuthoritiesacceptabletotheServerServerDoneMessageThisServerDonemessagehasnoparameters.二服务器鉴别和密钥交换SSLClientSSLServerClientCertificateTheClientCertificatemessageiscomposedofTheserverIdentifierinformationADigitalCertificateoftheclientinformationencryptedwiththeCAsPrivateKey
TheClientAuthenticatestheServerwiththeCA.a.ExtractsthepublickeyoftherootsignedcertificatethatcameinstalledwiththeclientandComputesaMDoftheservercertificateinformation.b.Decryptstheservercertificate(thatwasissuedbytherootCA)thatcontainsthehashcomputedbytheCAPrivateKeyc.ComparesthecomputedhashwiththehashcontainedintheserverDigitalCertificate.Generatesasessionkey(psuedo-randomnumber)touseasa Pre-MasterKeythen3.Encryptsthesessionkeywiththeserver’spublickey.三客户机验证和密钥交换SSLClientSSLServerClientKeyExchangeTheClientKeyExchangemessageiscomposedofTheencryptedsessionkeywhichwillserveasapre-mastersecretkeyencryptedwiththeserver’spublickey.Boththeclientandtheserverusethepre-mastersecretkeytocomputethreeidenticalsetsofsecretkeypairsThefirstpair(i.e.DES)isusedtoencryptoutgoingtrafficfromtheclienttotheserverandtodecryptincomingtraffictotheserverwhileThesecondpair(i.e.HMAC)isusedtoencryptoutgoingtrafficfromtheserverandtodecryptincomingtraffictotheclientc.ThethirdpairisusedtoinitializethecipherIV(InitializationVector)Note:BoththeClientandtheServereachgeneratethreesetsofkeys三客户机验证和密钥交换SSLClientSSLServerC>SS>CC>SS>CEncryptionMACIVEncryptionMACIV密钥交换结果TheClientFinishmessageiscomposedofTheclientauthenticatestheserverwithamessageencryptedwiththenewlygeneratedsharedkeys.Thisvalidatestotheserverthatasecureconnectionhasbeencreated.SSLClientSSLServerClientFinishServerFinishTheServerFinishmessageiscomposedofTheserverauthenticatestheclientwithamessageencryptedwiththenewlygeneratedsharedkeys.Thisvalidatestotheclientthatasecureconnectionhasbeencreated.Note:theServerandclientcannowbegintousetheirsixsharedkeysforbulkdataencryptionutilizingtheSSLRecordLayerprotocol四完成SSLRecordProtocolByIntroducingSSLandCertificatesusingSSLeay-FrederickJ.hirschSSL记录协议操作ByIntroducingSSLandCertificatesusingSSLeay-FrederickJ.hirsch1.分片ByIntroducingSSLandCertificatesusingSSLeay-FrederickJ.hirsch2.压缩无损压缩不会增加1024字节以上长度的内容没有默认压缩算法3.MAC计算4.加密5.封装机密性:握手协议定义了共享的、可用于对SSL有效载荷进行常规加密的密钥及初始/后续的IV完整性:握手协议还定义了共享的、可用于生成报文MAC的密钥SSL记录协议提供的服务SSLChangeCipherSpecProtocol由单个报文组成,报文值为1的单个字节使得挂起状态被复制到当前状态,改变了这个连接将要使用的密文族SSL修改密码规格协议SSLAlertProtocol用于将SSL有关的告警传输给对方实体传输时按照当前状态说明被压缩和加密SSL告警协议SSL密码计算主密钥的创建共享主密钥(MasterSecret)由客户机和服务器共享,是通过安全密钥交换生成的临时48字节值MasterSecret分两个步骤生成:
交换pre_master_secret
双方计算master_secretpre_master_secret交换方法:
RSA
Diffie-Hellman主密钥的创建密码参数的生成pre_master_secretmastersecretClientwriteMACsecretClientwritesecretClientwriteIVServerwriteMACsecretServerwritesecretServerwriteIV密码参数的生成SSL通讯模型为标准的C/S结构,除了在TCP层之上进行传输之外,与一般的通讯没有什么明显的区别主要介绍如何使用OpenSSL进行安全通讯的程序设计。关于OpenSSL的一些详细的信息请参考OpenSSL的官方主页SSL程序设计OpenSSL初始化SSL环境申请证书验证证书加载SET协议概述SET协议(SecureElectronicTransaction,安全电子交易)是由VISA和MasterCard两大信用卡公司于1997年5月联合推出的规范SET主要是为了解决用户商家和银行之间通过信用卡支付的交易而设计的,以保证支付信息的机密,支付过程的完整性,商户及持卡人的合法身份以及可操作性。SET中的核心技术主要有公开密钥、加密、数字签名、数子信封、数字证书等。SET能在电子交易环节上提供更大的信任度、更完整的交易信息、更高的安全性和更少受欺诈的可能性。SET协议用以支持BtoC这种类型的电子商务模式,即消费者持卡在网上购物与交易的模式。SET实现架构SET证书体系RCABCA1GCA1GCAnCCA1MCA1BCAnGCA1GCAnPCA1CHMCPGCCA1MCA1PCA1CHMCPGCH:CardHolderMC:MerchantPG:PaymentGateway••••••••••••SET证书格式序列号签名颁发者有效期主体颁发者唯一标识符扩展由授权CA签发版本号主体公钥信息主体唯一标识符由授权CA签发通道(G)密钥使用•••证书类型证书卡需求(G)SET限定符(G)-支付网关(M)-商家授权密钥标识符商业数据(M)标准扩展SET私有扩展双联签名HH‖HEPIOIPIMDOIMDPOMDDSH:杂凑函数(SHA-1)‖:连接PIMD:支付消息摘要OIMD:订购消息摘要POMD:支付定单消息摘要E:加密(RSA)数字信封所谓数字信封是指信息发送方用信息接收方的公开密钥,将一个会话密钥(对称密钥)加密,形成一个数字信封(DigitalEnvelope,DE),然后发送给接收方,只有指定的接收方才能使用自己的秘密密钥打开(加密)DE,获取其中的对称密钥,并使用对称密钥来解读发送方传送过来的信息。SET交易过程SET交易分三个阶段进行:在购买请求阶段,用户与商家确定所用支付方式的细节在支付确认阶段,商家会与银行核实,随着交易的进展他们将得到付款在收款阶段,商家向银行出示所有交易的细节,然后银行以适当方式转移货款如果不是使用借记卡,而直接支付现金,商家在第二阶段完成以后的任何时间即可以供货支付。第三阶段将紧接着第二阶段进行,用户只和第一阶段交易有关,银行与第二三阶段有关,而商家与三个阶段都要发生关系。每个阶段都涉及到RSA对数据加密以及RSA数字签名。SET支付流程持卡人商家收单行支付网关PInitReqPInitResPReqAuthReqAuthResPResCapReqCapResSSL与SET协议的比较事实上,SET和SSL除了都采用RSA公钥算法以外,二者在其他技术方面没有太多相似之处,而RSA在二者中也被用来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度声讯服务合同
- 纸制抹布市场发展预测和趋势分析
- 2024年度慈善活动大巴车租赁运输合同
- 2024年度南京专利实施许可合同
- 2024年度保险合同及其理赔流程
- 2024年度智能安防系统建设及运维合同
- 2024年度YZA商务咨询有限公司咨询服务合同
- 04版影视版权购买与授权合同
- 羊绒衫市场发展现状调查及供需格局分析预测报告
- 2024年度城市公共照明设施维护合同
- 高中化学-探究亚铁盐和铁盐的性质及转化教学设计学情分析教材分析课后反思
- 空气压缩机技术规范标准
- 2023届高考写作指导:“奋斗的青春最美丽”作文讲评课件
- 项目竣工环保验收房地产验收报告
- 有机合成化学(山东联盟)知到章节答案智慧树2023年青岛科技大学
- 国家有关安全生产的方针政策法律法规
- 高一日语开班宣讲课件
- 新人教版九年级上册初三化学全册课件PPT(精心整理汇编)
- 高分子材料在汽车领域的应用及发展
- 人教版三年级数学下册数学广角搭配二教案
- 色彩的三属性与色立体
评论
0/150
提交评论