Advertisement
gchebanov

dct round error attack 0->0.49

Dec 14th, 2022
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. from https://habr.com/ru/post/704750/
  2. ====
  3. from scipy.fftpack import dct
  4. def max_step(D):
  5. return 1 / np.max(np.sum(np.abs(D), axis=1))
  6. D_8 = dct(np.identity(8), norm='ortho', axis=0)
  7. D_8x8 = np.kron(D_8, D_8)
  8. ID_8x8 = D_8x8.T
  9. step = max_step(ID_8x8)
  10. ====
  11.  
  12.  
  13. rounding DCT 8x8 attack
  14. target [0]
  15. error[0] = 0.4903774985577911
  16.  
  17. x0 =
  18. [ 45042. 49802. -388. 3762. -3316. 34708. -6698. 27018.
  19. -41219. -17662. -118901. 1831. 9137. -42023. -13850. -10845.
  20. 23379. -27018. 23699. 13219. -1786. 52937. -58440. 19318.
  21. -18008. 75903. -48954. -7870. 114001. -19152. 10159. -13026.
  22. 60418. 45511. 36168. 100336. -35948. 22835. 96077. 1730.
  23. -15922. -133054. -3460. -6655. -48379. -80695. -72022. 37555.
  24. -1090. 64528. 41440. 43964. -23915. -182. 23294. 27462.
  25. 103482. 94889. 32304. 30749. 53892. 40881. 100513. 81184.]
  26.  
  27. t = np.dot(x0, D_8x8) / step
  28. x1 = round(t) =
  29. [ 674073. 53800. 218225. -54378. 319611. 8035. -257778. -242650.
  30. -693212. -54434. -255213. 410709. 132596. -361181. -8871. -200692.
  31. 408618. -6658. 413722. 80224. -103591. -173971. 24160. -99300.
  32. -584331. 17660. 102992. -427463. 81361. 486706. 250154. -86881.
  33. 1259213. 226041. 202529. 363315. -356449. -71335. -550168. 77964.
  34. 77467. 207701. -172874. -78605. -198860. -544405. 103635. 84479.
  35. -123598. -4467. 126910. -77316. 291086. 86719. 929863. 170559.
  36. 847692. 297807. 90397. -134541. -518376. 516347. 363414. -418244.]
  37.  
  38. e_round = t - x1 =
  39. [0.49617557 0.47420052 0.48957082 0.47507862 0.49163128 0.4865168
  40. 0.49642385 0.49678944 0.4972423 0.49134182 0.49103339 0.49237629
  41. 0.49355259 0.49590319 0.49743268 0.49390482 0.49467272 0.47830408
  42. 0.49497682 0.49301821 0.49058334 0.48763356 0.49502501 0.47314813
  43. 0.49245933 0.49161419 0.48935522 0.49125884 0.48733352 0.49666805
  44. 0.4999157 0.49382924 0.4945706 0.48928885 0.49132343 0.48228909
  45. 0.49789887 0.48620763 0.49494931 0.49609369 0.49152199 0.48262616
  46. 0.49165072 0.48969459 0.48877153 0.48997834 0.49213162 0.48938426
  47. 0.49217561 0.48163395 0.48898808 0.47947837 0.49790445 0.49805074
  48. 0.49200448 0.48096602 0.48670205 0.4960902 0.49680454 0.49715593
  49. 0.49264483 0.49256263 0.49677621 0.49464604]
  50.  
  51. x2 = np.dot(x1 * step, ID) =
  52. [ 45041.5096225 49802.13522281 -388.10707774 3762.03674973
  53. -3316.0570494 34708.0042799 -6698.03350853 27017.98267656
  54. -41218.86612965 -17662.03685572 -118900.9713595 1830.99014012
  55. 9137.01518245 -42023.0020703 -13849.99124395 -10844.99594931
  56. 23378.89421016 -27017.97033732 23698.97709904 13219.00762467
  57. -1786.01218981 52937.00162524 -58440.00750826 19317.99592986
  58. -18007.96146653 75902.98979536 -48953.99311838 -7870.00269811
  59. 114001.00305218 -19151.99931936 10159.0021093 -13025.99984388
  60. 60417.94194243 45511.01631003 36167.98584339 100336.00548459
  61. -35948.00755141 22835.00203295 96076.9964938 1729.99856434
  62. -15921.99294015 -133054.00089018 -3459.99951989 -6655.0014809
  63. -48378.99893657 -80694.99998904 -72022.00021801 37554.99950295
  64. -1090.03262392 64528.00892361 41439.99307846 43964.00387872
  65. -23915.00376437 -182.00040394 23293.99741379 27461.99888187
  66. 103481.98701999 94889.00365117 32303.99753426 30749.00040944
  67. 53891.99837031 40881.0001226 100512.99927998 81183.99725001]
  68.  
  69. err = x2 - x0 =
  70. [-4.90377499e-01 1.35222810e-01 -1.07077738e-01 3.67497334e-02
  71. -5.70493978e-02 4.27989701e-03 -3.35085314e-02 -1.73234385e-02
  72. 1.33870350e-01 -3.68557240e-02 2.86404973e-02 -9.85987891e-03
  73. 1.51824467e-02 -2.07030145e-03 8.75605502e-03 4.05068910e-03
  74. -1.05789839e-01 2.96626757e-02 -2.29009568e-02 7.62467133e-03
  75. -1.21898092e-02 1.62524448e-03 -7.50826287e-03 -4.07013805e-03
  76. 3.85334747e-02 -1.02046371e-02 6.88161718e-03 -2.69810834e-03
  77. 3.05217662e-03 6.80637568e-04 2.10929855e-03 1.56116002e-04
  78. -5.80575706e-02 1.63100295e-02 -1.41566088e-02 5.48459390e-03
  79. -7.55141320e-03 2.03295266e-03 -3.50620023e-03 -1.43566074e-03
  80. 7.05985346e-03 -8.90180905e-04 4.80108527e-04 -1.48090259e-03
  81. 1.06342707e-03 1.09610264e-05 -2.18004890e-04 -4.97053588e-04
  82. -3.26239171e-02 8.92361134e-03 -6.92153634e-03 3.87872399e-03
  83. -3.76437412e-03 -4.03936477e-04 -2.58620775e-03 -1.11813122e-03
  84. -1.29800120e-02 3.65116999e-03 -2.46574024e-03 4.09439737e-04
  85. -1.62969298e-03 1.22601778e-04 -7.20019074e-04 -2.74998696e-03]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement