Bristol大学密码学博士生的五十二个知识点
Bristol大学密码学博士生的五十二个知识点
这个系列,是Bristol大学的密码安全工作组为密码学和信息安全相关的博士准备了52个基本知识点。
原地址:http://bristolcrypto.blogspot.com/2014/10/52-things-number-1-different-types-of.html
对密码学基础是一个极好的总结。
每篇内容不多但是问题提出的极好。我翻译过来是随手之意。
计算机工程方面(E)
Number 1 通用处理器,带指令扩展的通用处理器,专用处理器有什么区别?
Number 2 多核处理器和向量处理器的区别?
Number 3 智能卡,微处理器(单片机),嵌入式或移动设备,笔记本或者座机的计算性能的区别
理论计算机科学(F)
Number 4 复杂性为P类是什么意思?
Number 5 复杂性为NP类是什么意思?
Number 6 我们如何将NP解释为一组定理,其证明可以在多项式时间内检验?
Number 7 随机性怎么帮助计算,什么是BPP类?
Number 8 交互怎么帮助计算机,什么是IP类?
Number 9 香农对熵和信息的定义是什么?
数学背景(A,B)
Number 10 RSA和强RSA有什么问题?
Number 11 什么是DLP,CDH,DDH问题?
Number 12 椭圆曲线群是什么?
Number 13 概述射影点表示的用途和优点?
Number 14 什么是密码学配对?
基本密码机制和协议(A)
Number 15 描述RSA-OAEP,ECIES密钥生成,加密,解密的算法.
Number 16 描述DSA,Schnorr,RSA-FDH的密钥生成,签名和认证.
Number 17 描述和比较DES,AES的轮构成.
Number 18 画ECB,CBC,CTR描述图.
Number 19 描述Shamir秘密分发场景.
Number 20 Merkle-Damgaard hash函数如何构造?
密码实现详情(A)
Number 21 CRT方法如何提升RSA性能?
Number 22 怎样在Montgomery算法描述一个数字或者多个数字?
Number 23 写一个实现Montgomery算法的c程序.
Number 24 描述binary,m-ary和滑动窗口指数算法.
Number 25 描述模块化方法减少使用“特别”质数定义GF (p)和GF (2 ^ n).
Number 26 描述NAF标量乘法算法.
安全定义和证明(A,B,C)
Number 27 什么是针对对称加密的IND-CCA安全定义?
Number 28 什么是针对公钥密钥加密的IND-CCA安全定义?
Number 29 针对数字签名UF-CMA的安全定义是什么?
Number 30 大致描述密钥协商的BR安全定义?
Number 31 给出一个包含game hopping的安全证明
Number 32 概述基于游戏和基于模拟的安全定义之间的区别
数学攻击(A,B)
Number 33 Bellcore攻击是如何攻击使用CRT的RSA方案的
Number 34 描述攻击DLP的Baby-Step/Giant-Step方法
Number 35 给出Pollard rho,Pollard "Kangaroo"和parallel Pollard的大致想法
Number 36 什么是指数微积分算法?
Number 37 大致描述NFS是如何工作的
实际攻击(D)
Nubmer 38 隐蔽信道和侧信道有什么不同?
Number 39 侧信道攻击和错误攻击有什么不同?
Number 40 DPA和SPA的主要不同是什么?
Number 41 所有的侧信道攻击都和能量分析有关吗?
Number 42 看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道吗?
Number 43 为AES描述一些基本的(可能无效的)防御来抵抗侧通道攻击
Number 44 为ECC描述一些基本的(可能无效的)防御来抵抗侧通道攻击
Number 45 为AES描述一些基本的(可能无效的)防御来抵抗侧通道攻击
高级协议与构造(A,B)
Number 46 对于一个Sigma协议,正确性,健壮性和零知识都意味着什么?
Number 47 什么是Fiat-Shamir变换
Number 48 使用TPM的目的是什么?
Number 49 描述IPSec和TLS背后的原理
Number 50 什么是BLS基于对的签名方案?
Number 51 基于ID的加密方案的安全模型是什么?描述一个IBE方案
Number 52 选择一个先进的应用概念,如电子投票,拍卖或多方计算。这样一个系统的大致安全需求是什么?
推荐的书籍(和上面括号里的对应)
[A] Nigel's book http://www.cs.bris.ac.uk/~nigel/Crypto_Book/
[B] The Katz Lindell book http://www.cs.bris.ac.uk/~nigel/Crypto_Book/
[C] Goldreich's two volume book http://www.wisdom.weizmann.ac.il/~oded/foc-book.html
[D] Elisabeth's DPA book http://www.dpabook.org/
[E] Dan's book http://www.dpabook.org/
[F] Goldreich's book http://www.wisdom.weizmann.ac.il/~oded/cc-book.html
Bristol大学密码学博士生的五十二个知识点的更多相关文章
- Gradle 1.12用户指南翻译——第五十二章. Maven 插件
本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...
- Java进阶(五十二)利用LOG4J生成服务日志
Java进阶(五十二)利用LOG4J生成服务日志 前言 由于论文写作需求,需要进行流程挖掘.前提是需要有真实的事件日志数据.真实的事件日志数据可以用来发现.监控和提升业务流程. 为了获得真实的事件日志 ...
- SQL注入之Sqli-labs系列第五十关,第五十一关,第五十二关,第五十三关(ORDER BY堆叠注入)
0x1第五十关 源码中使用的mysqli_multi_query()函数,而之前使用的是mysqli_query(),区别在于mysqli_multi_query()可以执行多个sql语句,而mysq ...
- “全栈2019”Java第五十二章:继承与初始化详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 《手把手教你》系列技巧篇(五十二)-java+ selenium自动化测试-处理面包屑(详细教程)
1.简介 面包屑(Breadcrumb),又称面包屑导航(BreadcrumbNavigation)这个概念来自童话故事"汉赛尔和格莱特",当汉赛尔和格莱特穿过森林时,不小心迷路了 ...
- 第四十二个知识点:看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道路吗?
第四十二个知识点:看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道路吗? 几个月前(回到3月份),您可能还记得我在这个系列的52件东西中发布了第23件(可以在这里找到).这篇文章的标题是& ...
- abp(net core)+easyui+efcore实现仓储管理系统——出库管理之三(五十二)
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统--ABP总体介绍(一) abp(net core)+ ...
- 面渣逆袭:Redis连环五十二问,图文详解,这下面试稳了!
大家好,我是老三,面渣逆袭系列继续,这节我们来搞定Redis--不会有人假期玩去了吧?不会吧? 基础 1.说说什么是Redis? Redis是一种基于键值对(key-value)的NoSQL数据库. ...
- Linux性能优化实战学习笔记:第五十二讲
一.上节回顾 上一节,我们一起学习了怎么使用动态追踪来观察应用程序和内核的行为.先简单来回顾一下.所谓动态追踪,就是在系统或者应用程序还在正常运行的时候,通过内核中提供的探针,来动态追踪它们的行为,从 ...
随机推荐
- LeetCode缺失的第一个正数
LeetCode 缺失的第一个正数 题目描述 给你一个未排序的整数数组 nums,请你找出其中没有出现的最小的正整数. 进阶:你可以实现时间复杂度为 O(n)并且只使用常数级别额外空间的解决方案吗? ...
- struct vs class in C++
在C++中,除了以下几点外,struct和class是相同的. (1)class的成员的默认访问控制是private,而struct的成员的默认访问权限是public. 例如,program 1会编译 ...
- LocalDate计算两个日期相差天数
import org.apache.commons.lang.StringUtils; import java.time.LocalDate; import java.time.ZoneId; imp ...
- Dubbo管控平台
2019年初,官方发布了Dubbo管理控制台0.1版本.结构上采取了前后端分离的方式,前端使用Vue和Vuetify分别作为Javascript框架和UI框架,后端采用Spring Boot框架 一. ...
- C++ friend详解
私有成员只能在类的成员函数内部访问,如果想在别处访问对象的私有成员,只能通过类提供的接口(成员函数)间接地进行.这固然能够带来数据隐藏的好处,利于将来程序的扩充,但也会增加程序书写的麻烦. C++ 是 ...
- 创建线程的第二种方式------实现Runnable接口的方式
package cn.itcast.demo16.Demo07.Runnable;/** * @author newcityman * @date 2019/7/22 - 23:17 */public ...
- pipeline input步骤
目录 一.简介 二.input步骤复杂用法 三.获取上游pipeline信息 四.超时中止 一.简介 执行imput步骤会暂停pipeline,直到用户输入参数.这是一种特殊的参数化pipeline的 ...
- Nginx中指令
Rewrite模块 1 return指令 Syntax: return code [text]; return code URL; return URL; Default: - Context: se ...
- 测试工具_http_load
目录 一.简介 二.例子 三.参数 一.简介 http_load以并行复用的方式运行,用以测试Web服务器的吞吐量与负载.但是它不同于大多数压力测试工具,其可以以一个单一的进程运行,这样就不会把客户机 ...
- C语言程序设计:模拟简单运算器的工作
目录 C语言程序设计:模拟简单运算器的工作 1.题目 2.分析 3.代码实现 4.结尾 C语言程序设计:模拟简单运算器的工作 1.题目 模拟简单运算器的工作,输入一个算式(没有空格),遇等号&qu ...