Và từ quan điểm bảo mật, việc tăng tính ngẫu nhiên sẽ không tạo ra sự khác biệt..
Có hai lý do để 'quay lại' hơn là thực hiện một số logic đặc biệt.
Lý do đầu tiên là để giảm số lượng mã mục đích đặc biệt 'khó kiểm tra'. Bất kỳ cách 'tăng $k$' sẽ liên quan đến mã cực kỳ hiếm khi chạy (và khó có thể đưa ra các bài kiểm tra đơn vị). Bất kỳ mã khó chạm nào như vậy đều là một vị trí thuận lợi cho các lỗi mã hóa không được phát hiện và do đó nên tránh nếu có thể. Ngược lại, quay lại và chạy lại về cơ bản cùng một quy trình sẽ ít xảy ra lỗi hơn đáng kể.
Lý do khác là việc sử dụng lại dữ liệu được coi là 'không thể chấp nhận được' có thể bị rò rỉ.
Ví dụ: giả sử rằng đối thủ có thể phát hiện khi một sự gia tăng như vậy xảy ra (ví dụ: bằng cách theo dõi chặt chẽ thời gian để tạo ra một chữ ký như vậy) và trên thực tế, điều đó xảy ra vì $s=0$. Nếu vậy, chúng tôi vừa bị rò rỉ khóa riêng tư.
Đây là cách điều đó xảy ra: trong lần lặp đầu tiên, chúng tôi tính toán $s = k^{-1}( z + rd_A )$ và thấy rằng nó bằng 0. Vì vậy, chúng tôi như vậy $r' = ((k+1)G)_x$ thay vào đó và xuất ra (và tiếp tục tính toán $s'$, mà cuộc tấn công này không sử dụng).
Những gì kẻ tấn công có thể làm là xây dựng lại điểm $(k+1)G$ từ tọa độ x mà chúng tôi vừa đưa cho anh ấy (thực ra, đó là một trong hai điểm; điều đó có nghĩa là anh ấy thử cả hai); điều đó sau đó cho phép anh ta tính toán lại $kG$, và do đó bản gốc $r$
Bây giờ, anh biết rằng $k^{-1}(z + rd_A) = 0$, hiện nay $k^{-1} \ne 0$ (nghịch đảo không bao giờ bằng 0), và vì vậy $d_A = -r^{-1}z$; anh ấy biết $z$ (từ tin nhắn đã được ký) và $r$, điều đó mang lại cho anh ta khóa riêng $d_A$.
Bây giờ, nếu chúng ta chọn hoàn toàn ngẫu nhiên $k$ mỗi lần, chúng tôi không phải lo lắng về các cuộc tấn công không rõ ràng như thế này.
Bây giờ, trong thực tế, điều này $s=0$ điều kiện về cơ bản không bao giờ xảy ra (xảy ra với cùng xác suất là một dự đoán ngẫu nhiên về khóa riêng tình cờ lại đúng), vì vậy có vẻ như chúng ta không cần phải lo lắng về điều đó. Tôi vẫn sẽ tin tưởng vào phương pháp ít bị lỗi hơn và an toàn hơn, ngay cả khi nó mất nhiều thời gian hơn (và nếu điều đó hiếm khi xảy ra thì thời gian cần thiết thường không liên quan).