密码学基础

一、理论知识

科尔霍夫原则

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、不可预测性

相关推荐
HalvmånEver4 小时前
Linux:线程 ID 与地址空间布局:深入理解线程内存分布(线程七)
linux·运维·服务器·操作系统·线程
以太浮标4 小时前
华为eNSP模拟器综合实验之- NAT策略配置类型全景汇总
服务器·网络·华为
北京阿法龙科技有限公司4 小时前
工业场景下AR+AI图像识别:精准选型赋能运维与质检
运维·人工智能·ar
小oo呆5 小时前
【学习心得】CMD终端设置Proxy的几个要点
运维·服务器·网络
Forget_85505 小时前
RHEL——制作母盘
linux·运维·服务器
释怀不想释怀5 小时前
Linux命令--echo~反引号符~重定向符(>>)~tail命令
linux·运维·服务器
Max_uuc5 小时前
【C++ 硬核】给单片机装上“反射”:手写极简属性系统 (Property System) 自动化 CLI 开发
运维·自动化
云小逸5 小时前
【Nmap 设备类型识别技术】整体概况
服务器·c语言·网络·c++·nmap
路由侠内网穿透.6 小时前
fnOS 飞牛云 NAS 本地部署私人影视库 MoonTV 并实现外部访问
运维·服务器·网络·数据库·网络协议
Doro再努力6 小时前
【Linux05】Linux权限管理深度解析(二)
linux·运维·服务器