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

一、概述

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

  • 单钥加密(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

相关推荐
云小逸3 小时前
【nmap源码学习】 Nmap 源码深度解析:nmap_main 函数详解与 NSE 脚本引擎原理
网络协议·学习·安全
迎仔3 小时前
04-网络安全基础:数字世界的防盗门与守卫
网络·安全·web安全
MicroTech20254 小时前
微算法科技(NASDAQ :MLGO)量子测量区块链共识机制:保障数字资产安全高效存储与交易
科技·安全·区块链
意法半导体STM324 小时前
【官方原创】FDCAN数据段波特率增加后发送失败的问题分析 LAT1617
javascript·网络·stm32·单片机·嵌入式硬件·安全
2501_941329724 小时前
【校园安全】YOLO11-C3k2-DBB实现校园安全行为识别与异常检测系统
人工智能·安全·目标跟踪
大模型玩家七七4 小时前
安全对齐不是消灭风险,而是重新分配风险
android·java·数据库·人工智能·深度学习·安全
Guheyunyi5 小时前
什么是安全监测预警系统?应用场景有哪些?
大数据·运维·人工智能·安全·音视频
Trouvaille ~6 小时前
【Linux】UDP Socket编程实战(三):多线程聊天室与线程安全
linux·服务器·网络·c++·安全·udp·socket
zuozewei6 小时前
虚拟电厂聚合商平台安全技术体系深度解读
安全·wpf
Grassto6 小时前
12 go.sum 是如何保证依赖安全的?校验机制源码解析
安全·golang·go·哈希算法·go module