【完整版-斯坦福-密码学】全13讲(绪论)【笔记】
目录
- 写在前面的话
- 参考资料
- 笔记
写在前面的话
个人笔记,仅供参考,不喜勿喷,谢谢大家。
参考资料
视频:【完整版-斯坦福-密码学】全13讲
理解密码学:如何理解"语义安全(semantic security)"?
笔记
密码学的核心:安全通信
1、安全密钥的建立
2、共享密钥,安全的通信
数字签名不可复制。
匿名通信经过一系列代理加密解密,达到匿名效果。
零信任是趋势。
安全多方计算:大家互相交换加密信息,都可以得到最终结果。
同态加密:加密数据上计算
零知识:N是两个1000位的质数乘积,如果要对N进行质数分解来找这两个质数将会很困难。A知道这其中的质数分解,B只知道N,但是A能够向B证明它知道怎么分解。就是让B相信A知道这道题的解。
1、精确描述威胁模型是什么?(比如数字签名,攻击者伪造数字签名的目的何在?)
2、提出架构。
3、证明在当前的威胁模型下破坏这个架构是一个很困难的事情。
对称加密
通信双方的密钥k相同,把加密算法和解密算法看成两个函数,这两个函数是公开的。里面的变量是明文消息,密钥以及密文消息。对于加密算法,变量是明文消息以及密钥,密钥是攻击者不知道的,明文攻击者可能知道。(对于知道明文的攻击者来说目的就是破译密钥)这样输出的就是密文消息。对于解密算法,变量就是密文消息以及密钥,输出就是明文消息。
例如替换式密码应用,这里的密钥就是字母替换规则,攻击者自然是不知道的。
但是也有不需要密钥的加密,比如凯撒加密。就是每个字母往后移动三位,与其说不需要密钥,不如说密钥是固定的,一旦攻击者知道流程就能够轻松破译。但是前面的替换式中的密钥就是随机的。
但是破解替换式也简单。利用先验知识,比如字母出现的频率来判断密钥,在英文中e出现的频率最高,那么密文中出现最高频率的字母很有可能与e相匹配,单个的频率看完看组合,he出现的频率也高,然后不断往下,这叫唯密文攻击。
到了文艺复习时期有一种密码叫Vigener密码,密钥是一组词,与明文相加取模得到密文。
假设我们知道密钥长度,看每组第一个字母,它们都被同一个字母加密了,从这里面能够推测出密钥的字母。然后看每组第二位,重复这样的操作就能解密。但是前提是知道密钥长度,就算不知道,就假设密钥长度,从1开始,一旦解出来的消息说得通就成功了,这还是唯密文攻击。
到了电气化时代出现的轴轮机,和替换式密码差不多,也可以用频率和统计的方法做唯密文攻击。
Enigma密码就是多轴轮。
机械时代结束,进入计算机时代。加密嘛,自然需要一个标准去衡量保护水平。DES作为最初的标准,虽然密钥空间减小到2的56次方,但是不像轴轮机,它一次能够加密64位,一次8个字母。但是现在由于暴力穷举的方法,DES由于密钥空间小就不再适用了。如今有了新的密码,高级加密标准,使用128位密钥。
离散概率问题
有限域就是密钥空间大小,每个密钥都有自己的权重占比,概率和为1。均匀分布就是权重都一样,分母是总数。还有就是点分布,只有一个为1,其他为0。
事件,就是有限域的子集。
并集上界,算概率上界
随机变量,就是一个映射函数,从一个域U映射到另外一个域V。注意随机变量的取值是从V中取值,事实上随机变量定义了集合V上的概率分布。
随机算法定义了一个分布以及全体可能输出的集合。举例说明就是,随机算法加密,即使我每次加密的明文都是一样的,但是每次输出的密文可能不同,这些输出的密文是遵循一个分布的并且在一个有限的空间内。
离散概率的应用
离散概率总是定义在有限集合上的。
独立性
对于事件A和事件B来说,知道A的发生不知道B有没有发生就能说明两者相互独立。对于随机变量也是一样。
异或就是模2得到的值
异或在密码学中有着重要的地位,比如Y是一个服从一个随机分布的随机变量,X是服从均匀分布的随机变量,定义一个随机变量Z为X与Y的异或,那么可以说Z是服从均匀分布的随机变量,也就是说不论Y的分布多么奇怪都会影响异或的结果。
生日悖论
如果n取了有限域大小的根号大小,很可能两次取样的结果是相等的。
所谓的生日悖论也就是当我们有多少人在一个房间里时,会存在两个人生日是同一天。
【完整版-斯坦福-密码学】全13讲(绪论)【笔记】相关推荐
- 【完整版-斯坦福-密码学】全13讲(流密码)【笔记】
目录 写在前面的话 参考资料 笔记 写在前面的话 个人笔记,仅供参考,不喜勿喷,谢谢大家. 参考资料 视频:[完整版-斯坦福-密码学]全13讲 理解密码学:如何理解"语义安全(semanti ...
- 完结!《沉浸式线性代数》完整版正式发布,全交互式体验
点击上方"AI有道",选择"星标"公众号 重磅干货,第一时间送达 两个月前,红色石头发文介绍过一本非常棒的在线线性代数教程,名为<Immersive Li ...
- 百度SEO站群最新易支付源码完整版 已pj全解密
简单的介绍一下测试结果吧 源码介绍: (1)20套首页模板 (2)用户排名榜板块 (3)广推引流一个模块 (4)邮箱配置 (5)短信配置 (6)结算配置 (7)商品拦截 (8)用户登录问候语音 (9) ...
- 【完整版】蓝桥杯竞赛python算法笔记 代码模板|吐血总结|蓝桥杯省赛国赛
蓝桥杯竞赛python算法笔记 代码模板|吐血总结 文章目录 蓝桥杯竞赛python算法笔记 代码模板|吐血总结 1 二分 1.1 二分求最大满足(check红色条件) 1.2 二分求最小满足(che ...
- 95页字节跳动内部前端学习笔记在互联网上火了,完整版开放下载
前端工程师学习路线 一.入门前端三剑客 1.HTML html 学起来还是挺简单的,无论你是否有编程基础,我觉得都可以快速入门,对于新手,我推荐找个入门的视频看一下,然后跟着视频打代码就可以了,入门教 ...
- python自动化办公百度云_用Python自动办公 做职场高手全16讲 完整版 视频教程
python这门编程最近可是非常火,不是俗谚有说"人生苦短,我用python".这是有道理的,一是它相对于其他语言,更简单易上手,二是功能可大,可以爬虫,可以写工具. 这里分享给大 ...
- 斯坦福NLP名课带学详解 | CS224n 第13讲 - 基于上下文的表征与NLP预训练模型(ELMo, transformer)(NLP通关指南·完结)
作者:韩信子@ShowMeAI,路遥@ShowMeAI,奇异果@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/36 本文地址:https://ww ...
- java 李炎恢_李炎恢 jquery 66讲视频教程PDF文件完整版全集
[实例简介] 李炎恢老师在线教程66讲所用的PDF笔记课件,共16章.使用本文档可以省去记笔记的过程. 分享给大家,希望对大家有用. [实例截图] [核心代码] faae1ed4-23fe-4919- ...
- 2023史上最全Java面试题【完整版】跳槽必备,看完轻松收撕面试官
✨作者简介:杨 戬,博客专家.github开源作者 ✨多年工作总结:Java学习路线总结,小白逆袭Java技术总监 ✨技术交流:定期更新Java硬核干货,不定期送书活动.助你实现技术飞跃 ✨关注公众号 ...
最新文章
- python是动态编程语言吗-python是一种跨平台、开源、免费的高级动态编程语言,对么...
- 暑假集训做题,比赛的网站
- AtCoder 2000 [AGC002F] Leftmost Ball(dp+组合数)
- Spring 3.1缓存和配置
- 图数据库_ONgDB图数据库与Spark的集成
- 数据库连接 未将对象引用到实例
- c#hello world_C#| 打印消息/文本(用于打印Hello world的程序)
- sap生产工单报工_SAP系统PP (ProductionPlanning) 模块知识培训
- 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点(转)
- 漫谈广告竞价模式(四)
- CSDN 总部落户长沙,共建中国开发者产业中心城市!
- dva开发一个cnode网站(2)
- CF1062D Fun with Integers
- 投稿经验分享之二:国际EI会议(可检索)
- 服务器文件安全扫描,服务器安全扫描工具
- 弗吉尼亚大学计算机就业如何,假设你是新华中学的学生李华,高中毕业后想到美国弗吉尼亚大学(University of Virginia)计算机专业深造...
- 安装图形化界面consol/centos-xfce-vnc
- 如何恢复类视图中突然消失的类已经编程辅助工具VISUAL ASIST
- 爬虫实战——求是网周刊文章爬取
- 【JAVA】逢三退一的第二种思路(面向对象)
热门文章
- Serverless 实战 —— 轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
- 利用DB Link两步搞定Oracle两个数据库间的表同步
- ZooKeeper管理员指南
- 解决Some index files failed to download.They have been ignored, or old ones used instead报错
- 给网站文字添加图标-Font Awesome
- C#LeetCode刷题之#15-三数之和(3Sum)
- C#LeetCode刷题之#434-字符串中的单词数​​​​​​​(Number of Segments in a String)
- 静态页面实现include
- Java 环形缓冲器(Ring Buffer)
- hdf5 matlab,通过MATLAB将矩阵数据写入HDF5文件中的每个数据类型成员