- Trong các hệ thống hiện đại, va chạm dấu thời gian ở mức nano giây xảy ra khá thường xuyên; khi đọc đồng hồ đồng thời trên 4 lõi vật lý, hiện tượng này xuất hiện trong khoảng 5% mẫu.
- Không an toàn nếu giả định rằng dấu thời gian nano giây thô là một định danh duy nhất.
- Tác giả đã dùng một chương trình kiểm thử viết bằng Go để so sánh chênh lệch tương đối giữa các dấu thời gian liên tiếp và dấu thời gian tuyệt đối.
- Hành vi của va chạm dấu thời gian khác nhau tùy theo hệ thống, và đã quan sát thấy các kết quả khác nhau giữa Mac OS X và Linux.
- Trên Linux, trong một luồng đơn, thời gian tuyệt đối và thời gian đơn điệu luôn tăng, với bước tăng tối thiểu là 32 ns. Giữa các luồng, khoảng 5% giá trị thời gian tuyệt đối trùng với luồng khác, và ngay cả khi chạy với 2 luồng trên hệ thống 4 lõi thì vẫn xảy ra khoảng 2% va chạm dấu thời gian.
- Trên Mac OS X, thời gian tuyệt đối có độ phân giải micro giây nên xảy ra rất nhiều va chạm khi lặp lại cùng bài kiểm thử. Thậm chí ngay trong cùng một luồng, đồng hồ đơn điệu đôi khi cũng có thể không tăng.
- Có thể tìm thấy chương trình kiểm thử trên Github để tiếp tục khám phá thêm.
1 bình luận
Ý kiến trên Hacker News