MDC không phải là MAC và không có xác nhận khóa nào trong PGP.
RFC6637 được xuất bản vào năm 2012, trước phiên bản 3 hoặc thậm chí 2 của SP800-56A; như đã nêu trong mục 15.1 nó tham khảo phiên bản 1 từ tháng 3 năm 2007. Đó là trước khi NIST bắt đầu chỉ định DOI và tôi không biết liệu bạn có thể tìm thấy phiên bản 1 hay không, nhưng tôi đã lưu một bản sao và sơ đồ C(1,1,ECC CDH) trong 6.2.2.2 của tài liệu đó, tại thời điểm đó chưa được gắn nhãn '1e,1s', bản thân nó không bao gồm bất kỳ xác nhận khóa nào nhưng đề cập đến việc sử dụng tùy chọn 8.4.7, bổ sung thẻ được gửi lại từ người nhận (V) đến bộ khởi tạo (U) về cơ bản giống như được mô tả trong 6.2.2.3.1 của phiên bản 3. Điều này không được chỉ định cho PGP và không thể được sử dụng ở đó vì PGP được thiết kế và xác định để cho phép và bao gồm trường hợp không có trả lại thông tin liên lạc từ người nhận đến người khởi tạo và ngay cả khi có sự giao tiếp như vậy thì người khởi tạo không thể thực hiện hành động nào để đối phó với bất kỳ lỗi nào ở đây, khiến nó trở nên vô giá trị.
MDC được tham chiếu trong phần 8 của RFC6637, như được nêu trực tiếp và rõ ràng ở đó, là MDC trong RFC4880 mục 5.13 định nghĩa
... gói Mã phát hiện sửa đổi (MDC) ...
và giải thích:
Hệ thống MDC, như các gói 18 và 19 được gọi, được tạo ra để
cung cấp một cơ chế toàn vẹn kém mạnh mẽ hơn một
chữ ký, nhưng mạnh hơn mã hóa CFB trần.
...
Cách rõ ràng để bảo vệ hoặc xác thực một khối được mã hóa là
để ký điện tử nó. Tuy nhiên, nhiều người không muốn
ký dữ liệu theo thói quen, vì một số lượng lớn các lý do ngoài
phạm vi tài liệu này. Đủ để nói rằng nhiều người
coi các thuộc tính như khả năng từ chối có giá trị như
sự chính trực.
OpenPGP giải quyết mong muốn này để có nhiều bảo mật hơn raw
mã hóa và vẫn duy trì khả năng từ chối với hệ thống MDC. Một
MDC cố ý không phải là MAC. Tên của nó không được chọn bởi
Tai nạn. Nó tương tự như một tổng kiểm tra.
Vì vậy, chức năng của MDC là không cần thiết về mặt kỹ thuật khi bạn ký, nhưng vì thông số kỹ thuật không và không thể yêu cầu ký, nên việc yêu cầu MDC sẽ ít phức tạp hơn ngay cả khi nó không 'thực sự' cần thiết (và do đó khó thực hiện sai hơn một chút) .