[密码学]入门篇——加密方式

一、概述

加密方法主要分为两大类:

  • 单钥加密(private key cryptography):加密和解密过程都用同一套密码
  • 双钥加密(public key cryptography):加密和解密过程用的是两套密码

历史上,人类传统的加密方法都是前一种,比如:二战期间德军用的Enigma电报密码、之后的莫尔斯电码

  • 单钥加密的情况下,密钥只有一把,所以密钥的保存变得很重要。一旦密钥泄漏,密码也就被破解。
  • 双钥加密的情况下,密钥有两把,一把是公开的公钥,还有一把是不公开的私钥。

目前,两者通用的算法都产生于上个世纪70年代,如下所示:

  • 单钥加密算法:DES(Data Encryption Standard)
  • 双钥加密算法:RSA( Rivest-Shamir-Adleman)

二、双钥加密原理

a. 每一对双钥都是不同的。
b. 双钥<Key1,Key2>是一一对应的关系,有一把Key1就必然有一把与之对应的、独一无二的Key2,反之亦成立。
c. 双钥同时生成是容易的,但是从Key1推算出Key2是很困难或者是不可能的,反之亦成立。
d. 用Key1可以解开Key2加密的信息,反之亦成立。
一般在双钥体系中,公钥用来加密信息,私钥用来数字签名。

三、数字签名&数字证书

因为任何人都可以生成自己的双钥对,所以为了防止有人散布伪造的公钥骗取信任,就需要一个可靠的第三方机构来生成经过认证的双钥对。
目前,世界上最主要的数字服务认证商是位于美国加州的Verisign公司,它的主要业务就是分发RSA数字证书。

  • 数字签名(signature) :多数情况是使用未公开的key对内容的“摘要”进行加密,加密后的内容称为“数字签名”
  • 数字证书(Digital Certificate) :证书中心用自己未公开的key,对内容公开的key和一些相关信息一起加密,生成“数字证书”。

加深理解可以阅读这个小故事 http://www.youdzone.com/signature.html
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/440040.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis与 Memcache区别

Redis与 Memcache区别 1 , Redis 和 Memcache 都是将数据存放在内存中&#xff0c;都是内存数据库。不过 Memcache 还可用于缓存 其他东西&#xff0c;例如图片、视频等等。 2 , Memcache 仅支持key-value结构的数据类型&#xff0c;Redis不仅仅支持简单的key-value类型的数据&…

vue2 element 实现表格点击详情,返回时保留查询参数

先直观一点&#xff0c;上图 列表共5条数据&#xff0c;准备输入Author过滤条件进行查询 进入查看详情页&#xff0c;就随便搞了个按钮&#xff0c;将就看吧 点击返回后 一开始准备用vuex做这个功能&#xff0c;后来放弃了&#xff0c;想到直接用路由去做可能也不错。有时间…

如何获取国外信用卡?需要国外银行卡支付怎么解决?如何订阅国外产品?

当国内的用户想要使用国外的产品时&#xff0c;很多产品是需要订阅付费的。其中有些产品还没有引入国内&#xff0c;只能用国外的信用卡支付&#xff0c;对于在国内的朋友&#xff0c;如何获取一张国外的信用卡呢&#xff1f; 这里推荐一个平台&#xff1a;wildCard waildCard…

基于SpringBoot的在线拍卖系统

目录 1、 前言介绍 2、主要技术 3、系统流程和逻辑 4、系统结构设计 5、数据库设计表 6、运行截图(部分) 6.1管理员功能模块 6.2用户功能模块 6.3前台首页功能模块 7、源码获取 基于SpringBoot的在线拍卖系统录像 1、 前言介绍 随着社会的发展&#xff0c;社会的各行…

力扣大厂热门面试算法题 6-8

6. Z 字形变换&#xff0c;7. 整数反转&#xff0c;8. 字符串转换整数 (atoi)&#xff0c;每题做详细思路梳理&#xff0c;配套Python&Java双语代码&#xff0c; 2024.03.08 可通过leetcode所有测试用例。 目录 6. Z 字形变换 解题思路 边界条件 完整代码 Python Ja…

【手游联运平台搭建】游戏平台的作用

随着科技的不断发展&#xff0c;游戏行业也在不断壮大&#xff0c;而游戏平台作为连接玩家与游戏的桥梁&#xff0c;发挥着越来越重要的作用。游戏平台不仅为玩家提供了便捷的游戏体验&#xff0c;还为游戏开发者提供了广阔的市场和推广渠道。本文将从多个方面探讨游戏平台的作…

AWTK-MVVM 文件模型

AWTK-MVVM 文件模型 名称&#xff1a;file 功能&#xff1a;用于读写文件内容&#xff0c;浏览&#xff08;打开/保存&#xff09;文件。 内置属性 属性类型说明filenamestring文件名contentstring文件内容sizenumber文件大小auto_loadboolean是否自动加载文件内容is_dirtyb…

QT:用opencv的KNN识别图片中的LED数字(一)

