0


流密码是语义安全的

目标:安全的PRG => 流密码是语义安全的。

G:K->{0,1}^n 安全的PRG,如果G是安全的,那么从G提取的密钥流是语义安全的。无法证明完美保密性,因为流密码较短,不可能完全安全。

如何证明?
任意的语义安全攻击者A,存在一个PRG攻击者B,使得Adv[A,E] <= 2*Adv[B,G]。A对流密码有可忽略优势,B对PRG有可忽略优势。
在这里插入图片描述

Challenger随机选一个秘钥,将GK加密切换为用r加密,用真正的随机填充而非伪随机填充。
攻击者无法察觉,因为生成器是安全的,无法赢得游戏,流密码一定是安全的。

proof let A be a semantic security adversary attacking E.
claim1:

  1. P
  2. r
  3. [
  4. R
  5. 0
  6. ]
  7. P
  8. r
  9. [
  10. R
  11. 1
  12. ]
  13. =
  14. A
  15. d
  16. v
  17. s
  18. s
  19. [
  20. A
  21. ,
  22. O
  23. T
  24. P
  25. ]
  26. =
  27. 0
  28. |Pr[R_{0}] - Pr[R_{1}]| = Adv_{ss}[A, OTP] = 0
  29. Pr[R0​]−Pr[R1​]∣=Advss​[A,OTP]=0

claim2: 存在一个PRG攻击者B,

  1. P
  2. r
  3. [
  4. W
  5. b
  6. ]
  7. P
  8. r
  9. [
  10. R
  11. b
  12. ]
  13. =
  14. A
  15. d
  16. v
  17. s
  18. s
  19. [
  20. B
  21. ,
  22. G
  23. ]
  24. |Pr[W_{b}] - Pr[R_{b}]| = Adv_{ss}[B, G]
  25. Pr[Wb​]−Pr[Rb​]∣=Advss​[B,G]

=>

  1. A
  2. d
  3. v
  4. s
  5. s
  6. [
  7. A
  8. ,
  9. E
  10. ]
  11. =
  12. P
  13. r
  14. [
  15. W
  16. 0
  17. ]
  18. P
  19. r
  20. [
  21. W
  22. 1
  23. ]
  24. <
  25. =
  26. 2
  27. A
  28. d
  29. v
  30. s
  31. s
  32. [
  33. B
  34. ,
  35. G
  36. ]
  37. =
  38. 2
  39. A
  40. d
  41. v
  42. p
  43. r
  44. g
  45. [
  46. B
  47. ,
  48. G
  49. ]
  50. Adv_{ss}[A, E] = |Pr[W_{0}] - Pr[W_{1}]| <= 2*Adv_{ss}[B, G] = 2*Adv_{prg}[B, G]
  51. Advss​[A,E]=∣Pr[W0​]−Pr[W1​]∣<=2Advss​[B,G]=2Advprg​[B,G]
标签: 安全

本文转载自: https://blog.csdn.net/sharloopSeason/article/details/143840589
版权归原作者 learn to create 所有, 如有侵权,请联系我们删除。

“流密码是语义安全的”的评论:

还没有评论