Ký PDF bằng chữ ký baseline PAdES (đã chuyển)
Công thức này đã được chuyển
Phần tiêu đề “Công thức này đã được chuyển”Hướng dẫn từng bước về ký trước đây nằm trên trang này hiện đã bị thay thế. Hãy dùng công thức chuẩn sau:
Vì sao trang này thay đổi (đính chính)
Phần tiêu đề “Vì sao trang này thay đổi (đính chính)”Một phiên bản trước đó của trang này từng nói rằng đường dẫn cấp cao Document::setSignature() → save() chưa được kết nối và ném NotImplementedException. Điều đó không còn đúng nữa. Đường dẫn cấp cao hiện ghi một chữ ký thật.
Document::setSignature($cert, SignatureLevel::PAdES_B_B)->save() (và các lệnh tương đương output() / getPdfData()) ghi một trường /Sig với một /ByteRange và một đối tượng Cryptographic Message Syntax (CMS) SignedData được mã hóa theo Distinguished Encoding Rules (DER) trong mục Contents của từ điển chữ ký. Đó là cấu trúc mà ISO 32000-2 §12.8 quy định cho ETSI.CAdES.detached SubFilter. Kết quả là có thể kiểm chứng bằng CMS: trình kiểm tra CMS/PKCS#7 (Public-Key Cryptography Standards #7) tiêu chuẩn có thể phân tích và kiểm tra chữ ký này.
- B-B — mức Core — được tạo trực tiếp qua đường dẫn này.
- B-T thêm một RFC 3161 signature-time-stamp khi bạn truyền một
TsaClienttrong cùng lệnh gọi. - B-LT / B-LTA có thể đạt được qua cùng đường dẫn cấp cao (
setSignature($cert, SignatureLevel::PAdES_B_LTA, $tsaClient)->save()) khi cả hai gói Pro và Enterprise đều đã được cài đặt; nếu thiếu một trong hai, lệnh gọi sẽ thất bại an toàn thay vì ghi một bản sửa đổi dài hạn không đầy đủ. Tài liệu được mã hóa cũng thất bại an toàn đối với B-LT/B-LTA.
Đường dẫn cấp thấp hơn NextPDF\Security\Signature\DigitalSigner vẫn được hỗ trợ. Công thức chuẩn bên dưới hướng dẫn cách dùng nó từ đầu đến cuối. Đường dẫn cấp cao chỉ là một lớp tiện ích mỏng nằm trên chính động cơ ký đó. Bộ kiểm thử tích hợp chạy cả hai đường dẫn và tạo ra một đối tượng CMS thật, có thể phân tích.
Lưu ý U-1 (phạm vi của tuyên bố). “Có thể kiểm chứng bằng CMS” nghĩa là đối tượng được tạo ra là một CMS
SignedDatađúng định dạng theo RFC 5652 và ISO 32000-2 §12.8. Đây không phải là khẳng định về việc tuân thủ profile baseline của ETSI EN 319 142-1 hoặc về tính hợp lệ pháp lý. Phần về các mức baseline của tiêu chuẩn đó không nằm trong corpus xác minh; yêu cầu B-Tsignature-time-stampđã được kiểm tra đối chiếu với ETSI EN 319 122-1 §5.3 cùng RFC 3161, RFC 5652, RFC 5816 và ISO 32000-2 §12.8. B-LT/B-LTA tạo ra cấu trúc xác thực dài hạn (một DSS từ điển cùng một bản sửa đổi DocTimeStamp); chúng không được quảng bá là đã được kiểm thử về tuân thủ profile. Một trình xác thực độc lập quyết định sự tuân thủ và tính hợp lệ pháp lý.
Những gì được giữ nguyên
Phần tiêu đề “Những gì được giữ nguyên”Những dữ kiện cấu trúc mà trang cũ đã nêu về artifact trên đĩa vẫn đúng. Công thức thay thế trình bày lại các dữ kiện đó kèm bằng chứng:
- Giá trị chữ ký được lưu trong mục
Contentscủa từ điển chữ ký (ISO 32000-2 §12.8.1). - Digest được tính trên
ByteRangevà loại trừ chính giá trị chữ ký (ISO 32000-2 §12.8.1).
Trang này không khẳng định rằng bất kỳ chữ ký nào được tạo ra đều hợp lệ về pháp lý. Tính hợp lệ pháp lý phụ thuộc vào chứng chỉ, trust anchor của chứng chỉ đó và chính sách của bên xác minh. Tất cả các yếu tố đó nằm ngoài phạm vi thư viện này.