前言

大三下学期,电子商务的期末作业。。。

摘要

互联网的快速发展使电子商务称为商务活动的新模式,电子商务从产生至今虽然时间不长,但发展十分迅速。由于电子商务是在互联网环境下进行的商务活动,如何保证这些商务活动的安全性就是一个很重要的问题。本文就此问题展开一些相关讨论,主要包括对称加密、非对称加密、哈希算法的应用,以及 HTTPS 协议保证双方通信安全的原理介绍。

关键词:对称、非对称加密,数字信封,数字证书,数字签名,消息认证码

目录

一:加密技术里的专有名词介绍2

二:对称加密的应用2

三:非对称加密的应用3

四:哈希函数4

五:HTTPS5

六:总结6

一:加密技术里的专有名词介绍
为保证数据和交易的安全,确认交易双方的真实身份,电子商务必须采用加密技术。加密技术是指通过用代码或密码来保障数据安全性的一种手段。

密文:欲加密的数据称为明文,加密后的数据称为密文。

加密:明文经过某种加密算法作用后,转换成密文,这一过程称之为加密。

解密:密文经过某种解密算法作用后,转换成明文,这一过程称之为解密。

密钥:加密算法和解密算法中使用的参数称为密钥。

二:对称加密的应用
对称加密是一种可逆的加密方式,加密方和解密方共用同一把密钥。安全性相对非对称加密要低,但是性能要比非对称加密要高。

图 1 对称加密的示意图

应用场景:

  1. 数据库连接的用户名和密码一般会使用对称加密进行加解密。

  2. 数据库中一些比较敏感的数据比如身份证号、手机、真实姓名、邮箱

等信息会使用对称加密进行加解密。

但这个一般来说不会在代码层面体现出来,因为我们可能还会用到这些手机、姓名什么的数据来作为查询条件使用。如果有这个需求的话,在数据库MySQL中,也提供了一些加解密的操作。

  1. HTTPS 的数据传输阶段使用对称加密进行加解密。

三:非对称加密的应用
非对称加密是一种可逆的加密方式,是通过密钥对来实现的,密钥对包含公钥和私钥,公钥是可以对外公布的,私钥是自己保存的,不对外公布。一般是使用公钥进行加密,私钥解密;私钥签名,公钥验签。

图 2非对称加密的示意图

应用场景:

  1. 在支付领域中,与银行进行通信时会使用非对称加密。

有2种方式来保证通信和数据的安全,

1.1一种是自己生成公私钥,双方互换公钥。

1.2还有一种就是使用数字信封的方式

(采用加密技术来保证只有特定的收信人才能阅读信的内容)。

银行采用对称密钥来加密信息,为了能安全的传输对称密钥,将对称密钥使用我们的公开密钥来进行加密。这部分就称为数字信封,然后将数字信封和对称加密的信息一起发送给我们,我们先用相应的私钥来打开数字信封,得到对称密钥,然后用对称密钥来解开信息。

  1. 在区块链中,通过非对称加密完成数据的加解密和签名验签功能。

  2. 在 HTTPS 的握手阶段,通过使用非对称加密完成握手。

整个传输的过程还是使用的对称加密,因为这个性能是比较好的。问题就在这个密钥的分发问题上,可以在HTTPS的握手阶段,用非对称加密对这个密钥来进行加密传输。

四:哈希函数
哈希严格来说并不算是一种加密算法,但是他可以用来验证数据的完整性,对电子商务的安全也起到了非常重要的重要。哈希函数是一种单向的、有雪崩效应的函数。

应用场景

  1. 安全加密:

系统的密码经常使用MD5、SHA函数处理后存储。

  1. 数据校验:

2.1 P2P资源下载时,都会包含一个MD5值。

2.2 在请求第三方接口,通常会用个sign值,存放所有参数的MD5值。

2.3 区块链中常使用SHA256进行防篡改。

  1. 唯一标识:

3.1 对请求的URL进行MD5。

3.2 对文件进行MD5。

五:HTTPS
在最初的互联网通信中,大多使用的是HTTP协议,在传输的过程中,都是明文在传输,一旦数据被截获,就面临着数据泄露的危险。但是随着电子商务的兴起及发展,人们对数据安全性的要求越来越高。HTTPS就可以解决这个问题。

HTTPS协议可以看成是HTTP传输,用SSL/TLS协议来进行加解密:HTTPS = HTTP + SSL/TLS。

SSL/TLS 是世界上应用最广泛的密码通信方法。比如说,当我们在网上商城中输入信用卡号时,我们的Web浏览器就会使用SSL/TLS进行密码通信。使用SSL/TLS可以对通信对象进行认证,还可以确保通信内容的机密性,他综合运用了密码学中的对称密码、非对称密码、消息验证码、数字签名等密码技术。

TLS 协议包括TLS握手协议和TLS记录协议。

TLS 握手协议:

又分为4个子协议:握手协议、密码规格变更协议、警告协议、应用数据协议。这一层主要负责除加密之外的其他各种操作。

TLS 记录协议:

位于TLS 握手协议的下层,是负责使用对称密码对消息就像加密通信的部分,使用了对称密码和消息认证码,但具体的算法和共享的密钥是通过握手在服务器和客户端之间协商决定的。这一层主要负责进行加密操作。

HTTPS协议的大致流程:

图 3HTTPS协议流程图

TLS 握手协议主要用到的密码技术:

  1. 哈希函数:用来构造随机数生成器。

  2. 随机数生成器:用来生成预备主密码、密钥(密码参数)、初始化向量。

  3. 非对称加密:用来加密预备主密码。

  4. 数字签名:用来验证服务器和客户端的证书。

TLS 记录协议中主要用到的密码技术:

  1. 对称加密:确保消息划分成片段后的机密性。

  2. 消息认证码:确保消息划分片段后的完整性,并进行认证。

  3. 认证加密:确保消息换份成片段后的完整性、机密性,并进行认证。

这里面使用到了数字证书。我们所处的这端,也就是浏览器,主要是通过它里面的信息来判断这个数字证书是不是合法的。

  1. 认证机构是要有权威的,要背负法律责任的,全球目前有50多家机构有资格颁发证书;

  2. 认证机构颁发的证书中包含颁发机构信息、公钥、公司信息、域名、有效期等信息;

  3. 浏览器发起HTTPS请求时,服务器会返回网站的SSL证书,浏览器会对证书做验证:验证域名、有效期等信息是否正确

  4. 判断证书来源是否合法。每份签发证书都可以根据验证链查找到对应的根证书,操作系统、浏览器会在本地存储权威机构的根证书,利用本地根证书可以对对应机构签发证书完成来源验证;

  5. 判断证书是否被篡改,需要与认证机构的服务器进行校验;

  6. 判断证书是否已吊销

六:总结
加密技术的应用主要在电子商务的通信中的身份认定、权限验证、消息完整等方面。 加密技术要保证付款方和收款方不能存在抵赖行为。所以有时候通过第三方进行收款与存款,也要通过数字签名方式进行身份的确认。另外在一些软件的应用权限方面有严格的要求,要使用多级密码。 为了防止用户口令被黑客攻破,就要提升用户口令的复杂度与安全性,可以考虑使用 MD5 加盐存储技术。 总而言之,加密技术的最终目的是实现数据信息和密码不受侵害,能够进行身份验证和密码权限验证。

