密码学基础

一、理论知识

科尔霍夫原则

1、对于一个密码学系统,应当仅有密钥是保密的,其余算法和一切参数都应该是公开的

2、并不一定要数学上完全不可破解,只要在现实中不可能破解即可

对称加密

加密解密都使用相同的密钥

非对称加密

1、加密解密使用的密钥不同

2、公钥、私钥

缺点:效率较低

传统方式:通过非对称交换密钥,再用对称加密通信

二、加解密和数字签名

加解密

1、Alice 给 Bob传信息,Alice用Bob的公钥加密,Bob用自己的私钥解密

2、在没有私钥的情况下,无法获取到明文相关信息

数字签名

1、Alice想证明某个消息是自己发的

2、Alice用自己的私钥签名,其他人可以用Alice的公钥验证签名有效性

3、在没有私钥的情况下,无法伪造签名

4、ECDSA

三、哈希算法

消息摘要

1、把无穷空间内的消息映射到有限空间内的摘要

2、H(M) = x (H就是hash算法,M就是Massage,x就是摘要,hash的结果值)

3、确定性算法

4、消息一旦改变,摘要也会改变

hash算法的重要性质

1、不可逆(单向性),拿到哈希值的人,无法知道原始明文是什么

2、抗碰撞,无法找到两个不同的消息,但是摘要相同

3、确定性

4、混淆性

5、不可预测性

相关推荐
winner88815 分钟前
深入理解 find 与 grep 路径参数位置差异:Unix 哲学下的设计逻辑
服务器·unix
郝学胜-神的一滴26 分钟前
Linux系统调用中断机制深度解析
linux·运维·服务器·开发语言·c++·程序人生
普马萨特26 分钟前
新型基础设施运维(Infratech + GIS):一场被低估的结构性变革
运维·人工智能
chenyuhao202433 分钟前
Linux系统编程:Ext文件系统
linux·运维·服务器·开发语言·网络·c++·后端
KingRumn40 分钟前
Linux进程间通信之内存映射
linux·运维·服务器
秋刀鱼 ..42 分钟前
2026拓展现实、人机交互与人工智能国际研讨会(XRHCIAI 2026)
运维·人工智能·科技·机器学习·人机交互·制造
九思x1 小时前
通过docker-compose.yml文件一次性安装mysql、minio、redis服务
运维·docker·容器
猫豆~1 小时前
LAMP项目部署——8day
linux·运维·服务器·centos
毕设源码-郭学长1 小时前
【开题答辩全过程】以 基于微服务的网络运维管理系统设计与实现为例,包含答辩的问题和答案
运维·网络·微服务
徐徐图之!1 小时前
二、开始我们的运维之路&运维学习路线
linux·运维·云计算