2018一种基于OpenSSL的安全电子商务平台研究与设计
[摘要] 电子商务的安全性需求要求必须有相关的安全协议来保障信息交易的安全。OpenSSL是实现了SSL(安全套接字层)协议及其相关加密技术的开放软件包。本文给出了一种基于OpenSSL实现的安全电子商务平台,并给出了具体的实现过程和函数。[关键词] OpenSSL安全电子商务实现
随着Internet的飞速发展和不断普及,整个商务系统发生了巨大变化。通过Internet进行网上购物、在线交易、电子银行等电子商务业务开始蓬勃发展。电子商务给人们带来便利性的同时,由于Internet的开放性、灵活性、共享性等特点,也为信息交易安全带来巨大威胁。设计和实现一个通用性强、安全性高的网络协议是实现电子商务安全交易的关键技术之一。目前网上银行等大型电子商务交易系统都采用HTTP和SSL相结合的方式,即在服务器端采用支持SSL 的WWW 服务器,在客户端采用支持SSL的浏览器,双方共同协作来实现安全的网络通讯。OpenSSL 为开发安全电子商务平台平提供了丰富的算法接口,可以安全高效地实现它。
一、OpenSSL简介
SSL是Secure Socket Layer(安全套接字层)的缩写,是由Netscape公司研制开发的,其目的是保证两台计算机通讯的保密性和可靠性。随着SSL的不断发展和完善,目前利用公共密钥技术的SSL协议已经成为Internet上保密通讯的产业标准。OpenSSL 是一个开放源代码,实现了SSL及其相关加密技术的软件包,其目标是开发一个健壮的、贸易级的、完整的开放源代码的工具包。OpenSSL 库中包含了完整的加密算法,数字签名算法及证书算法等。通过强大的加密算法来实现建立在传输层之上的安全性。它包含一套SSL协议的完整接口,应用程序应用它们可以很方便地建立起安全套接层,进而能够通过网络进行安全的数据传输,可以很好地保证数据的完整、保密和正确性。使用OpenSSL完全可以代替目前国内在加密产品中使用的贸易化的低级加密库,达到SSL协议中规定的128甚至更高位数的数据加密。OpenSSL使用时可以将它所提供的库文件直接链接到应用程序中,也可以下载压缩包后,自己编译库函数得到库文件.在Windows下得到libeay32.lib和ssleay32.lib静态库以及两个动态链接ssleay32.dll 和libeay32.dll,使用时将其加载到相关的前台开发工具中即可。
二、基于OpenSSL的安全电子商务平台及实现
一种安全的电子商务平台如上图所示。其中CA(certificate authority)认证中心主要负责交易双方数字证书的发放。在交易过程中交易双方需要事先从CA 中心取得对方的公钥以验证对方签名,网上支付要通过支付网关。交易的步骤如下:
1.客户发送订单
(1)天生会话密钥(int M-GenerateRandom)。
(2)用会话密钥加密数据得数据密(M-Encrypt)。
(3)用对方公钥加密会话密钥得会话密钥密文(MPublicKey-Encrypt)。
(4)对传输的数据做摘要运算得一摘要(M-Digest) ,再用自己的私钥(M- PrivateKeyEncrypt) 和对方的公钥(M-PublicKeyEncrypt)对摘要进行加密得摘要密文。
(5)摘要密文和会话密钥密文附加在数据密文后发送。
页:
[1]