Điểm yếu tồi tệ nhất là quyền truy cập đọc vào tệp đầu tiên tiết lộ tên và ngày sinh của bệnh nhân.
Và sau đó, quyền truy cập đọc vào các tệp khác của một đối thủ có kiến thức về hệ thống (như giả định trong mật mã học) cho phép lấy dữ liệu y tế cho từng bệnh nhân được xác định theo tên và ngày sinh, với chi phí tính toán có thể chấp nhận được.
Đây là sự cố bảo mật CNTT không có giải pháp mã hóa hoàn chỉnh. Giải pháp tiêu chuẩn là hạn chế quyền truy cập đọc vào tệp. Điều tốt nhất mà tôi thấy trên thực tế có thể thực hiện được mà không bị hạn chế như vậy là việc biết/đoán chính xác tên và ngày sinh của bệnh nhân là cần thiết để khử ẩn danh dữ liệu của họ và có chi phí tính toán để xác minh dự đoán. Ý tưởng chung là hoặc
- hoàn toàn không lưu tên và ngày sinh; điều này dường như có thể thực hiện được mà không cần thay đổi chức năng như đã nêu trong "trong thực tế", nhưng chúng tôi không còn có thể hủy ẩn danh hoặc phát hiện rằng tên/ngày sinh nhập sai đã tạo ra các mục nhập trùng lặp cho cùng một bệnh nhân.
- lưu trữ tên và ngày sinh được mã hóa bằng khóa chung, với khóa riêng được lưu giữ với các biện pháp phòng ngừa bổ sung và chỉ được sử dụng (để giải mã) trong trường hợp ngoại lệ là dữ liệu bệnh nhân phải được ẩn danh.
Ngoài một khía cạnh tương đối nhỏ, việc "Gán ngẫu nhiên một ID cho từng bệnh nhân" yêu cầu một điều gì đó không được nêu rõ để tránh các ID trùng lặp và một điểm yếu có thể xuất hiện ở đó.