Điểm:2

Cần trợ giúp để hiểu cuộc tấn công mô-đun chung RSA để lấy khóa riêng

lá cờ gb

Tôi đang tìm hiểu về tấn công theo mô-đun chung và được biết rằng các cuộc tấn công theo mô-đun công khai có thể tìm ra khóa riêng. Giả sử có 2 người dùng có khóa công khai và khóa riêng $(e_1, d_1)$$(e_2, d_2)$. Kịch bản là kẻ tấn công có khóa công khai và khóa riêng $(e_2, d_2)$ và khóa công khai của nạn nhân $e_1$ Dưới đây là các bước để lấy khóa bí mật:

  1. $t= e_2\cdot d_2-1$
  2. Kẻ tấn công sử dụng thuật toán Euclide mở rộng để tìm $f=\gcd(t,e_1)$ các cặp số của ai $(r,s)$ thỏa mãn phương trình $r\cdot t + s\cdot e_1 = f$
  3. Nếu $f=1$ bộ $d_1' = s$ và trả lại khóa riêng $d_1'$
  4. Nếu $f\neq 1$ bộ $t=\frac t s$ và quay lại bước 2

Tôi có một ví dụ với $d_1=17, M = 25$ là hai giá trị chúng ta nên tìm. n = 253 (mô đun chung) $e_1 = 13$ (khóa công khai của nạn nhân) $e_2 = 23$ (khóa công khai của kẻ tấn công) $d_2 = 67$ (khóa bí mật của kẻ tấn công) $C = 27$ (Bản mã). Kẻ tấn công sẽ tìm thấy $d_1'$ theo các bước:

  1. $t= e_2\cdot d_2-1 = 23\cdot 67 = 1540$
  2. $\gcd(t,e_1) = 1 \ngụ ý r = -2, s = 237$
  3. Cho nên $d_1' = s = 237$
  4. Thẩm tra $M = C^{d_1} \bmod n = 27^{237} \bmod 253 = 25$

Vấn đề là tôi không hiểu tại sao với các bước như vậy, chúng tôi sẽ tìm thấy khóa bí mật. Ai đó có thể giải thích cho tôi xin vui lòng?

kodlu avatar
lá cờ sa
nhiều câu hỏi và câu trả lời tồn tại về điều này. xem các câu hỏi xuất hiện trên tab liên quan
domiee13 avatar
lá cờ gb
Bạn có thể cung cấp cho tôi một liên kết chỉ định không. Tôi đã tìm kiếm nhưng không thể tìm thấy câu trả lời phù hợp. . .
fgrieu avatar
lá cờ ng
Điều này không trả lời được câu hỏi, nhưng: với $(n,e_2,d_2)$ kẻ tấn công có thể tính $n$ và sau đó tìm một $d_1$ đang hoạt động. Điều này được biết đến kể từ [bài viết RSA gốc](https://people.csail.mit.edu/rivest/Rsapaper.pdf#page=13): âkiến thức về $d$ cho phép $n$ được phân tích thành nhân tốâ ¦â. Xem [những điều này](https://crypto.stackexchange.com/q/62482/555) [liên quan](https://crypto.stackexchange.com/q/52736/555) [câu hỏi](https://crypto .stackexchange.com/q/13113/555).
Điểm:1
lá cờ ng

Chúng tôi sẽ sử dụng rất nhiều thực tế sau: đối với một mô đun công cố định $n$ tích của các số nguyên tố khác nhau, một cặp số nguyên $(e,d)$ tạo thành một cặp số mũ RSA phù hợp [nghĩa là với $c\mapsto c^d\bmod n\,=\,m$ có khả năng giải mã đáng tin cậy bất kỳ bản rõ nào $m$ Trong $[0,n)$ được mã hóa cho mỗi $m\mapsto m^e\bmod n\,=\,c$ ] nếu và chỉ nếu$$e\cdot d\equiv1\pmod{\lambda(n)}$$ở đâu $\lambda$chức năng carmichael. Điều đó có thể được chứng minh là tuân theo định nghĩa của $\lambda(n)$ là số nguyên dương nhỏ nhất $y$ như vậy mà $m^y\equiv 1\pmod n$ cho tất cả $m\in\mathbb Z^*$. Điều này giữ bất kể dấu hiệu của $d$.

Nó sau đó $t$ của bước 1 của thuật toán của câu hỏi là tồn tại $k\in \mathbb Z$ với $t=k\cdot\lambda(n)$.

Nếu thuật toán tìm thấy $f=1$ ở lần thực hiện đầu tiên của bước 2, do đó, nó giữ $r\cdot k\cdot\lambda(n)+s\cdot e_1=1$, vì thế $s\cdot e_1=1+(-r\cdot k)\cdot \lambda(n)$, do đó khi thuật toán đặt $d'_1=s$ ở bước 3 nó giữ $e_1\cdot d'_1\equiv1\pmod{\lambda(n)}$. Áp dụng thực tế đầu tiên, $(e_1,d'_1)$ là một cặp số mũ RSA phù hợp cho mô đun công khai $n$. Nếu chúng tôi muốn $d'_1$ để không tiêu cực chúng ta có thể làm cho $d'_1=s\bmod t$, mà theo định nghĩa là trong phạm vi $[0,t)$ và cũng như vậy $e_1\cdot d'_1\equiv1\pmod{\lambda(n)}$.

Mọi thứ trở nên sai lầm khi $f\ne1$ ở lần thực hiện đầu tiên của bước 2. Thường $s$ sẽ không chia $t$ ở bước 4, ngăn chặn việc áp dụng thuật toán như hiện tại. Ví dụ: $p=13$, $q=19$, $n=247$, $\varphi(n)=216$, $\lambda(n)=36$, $e_1=91$, $e_2=25$, $d_1=19$, $d_2=121$, $t=3024$, $r=-4$, $s=133$, $f=7$, $t/s=432/19\not\in\mathbb Z$.

Thay đổi $t:=\frac t s$ đến $t:=\frac t f$ ở bước 4 đảm bảo tính chia hết và để thuật toán hoạt động. Tranh luận: $f$ phân chia $e_1$, và $\gcd(e_1,\lambda(n))=1$, do đó $f$ là nguyên tố cùng với $\lambda(n)$, do đó chúng tôi khởi động lại bước 2 với $t$ vẫn là bội số của $\lambda(n)$.


Ngoài ra: đưa ra $(n,e_2,d_2)$ đối thủ có thể yếu tố $n$ (xem cái này) và từ đó nhận được $\hat{d_1}=e^{-1}\bmod\lambda(n)$ phù hợp $(n,e_1)$, thông thường với $\hat{d_1}$ nhỏ hơn/nhanh hơn $d'_1$; hoặc nhận khóa riêng đang hoạt động ở dạng cho phép vận hành màn hình CRT do đó giải mã hoặc chữ ký thậm chí còn nhanh hơn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.