Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >安全科普:理解SSL(https)中的对称加密与非对称加密

安全科普:理解SSL(https)中的对称加密与非对称加密

作者头像
FB客服
发布于 2018-02-02 08:31:46
发布于 2018-02-02 08:31:46
1.1K0
举报
文章被收录于专栏:FreeBufFreeBuf

作者 懒懒dě-nms

今天刚好为站点的后台弄了下https,就来分享我了解的吧。

密码学最早可以追溯到古希腊罗马时代,那时的加密方法很简单:替换字母。

早期的密码学:

古希腊人用一种叫 Scytale 的工具加密。更快的工具是 transposition cipher—:只是把羊皮纸卷在一根圆木上,写下信息,羊皮纸展开后,这些信息就加密完成了。

虽然很容易被解密,但它确实是第一个在现实中应用加密的例子

Julius Caesar 用了另外一个类似的加密方法:把字母往右或往左移动几位;此法称为Caesar’s cipher. 比如“GEEK” 加密后就是“JHHN”.

Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ

Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC

因为只有信息接受者知道如何解密,对其他人来说,那就是一段无意义的信息了。还有像如下图的加密方法:每个字母放在坐标系里

这样 “G”就是 “23”, “GEEK”就是 “23 31 31 43”.

Enigma Machine

加密算法

加密算法有很多种,区别和衡量他们的方法就是看他们是否容易被破解的程度和加密的速度如下图可见AES 是最快的强加密算法

当然有更快或比较慢的算法了,他们都有用处。如果你只是加密一段信息,也不是经常需要,那你可以用最强的加密算法,甚至也可以用不同的算法加密两次。如果想要加密速度快点,那就用AES.

加密类型

之前说过的加密算法绝大部分都属于以下两种加密类型之一:

  • 对称加密:加密解密用的是同样的“钥匙”
  • 非对称加密:加密解密用的是不同的“钥匙”

对称加密

用邮局的例子来解释下对称加密

Alice 在盒子里放有信息,盒子上有挂锁,她有钥匙。通过邮局她把这个盒子寄给Bob。Bob收到盒子后,用相同的钥匙打开盒子(钥匙之前就得到了,可能是Alice面对面给他的)。然后Bob可以用同样的方法回复。

对称加密可以分为两种:一种是一个一个加密信息,另一种是分块加密信息,通常分为64位加密为一块。块Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES, and IDEA.

非对称加密

Bob和Alice各有自己的盒子。Alice要跟Bob秘密通信,她先让Bob把开着的盒子通过邮局发给她。Alice拿到盒子后放入信息锁上,然后发给Bob。Bob就可以用他自己的钥匙打开了。回复的话就用同样的方法。

此法最大的好处是你不必得到对方的“钥匙”,以防别人在钥匙发送过程中偷偷复制钥匙,进而窃取信息。而且就算Bob的钥匙被窃取复制了,Alice跟别人的通信也是安全的,因为Alice用的是别人的钥匙。

非对称算法在加密和解密时用的是不同的钥匙。信息接受者有两把钥匙:一把“公匙”,一把“私匙”。公匙是给信息发送者用来加密的,私匙是自己用来解密的这样最大的好处是:不必通过不安全的渠道发送私密的东西。公匙本来就是给别人用的,不用藏好。你的私匙在你产生私匙的电脑里保存着。

网站如何通过加密和用户安全通信

