Jsign ile Linux'ta Microsoft Authenticode Kod İmzalama

J işareti Microsoft Authenticode kod imzalama için açık kaynaklı, platformdan bağımsız bir Java aracıdır. Jsign, Maven, Gradle ve Ant gibi derleme sistemlerine kolayca entegre edilebilir veya doğrudan komut satırından kullanılabilir.

Bu nasıl yapılır bölümünde J işareti Linux komut satırından OV / IV kod imzalama ve EV kod imzalama. Jsign Java tabanlı olduğundan, onu Windows ve MacOS sistemlerinde de kullanabilirsiniz.

Jsign'ı yükleyin

Öncelikle, Jsign'ı indirip yüklemeniz gerekir. Jsign web sitesi en popüler Linux sistemlerinde kolay kurulum için Debian ve RPM paketlerine bağlantılar içerir. .jar dosyası.

OV / IV Kod İmzalama

Bu bölüm yalnızca 1 Haziran 2023'ten önce sipariş edilen Bireysel Doğrulama (IV) ve Kuruluş Doğrulama (OV) kod imzalama sertifikaları için geçerlidir. 1 Haziran 2023'dan itibaren, SSL.com'un IV ve OV kod imzalama sertifikaları, Federal Bilgi İşleme Standardı 140-2 (FIPS 140-2) USB belirteçleri veya eSigner bulut kod imzalama hizmetimiz aracılığıyla verilmeye başlandı. 

OV/IV kod imzalama için Java anahtar deposunda veya PKCS#12 (PFX) dosyasında saklanan bir sertifikayı kullanabilirsiniz. Aşağıdaki tüm kod örneklerinde, TAMAMI BÜYÜK HARFLERLE gösterilen değerleri gerçek değerlerinizle değiştirin.

  1. İlk önce keytool almak için komut alias imzalarken kullanılacak değer:
    keytool -list -v -anahtar deposu PKCS12-DOSYA.p12 -storetype PKCS12 -storepass PKCS12-PASSWORD
  2. Çıktısını kontrol edin keytool ile başlayan bir satır için komut Alias name:.
    Anahtar deposu tipi: PKCS12 Anahtar deposu sağlayıcısı: SUN Anahtar deponuz 1 giriş içeriyor Takma adı: 1 Oluşturma tarihi: 18 Ocak 2021 Giriş türü: PrivateKeyEntry Sertifika zinciri uzunluğu: 4 ...

    Yukarıdaki örnekte, Alias name is 1.

  3. Bir dosyayı imzalamak ve zaman damgası eklemek için aşağıdaki gibi bir komut kullanın:
    • jsign sistem genelinde yüklü komut:
      jsign --keystore KEYSTORE.p12 - takma ad ALIAS-NAME --storetype PKCS12 --storepass PKCS12-PASSWORD --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO-SIGN
    • Jsigner ile .jar Dosya:
      java -jar jsign-3.1.jar --keystore KEYSTORE.p12 - takma ad ALIAS-NAME --storetype PKCS12 --storepass PKCS12-PASSWORD --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO- İŞARET
  4. Komutunuz başarılıysa, aşağıdaki gibi çıktı görmelisiniz:
    Example.exe'ye Authenticode imzası ekleme
Not: Varsayılan olarak SSL.com, ECDSA anahtarlarından alınan zaman damgalarını destekler.

Bu hatayla karşılaşırsanız: The timestamp certificate does not meet a minimum public key length requirement, ECDSA anahtarlarından zaman damgalarına izin vermek için yazılım satıcınızla iletişime geçmelisiniz.

Yazılım satıcınızın normal uç noktanın kullanılmasına izin vermesinin bir yolu yoksa, bu eski uç noktayı kullanabilirsiniz. http://ts.ssl.com/legacy RSA Zaman Damgası Birimi'nden bir zaman damgası almak için.

EV Kod İmzalama

