Χρήση του πιστοποιητικού υπογραφής κώδικα

Αυτή η ιστοσελίδα παρέχει οδηγίες σχετικά με τη χρήση ενός SSL.com OV or EV Πιστοποιητικό υπογραφής κώδικα με το SignTool της Microsoft και το SSL.com SSL Manager.

Αυτές οι οδηγίες προϋποθέτουν ότι το πιστοποιητικό υπογραφής κώδικα έχει εγκατασταθεί ή ότι το έχετε σε διακριτικό υλικού. Για υπογραφή κώδικα που βασίζεται σε σύννεφο χρησιμοποιώντας την πλατφόρμα eSigner, ανατρέξτε στο σελίδα επισκόπησης και αυτό οδηγός εγγραφής.

Να θυμάστε ότι για πιστοποιητικά υπογραφής κωδικών OV και EV που βασίζονται σε υλικό το ιδιωτικό κλειδί υπάρχει μόνο στο διακριτικό YubiKey FIPS USB που σας εστάλη και ότι το διακριτικό πρέπει να επισυνάπτεται στον υπολογιστή που χρησιμοποιείται για την υπογραφή της εφαρμογής. Οι χρήστες Windows με διακριτικά YubiKey FIPS θα πρέπει επίσης να κάνουν λήψη και εγκατάσταση του Minidriver Smart Card YubiKey πριν χρησιμοποιήσουν το διακριτικό τους.

OV και Τα πιστοποιητικά υπογραφής κωδικού EV δεν πρέπει να εγκατασταθούν χειροκίνητα στον υπολογιστή σας, κάτι που μπορεί να προκαλέσει προβλήματα διαμόρφωσης. Τα πιστοποιητικά που αποστέλλονται στο YubiKeys από το SSLg μπορούν να χρησιμοποιηθούν χωρίς πρόσθετη εγκατάσταση πέρα ​​από την εγκατάσταση του Minidriver Smart Card YubiKey και συνδέοντας το διακριτικό στον υπολογιστή σας. Τα πιστοποιητικά παραγγέλλονται μέσω απομακρυσμένη βεβαίωση θα πρέπει να κατεβάσετε και να εγκαταστήσετε στη συσκευή που περιέχει το ιδιωτικό κλειδί (π.χ. YubiKey FIPS ή άλλο υποστηριζόμενο υλικό), όχι στο χώρο αποθήκευσης πιστοποιητικών του υπολογιστή σας.
Εάν σκοπεύετε να υπογράψετε προγράμματα οδήγησης Windows 10 με πιστοποιητικό υπογραφής κωδικού EV, θα πρέπει να το κάνετε κάντε ΕΓΓΡΑΦΗ με το πρόγραμμα προγραμματισμού υλικού των Windows.
Για οδηγίες σχετικά με τη χρήση του πιστοποιητικού υπογραφής κώδικα OV / IV ή EV με Java, ανατρέξτε στο Οδηγός υπογραφής κώδικα Java.

Υπογραφή ενός εκτελέσιμου με SignTool

εγκαταστήστε Windows SDK και SignTool

Το SignTool περιλαμβάνεται στο Windows 10 SDK. Μετά την εγκατάσταση, το SignTool θα βρίσκεται κάτω από:

C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe

Αρχική Powershell

Ξεκινήστε ένα Powershell παράθυρο εντολών αναζητώντας το "Powershell" στο Αρχική μενού και κάνοντας κλικ στην εφαρμογή επιφάνειας εργασίας.

Το Powershell είναι μια διεπαφή γραμμής εντολών για τις βασικές υπηρεσίες των Windows. Μπορείτε να το χρησιμοποιήσετε για να εκτελέσετε το SignTool και να υπογράψετε τον κωδικό σας.

Για EV κωδικός υπογράφοντας, συνδέστε το διακριτικό USB στον υπολογιστή σας (αν δεν το έχετε κάνει ήδη). Εάν χρησιμοποιείτε eSigner, εγκαταστήστε Προσαρμογέας κλειδιού eSigner Cloud

Να θυμάστε ότι το ιδιωτικό κλειδί υπάρχει μόνο στο διακριτικό USB που σας έχει σταλεί και αυτό το διακριτικό πρέπει να επισυνάπτεται σε υπολογιστή που χρησιμοποιείται για την υπογραφή της εφαρμογής. Αυτό το βήμα θα πρέπει να παραλειφθεί εάν χρησιμοποιείτε πιστοποιητικό υπογραφής κώδικα OV.

