IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 杨元原博士国密课堂 · 第一期 | 商用密码应用安全性评估:Part1. 密码算法概述 -> 正文阅读

[网络协议]杨元原博士国密课堂 · 第一期 | 商用密码应用安全性评估:Part1. 密码算法概述

作者:info-box display-flex

#国密课堂#

第一期

商用密码应用安全性评估

Part 1. 密码算法概述

 
 

什么是密码算法?

密码学(Cryptology)是研究密码编制、密码破译和密码系统设计的的一门综合性科学,其包括密码编码学和密码分析学。密码编码学(Cryptography)主要研究对信息进行编码,实现对信息的隐蔽。密码分析学(Cryptanalytics)主要研究加密消息的破译或消息的伪造。

在密码编码学理论中,密码算法是研究的核心。常见的密码算法包括对称密码算法、公钥密码算法和密码杂凑算法三个类别。习惯上,对称密码算法简称为“对称密码”,公钥密码算法简称为“公钥密码”,密码杂凑算法简称为“杂凑算法”。

商用密码是经我国密码管理机构认可的、用于对不涉及国家秘密内容的信息进行加密保护或者安全认证所使用的密码技术和密码产品。目前发布的商用密码算法涵盖了对称密码算法、公钥密码算法和密码杂凑算法三大类。

(1)对称密码算法

对称密码算法加密过程与解密过程使用相同的或容易相互推导得出的密钥,即加密和解密两方的密钥是“对称”的。对称密码算法还可以细分为分组密码算法和流密码算法。

分组密码算法(block cipher):分组密码首先对明文消息根据分组大小进行分组,再将明文分组、密钥和初始向量(如果有)一起作为输入,通过分组加密算法直接输出密文分组(摘自《商用密码应用与安全性评估》)。

流密码算法(stream cipher):又称序列密码。序列密码将密钥和初始向量作为输入,通过密钥流生成算法输出密钥流(也称扩展密钥序列),然后将明文序列和密钥流进行异或,得到密文序列(摘自《商用密码应用与安全性评估》)。

常用的对称密码算法包括:

(2)公钥密码算法

公钥密码算法又称非对称密码算法,既可用于加密和解密,也可用于数字签名,打破了对称密码算法加密和解密必须使用相同密钥的限制,很好地解决了对称密码算法中存在的密钥管理难题。公钥密码算法包括公钥加密和私钥签名(数字签名)两种主要用途。

常用的公钥密码算法包括:

(3)杂凑算法

密码杂凑算法也称作“散列算法”或“哈希算法”,现在的密码行业标准统称其为密码杂凑算法,简称“杂凑算法”或“杂凑函数”。密码杂凑算法对任意长度的消息进行压缩,输出定长的消息摘要或杂凑值。

常用的杂凑算法包括:

 
 

哪些是密码学常用术语?

密码学中经常用到以下几个术语:

明文:被隐蔽的消息称作明文,通常用m表示。其英文为Message和Plaintext。明文就是没有被加密的消息。

密文:将明文隐蔽后的结果称作密文或密报,通常用c表示。其英文为Ciphertext。密文就是加密后的结果。

加密(Encryption):将明文变换成密文的过程称作加密,该过程表示为。

解密(Decryption):由密文恢复出明文的过程称作脱密,该过程表示为。

密钥(key) :控制或参与密码变换的可变参数称为密钥。密钥又分为加密密钥和解密密钥。

加密密钥是加密时用的密钥。

解密密钥是解密时用的密钥。加、解密密钥与成对使用。

加密函数与解密函数互为逆函数,即对所有明文,都有

一个密文只能有一个解密结果。

 
 

如何设计密码算法?

  • 1 密码算法即使达不到理论上是不可破的,也应当是实际上不可破的;

  • 2 密码算法的安全性不依赖于对加密体制或算法的保密,而依赖于密钥,即满足柯克霍夫斯(Kerckhoff)假设;

  • 3 加密算法和解密算法适用于密钥空间中的所有元素,弱密钥除外;

  • 4 密码算法应易于实现和使用。

?

啊,那商用密码算法

具体是怎样的呢?什么工作模式?

关注下期

#网络安全微课堂# 第二期

《商用密码应用安全性评估:Part2. 商用密码算法》

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-12 23:49:56  更:2021-10-12 23:52:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:34:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码