Điểm:2

Có bao nhiêu ngẫu nhiên để "rửa" một TRNG bị xâm nhập một cách hợp lý?

lá cờ id

Giả sử tôi có một mô-đun RNG vật lý tạo ra $n$-bit các số ngẫu nhiên vượt qua các bài kiểm tra tính ngẫu nhiên như bộ Dieharder.Vì nó là một thiết bị hộp đen với nguồn ngẫu nhiên không xác định, chúng ta cũng giả sử rằng nó có khả năng bị xâm phạm một phần: kẻ tấn công biết hoạt động của mô-đun RNG, với một trạng thái trước đó, có thể đoán chính xác trạng thái tiếp theo trong $2^{n-m}$ các bước cho $1 \leq m \leq n$.

Chúng ta cũng hãy giả sử rằng tôi có quyền truy cập vào một nguồn entropy khác, có thể kiểm chứng được nhưng chất lượng kém. $x - p$ bit entropy mỗi $x$ bit đầu ra cho $0 < p < x$. Chúng ta cũng hãy giả sử rằng nguồn entropy này chậm hơn đáng kể so với mô-đun RNG đã nói ở trên.

  1. Để "rửa" nguồn RNG đầu tiên để nó tạo ra những con số thực sự khó đoán, tôi sẽ phải làm bao nhiêu công việc?
    • Để hủy bỏ hiệu ứng của $m$ trên số đầu ra, tôi sẽ phải chắt lọc và cung cấp bao nhiêu bit entropy từ nguồn entropy?
    • Tôi sẽ phải thực hiện những thao tác nào để đảm bảo rằng tôi không bị lộ số bị lộ? Việc nối + băm với hàm băm bảo mật bằng mật mã có "làm nên chuyện" không?
    • Ngược lại, những hoạt động nào tôi sẽ phải tránh nếu tôi muốn việc giả mạo được "rửa sạch"?
    • Tôi sẽ phải cắt bao nhiêu?
  2. Giả sử rằng $m$ đủ lớn/gần $n$, sẽ tốt hơn nếu chỉ trích xuất các bit ngẫu nhiên từ nguồn thứ hai và nối chúng thành một số, bỏ qua việc sử dụng mô-đun có khả năng bị xâm nhập?

Giả định của tôi:

  1. tôi sẽ phải sử dụng $m$ bit của đầu ra ngẫu nhiên không thỏa hiệp, nối nó với đầu ra đầu tiên và băm nó. Tôi nghĩ rằng việc cắt bớt đầu ra được nối hoặc số đầu vào sẽ không giúp ích nhiều nếu tôi không biết chính xác bit nào bị xâm phạm hoặc nếu tôi không biết xác suất của bit nào bị xâm phạm. Tôi nên tránh XOR các đầu vào trước khi áp dụng hàm băm.

  2. Tôi cho rằng việc "rửa" là hợp lý cho đến $m = n/2$, ngoài ra tôi có lẽ chỉ nên trích xuất tính ngẫu nhiên từ nguồn thứ hai và nối các bit ngẫu nhiên thành một $n$-bit số, bỏ qua hoàn toàn mô-đun có khả năng bị xâm nhập.

Điểm:1
lá cờ cn

đổ TRNG1. Cả RC4 và Marsienne Twister đều vượt qua Dieharder.

Đây là tiền điện tử và giống như mang thai, không có khái niệm về một 'chút' bị tổn hại. Nếu nó bị xâm phạm, bạn có thể dự đoán đầu ra tiếp theo có lẽ chỉ trong vài bước nếu nó được gieo từ e.t.c. thời gian (chung), đừng bận tâm $2^{da, da ,da}.$ Tính không thể phân biệt bằng máy tính có nghĩa là trừ khi bạn tự xây dựng RNG, bạn sẽ không bao giờ biết nó thực sự đang làm gì. Vì vậy hãy thoát khỏi nó. (Hoặc giả vờ sử dụng nó, nhưng điều đó hơi nghiêm trọng).

Bạn không nối các bit từ TRNG2. Bạn đo entropy như $1 - \epsilon$ bit/bit (có thể có giun). $\epsilon$ là thước đo 'độ nghèo'; một sự thiên vị khỏi sự ngẫu nhiên hoàn hảo. Và sau đó trích xuất từ ​​TRNG2 bằng các kỹ thuật tiêu chuẩn như ma trận Toeplitz, hàm băm tiêu chuẩn (Pearson, CRC16, SHAx), hàm băm phổ quát hoặc nếu bạn may mắn thì chỉ cần von Neumann. Tốc độ sẽ phụ thuộc vào $\epsilon$.

mezenkur avatar
lá cờ id
Bạn nói đúng, có lẽ tôi đã quá lạc quan và để bộ não mày mò của mình đi quá xa so với những mối quan tâm thực tế. Cảm ơn sự sáng suốt của bạ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.