Σημάδι Εκτελέσιμο

Μπορείτε να υπογράψετε ένα εκτελέσιμο αρχείο εκδίδοντας την ακόλουθη εντολή στο παράθυρο του Powershell. Εάν χρησιμοποιείτε το eSigner cloud signing με το signtool.exe, φροντίστε να το εγκαταστήσετε eSigner CKA

. \ signtool.exe sign / fd sha256 / a "C: \ path \ to \ MyExecutable.exe"
  • Η /fd Η επιλογή επιλέγει τον αλγόριθμο σύνοψης που θα χρησιμοποιηθεί κατά την υπογραφή. Windows 10 SDK, HLK, WDK και ADK 20236 και παραπάνω απαιτείται να οριστεί αυτή η επιλογή κατά την υπογραφή. Το SHA256 συνιστάται έναντι του SHA1 για ασφάλεια.
  • Η /a Η επιλογή δίνει εντολή στο SignTool να βρει αυτόματα ένα κατάλληλο πιστοποιητικό υπογραφής κώδικα για το εκτελέσιμο.
  • Εάν χρησιμοποιείτε πιστοποιητικό υπογραφής κωδικού EV, θα σας ζητηθεί το PIN του διακριτικού USB. Εάν χρειάζεστε βοήθεια για την εύρεση του PIN σας, ανατρέξτε στο αυτό το πώς.Εισαγάγετε το PIN
Σημείωση: Εάν υπογράφετε αρχεία κώδικα που θα συμπεριληφθούν σε ένα πρόγραμμα εγκατάστασης (όπως ένα αρχείο MSI των Windows), θα πρέπει να υπογράψετε αυτά τα αρχεία πριν δημιουργήσετε το πρόγραμμα εγκατάστασης και, στη συνέχεια, να υπογράψετε το ίδιο το αρχείο εγκατάστασης.

Επιλογή πιστοποιητικού υπογραφής

Καθορίστε το όνομα θέματος

Εάν έχετε εγκαταστήσει περισσότερα από ένα κωδικά USB ή πιστοποιητικά υπογραφής κωδικών, μπορείτε καθορίστε το πιστοποιητικό θέλετε να χρησιμοποιήσετε συμπεριλαμβάνοντας το Όνομα θέματος μέσω του /n επιλογή.

Μπορείτε να βρείτε το όνομα θέματος του πιστοποιητικού EV CS χρησιμοποιώντας το εργαλείο διαχείρισης πιστοποιητικών της Microsoft πιστοποιητικό. Ανοίξτε το εργαλείο από το μενού Έναρξη και αναζητήστε το πιστοποιητικό EV CS στο φάκελο "Προσωπικά", στην ενότητα "Πιστοποιητικά", όπως φαίνεται στην παρακάτω εικόνα. Το όνομα θέματος είναι το πεδίο "Issued To" στο certmgr.

Στην παραπάνω εικόνα είναι το Όνομα Θέματος του πιστοποιητικού example. Μπορείτε να καθορίσετε αυτήν την τιμή στο SignTool με την ακόλουθη εντολή.

. \ signtool.exe sign / fd sha256 / n "παράδειγμα" "C: \ path \ to \ MyExecutable.exe"

Καθορίστε το SHA1 Hash

Εάν έχετε πολλά πιστοποιητικά με το ίδιο όνομα θέματος, μπορείτε επίσης να χρησιμοποιήσετε το κατακερματισμό SHA1 (ή "αποτύπωμα") ενός πιστοποιητικού για να το επιλέξετε για υπογραφή. Αντικαθιστώ THUMBPRINT στην παρακάτω εντολή με το πραγματικό SHA1 κατακερματισμό του πιστοποιητικού σας. Μπορείτε να βρείτε αυτήν την τιμή βλέποντας τις λεπτομέρειες του πιστοποιητικού στο certmgr και αναζητώντας το Thumbprint πεδίο (βεβαιωθείτε και αφαιρέστε τυχόν διαστημικούς χαρακτήρες από το αποτύπωμα πριν τον χρησιμοποιήσετε στην εντολή σας).

. \ signtool.exe sign / fd sha256 / sha1 THUMBPRINT "C: \ path \ to \ MyExecutable.exe"

Χρησιμοποιήστε ένα αρχείο PKCS # 12 / PFX

