Thứ Tư, 26 tháng 4, 2023

MIT Time-Lock Puzzles

 

Câu đố khóa thời gian (TLP - Time-lock puzzle) cho phép người gửi gửi tin nhắn “đến tương lai”. Người tạo ra câu đố sẽ ẩn lời giải cho đến khi đủ thời gian để cây đố được giải.

Ý tưởng gửi một thông điệp đến tương lai đã được giới thiệu bởi Timothy May vào năm 1993. Việc triển khai mã hóa khóa thời gian được biết đến đầu tiên được đề xuất vào năm 1996 bởi R. Rivest, A. Shamir và D. Wagner trong bài báo “Time-lock puzzles and timed-release crypto”. Trong bài báo này, họ giới thiệu khái niệm về cái gọi là câu đố khóa thời gian. Mục tiêu là mã hóa một tin nhắn để không ai có thể giải mã được tin nhắn cho đến một thời điểm thời gian xác định trước hoặc tin nhắn không thể được giải mã bởi bất kỳ ai trước khi hết khung thời gian đã chọn. Rivest cũng giới thiệu hai cách để thực hiện một hệ thống như vậy:

1. Sử dụng các bài toán tính toán cần một khoảng thời gian nhất định để giải, được gọi là “câu đố khóa thời gian”. Một câu đố như vậy yêu cầu máy tính phải chạy liên tục trong ít nhất một khoảng thời gian nhất định để giải quyết vấn đề.

2. Sử dụng một bên thứ ba đáng tin cậy để giữ an toàn cho thông tin và chỉ tiết lộ một số thông tin nhất định cho đến khi một thời gian cụ thể trôi qua.

Với công bố này, năm 1999, Ron Rivest đã tạo ra một câu đố khóa thời gian để kỷ niệm 35 năm thành lập Phòng thí nghiệm Khoa học Máy tính của trường, và ông nói rằng, với sự phát triển của máy tính hiện tại,  phải 35 năm nữa mới có người giải được.

 

(Nguồn: https://scienceblogs.de/klausis-krypto-kolumne/2019/05/31/ron-rivest-publishes-new-time-lock-puzzle/ )

 

Tuy nhiên, vào năm 2019, Phòng thí nghiệm Khoa học Máy tính và Trí tuệ Nhân tạo (CSAIL) của MIT đã thông báo rằng một câu đố mật mã này đã được giải bởi một lập trình viên tự học đến từ Bỉ, sớm hơn 15 năm so với dự kiến của các nhà khoa học MIT. Lập trình viên này tên là Bernard Fabrot, ông đã dành ba năm rưỡi qua để tính toán lời giải cho một câu đố khóa thời gian này. Làm việc độc lập với Fabrot, còn có một nhóm khác do giám đốc điều hành công nghệ Simon Peffers đứng đầu cũng sắp hoàn thành việc tính toán một lời giải.

Câu đố về cơ bản liên quan đến việc thực hiện khoảng 80 nghìn tỷ lần bình phương liên tiếp của một số bắt đầu và được thiết kế đặc biệt để ngăn chặn bất kỳ ai cố gắng giải nó nhanh hơn bằng cách sử dụng điện toán song song.

Fabrot và Peffers có những cách tiếp cận vấn đề rất khác nhau. Fabrot đã sử dụng Intel Core i7-6700 đơn giản được tìm thấy trong máy tính PC quen thuộc và tính toán giải pháp bằng Thư viện số học chính xác đa GNU (GMP). Trong khi đó, nhóm của Peffers đã sử dụng một thuật toán bình phương mới (được thiết kế bởi Erdinç Öztürk từ Đại học Sabanci) để chạy trên một bộ tăng tốc phần cứng có thể lập trình được gọi là FPGA. Nhóm đang làm việc như một phần của sự hợp tác có tên là Cryptophage, đang trên đường hoàn thành câu đố vào ngày 11 tháng 5 chỉ sau hai tháng tính toán.

 

“Đã có những tiến bộ về phần cứng và phần mềm ngoài những gì tôi dự đoán vào năm 1999,” giáo sư Ron Rivest của MIT cho biết, “Thử thách cơ bản của câu đố là thực hiện khoảng 80 nghìn tỷ bình phương vẫn không bị phá vỡ, nhưng tài nguyên cần thiết để thực hiện một bình phương đã giảm nhiều hơn tôi dự đoán.”

Câu đố là một ví dụ về “chức năng trì hoãn có thể xác minh” (VDF), nghĩa là câu trả lời của nó chỉ có thể được giải sau một số bước nhất định. Vì các VDF cũng có thể được sử dụng để tạo ra tính ngẫu nhiên không thiên vị, nên chúng đã được đề xuất như một phương pháp tiềm năng để cải thiện tính bảo mật và khả năng mở rộng của các hệ thống chuỗi khối như Ethereum và Filecoin.

Tài liệu tham khảo

[1].         https://www.reddit.com/r/crypto/comments/biuxon/programmers_solve_mits_20yearold_cryptographic/

[2].         https://www.csail.mit.edu/news/programmers-solve-mits-20-year-old-cryptographic-puzzle

[3].         https://www.boston.com/news/local-news/2019/05/21/bernard-fabrot-mit-puzzle/

[4].         https://nakedsecurity.sophos.com/2019/05/03/belgian-programmer-solves-cryptographic-puzzle-15-years-too-soon/

[5].           

Không có nhận xét nào:

Đăng nhận xét

Sandbox

Thuật ngữ "sandbox" trong bối cảnh công nghệ được dùng để chỉ một môi trường thử nghiệm an toàn, trong đó các phần mềm, chương tr...