Free Code Signer v1.7.0 je največja nadgradnja programa do zdaj. Orodje, ki je bilo prvotno namenjeno predvsem poenostavitvi dela z Microsoft SignTool in strojno zaščitenimi Code Signing certifikati, je z različico 1.7.0 preraslo v precej širši vmesnik za lokalno, strojno in oblačno podpisovanje programske kode.
Nova različica poleg klasičnega Microsoft SignTool podpira še Azure Artifact Signing, Google Cloud KMS in Jsign, dodano je podpisovanje Java JAR datotek, pametni profili končnic, vgrajena pomoč, pomnjenje jezika in posodobljenih vseh 25 jezikov uporabniškega vmesnika.
- Microsoft SignTool / Windows Certificate Store
- Azure Artifact Signing
- Google Cloud KMS
- univerzalni Jsign način
- HSM, PKCS#11 in strojno zaščiteni ključi
- YubiKey / PIV scenariji
- podpisovanje Java
.jardatotek - profili datotek Standardno, Razširjeno, Razširjeno + JAR in Po meri
- časovni žig in preverjanje podpisov
- vgrajena offline pomoč s tipko F1
- 25 jezikov in pomnjenje zadnjega izbranega jezika
Če Free Code Signer že poznate iz našega prejšnjega članka, je različica 1.7.0 neposredno nadaljevanje iste ideje: podpisovanje kode naj ostane pregledno in čim bolj enostavno, tudi ko se uporabljajo sodobni HSM in cloud sistemi.
Kaj je novega v Free Code Signer v1.7.0?
Glavna sprememba ni samo nov gumb ali nekaj dodatnih nastavitev. Program je dobil nov sloj za izbiro načina podpisovanja. Uporabnik lahko glede na svoje okolje izbere klasični SignTool ali enega od novih cloud oziroma Jsign načinov.
1. Microsoft SignTool ostaja
Obstoječi način dela z Microsoft SignTool ostaja na voljo. To je pomembno za vse uporabnike, ki že uporabljajo Code Signing certifikat v Windows Certificate Store, na YubiKey/PIV napravi ali v združljivem HSM okolju.
Nadgradnja na v1.7.0 zato ne pomeni, da je treba obstoječi postopek spreminjati. Novi načini so dodatna možnost, ki jo uporabnik uporabi samo, kadar jo potrebuje.
2. Azure Artifact Signing
Free Code Signer v1.7.0 dodaja podporo za Microsoft Azure Artifact Signing. Namen takšnega pristopa je, da podpisni ključ ni shranjen kot običajna lokalna datoteka, temveč ostane zaščiten v podpisni infrastrukturi ponudnika.
V programu je za Azure na voljo ločeno konfiguracijsko okno, kjer se določijo podatki, potrebni za povezavo z ustreznim Azure podpisnim okoljem.
3. Google Cloud KMS
Dodana je tudi možnost uporabe Google Cloud KMS. Pri tem načinu je zasebni ključ zaščiten v Google Cloud okolju, Free Code Signer pa podpisni postopek poveže prek Jsign.
To je uporabno predvsem v okoljih, kjer organizacija že uporablja centralizirano upravljanje ključev ali želi zmanjšati odvisnost od lokalno nameščenega podpisnega certifikata.
4. Jsign – univerzalnejši način podpisovanja
Ena pomembnejših novosti v1.7.0 je Jsign integracija. Namesto dodajanja posebnega programskega modula za vsakega novega ponudnika lahko Jsign služi kot povezovalni sloj za več različnih podpisnih okolij.
Odvisno od uporabljene infrastrukture lahko tak pristop omogoča delo z različnimi KMS, HSM, PKCS#11, hardware-token in oddaljenimi podpisnimi storitvami.
Kako je z JAR datotekami?
Java .jar datoteke so poseben primer. JAR ne uporablja Windows Authenticode podpisa na enak način kot EXE ali DLL, zato datoteke ni pravilno samo dodati na seznam končnic in jo poslati Microsoft SignToolu.
Free Code Signer zato JAR datoteke obravnava ločeno in za podpis uporabi Java orodje jarsigner. Za to funkcionalnost je potreben ustrezen JDK.
Uporabnik lahko kljub različnemu mehanizmu izbere profil Razširjeno + JAR in s tem v enem delovnem postopku zajame tako Windows datoteke kot JAR datoteke. Program nato posamezni tip datoteke usmeri v ustrezen podpisni postopek.
Ni več treba poznati vseh možnih končnic
V starejših različicah je bilo mogoče seznam končnic ročno zapisati, na primer exe;dll;msi;ocx. Ta možnost ostaja, dodani pa so prednastavljeni profili datotek.
- Standardno – najpogostejši tipi datotek za Code Signing.
- Razširjeno – širši nabor podprtih formatov.
- Razširjeno + JAR – razširjeni profil z Java JAR datotekami.
- Po meri – popoln ročni nadzor nad seznamom končnic.
Napredne nastavitve
Ker cloud in Jsign načini zahtevajo več nastavitev kot klasičen SignTool, je različica 1.7.0 dobila tudi ločeno okno za napredne nastavitve. Tam se določajo poti in parametri, potrebni za Java/Jsign oziroma posameznega ponudnika.
Časovni žig – še vedno pomemben del Code Signinga
Pri produkcijskem podpisovanju je priporočljiva uporaba časovnega žiga oziroma timestampa. Časovni žig omogoča preverjanje, da je bil podpis ustvarjen v času, ko je bil podpisni certifikat veljaven.
V Free Code Signerju ostaja timestamp del podpisnega postopka in ga je mogoče prilagoditi glede na uporabljeni podpisni način in strežnik.
Nova vgrajena pomoč – F1
Ker je program z različico 1.7.0 precej zmogljivejši, smo dodali tudi vgrajeno offline pomoč. Odpre se z gumbom Pomoč ali s tipko F1.
Pomoč vsebuje navodila za:
- hiter začetek,
- Microsoft SignTool,
- Azure Artifact Signing,
- Google Cloud KMS,
- Jsign,
- JAR podpisovanje,
- profile datotek,
- časovni žig,
- preverjanje podpisov,
- pogoste napake in
- varnostna priporočila.
25 jezikov in pomnjenje zadnje izbire
V različici 1.7.0 so bila posodobljena besedila za vseh 25 jezikov uporabniškega vmesnika. Dodana je tudi majhna, a uporabna izboljšava: program si zapomni zadnji izbrani jezik in ga ob naslednjem zagonu samodejno ponovno uporabi.
Primer angleškega uporabniškega vmesnika:
Navodila za uporabo Free Code Signer v1.7.0
1. Izberite mapo
Najprej izberite korensko mapo z datotekami, ki jih želite pregledati oziroma podpisati.
2. Izberite način podpisovanja
Izberite Microsoft SignTool, Azure Artifact Signing, Google Cloud KMS ali Jsign – glede na certifikat in infrastrukturo, ki jo uporabljate.
3. Nastavite certifikat oziroma ponudnika
Pri klasičnem SignTool načinu izberite certifikat. Pri cloud oziroma Jsign načinu odprite nastavitve ponudnika in vnesite potrebne podatke.
4. Izberite profil datotek
Za običajen Windows Code Signing lahko uporabite standardni profil. Če želite vključiti več formatov, izberite Razširjeno. Za Java datoteke izberite Razširjeno + JAR. Seznam je še vedno mogoče ročno prilagoditi.
5. Nastavite timestamp
Za produkcijske podpise priporočamo uporabo zaupanja vrednega timestamp strežnika.
6. Skenirajte datoteke
Program pregleda mapo in pripravi seznam datotek, ki ustrezajo izbranemu profilu oziroma seznamu končnic.
7. Preglejte obstoječe podpise
Pred podpisovanjem preverite stanje datotek. To je posebej pomembno pri prehodu na nov certifikat, nov cloud provider ali pri prvem podpisovanju novega tipa datotek.
8. Zaženite podpisovanje
Po preverjanju lahko podpisovanje izvedete za vse izbrane datoteke v istem delovnem postopku.
9. Preverite rezultat
Po končanem postopku preverite poročilo in veljavnost nastalih podpisov.
Varnost: česa Free Code Signer ne želi shranjevati
Pri načrtovanju novih cloud načinov je bilo pomembno, da program ne postane skladišče občutljivih podatkov. Običajna konfiguracija zato ni namenjena shranjevanju zasebnih ključev, PIN kod, gesel, access tokenov ali client secretov.
Kjer je mogoče, je prijavo in dostop do ključa smiselno prepustiti operacijskemu sistemu, hardware tokenu, HSM napravi ali samemu cloud ponudniku.
Kaj potrebujete?
| Način | Običajne zahteve |
|---|---|
| Microsoft SignTool | Windows in Microsoft SignTool / Windows SDK |
| YubiKey / hardware certifikat | ustrezen certifikat in middleware naprave |
| Azure Artifact Signing | ustrezno nastavljeno Azure podpisno okolje in prijava |
| Google Cloud KMS | Google Cloud KMS, ustrezne pravice in Jsign |
| Jsign | Java/Jsign ter konfiguracija izbranega ponudnika |
| JAR | JDK in jarsigner |
Changelog – Free Code Signer v1.7.0
- dodana podpora za Azure Artifact Signing,
- dodana podpora za Google Cloud KMS,
- dodan univerzalni Jsign način,
- dodana podpora za Java JAR podpisovanje prek
jarsigner, - dodani profili datotek Standardno, Razširjeno, Razširjeno + JAR in Po meri,
- omogočeno lažje paketno podpisovanje različnih tipov datotek,
- dodane napredne nastavitve za nove ponudnike,
- dodana vgrajena offline pomoč in bližnjica F1,
- posodobljenih vseh 25 jezikov,
- program si zapomni zadnji izbrani jezik,
- ohranjena podpora za obstoječi Microsoft SignTool delovni postopek,
- izboljšana dokumentacija za uporabo in odpravljanje težav.
O programu
Prenos Free Code Signer v1.7.0
Free Code Signer je freeware in je brezplačen za uporabo ter razširjanje v skladu s priloženimi licenčnimi pogoji. Izvorna koda ni del javne izdaje.
Na GitHubu sta objavljeni tudi podrobni slovenska in angleška navodila, v samem programu pa je pomoč dostopna neposredno s tipko F1.
Pogosta vprašanja
Ali moram po nadgradnji uporabljati Azure ali Google Cloud?
Ne. Klasični Microsoft SignTool način ostaja na voljo. Novi ponudniki so dodatne možnosti.
Ali lahko še vedno sam določim končnice datotek?
Da. Prednastavljeni profili samo poenostavijo izbiro. Ročni seznam končnic ostaja na voljo.
Ali lahko SignTool neposredno podpiše JAR?
Ne na način, kot se podpisujejo Windows Authenticode datoteke. Free Code Signer zato JAR datoteke usmeri v Java jarsigner.
Ali Free Code Signer shranjuje PIN ali zasebni ključ?
Program je zasnovan tako, da občutljivih podpisnih podatkov ni treba shranjevati v običajni konfiguraciji. Dostop do ključa naj, kjer je mogoče, upravlja Certificate Store, hardware token, HSM ali cloud ponudnik.
Ali je program odprtokoden?
Ne. Free Code Signer je freeware: brezplačen je za uporabo in razširjanje pod pogoji licence, izvorna koda pa ni del javne izdaje.
Od preprostega SignTool vmesnika do širšega Code Signing orodja
Free Code Signer v1.7.0 ohranja osnovni cilj prejšnjih različic – čim bolj poenostaviti podpisovanje večjega števila datotek – vendar ga razširi na bistveno več sodobnih scenarijev.
Za uporabnika, ki uporablja klasičen certifikat, se ni treba ničesar bistveno spremeniti. Za okolja, ki prehajajo na cloud KMS, HSM ali druge centralizirane podpisne rešitve, pa nova različica odpira precej več možnosti brez potrebe po ločenem uporabniškem vmesniku za vsak način podpisovanja.
Free Code Signer v1.7.0 je na voljo za prenos na GitHubu.
