Υπογράφοντες CMS με SubjectKeyIdentifier

Το HotPDF μπορεί να ταυτοποιεί τον κύριο υπογράφοντα CMS μέσω της επέκτασης X.509 subjectKeyIdentifier, αντί για όνομα issuer και σειριακό αριθμό πιστοποιητικού

Επιλογή του αναγνωριστικού

Η HPDFCMSDefaultOptions θέτει το THPDFCMSSignOptions.SignerIdentifier σε cmsidIssuerAndSerialNumber, ώστε οι υπάρχουσες κλήσεις να διατηρούν το αιτιοκρατικό σχήμα bytes CMS

Ορίστε το πεδίο σε cmsidSubjectKeyIdentifier πριν καλέσετε την HPDFCMSBuildSignedDataEx, έναν κατασκευαστή CMS βάσει παρόχου, την εκτίμηση placeholder, ή μια overloaded υπογραφή υψηλού επιπέδου που δέχεται THPDFCMSSignOptions

Options := HPDFCMSDefaultOptions(palBaseline_B_B);
Options.SignerIdentifier := cmsidSubjectKeyIdentifier;
CMS := HPDFCMSBuildSignedDataEx(KeyMaterial, DocumentDigest, Options);

Απαίτηση πιστοποιητικού

Το πιστοποιητικό του υπογράφοντα πρέπει να περιέχει ακριβώς μία μη κενή επέκταση X.509 με OID 2.5.29.14, της οποίας η τιμή επέκτασης περιέχει μια πλήρη DER OCTET STRING

Το HotPDF αποτυγχάνει πριν την υπογραφή όταν η επέκταση λείπει, είναι διπλότυπη, κενή, αποκομμένη, ή ελαττωματική· δεν συνθέτει αναγνωριστικό κλειδιού από το δημόσιο κλειδί

Το SigningCertificateV2 εξακολουθεί να δεσμεύει το ίδιο πιστοποιητικό με τα πεδία issuer και serial, ακόμα και όταν το SID του SignerInfo χρησιμοποιεί το αναγνωριστικό κλειδιού

Μορφή μετάδοσης και επαλήθευση

Το αναγνωριστικό κλειδιού κωδικοποιείται ως primitive IMPLICIT [0], το SignerInfo.version είναι 3, και το παραγόμενο SignedData.version ενός υπογράφοντα είναι 3, όπως απαιτεί η RFC 5652

Η επαλήθευση απαιτεί τα bytes του SID να ταιριάζουν με την επέκταση του ενσωματωμένου πιστοποιητικού και απορρίπτει τιμές SID που δεν ταιριάζουν, εγγραφές issuer-and-serial με έκδοση υπογράφοντα διάφορη του 1, εγγραφές SKI με έκδοση υπογράφοντα διάφορη του 3, και containers SKI των οποίων η εξωτερική έκδοση είναι κάτω του 3

Η συμπαγής ταυτότητα είναι χρήσιμη για αποθήκες πιστοποιητικών προσανατολισμένες σε κλειδιά και ροές εργασίας που δεν διατηρούν κωδικοποιήσεις ονόματος issuer, αλλά το λογισμικό κατανάλωσης πρέπει να υποστηρίζει την επιλογή SKI της RFC 5652

Η HPDFCMSBuildCounterSignerInfo εξακολουθεί να χρησιμοποιεί ταυτότητες issuer-and-serial· ρυθμίστε τον κύριο υπογράφοντα μέσω THPDFCMSSignOptions

Δείτε τους σύγχρονους παρόχους υπογραφής και τη συνέπεια αλγορίθμου digest CMS