Nếu đã có các phương tiện để xác thực bản rõ thì thực sự có thể bỏ qua việc xác thực bản rõ hoặc bản mã bằng các phương tiện khác.
Tất nhiên có một số catcha.
Trước hết, không nên sử dụng bản rõ bằng bất kỳ cách nào trước khi giá trị băm xác thực được xác minh.Nếu đây không phải là trường hợp thì kẻ tấn công có thể thay đổi bản rõ, điều đó có nghĩa là bên đó phải chịu nhiều kiểu tấn công bao gồm tiên tri bản rõ hoặc có thể là tiêm lỗi.
Hơn nữa, việc triển khai không được cung cấp bất kỳ thông tin nào về quá trình giải mã. Nếu đúng như vậy, thì việc triển khai có thể trở thành đối tượng của các cuộc tấn công kênh phụ. Tệ hơn nữa, nếu v.d. CBC được sử dụng sau đó áp dụng các lời tiên tri đệm. Vì vậy, sẽ hợp lý hơn khi sử dụng AES-CTR hoặc mật mã luồng chẳng hạn như ChaCha20.
Có thể tránh được hai lỗi thiết kế/triển khai cuối cùng khi sử dụng chế độ xác thực. Vì vậy, có thể có một số cách sử dụng chế độ xác thực ngay cả khi khóa không được tin cậy. Một nhược điểm là các nhà phát triển khác có thể cho rằng chế độ xác thực cung cấp xác thực cần thiết và bắt đầu sử dụng văn bản gốc ngay cả khi thư chưa được xác thực.
Cá nhân tôi sẽ không sử dụng chế độ xác thực cho việc này.
Lưu ý rằng việc xử lý IV không được chỉ định trong giao thức mà bạn mô tả. Nó không cần thiết phải là một phần của hàm băm nếu điều đó bảo vệ bản rõ hơn là bản mã. Tuy nhiên, bạn nên đảm bảo rằng nó là duy nhất cho mỗi thư được mã hóa bằng cùng một khóa (và nếu bạn sử dụng chế độ CBC, thì không thể đoán trước được).
Tôi cũng không biết liệu giao thức có dễ bị tấn công phát lại và tấn công đoán văn bản gốc hay không, nếu hàm băm đã xác thực được sử dụng cho cả nhận dạng và xác thực.