生日攻击简介与相关推导

本文介绍了生日攻击的概念,源于生日悖论,它在碰撞检测中扮演关键角色。当一个系统有超过23个元素时,出现碰撞的概率超过1/2。通过推导分析,展示了生日攻击如何降低解决某些问题的复杂度,达到1/2成功率的临界点大约是解空间的平方根,这对于评估加密系统的安全性至关重要。
摘要由CSDN通过智能技术生成

一、简介

生日攻击由生日悖论发展而来,在许多领域都发挥着重要的作用(作为攻击手段与防御手段),尤其是碰撞检测方面。现举个烂大街的例子(生日悖论):

一个班里只要有超过23个人,那么选择同一天生日的两个人的概率则大于1/2.

在这个例子中,有几个非常重要的概念:

  1. 1/2:只要攻击的成功概率超过1/2就足以证明该攻击模式是具有威胁的(一般来说,只要复杂度低于穷举的复杂度,或者破解概率高于穷举,那么都算攻击成功)
  2. 为什么会出现这种状况:此例子中,选择的两个人都是随机的,而不是固定一个再去找另一个(这样的话概率会很低:1/364)

二、推导

虽然很多人不喜欢推导,但是自己推一下真的很有益处。这里主要用到两个重要的式子:

  1. 均值不等式: a b < a + b 2 \sqrt ab < \frac{a+b}{2} a b<2a+b
  2. 重要不等式: 1 − x ≤ e − x 1-x \leq e^{-x} 1xex

设有值域为N的k个数,选两个数存在碰撞的概率为 1 − ∏ i = 1 k N − i N 1- \prod^k_{i=1}{\frac{N-i}{N}} 1i=1kNNi其中, N − i N \frac{N-i}{N} NNi为不碰撞的概率。

有上式:
1 − ∏ i = 1 k N − i N = 1 − ( N − 1 ) ! N k ⋅ ( N − k ) ! 1- \prod^k_{i=1}{\frac{N-i}{N} = 1-\frac{(N-1)!}{N^k \cdot {(N-k)!}}} 1i=1kNNi=1Nk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值