Jsign'ı bir EV kod imzalama sertifikasıyla da kullanabilirsiniz. Buradaki örnek bir SSL.com kullanıyor EV kod imzalama sertifikası yüklü FIPS 140-2 onaylı güvenlik anahtarı USB belirteci.

  1. Önce emin olun OpenSC sisteminize kurulur, böylece belirtecinizle PKCS # 11 API üzerinden iletişim kurabilir. Ubuntu gibi Debian tabanlı dağıtımlarda OpenSC'yi aşağıdakilerle yükleyebilirsiniz: apt:
    sudo apt kurulumu opensc
  2. Ardından, bir yapılandırma dosyası oluşturun. Dosyanın adı keyfi, ancak aşağıdaki örnek komutlar için kullanacağız eToken.cfg. Yolun opensc-pkcs11.so OpenSC kurulumunuzda değişiklik gösterebilir, bu nedenle yapılandırma dosyasını oluşturmadan önce kontrol edin.
    name = OpenSC-PKCS11 description = OpenSC kitaplığı aracılığıyla SunPKCS11 = /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so slotListIndex = 0
  3. Kullan keytool almak için komut alias imzalarken kullanılacak değer:
    keytool -list -v -keystore YOK -storetype PKCS11 -storepass TOKEN-PIN -providerClass sun.security.pkcs11.SunPKCS11 -providerArg eToken.cfg
  4. Çıktısını kontrol edin keytool ile başlayan bir satır için komut Alias name:. Jetonunuz birden fazla sertifika içeriyorsa, sertifikanızla ilgili olarak çıktıdaki geçerlilik tarihlerini ve vereni kontrol edin. YubiKey'de SSL.com'dan verilen EV kodu imzalama sertifikalarının takma adı olması gerektiğini unutmayın. Certificate for PIV Authentication.
    Takma ad: PIV Kimlik Doğrulaması için Sertifika Giriş türü: PrivateKeyEntry Sertifika zinciri uzunluğu: 1 Sertifika [1]: Sahip: OID.1.3.6.1.4.1.311.60.2.1.3 = US, OID.1.3.6.1.4.1.311.60.2.1.2 .2.5.4.15 = Nevada, OID.20081614243 = Özel Kuruluş, CN = SSL Corp, SERIALNUMBER = NV2, O = SSL Corp, L = Houston, ST = TX, C = ABD Düzenleyen: CN = SSL.com EV Kod İmzalama Aracı CA RSA R7299, O = SSL Corp, L = Houston, ST = Texas, C = US Seri numarası: 93f57a3bac6570c781580f63172e17 Geçerlilik tarihi: 12 Nisan Cuma 46:04:2020 EDT 17 tarihine kadar: Cts Nis 12 46:04:2021 EDT XNUMX
  5. Bir dosyayı imzalamak ve zaman damgası eklemek için aşağıdaki gibi bir komut kullanın:
    • jsign sistem genelinde yüklü komut:
      jsign --keystore eToken.cfg --alias "PIV Kimlik Doğrulaması Sertifikası" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO-SIGN
    • Jsigner ile .jar Dosya:
      java -jar jsign-3.1.jar --keystore eToken.cfg --alias "PIV Kimlik Doğrulama Sertifikası" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 DOSYASI -İMZALAMAK
  6. Komutunuz başarılıysa, aşağıdaki gibi çıktı görmelisiniz:
    Example.exe'ye Authenticode imzası ekleme
Not: Varsayılan olarak SSL.com, ECDSA anahtarlarından alınan zaman damgalarını destekler.

Bu hatayla karşılaşırsanız: The timestamp certificate does not meet a minimum public key length requirement, ECDSA anahtarlarından zaman damgalarına izin vermek için yazılım satıcınızla iletişime geçmelisiniz.

Yazılım satıcınızın normal uç noktanın kullanılmasına izin vermesinin bir yolu yoksa, bu eski uç noktayı kullanabilirsiniz. http://ts.ssl.com/legacy RSA Zaman Damgası Birimi'nden bir zaman damgası almak için.

Dijital İmzayı Doğrulayın

  1. Windows'ta imza ayrıntılarını görüntüleyerek dijital imzanızın geçerli olduğunu doğrulayabilirsiniz.
    Dijital imza tamam
  2. Ayrıca kullanabilirsiniz Signtool Windows'ta dijital imzayı doğrulamak için.
    signtool.exe doğrulayın / pa 'C: \ Users \ Aaron Russell \ Desktop \ example.exe' Dosya: C: \ Users \ Aaron Russell \ Desktop \ example.exe Dizin Algoritma Zaman Damgası =========== ============================= 0 sha256 RFC3161 Başarıyla doğrulandı: C: ​​\ Users \ Aaron Russell \ Desktop \ example.exe

SSL.com'un Bültenine Abone Olun

SSL.com'dan yeni makaleleri ve güncellemeleri kaçırmayın

Haberdar Olun ve Güvende Kalın

SSL.com Siber güvenlik alanında küresel bir lider olan PKI ve dijital sertifikalar. En son sektör haberlerini, ipuçlarını ve ürün duyurularını almak için kaydolun SSL.com.

Geri bildiriminizi almak isteriz

Anketimize katılın ve son satın alma işleminizle ilgili düşüncelerinizi bize bildirin.