浅谈加密技术在电子商务中的应用相关推荐

  1. 计算机技术在现代地球科学中的重要性,浅谈GIS技术在地球科学中的应用.doc

    浅谈GIS技术在地球科学中的应用.doc 浅谈GIS技术在地球科学中的应用 中图分类号:P9 文献标识码:A 文章编号:1007-0745(2014)02-0181-01 摘要:地理信息系统是指带各种 ...

  2. aes加密内容不定长_浅谈加密技术

    1.加密算法术语 假设我们将ABCD中的每个字母替换为其后的第二个字母,例如A替换为C,最终ABCD替换为CDEF. 明    文:ABCD 加密算法:字母替换 密    钥:每个字母替换为其后的第二 ...

  3. 浅谈BIM技术在“智慧工地”建设中的应用

    浅谈BIM技术在"智慧工地"建设中的应用 随着信息技术的不断发展,建筑行业的信息化程度不断提高,BIM技术在建设行业得到了广泛的推广和应用,同时,伴随着大数据时代的到来,智慧城市的 ...

  4. 《浅谈条形码技术在连锁超市中的应用》论文笔记(二)

    一.基本信息 标题:浅谈条形码技术在连锁超市中的应用 时间:2016 来源:品牌(西京学院) 关键词:条形码技术; 连锁超市; 条码的应用; 二.研究内容 1.问题定义: 条形码作为一项以计算机技术和 ...

  5. 计算机动画 vr技术应用,浅谈VR技术在动画专业教学中的运用

    摘要:VR技术是网络计算机技术快速发展背景下衍生的新技术,其以计算机为载体,能够对复杂数据进行高效的交互和可视化操作,当前,VR技术逐渐向教育领域延伸,作为一种新的教学技术具有非常广阔的前景.本文以V ...

  6. 计算机网络技术对教学的作用,浅谈计算机网络技术在教学应用中的作用和发展趋势.docx...

    浅谈计算机网络技术在教学应用中的作用和发展趋势 乜大伟 (山东医学高等专科学校,山东临沂276000 ) [摘要]计算机网络技术在教学中应用的推广,新型教学模式对传统教育思想. 教学观念.教学方法产生 ...

  7. 自己动手写一个推荐系统,推荐系统小结,推荐系统:总体介绍、推荐算法、性能比较, 漫谈“推荐系统”, 浅谈矩阵分解在推荐系统中的应用...

    自己动手写一个推荐系统 废话: 最近朋友在学习推荐系统相关,说是实现完整的推荐系统,于是我们三不之一会有一些讨论和推导,想想索性整理出来. 在文中主要以工程中做推荐系统的流程着手,穿插一些经验之谈,并 ...

  8. 浅谈反编译在项目中的使用

    浅谈反编译在项目中的使用 什么是反编译 反编译的作用 反编译工具 动态编程 JavaSsist 源码安全 什么是反编译 将可读性较好的高级计算机语言(JAVA,C#,C)转换成计算机能解读.运行的低阶 ...

  9. 浅谈在游戏陪玩开发中常见的几种加密算法及实现

    前言 数字签名.信息加密是游戏陪玩开发前后端都经常需要使用到的技术,应用场景包括了用户登入.交易.信息通讯.oauth 等等,不同的应用场景需要游戏陪玩开发时使用到不同的签名加密算法,或者需要搭配不一 ...

最新文章

  1. Electron的代码调试
  2. Navicat Premium 12全系列
  3. 【转】如何在github上fork一个项目来贡献代码以及同步原作者的修改 -- 不错
  4. win7系统Myeclipse下切换SVN用户
  5. python手机版怎么用-怎么用手机编写Python程序?
  6. java 自己抛空指针异常_java Timetask 访问service 抛空指针异常解决方案
  7. JVM源码阅读-本地库加载流程和原理
  8. 【SICP练习】127 练习3.58
  9. Microsoft SQL Server 存储过程
  10. PHP易混淆函数的区分方法及意义
  11. spring aop 必须的包 及里面用到的东西_学习Spring的思考框架
  12. 求特殊方程的正整数解
  13. SharePoint 设置Library中文档的默认打开方式
  14. ASP.NET MVC 4 tutorial
  15. linux系统安全加固
  16. 如何使用ProSave软件对触摸屏进行OS 更新?
  17. android adb login,adb
  18. 如果能站在巨人的肩膀上
  19. 电商系统PC商城模块介绍
  20. .NET 云原生架构师训练营(模块一 架构师与云原生)--学习笔记

热门文章

  1. 2012服务器系统设,server2012服务器安装及设置
  2. Web服务器群集——公有CA构建阿里云服务器HTTPS
  3. 3t服务器装linux系统如何分区,Linux 分区、格式化3T大容量存储分区
  4. 多线程与高并发day04
  5. Linux mail命令使用和sendmail配置
  6. Codeforces-Round#548(Div.2)-C-Edgy Trees-快速幂
  7. 【MM ECC VS S4】MM模块中ECC与S4的区别
  8. 数组题目:全局倒置与局部倒置
  9. 组建linux虚拟团队,虚拟团队建设与管理
  10. 台式计算机截图快捷键,电脑截屏的快捷键是什么