密码学需要知道的52个问题

密码学人需要知道的52个问题

计算机工程学

  1. 下面的处理器有什么不同:

通用处理器

带有指令集扩展的通用处理器

专用处理器

现场可编程门阵列(FPGA)

  1. 多核处理器和向量处理器有什么不同

  2. 请评估下面这些工具相应的计算和存储能力:

智能卡

微型控制器,如传感器节点

嵌入式或者移动计算机,如移动手机和掌上电脑(PDA)

便携试电脑和台式机

理论计算机科学

  1. 什么是 P类复杂性问题

  2. 什么是NP类复杂性问题

  3. 如何解释一个NP类的证明可用多项式时间检验

  4. 随机性在计算中的作用,什么是BPP类问题

  5. 交互在计算中的作用,什么是IP类问题

  6. 香农对熵和信息的定义

数学背景

  1. RSA和Strong RSA的区别

  2. 离散对数问题(DLP),计算性Diffie-Hellman问题(CDH),决策性Diffie-Hellman问题(DDH)分别是什么

  3. 什么是椭圆曲线群法则

  4. 简述投影点表示法的用途和优势

  5. 什么是密钥对

基础密码方案和协议

  1. 描述RSA-OAEP和ECIES这两个方案的密钥生成,加密,解密算法过程

  2. 描述 DSA,Schnorr ,RSA-FDH这三个方案的密钥生成,签名和认证算法过程

  3. 描述并比较DES和AES,尤其是它们轮函数的区别

  4. 画出ECB,CBC和CTR组密码操作模式

  5. 描述门限密钥共享方案(Shamir)

  6. 描述Merkle-Damgaard类型的hash函数

密码部署细节

  1. 中国剩余定理(CRT)如何提高RSA的性能

  2. 如何利用Montgomery算法实现快速幂模运算

  3. 用C实现Montgomery算法

  4. 描述大整数幂模运算的三种算法:二进制算法,m-ary算法,滑动窗口算法

  5. 描述利用GF§和GF(2^n)的素数进行模运算的方法

  6. 描述非邻接表标量乘法运算

安全定义和证明

  1. 关于对称加密的IND-CCA安全定义是什么

  2. 关于公钥加密的IND-CCA安全定义是什么

  3. 关于电子签名的UF-CMA安全定义是什么

  4. 关于密钥协商的BR安全定义是什么

  5. 使用game hopping对密码协议进行证明

  6. 基于规则的安全定义(game based)和基于模拟的安全定义(simulator)有什么不同

数学分析攻击

  1. 复件攻击如何利用CRT攻击RSA

  2. Baby-Step/Giant-Step攻击如何破坏离散对数问题

  3. Pollard rho,Pollard “kangaroo”,parallel Pollard rho攻击如何破坏椭圆曲线中的离散对数问题

  4. 什么是指数计算算法

  5. 数域筛法(NFS)是怎么工作的

实际攻击

  1. 隐蔽信道和边信道有什么不同

  2. 边信道攻击和故障攻击有什么不同

  3. DPA和SPA攻击有什么不同

  4. 是否所有的边信道攻击都和能量分析有关

  5. C代码写的Montgomery算法是否会泄露边信道信息

  6. 描述AES中抵御边信道攻击的基本方法

  7. 描述ECC中抵御边信道攻击的基本方法

  8. 描述RSA中抵御边信道攻击的基本方法

先进的协议和体系

  1. 什么是Fiat-Shamir信息交互协议

  2. Sigma协议中的正确性,健壮性,零知识证明是什么

  3. TPM安全芯片的用途

  4. 描述IPSec和TLS的基础安全原理

  5. 基于签名协议的BLS对是什么

  6. 基于身份的加密算法模型是什么,描述一个IBE协议

  7. 某些先进的应用中,例如电子投票,电子竞拍,多平台计算,需要满足什么样的安全需求

你可能感兴趣的:(密码学)