前言 一款功能测试的软件demo,使用了QT作为界面,主要使用了opencv的KNN识别,使用gstreamer作为管道,用来打开图片。后期会写一篇打开摄像头实时识别的文章。 (正在写,未完成,稍候) 效果一预览: 效果二预览: 效果三预览: 正在写。。。 设计思路 1. 软件UI设…

关于阿里云服务器地域的选择方法,看这一篇就够了

阿里云服务器地域和可用区怎么选择&#xff1f;地域是指云服务器所在物理数据中心的位置&#xff0c;地域选择就近选择&#xff0c;访客距离地域所在城市越近网络延迟越低&#xff0c;速度就越快&#xff1b;可用区是指同一个地域下&#xff0c;网络和电力相互独立的区域&#…

亚洲股市下一步的关键:中国看财报、日本看汇率、韩国看治理、印度看基建

汇丰认为财报将是驱动中国股市走势的关键因素。目前市场预计2024年中国企业每股收益将增长16%。 日本央行转向、A股业绩复苏、印度基建、韩国市场改革......最近这段时间&#xff0c;亚洲各大市场涌现出了不同的交易主题。 汇丰银行指出&#xff0c;中国受到本土企业盈利能力…

直播美颜SDK开发:如何应对不同场景下的挑战?

直播美颜SDK的开发&#xff0c;便是为了满足这一需求&#xff0c;但面对不同场景下的挑战&#xff0c;开发者们需要克服各种技术难题&#xff0c;以确保美颜效果的稳定和自然。 首先&#xff0c;我们需要了解直播美颜SDK在不同场景下可能面临的挑战。这些挑战主要包括&#xff…

牛客论坛笔记~

文章目录 Redisspring整合redis实现点赞帖子的赞用户的赞 关注功能热帖排行redis存储验证码、登录凭证、用户信息 kafka阻塞队列kafka![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d35be55986344b548710985cd8ecbd87.png)触发事件处理事件 Redis高级网站数据统计…

【SSCI稀缺版面】最快录用仅2个月(内附录用发表时间节点)

录用案例 JCR4区经济管理类SSCI (进展顺) 【期刊简介】IF&#xff1a;0-1.0&#xff0c;JCR4区&#xff0c;中科院4区&#xff1b; 【检索情况】SSCI在检&#xff1b; 【征稿领域】计算机/数据建模在经济与管理决策绩效评价的形态应用相关研究均可&#xff1b; 【案例分享】…

​项目文章 | METTL3敲减通过m6A-YTHDC2介导的AMIGO2调控抑制RA-FLS活化

类风湿性关节炎&#xff08;RA&#xff09;是一种自身免疫性关节疾病&#xff0c;其特征是慢性关节滑膜炎、滑膜增生过度和关节损伤。近年来&#xff0c;N6-甲基腺苷&#xff08;m6A&#xff09;修饰的RNA在癌症和自身免疫疾病&#xff08;包括RA&#xff09;中的调控作用受到广…

戏说c第二十六篇: 测试完备性衡量(代码覆盖率)

前言 师弟&#xff1a;“师兄&#xff0c;我又被鄙视了。说我的系统太差&#xff0c;测试不过关。” 我&#xff1a;“怎么说&#xff1f;” 师弟&#xff1a;“每次发布版本给程夏&#xff0c;都被她发现一些bug&#xff0c;太丢人了。师兄&#xff0c;有什么方法来衡量测试的…

VR数字化线上展馆降低企业投入成本和周期

VR云展会是一种全新的展览形式&#xff0c;它利用虚拟现实技术&#xff0c;将实体展览搬到线上&#xff0c;让观众可以在家中就能参观各种展览。这种新型的展览方式有许多亮点&#xff0c;下面就来详细介绍一下。 首先&#xff0c;VR云展会打破了地域限制。传统的实体展览通常只…

Python科学计算之生成数据

文章目录 生成序列创建网格创建特殊数组随机数组 Python科学计算系列&#xff1a;数组 正所谓巧妇难为无米之炊&#xff0c;没有数据&#xff0c;也就没法对数据进行分析&#xff0c;从而数值计算也就成了无根之木了。所以&#xff0c;在学习具体的数值计算方法之前&#xff0…

【算法 高级数据结构】树状数组:一种高效的数据结构(一)

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;算法题、 基础算法~赶紧来学算法吧 &#x1f4a1;往期推荐&#xff1a; 【算法基础 & 数学】快速幂求逆元&#xff08;逆元、扩展欧几里得定理、小费马定理&#x…

【详识C语言】自定义类型之一:结构体

本文重点 结构体 结构体类型的声明 结构的自引用 结构体变量的定义和初始化 结构体内存对齐 结构体传参 结构体实现位段&#xff08;位段的填充&可移植性&#xff09; 结构体 结构体的声明 结构的基础知识 结构是一些值的集合&#xff0c;这些值称为成员变量。结构的每个…

21、状态模式(行为性模式)

版本一、get状态指针 #include <iostream> using namespace std;//前置声明 class Context;//状态 class State{ public://4个状态virtual void toUp (Context& context){ }virtual void toDown (Context& context){ }virtual void toLeft (Context& cont…