------简单就是美
电子商务的安全需求 信息安全需求、信用安全需求、管理安全需求和法律保障安全需求 1)信息的保密性; 2)信息的完整性; 3)信息的不可否认性; 4)交易者身份的真实性; 5)系统的可靠性、可用性、可控性 信息的保密性技术 1、加密/解密技术 1) 加密/解密技术是一种用来防止信息泄露的技术。电子商务中的信息在通过Internet传送之前,为了防止信息的内容被他人有意或无意的知晓,需要将它的内容通过一定的方法转变成别人看不懂的信息,这个过程就是加密(Encription);而将看不懂的信息再转变还原成原始信息的过程称为解密(Decription)。这里,加密之前的信息被称为明文(plaintext),加密之后的内容称为密文,加密通常要采用一些算法(对应着加密/解密的程序),而这些算法需要用到不同的参数,这些不同的参数称作密钥,密钥空间是所有密钥的集合。 2) 类型 按照历史发展阶段::手工加密、机械加密、电子机内乱加密、计算机加密 按照保密程度:理论上保密的加密、实际上保密的加密、不保密的加密三种类型 按照密钥使用方式:对称加密和非对称加密 i ) 对称加密 也叫共享密钥加密或机密密钥加密,收发双方拥有相同的单个密钥,这把密钥既可用于加密,也可用于解密,即加密和解密使用的是相同的一把密钥,此密钥又称为对称密钥或会话密钥。 常见的对称加密方法有DES、3DES、AES、BASE64等: DES(Data Encryption Standard) : 算法输入的是64比特的明文,在64比特密钥的控制下产生64比特的密文;反之输入64比特的密文,输出64比特的明文。64比特 的密钥中含有8个比特的奇偶校验位,所以实际有效密钥长度为56比特 。 3DES: 是DES算法扩展其密钥长度的一种方法,可使加密密钥长度扩展到128比特(实际有效位为112比特)或192比特(实际有效位为168比特)。其基本原理是将128比特 的密钥分为64比特的两组,对明文多次进行普通的DES加解密操作,从而增强加密强度。 AES(Advanced Encryption Standard):AES处理以128bit数据块为单位的对称密钥加密算法,可以用长为128、192和256位的密钥加密。 Base64 加密(编码): 先将要编码的信息内容(明文)以二进制流的形式排成一行,从高位开始,每6位为一个单位进行排列。例如,信息内容为字符流“ABCD”,在计算机中以ASCII码进行编码,因此对应的二进制流为: 01000001,01000010,01000011,01000100 上述二进制流以6位为单位重新排列,结果为: 010000,010100,001001,000011,010001,00 由于末尾一组不足6位,在不足六位的后面补零,组成6位,结果为: 010000,010100,001001,000011,010001,000000 根据符号到数字的映射表,把6位二进制流对应的数值分别转化成相应的数字,重新整理成一个字符流 规定编码的原始字符流字节数应是3的整数倍,原始字符流“ABCD”还需要补足两个字节,总的字节数才能被3整除,为此后面需补上两个“=”字符,所以原始字符流“ABCD”的最终Base64编码为: QUJDRA== 例: 使用Openssl软件包,对文件进行BASE64编码与解码 openssl enc -base64 -d -in 026h23fbase64.txt -out 026h23fplain.txt ii ) 非对称加密 非对称加密方法中使用一对密钥:公钥(public key)和私钥(private key)组合。用公钥加密的密文只能用私钥解密,反之,用私钥加密的密文只能用公钥解密。在操作过程中,公钥可向外界发布,让其他人知道,私钥则自己保存,只有自己知道。 RSA: 由Ron Rivest,Adi Shamir和Leonard Adleman三人首创,是一种公开密钥加密方法; 它的原理是:先由密钥管理中心产生一对公钥和私钥,称为密钥对。产生方法如下:先产生两个足够大的强质数p、q。可得p与q的乘积为 n=p×q。再由p和q算出另一个数z=(p-1)×(q-1),然后再选取一个与z互素的奇数b,称b为公开指数;从这个b值可以找出另一个值a,并能满足b×a=1 (mod z)条件。由此而得到的两组数(n,b)和(p,q,a)分别被称为公开密钥和秘密密钥,或简称公钥和私钥。若对明文信息x(0<=x<n)加密,其加密算法是y=E(x)=xb (mod n) ,而解密算法是D(y)=ya (mod n)。 RSA算法基于大整数因子分解这一著名的数学难题 RSA特点: 优点:能适应网络的开放性要求,密钥管理简单,并且可方便地实现数字签名和身份认证等功能,是目前电子商务等技术的核心基础。 缺点:算法复杂,加密数据的速度和效率较低,只能对小批量的数据进行加密。 在实际应用中,通常将对称加密算法和非对称加密算法结合使用,利用对称加密算法来进行大容量数据的加密,而采用RSA等非对称加密算法来传递对称加密算法所使用的密钥,通过这种方法可以有效地提高加密的效率并能简化对密钥的管理。 例: 使用Openssl软件,产生一对RSA非对称密钥(公钥与私钥),并分别用它们来对某个文件进行加密和解密。 openssl genrsa -des3 -out myrsaCA.key 1024,将会产生一个RSA私钥,私钥放在myrsaCA.key文件中 ; 用公钥加密的文件,以后需要用私钥来解密(加密模式): openssl rsautl -encrypt -in 026h23f.txt -inkey myrsaCA.key -out pub026h23f.enc openssl rsautl -decrypt -in pub026h23f.enc -inkey myrsaCA.key -out newpub026h23f.txt 用私钥加密的文件,以后需要用公钥来解密(签名模式): openssl rsautl -sign -in 026h23f.txt -inkey myrsaCA.key -out pri026h23f.enc openssl rsautl -verify -in pri026h23f.enc -inkey myrsaCA.key -out newpri026h23f.txt 防火墙技术 1、实现保密的另外一种方法是进行存取访问控制,对敏感数据的访问实行身份验证,具备合法身份的允许其访问,不合法身份的禁止其访问,放火墙技术正是为实现这一目的而产生的。 2、“防火墙”是一种形象的说法, 其实它是一种由计算机硬件和软件的组合, 使互联网与内部网之间建立起一个安全网关( scurity gateway), 从而保护内部网免受非法用户的侵入,它其实就是一个把互联网与内部网(通常这局域网或城域网)隔开的屏障 类型 1)包过滤型: 包过滤型防火墙可以动态检查通过防火墙的TCP/IP报文头中的报文类型、源IP地址、目标IP地址、源端口号等信息,与预先保存在防火墙中的清单进行对照,按预定的安全策略决定哪些报文可以通过、哪些报文不可以通过。 2)应用网关型: 使用代理技术,在内部网与外部网之间建立一个单独的子网,该子网有一个代理主机,通过路由器和网关分别与内、外网连接,代理主机对外部和内部用户的网络服务请求进行认证,对于合法用户的服务请求,代理主机则连接内部网与外部网,自己作为通信的中介,外部用户只能获得经过代理的内部网服务,从而保护内部网络资源不受侵害。 数据完整性技术 要保证数据的完整性,技术上可以采用信息摘要(数字指纹)的方法或者采用数字签名的方法; 数字摘要: 采用单向Hash函数(如SHA,MD5等)对要传送的信息内容进行某种变换运算,得到固定长度的摘要信息 例: 使用Openssl软件,对某个文件产生数字摘要 。 openssl dgst -md5 -out 026h23f.md5 026h23f.txt 不可否认技术 要达到不可否认的目的,可以采用数字签名和数字时间戳等技术 ; 数字签名 例: 使用Openssl软件,对某个文件产生的数字摘要进行签名,并验证签名。 openssl dgst -md5 -out 026h23f.sign -sign 026h23f.key 026h23f.txt openssl dgst -md5 -signature 026h23f.sign -prverify 026h23f.key 026h23f.txt 数字时间戳 身份认证技术 需要借助于数字证书的技术,设立安全认证中心,制定一系列的安全协议等来实现。 1) 数字证书 数字证书(Digital Certificate)是一种权威性的电子文档,提供了一种在Internet上验证身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是利用数字签名技术由一个权威机构—CA证书认证(Certificate Authority)中心签发。 数字证书概念最早由MIT的Kohnfelder于1978年在他的本科毕业论文中提出,内容是通过数字签名来保护命名的证书(名字/密钥对),从而可将公钥分散存放和访问,克服将公钥集中存放到一个数据库中而带来的访问性能问题,因此,数字证书除了可用于网上证明交易者的身份,还有另外一个作用,可以利用它来分发交易者的公钥。 2) 数字证书颁发过程 用户向注册中心RA提出申请,注册中心首先为用户产生密钥对,然后生成一个称为csr(数字证书请求)的文件,内含公钥及部分用户身份信息;认证中心CA收到RA的csr文件后,将执行一些必要的核实步骤,以确信请求是真实的,然后进行签名,生成数字证书。这样该证书内包含有用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。 数字证书类型 按用途:个人数字证书、服务器数字证书、代码签名证书; 按格式:X.509、 PGP、 SDSI/SPKI、 X9.59(AADS)、 AC等类型的证书; 按协议:SSL证书(服务于银行对企业或企业对企业的电子商务活动)、SET证书(服务于持卡消费、网上购物)等。 X.509数字证书的数据结构 3) 认证中心 认证中心CA(Certificate Authority),作为电子交易中受信任的第三方,负责为电子商务环境中各个实体颁发数字证书,以证明各实体身份的真实性,并负责在交易中检验和管理证书 。 CA认证中心的功能主要有:证书发放、证书更新、证书撤销和证书验证。 具体为: 接收验证用户数字证书的申请。 确定是否接受用户数字证书的申请,即证书的审批。 向申请者颁发(或拒绝颁发)数字证书。 接收、处理用户的数字证书更新请求。 接收用户数字证书的查询、撤销。 产生和发布证书的有效期。 数字证书的归档。 密钥归档。 历史数据归档。 VeriSign 是最大的公共 CA ,中国数字认证网、中国商务在线 4) 数字证书的申请与应用 首先在认证中心的网站上下载并安装认证中心的根证书(所谓根证书,是指认证中心自己为自己颁发的数字证书);然后填写相关的申请表格,提交相关材料,提出申请,认证中心收到申请后,将为用户生成一个临时的证书,并将证书的序列号返回给用户;接下来,认证中心对用户身份进行仔细核查,核查通过后将为用户颁发由自己签过名的正式数字证书,用户得到此证书后就可以进行譬如对电子邮件进行加密等操作了 。 例: 利用Openssl软件,为用户颁发数字证书 安全协议 常用的安全协议:安全套接层协议、安全电子交易协议、安全超文本传输协议、安全多媒体Internet邮件扩展协议等 。 安全套接层协议(SSL,Secure Sockets Layer) SSL安全协议最初是由Netscape Communication公司设计开发; SSL安全协议主要提供三方面的服务: 一是用户和服务器的合法性认证; 二是加密数据以隐藏被传送的数据; 三是保护数据的完整性。 安全套接层协议的通信过程 : 接通阶段:客户通过网络向服务商打招呼,服务商回应; 密码交换阶段:客户与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的选用Diffie-Hellmanf和Fortezza-KEA密码算法; 会谈密码阶段:客户与服务商间产生彼此交谈的会谈密码; 检验阶段:检验服务商取得的密码; 客户认证阶段:验证客户的可信度; ……加密资料传送…… 结束阶段,客户与服务商之间相互交换结束的信息 安全套接层协议的缺点 : i ) SSL协议运行的基点是商家对客户信息保密的承诺。但在上述流程中我们也可以注意到,SSL协议有利于商家而不利于客户。客户的信息首先传到商家,商家阅读后再传至银行,这样,客户资料的安全性便受到威胁。 商家认证客户是必要的,但整个过程中,缺少了客户对商家的认证。在电子商务的开始阶段,由于参与电子商务的公司大都是一些大公司,信誉较高,这个问题没有引起人们的重视。随着电子商务参与的厂商迅速增加,对厂商的认证问题越来越突出,SSL协议的缺点完全暴露出来。 安全电子交易协议(SET,Secure Electronic Transaction) ii ) 为了克服SSL安全协议的缺点,满足电子交易持续不断地增加的安全要求,为了达到交易安全及合乎成本效益的市场要求,VISA国际组织及其它公司如Master Card、Micro Soft、IBM等共同制定了安全电子交易协议。这是一个为在线交易而设立的一个开放的、以电子货币为基础的电子付款系统规范,它采用公钥密码体制和X.509数字证书标准,主要应用于BtoC模式中保障支付信息的安全性; SET在保留对客户信用卡认证的前提下,又增加了对商家身份的认证 (双重签名); SET协议比SSL协议复杂 。 安全电子交易协议要达到的目标 保证电子商务参与者信息的相互隔离。客户的资料加密或打包后边过商家到达银行,但是商家不能看到客户的账户和密码信息; 保证信息在因特网上安全传输,防止数据被黑客或被内部人员窃取; 解决多方认证问题,不仅要对消费者的信用卡认证,而且要对在线商店的信誉程度认证,同时还有消费者、在线商店与银行间的认证; 保证了网上交易的实时性,使所有的支付过程都是在线的; 规范协议和消息格式,促使不同厂家开发的软件具有兼容性和互操作功能,并且可以运行在不同的硬件和操作系统平台上。 SET安全协议的工作原理主要包括以下7个步骤: 消费者利用已有的计算机通过因特网选定物品,并下电子订单; 通过电子商务服务器与网上商场联系,网上商场做出应答,告诉消费者的订单的相关情况; 消费者选择付款方式,确认订单,签发付款指令(此时SET介入); 在SET中,消费者必须对定单和付款指令进行数字签名,同时利用双重签名技术保证商家看不到消费者的账号信息; 在线商店接受定单后,向消费者所在银行请求支付认可,信息通过支付网关到收单银行,再到电子货币发行公司确认,批准交易后,返回确认信息给在线商店; 在线商店发送定单确认信息给消费者,消费者端软件可记录交易日志,以备将来查询; 在线商店发送货物或提供服务,并通知收单银行将钱从消费者的账号转移到商店账号,或通知发卡银行请求支付。 其他安全协议 安全超文本传输协议,即S-HTTP:基于SSL,通过密钥加密技术,保障了Web站点上信息的安全,为Web文档提供完整性、鉴别、不可抵赖和机密性等安全措施。支持S-HTTP协议的网站URL以shttp://标识开始。 安全多媒体Internet邮件扩展协议(S/MIME):用于安全地传输电子邮件 PKI技术 PKI体系结构采用证书来管理公钥,通过第三方的可信机构CA,把用户的公钥和用户的其他标识信息(如名称、e-mail、身份证号等)捆绑在一起,在Internet网上验证用户的身份;同时,在PKI体系结构中,把公钥密码和对称密码结合起来,以实现密钥的自动管理,保证网上数据的机密性、完整性。 广义上,所有提供公钥加密和数字签名服务的系统,都可叫做PKI系统 。 狭义上,符合PKCS(公开钥密码标准,public-Key cryptography Standard)的系统。典型、完整、有效的PKI应用系统至少应具有以下部分: 公钥密码证书管理、黑名单的发布和管理、密钥的备份和恢复、自动更新密钥、自动管理历史密钥、支持交叉认证。 思考: 电子商务的安全需求有哪些?为保障安全,各采用什么技术? 什么是信息安全?其安全保障体系有哪几方面? 数据完整、不可否认的含义是什么? 现代加密技术的种类有哪些?请用Openssl软件对某个文件进行加密。 什么是对称加密?什么是非对称加密?常见的对称加密与非对称加密算法有哪几种? 对称加密和非对称加密的优缺点各是什么? 什么是数字签名?数字签名的作用是什么?写出数字签名的过程。 什么是数字证书?数字证书的颁发一般有哪些过程? 数字证书的作用是什么?CA的作用是什么?试用Openssl给某个用户颁发一份证书。 Openssl命令中与加密有关的命令有哪些?与证书生成有关的命令有哪些? 常见的安全协议有哪些?试比较SSL协议和SET协议。 SSL协议有那些缺点? 上网申请一份数字证书,并利用此证书给某人发一封签名的电子邮件。
posted on 2011-02-12 13:34 蜂鸟 阅读(729) 评论(0) 编辑 收藏 所属分类: Security