为什么公开算法反而更安全?
计算机基础 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
怎么破替换密码?
重复使用密钥会怎样?
这个问题叫什么?
为什么暴露模式很危险?
它有什么缺点?
这是哪个协议的做法?
举一个例子。
这意味着什么风险?
改一个字符摘要变化大吗?
参考答案(家长):频率分析,中文常用字和英文字母频率都很稳定。
参考答案(家长):能被全世界检验,漏洞更容易被提前发现。
参考答案(家长):密钥分发问题。
参考答案(家长):两段密文异或就消掉了密钥,立刻可破。
参考答案(家长):慢得多,通常只用来加密对称密钥。
参考答案(家长):相同明文块产生相同密文块,图像轮廓都能看出来。
参考答案(家长):两个大质数相乘容易,把乘积分解回去极难。
参考答案(家长):HTTPS 就是这么工作的。
参考答案(家长):几乎完全不同,这叫雪崩效应。
参考答案(家长):一旦找到高效算法,现有体系会失效。
这用到了什么?
盐要保密吗?
为什么普通哈希不适合存密码?
为什么签摘要而不是签原文?
根证书的信任从哪来?
为什么不能忽略证书警告?
窃听者听到全部通信也算不出吗?
为什么这很重要?
历史上有因此出事的例子吗?
什么是时间侧信道?
参考答案(家长):不用,它的作用是让每个人的摘要都不同。
参考答案(家长):生日问题,你在概率课里算过。
参考答案(家长):原文可能很长,非对称运算太慢。
参考答案(家长):太快了,攻击者每秒能试上亿次。
参考答案(家长):警告往往正是中间人攻击的唯一信号。
参考答案(家长):预装在操作系统和浏览器里,是信任的起点。
参考答案(家长):攻击者可能先录下密文,等以后拿到密钥再解。
参考答案(家长):算不出,因为反推需要解一个已知很难的数学问题。
参考答案(家长):比较密码时提前返回,攻击者从耗时推断对了几位。
参考答案(家长):有,随机源有缺陷导致大批密钥可被预测。
用这五样解释一次 HTTPS 访问。
对一段中文和一段随机数据分别试试。
画出状态转移图再写代码。
变化比例大概是多少?
用小质数试一遍。
说说密码学怎么用到了另外两门。
说出三个"知道原理后写代码方式变了"的点。
说出三条你会带进实际项目的实践。
说出三个改变你直觉的结论。
各写三句话。
参考答案(家长):中文能压缩不少,随机数据几乎压不动,正好验证了熵。
参考答案(家长):验证书、协商密钥、对称传输、摘要校验完整性。
参考答案(家长):接近一半,符合理想哈希的特性。
参考答案(家长):图画对了代码就是照着抄,这是状态机的价值。
参考答案(家长):靠计算困难性(复杂性)和随机性(熵)。
参考答案(家长):双方最终得到同一个数,中间传输的信息不足以推出它。
参考答案(家长):如先建索引再优化、写日志、小步发布可回滚。
参考答案(家长):如缓存友好、避免频繁系统调用、注意并发共享。
参考答案(家长):都要说清"解决什么问题"而不只是"是什么"。
参考答案(家长):如贝叶斯陷阱、生日问题、停机问题不可判定。