kiểm tra và xác thực chữ ký số

Ngày đăng: 10:31 - 27/08/2021

Chữ ký số trong PDF

Thay đổi file PDF theo cách thủ công sẽ làm hỏng file của người dùng. Mặc dù PDF không phải định dạng để xử lý văn bản, chỉnh sửa tài liệu và cũng không khuyến khích làm như vậy, nhưng vẫn có thể thay đổi nội dung của file. Vì vậy đưa chữ ký số vào file PDF là cần thiết.

 Một file đã được ký điện tử

Hình ảnh trên cho thấy một file BUI XUAN CHINH đã được ký điện tử. Dấu tích màu xanh cho ta biết tài liệu “đã ký và tất cả các chữ ký đều hợp lệ”. Bảng điều khiển Chữ ký thông báo cho chúng tôi rằng tệp “đã được ký bởi chung”.

Khi tạo chữ ký số cho PDF, cần xác định chữ ký được sử dụng (a / Filter entry). Trong iText, thường sẽ sử dụng bộ lọc /Adobe.PPKLite. Nó khả thi với iText hơn bất cứ 1 bộ lọc nào khác: một bộ xử lý tương tác PDF có thể sử dụng bất kỳ trình xử lý nào miễn là trình xử lý hỗ trợ định dạng được chỉ định / SubFilter.

Một bản PDF đã ký

Hình ảnh trên cho thấy sơ đồ của 1 file PDF đã ký. Một bản PDF bắt đầu bằng %PDF – số phiên bản và kết thúc là %%EOF. /ByteRange – File sẽ được chia làm 3 phần, Chữ ký số sẽ được chèn với kích thước phù hợp ở giữa. Bất kì khoảng nào không sử dụng cho chữ ký số thì sẽ được đè bằng 00.

Các biểu tượng để nhận biết các chữ ký được xác thực

Dấu X đỏ luôn có ý nghĩa là chữ ký bị lỗi: nội dung đã bị thay đổi hoặc bị hỏng, hoặc là 1 trong những chứng thư là không hợp lệ… Tuyệt đối không nên tin tưởng chữ ký đó.

Nội dung của chữ ký số

Hình ảnh trên nội dung của chữ ký số được chèn vào file PDF: khóa riêng của người đó và chứng thư chứa khóa công khai và thông tin nhận dạng của người đó.

Tóm lại tài liệu hoàn chỉnh được đảm bảo an toàn bằng chữ ký số. Nó không thể ký các trang cụ thể.

Trong chữ ký PKCS # 1, chứng thư là một mục trong chữ ký. Nó không phải là một phần của chữ ký thực tế. Đối với chữ ký dựa trên CMS và CAdES, chứng thư (hoặc chuỗi chứng thư) được nhúng trong chữ ký số. Chữ ký cũng chứa một bản tóm tắt của tài liệu gốc đã được ký bằng khóa riêng. Ngoài ra, chữ ký có thể chứa một dấu thời gian.

Chữ ký số trong XML

Chữ ký số XML (còn được gọi là XMLDSig , XML_DSig , XML_Sig ) định nghĩa một cú pháp XML cho chữ ký số theo khuyến nghị của W3C. Về mặt chức năng, nó có nhiều điểm tương đồng với PKCS # 7 nhưng có khả năng mở rộng hơn và hướng tới việc ký các tài liệu XML.

Chữ ký XML có thể được sử dụng để ký dữ liệu. Bất kỳ loại nào , điển hình là các tài liệu XML, bất kỳ thứ gì truy cập qua URL đều có thể được ký. Một chữ ký XML được sử dụng để ký một tài nguyên bên ngoài file XML được gọi là chữ ký tách rời; nếu nó được sử dụng để ký một phần của file chứa nó, nó được gọi là chữ ký được bao bọc; nếu nó chứa dữ liệu đã ký trong chính nó thì nó được gọi là chữ ký bao bọc. Cấu trúc cơ bản của Chữ ký XML:

Nội dung của chữ ký số trong XML

Ưu nhược điểm của chữ ký số XML

+ Ưu điểm của chữ ký số XML

Chữ ký XML linh hoạt hơn các dạng chữ ký số khác, vì nó không hoạt động trên dữ liệu nhị phân, mà trên Infoset XML, cho phép hoạt động trên các tập hợp con của dữ liệu, có nhiều cách để liên kết chữ ký và thông tin đã ký, và thực hiện chuyển đổi. Một khái niệm cốt lõi khác là chuẩn hóa, đó là chỉ ký "bản chất", loại bỏ những khác biệt vô nghĩa như khoảng trắng và kết thúc dòng.

+ Nhược điểm của chữ ký số XML

Có những nhược điểm về kiến ​​trúc bảo mật XML nói chung, và về sự phù hợp của việc chuẩn hóa XML nói riêng như là một mặt trước để ký và mã hóa dữ liệu XML do tính phức tạp, yêu cầu xử lý vốn có của nó và các đặc tính hiệu suất kém. Việc thực hiện chuẩn hóa XML gây ra độ trễ lớn so với các ứng dụng SOA nhạy cảm về giao dịch, hiệu năng .

Nếu không có chính sách và triển khai phù hợp, việc sử dụng XML Dsig trong SOAP và WS_Security có thể dẫn đến các lỗ hổng, như chữ ký gói XML.