密码学基础

一、理论知识

科尔霍夫原则

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

相关推荐
逸模15 小时前
告别熬夜手工整理台账,逸模智能归集实现项目数据自动化存档
大数据·运维·人工智能·笔记·其他·信息可视化·自动化
sbjdhjd15 小时前
Redis 主从复制、哨兵高可用与 Cluster 集群部署实验手册
运维·前端·redis·云原生·开源·bootstrap·html
AOwhisky15 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
Phantom Void15 小时前
服务器处理客户端请求的设计方法
linux·运维·网络
司悠16 小时前
【解决在vscode里开服务器登录codeX后发消息会一直reconnecting】
服务器·ide·vscode
倔强的石头10616 小时前
Fooocus开源神器+cpolarAI让绘画告别服务器依赖
运维·服务器·cpolar
Ajie'Blog16 小时前
Copilot Agent Tasks API 开放:AI 编程开始进入后台任务时代
服务器·前端·javascript·人工智能·copilot·ai编程
wei_shuo16 小时前
服务器挂了等用户投诉才发现?我用Beszel搭了轻量监控系统,宕机第一时间通知我
运维·服务器
王码码203516 小时前
多台服务器怎么统一看状态?Beszel 轻量监控,搭起来不费事
运维·服务器·后端·安全·阿里云·接口·web
剑神一笑17 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库