Εάν έχετε πιστοποιητικό υπογραφής κώδικα και ιδιωτικό κλειδί σε ένα αρχείο PKCS # 12 (επίσης γνωστό ως αρχείο PFX ή P12), μπορείτε να καθορίσετε το αρχείο και τον κωδικό πρόσβασης στη γραμμή εντολών:

. \ signtool.exe sign / fd sha256 / f "C: \ path \ to \ MyCertificate.pfx" / p password "C: \ path \ to \ MyExecutable.exe"

Χρονική σήμανση

Η χρονική σήμανση του κωδικού σας θα επιτρέψει την αξιοπιστία της μετά τη λήξη του πιστοποιητικού υπογραφής κώδικα. Εάν θέλετε να προσθέσετε ένα timestamp στο υπογεγραμμένο δυαδικό αρχείο, μπορείτε να το κάνετε χρησιμοποιώντας το SignTool's /tr επιλογή, την οποία πρέπει να ακολουθήσετε με τον καθορισμό του αλγορίθμου χρονικής σήμανσης /td. Η εντολή στο παρακάτω απόσπασμα περιλαμβάνει μια χρονική σήμανση από SSL.comυπηρεσία χρονικής σήμανσης κατά την υπογραφή ενός εκτελέσιμου.

. \ signtool.exe sign / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ path \ to \ MyExecutable.exe"
Σημείωση: Φροντίστε να χρησιμοποιήσετε το SignTool's /tr επιλογή (καθορίστε τη διεύθυνση URL του διακομιστή χρονικών γραμματοσήμων RFC 3161), δεν /t (URL του διακομιστή χρονικής σήμανσης), ο οποίος δεν είναι συμβατός με το διακομιστή χρονικής σήμανσης του SSL.com.
Σημείωση: Η /td επιλογή πρέπει ακολουθα το /tr επιλογή. Εάν ο αλγόριθμος χρονικής σήμανσης έχει καθοριστεί πριν από το διακομιστή χρονικής σήμανσης, θα χρησιμοποιηθεί ο προεπιλεγμένος αλγόριθμος SHA-1. Windows 10 SDK, HLK, WDK και ADK 20236 και παραπάνω απαιτούν τη χρήση του /tr κατά τη χρονική σήμανση. Συνιστάται το SHA256 έναντι του SHA1 για ασφάλεια.
Σημείωση: Από προεπιλογή, το SSL.com υποστηρίζει χρονικές σημάνσεις από κλειδιά ECDSA.

Εάν αντιμετωπίσετε αυτό το σφάλμα: The timestamp certificate does not meet a minimum public key length requirement, θα πρέπει να επικοινωνήσετε με τον προμηθευτή του λογισμικού σας για να επιτρέψετε χρονικές σημάνσεις από κλειδιά ECDSA.

Εάν δεν υπάρχει τρόπος για τον προμηθευτή του λογισμικού σας να επιτρέψει τη χρήση του κανονικού τερματικού σημείου, μπορείτε να χρησιμοποιήσετε αυτό το παλαιού τύπου τελικό σημείο http://ts.ssl.com/legacy για να λάβετε μια χρονική σήμανση από μια μονάδα χρονοσήμανσης RSA.

Άλλες επιλογές

Άλλες σημαντικές επιλογές SignTool είναι:

  • /d: Προσθέστε μια περιγραφή του υπογεγραμμένου κώδικα. Για παράδειγμα, /d "test code".
  • /du: Προσθέστε μια διεύθυνση URL με εκτεταμένη περιγραφή του υπογεγραμμένου κώδικα. Για παράδειγμα, /du https://your_website.tld/project/description.