SSL (Secure Sockets Layer) 是用来保障你的浏览器和网站服务器之间安全通信,免受网络“中间人”窃取信息。SSL原理很简单。当你的浏览器向服务器请求一个安全的网页(通常是 https://)

服务器就把它的证书和公匙发回来

浏览器检查证书是不是由可以信赖的机构颁发的,确认证书有效和此证书是此网站的。

使用公钥加密了一个随机对称密钥,包括加密的URL一起发送到服务器

服务器用自己的私匙解密了你发送的钥匙。然后用这把对称加密的钥匙给你请求的URL链接解密。

服务器用你发的对称钥匙给你请求的网页加密。你也有相同的钥匙就可以解密发回来的网页了

大概就这样,翻译不完整,原文可以看下:http://article.yeeyan.org/view/90729/174903

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2014-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如此多的深度学习框架,为什么我选择PyTorch?
2017年1月,Facebook人工智能研究院(FAIR)团队在GitHub上开源了PyTorch,并迅速占领GitHub热度榜榜首。
博文视点Broadview
2020/06/11
1.8K0
如此多的深度学习框架,为什么我选择PyTorch?
掌握哪些机器学习工具更受企业青睐?
根据 GitHub 活跃数、开发人员使用人数、在招聘描述中出现的频率等综合数据分析,Google的 TensorFlow 仍稳居第一,被广大网友一致认为非常适合入门学习的 Keras 、人气涨势迅速的 PyTorch 、还有 Caffe 、Theano、MXNet 、CNTK 、Caffe 2.0、FastAi 等框架都紧随其后,受到越来越来多开发者和企业的关注。
AI科技大本营
2018/11/06
9990
23 种深度学习库排行榜:TensorFlow、Keras、caffe 占据前三!
本文介绍了23种深度学习库,这些库包括TensorFlow、Keras、Caffe、Theano、Torch、MXNet、CNTK、DeepLearning4J、Gensim、R、D3、Deepnet、scikit-learn、MNIST、ImageNet、AlexNet、VGG、ResNet、MemNet、DeepLab、U-Net、Sonnet、TensorLayer、Keras、Caffe2、Paddle、Theano、NLTK、Gensim、OpenCV和scikit-image。这些库在数据科学、自然语言处理、计算机视觉和图像处理等领域得到了广泛应用。其中,TensorFlow和Keras是两种最受欢迎的深度学习库,它们都支持Python,并且Keras正在快速地成为TensorFlow的核心组件。Caffe和Theano是两种广泛使用的深度学习库,它们都支持Python和C++。其他库如MXNet、TensorLayer和Keras也支持多种编程语言,包括Python、C++和R。这些深度学习库在数据科学、自然语言处理、计算机视觉和图像处理等领域得到了广泛应用。
全球人工智能
2017/10/31
4.7K1
23 种深度学习库排行榜:TensorFlow、Keras、caffe 占据前三!
详解 6 大主流深度学习框架
导读:近几年,随着深度学习的爆炸式发展,相关理论和基础架构得到了很大突破,它们奠定了深度学习繁荣发展的基础。这其中涌现了几个著名的深度学习平台,本文将对这些平台进行简要介绍。
IT阅读排行榜
2022/03/11
4.6K0
详解 6 大主流深度学习框架
计算机视觉深度学习训练推理框架
前言 本文整理了一些深度学习训练推理框架,涉及计算机视觉、语音、时序任务上的框架,共计20多种。
小白学视觉
2025/02/05
1680
计算机视觉深度学习训练推理框架
2023了,学习深度学习框架哪个比较好?
都2023年,才来回答这个问题,自然毫无悬念地选择PyTorch,TensorFlow在大模型这一波浪潮中没有起死回生,有点惋惜,现在GLM、GPT、LLaMA等各种大模型都是基于PyTorch框架构建。这个事情已经水落石出。
ZOMI酱
2023/07/18
1.2K0
2023了,学习深度学习框架哪个比较好?
8种主流深度学习框架介绍
导读:近几年随着深度学习算法的发展,出现了许多深度学习框架。这些框架各有所长,各具特色。常用的开源框架有TensorFlow、Keras、Caffe、PyTorch、Theano、CNTK、MXNet、PaddlePaddle、Deeplearning4j、ONNX等。
IT阅读排行榜
2022/01/20
6.2K0
8种主流深度学习框架介绍
技术流|主流深度学习框架比较
目前市面上主流深度学习框架近十余种,每种框架各具特色。如何选择合适的深度学习框架?本篇对主流深度学习框架进行综合比较,帮助大家理清思路。
用户1386409
2018/07/26
5190
常见深度学习框架对比
目前研究人员正在使用的深度学习框架不尽相同,有TensorFlow、Caffe、Theano、Keras等,常见的深度学习框架如下图所示。
SeanCheney
2019/04/09
1.6K0
常见深度学习框架对比
专访百度 PaddlePaddle 开源平台负责人王益:国产深度学习平台是如何帮助开发者快速开发 AI 产品的?
专访百度 PaddlePaddle 开源平台负责人王益:国产深度学习平台是如何帮助开发者快速开发 AI 产品的?
AI研习社
2018/03/16
2K0
了解机器学习/深度学习常用的框架、工具
scikit-learn 官方文档:https://scikit-learn.org/stable/#
叶庭云
2024/05/25
1.8K0
训练好的深度学习模型原来这样部署的!(干货满满,收藏慢慢看)
当我们辛苦收集数据、数据清洗、搭建环境、训练模型、模型评估测试后,终于可以应用到具体场景,但是,突然发现不知道怎么调用自己的模型,更不清楚怎么去部署模型!
计算机视觉研究院
2021/07/30
31.3K0
【2017深度学习框架大事记】PyTorch成TensorFlow最大竞争对手,微软、亚马逊、Facebook 合作联盟对抗谷歌
来源:towardsdatascience.com 作者:Indra den Bakker 编译:刘小芹 【新智元导读】2017年,深度学习框架领域出现了许多新变化。TensorFlow仍然是最受欢迎的深度学习框架,但使用动态图的更高效的PyTorch作为后起之秀,已经成为TensorFlow的最大竞争对手。第一个被广泛采用的深度学习框架Theano“功成身退”,宣布停止开发和维护。此外,微软和亚马逊联合推出Gluon,微软、亚马逊和Facebook等联合发布ONNX格式,深度学习框架也呈现出合作联盟、对抗
新智元
2018/03/20
1K0
【2017深度学习框架大事记】PyTorch成TensorFlow最大竞争对手,微软、亚马逊、Facebook 合作联盟对抗谷歌
九大深度学习框架
开源的深度学习神经网络正步入成熟,而现在有许多框架具备为个性化方案提供先进的机器学习和人工智能的能力。那么如何决定哪个开源框架最适合你呢?本文试图通过对比深度学习各大框架的优缺点,从而为各位读者提供一个参考。你最看好哪个深度学习框架呢? 现在的许多机器学习框架都可以在图像识别、手写识别、视频识别、语音识别、目标识别和自然语言处理等许多领域大展身手,但却并没有一个完美的深度神经网络能解决你的所有业务问题。所以,本文希望下面的图表和讲解能够提供直观方法,帮助读者解决业务问题。 下图总结了在 GitHub 中最受
朱晓霞
2018/04/18
1.1K0
九大深度学习框架
资源 | 16个GitHub收藏和贡献率最高的深度学习框架
大数据文摘作品 编译:惊蛰、什锦甜、蒋宝尚 深度学习是一种基于对数据进行表证学习的机器学习方法,近些年不断发展并广受欢迎。 作为一个相对较新的概念,对于无论是想要进入该领域的初学者,还是已经熟知方法的老手来说,触手可及的学习资源太丰富了。 为了不被日新月异的技术和潮流所淘汰,积极参与深度学习社区中开源项目的学习和互动是个很好的方法。 在本文中文摘菌将为大家详细介绍16种GitHub中最受欢迎的深度学习开源平台和开源库,除此之外,还有些比较不错的平台和框架虽然没有进入榜单,文摘菌也列了出来,供大家参考。 Gi
大数据文摘
2018/05/23
5680
AI 开发者高薪太诱人?请收下这份给国内开发者转型 AI 指南
如果你浏览 AI 相关的新闻,不难发现「高薪」、「百万年薪」等极具诱惑力的词汇的出现频率非常高。同样,在知乎中搜索「如何转型 AI?」、「AI 领域需要怎样的人才?」、「普通程序员如何学习 AI 知识?」等问题,也总会发现各种各样的答案和衍生的话题。在人工智能浪潮的助推下,不少科技公司开高薪求良才,更有不少开发者前赴后继地投身进 AI 的风口中。
AI研习社
2018/07/26
6090
AI 开发者高薪太诱人?请收下这份给国内开发者转型 AI 指南
百度上线深度学习工具Visual DL,提供独立的Python SDK
百度PaddlePaddle & ECharts团队宣布上线深度学习可视化工具Visual DL,该工具可以使得深度学习任务变得生动形象,实现可视分析。百度希望能够借此为全球更广泛的用户提供更便捷高效
BestSDK
2018/03/02
8460
百度上线深度学习工具Visual DL,提供独立的Python SDK
入门大爆炸式发展的深度学习,你先要了解这6个著名框架
Theano是在BSD许可证下发布的一个开源项目,是由LISA集团(现MILA)在加拿大魁北克的蒙特利尔大学开发的,其是以一位希腊数学家的名字命名的。
IT阅读排行榜
2019/08/05
8060
入门大爆炸式发展的深度学习,你先要了解这6个著名框架
深度学习框架简史:PPT格局初现,中国占有一席
苹果、谷歌、Facebook、SAP、微软等科技巨头,早已有了实际的行动。单单是Apple Pay和Google Pay的停用,就已经影响了数千万人的生活秩序,而GitHub、Node、React等开源平台针对俄罗斯开发者的严格限制,则给不少企业的产品开发、商业运作蒙上了一层不确定的阴影。
Alter聊科技
2023/01/13
6420
深度学习框架如何选?从迷茫到优选的指南
作为一名深度学习领域的实践者,我在入门时也曾在各种深度学习框架之间“眼花缭乱”。如今,这些框架已经不仅仅是工具,而是推动人工智能发展的引擎。从TensorFlow到PyTorch,从Keras到MindSpore,每一个框架都有自己的风格和特点,仿佛各自站在舞台中央等待我们挑选。
Echo_Wish
2025/03/19
1040
深度学习框架如何选?从迷茫到优选的指南
推荐阅读
相关推荐
如此多的深度学习框架,为什么我选择PyTorch?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档