Lựa chọn quyền riêng tư của bạn

KiwiBee sử dụng cookie tùy chọn của Google Analytics, Google Ads và Meta Pixel để hiểu khách truy cập là người lớn, đo lường số lượt đăng ký hoàn tất và cải thiện các chiến dịch. Cookie thiết yếu luôn được bật. Pixel quảng cáo ChatGPT của OpenAI cũng đo lượt xem trang và yêu cầu đã gửi sau khi bạn đồng ý quảng cáo, và có thể dùng thông tin liên hệ đã băm để đối sánh. Chính sách quyền riêng tư

Chuyển đến nội dung chính

Mật mã học & Trao đổi khóa

Giới thiệu mô phỏng này

Mật mã học & Trao đổi khóa làm sáng tỏ toán học bảo vệ bảo mật internet hiện đại. Ba trạm được chiếu sáng đại diện cho Alice (trái), Eve kẻ nghe trộm giám sát kênh công khai (giữa), và Bob (phải). Ở chế độ Diffie–Hellman, Alice trộn số nguyên bí mật a của cô ấy với bộ tạo công khai g và số nguyên tố mô-đun p để gửi A = gᵃ mod p qua cầu nối, trong khi Bob gửi B = gᵇ mod p. Mặc dù Eve chặn bắt g, p, A và B trên vòng đồng hồ số học mô-đun của cô ấy, cô phải đối mặt với Bài toán lô-ga-rít rời rạc khó khăn, trong khi Alice tính toán Bᵃ mod p và Bob tính toán Aᵇ mod p để mở khóa chính xác cùng một bí mật chung phát sáng S = gᵃᵇ mod p. Chuyển sang chế độ RSA cho thấy mã hóa bất đối xứng C = Mᵉ mod n và giải mã M = Cᵈ mod n.

Học sinh có thể khám phá điều gì

  • Kéo hoặc nhấp vào tinh thể khóa riêng tư màu xanh lam của Alice (a) hoặc tinh thể khóa riêng tư màu xanh lá của Bob (b) và xác minh rằng cả hai kho tiền trên cùng luôn sáng lên với cùng một con số và màu sắc Bí mật chung chính xác!
  • Kiểm tra màn hình hiển thị Kênh công khai của Eve ở trung tâm để xem mọi thứ truyền qua đường dây (g, p, A, B), và nhận ra lý do tại sao việc biết gᵃ mod p không trực tiếp tiết lộ a.
  • Chuyển đổi số nguyên tố mô-đun p giữa 23, 19 và 29 và xem kim Đồng hồ mô-đun trung tâm nhảy đến phần dư mới S mod p.
  • Thay đổi Giao thức thành Ổ khóa công khai/riêng tư RSA và điều chỉnh tin nhắn M của Alice để xem nó mã hóa thành bản mã C = M³ mod 33 qua cầu nối công khai và giải mã trở lại thành M tại trạm của Bob.
  • Kéo quả cầu chặn bắt màu đỏ của Eve ở trung tâm để quét các gói tin chuyển phát công khai di chuyển qua lại giữa Alice và Bob.

Mục tiêu học tập

  1. 1Theo dõi bốn bước trao đổi khóa Diffie–Hellman bằng cách sử dụng phép lũy thừa mô-đun gᵃ mod p và gᵇ mod p.
  2. 2Chứng minh theo đại số lý do tại sao Alice và Bob đi đến cùng một bí mật chung: (gᵇ)ᵃ mod p = (gᵃ)ᵇ mod p = gᵃᵇ mod p.
  3. 3Giải thích lý do tại sao phép lũy thừa mô-đun hoạt động như một hàm cửa bẫy một chiều (dễ tính xuôi, khó đảo ngược thông qua lô-ga-rít rời rạc).
  4. 4Tương phản việc thiết lập khóa đối xứng (Diffie–Hellman) với mã hóa ổ khóa công khai/riêng tư bất đối xứng (RSA).

Câu hỏi giáo viên thường đặt ra

Làm thế nào Alice và Bob có thể thỏa thuận về một khóa bí mật khi Eve nhìn thấy mọi tin nhắn họ gửi?

Họ không bao giờ gửi các số riêng tư a hoặc b của mình. Thay vào đó, họ gửi các kết quả mô-đun đã trộn A = gᵃ mod p và B = gᵇ mod p. Bởi vì việc nâng lên lũy thừa theo mô-đun p sẽ lặp lại quanh vòng đồng hồ, Eve không thể dễ dàng hoàn tác A để tìm a, tuy nhiên Alice và Bob mỗi người có thể áp dụng lũy thừa bí mật của riêng họ vào số công khai của người kia để đạt được gᵃᵇ mod p.

Bài toán lô-ga-rít rời rạc là gì?

Tính toán gᵃ mod p rất nhanh ngay cả đối với các số 2048-bit, nhưng với g, p và phần dư A = gᵃ mod p, việc tìm số mũ a đòi hỏi phải tìm kiếm qua một số lượng khả năng thiên văn khi p là một số nguyên tố lớn.

Tại sao mô phỏng này sử dụng các số nguyên tố nhỏ như p = 23 thay vì các số nguyên tố khổng lồ?

Các số nguyên tố nhỏ như p = 23 cho phép bạn xác minh mọi phép tính bằng tay (ví dụ: 5⁶ mod 23 = 15625 mod 23 = 8). Các kết nối TLS thực tế sử dụng chính xác phương trình đó với các số nguyên tố dài hàng trăm chữ số để Eve không thể dùng sức mạnh trâu bò (brute-force) để phá.

RSA khác với Diffie–Hellman như thế nào?

Diffie–Hellman cho phép hai bên cùng nhau tạo ra một khóa bí mật chung. RSA là một ổ khóa bất đối xứng: Bob công bố một khóa công khai (e, n) mà bất kỳ ai như Alice đều có thể khóa lại trên một tin nhắn (C = Mᵉ mod n), trong khi chỉ có Bob giữ khóa riêng tư d cần thiết để mở nó (M = Cᵈ mod n).

Nhúng mô phỏng này

Đặt vào hệ thống học tập, blog hoặc trang lớp của bạn — miễn phí.

<iframe src="https://kiwibee.io/vn/simulations/public-key-cryptography-diffie-hellman-3d-simulation/embed" title="Mật mã học &amp; Trao đổi khóa | KiwiBee" loading="lazy" allowfullscreen style="width:100%;height:min(70vh,620px);min-height:420px;border:0;border-radius:16px"></iframe>

Tiếp tục khám phá

Mang khoa học tương tác vào lớp học của bạn

Không gian giáo viên miễn phí của KiwiBee gộp soạn bài, phiếu bài tập, công cụ lớp học và sổ điểm vào cùng một nơi.

Bắt đầu miễn phí và tạo lớp học đầu tiên

hoặc khám phá không gian giáo viên →