Χρησιμοποιώντας όλες τις παραπάνω επιλογές (αλλά παραλείποντας /a, /sha1, ή /f επειδή καθορίζουμε το Όνομα Θέματος του πιστοποιητικού με /n, η γραμμή εντολών μας μοιάζει με:

signtool.exe sign / n "example" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "test code" / du https: //your_website.tld/project/description "C: \ path \ to \ MyExecutable.exe "

Επαλήθευση υπογραφής

Χρησιμοποιήστε αυτήν την εντολή για να επαληθεύσετε τον υπογεγραμμένο κωδικό σας (σημειώστε ότι το /pa η επιλογή πρέπει να υπάρχει στην εντολή):

. \ signtool.exe verify / pa "C: \ path \ to \ MyExecutable.exe"

Εάν το αρχείο σας έχει υπογραφεί επιτυχώς, θα πρέπει να βλέπετε έξοδο ως εξής:

Αρχείο: C: \ path \ to \ MyExecutable.exe Index Algorithm Timestamp =================================== ===== 0 sha256 RFC3161 Επαληθεύτηκε επιτυχώς: C: \ path \ to \ MyExecutable.exe

Μπορείτε επίσης να επαληθεύσετε ότι ένα αρχείο έχει υπογραφεί κάνοντας δεξί κλικ στο εικονίδιο του και επιλέγοντας Ιδιοκτησίες από το μενού και, στη συνέχεια, επιλέγοντας το Ψηφιακές υπογραφές αυτί. Δείτε λεπτομέρειες σχετικά με μια υπογραφή επιλέγοντας την και κάνοντας κλικ στο Περιγραφή κουμπί.

Ψηφιακές υπογραφές

Εδώ μπορούμε να δούμε ότι το αρχείο περιέχει μια έγκυρη ψηφιακή υπογραφή, που δημιουργήθηκε από την SSL Corp στις 28 Ιουνίου 2020.

Λεπτομέρειες ψηφιακής υπογραφής

Υπογραφή ενός εκτελέσιμου με SSL Manager

Εάν προτιμάτε μια προσέγγιση με βάση τα γραφικά μπορείτε να χρησιμοποιήσετε SSL.comτο εσωτερικό λογισμικό, SSL Manager, για να υπογράψετε τα αρχεία σας. Πολλοί πελάτες προτιμούν να χρησιμοποιούν SSL Manager επειδή προσφέρει το πρόσθετο πλεονέκτημα της εύκολης πρόσβασης σε όλα τα πιστοποιητικά σας σε μια ενοποιημένη διεπαφή. Για οδηγίες σχετικά με τη λήψη και την εγκατάσταση SSL Manager, ανατρέξτε στο μας οδηγός εγκατάστασης.

Για να υπογράψετε ένα εκτελέσιμο, ξεκινήστε επιλέγοντας Υπογραφή κώδικα> Πακέτο κώδικα σήμανσης και χρονικής σήμανσης από SSL Managerμενού.

Πακέτο κώδικα σήμανσης και χρονικής σήμανσης

Στη φόρμα υπογραφής κώδικα, μπορείτε να επιλέξετε το εκτελέσιμο και το πιστοποιητικό υπογραφής κώδικα (είτε από αρχείο είτε από χώρο αποθήκευσης πιστοποιητικών) και έναν από τους διαθέσιμους διακομιστές χρονικής σήμανσης. Όταν τελειώσετε, κάντε κλικ στο Σημάδι για να υπογράψετε τον κωδικό σας. Εάν φορτώνετε ένα πιστοποιητικό από ένα αρχείο PFX, θα πρέπει να εισαγάγετε τον κωδικό πρόσβασης του αρχείου. Εάν χρησιμοποιείτε πιστοποιητικό υπογραφής κωδικού EV, θα σας ζητηθεί το PIN του διακριτικού USB.

Εκτός από την υπογραφή κώδικα, SSL Manager προσφέρει πολλά ισχυρά χαρακτηριστικά. Για περισσότερες λεπτομέρειες, ανατρέξτε στο SSL Managerτεκμηρίωση, ειδικά το Μενού υπογραφής κώδικα.

Σας ευχαριστούμε που επιλέξατε το SSL.com! Εάν έχετε απορίες, επικοινωνήστε μαζί μας μέσω email στο Support@SSL.com, κλήση 1-877-SSL-SECUREή απλώς κάντε κλικ στο σύνδεσμο συνομιλίας στην κάτω δεξιά γωνία αυτής της σελίδας.

Εγγραφείτε στο ενημερωτικό δελτίο του SSL.com

Μην χάσετε νέα άρθρα και ενημερώσεις από το SSL.com

Μείνετε ενημερωμένοι και ασφαλείς

SSL.com είναι παγκόσμιος ηγέτης στον τομέα της κυβερνοασφάλειας, PKI και ψηφιακά πιστοποιητικά. Εγγραφείτε για να λαμβάνετε τα πιο πρόσφατα νέα του κλάδου, συμβουλές και ανακοινώσεις προϊόντων από SSL.com.

Θα θέλαμε τα σχόλιά σας

Συμμετάσχετε στην έρευνά μας και πείτε μας τις σκέψεις σας για την πρόσφατη αγορά σας.