CODE Signing certifikat
CODE certifikat, službeno Code Signing certifikat, digitalni je certifikat koji se koristi za potpisivanje aplikacija, skripti, upravljačkih programa i drugog softvera koji se distribuira internetom. Digitalni potpis dokazuje tko je objavio softver i jamči da kod nije mijenjan od trenutka potpisivanja. Pogledajmo pobliže CODE certifikate.
Sadržaj članka
- Što je CODE certifikat?
- Kako funkcionira potpisivanje koda?
- Zašto potpisati svoj softver?
- Vrste CODE certifikata
- CODE certifikati i Windows SmartScreen
- Cloud Code Signing
Što je CODE certifikat?
Code Signing certifikat digitalni je certifikat koji izdavaču softvera – tvrtki ili samostalnom programeru – izdaje pouzdano certifikacijsko tijelo (CA). Dok SSL/TLS certifikat štiti komunikaciju između preglednika i web-poslužitelja, CODE certifikat štiti sam softver. Programer njime dodaje digitalni potpis izvršnim datotekama, instalacijskim programima, skriptama, makronaredbama, upravljačkim programima ili firmveru prije distribucije.
Certifikacijsko tijelo izdaje CODE certifikat tek nakon provjere postojanja tvrtke ili identiteta programera. Zahvaljujući toj provjeri potpis jasno identificira izdavača, a korisnik i operacijski sustav mogu biti sigurni da je softver autentičan i da tijekom distribucije nije ni na koji način mijenjan (Code signing – wiki).
Kako funkcionira potpisivanje koda?
Potpisivanje koda temelji se na asimetričnoj kriptografiji, istom principu koji koriste SSL certifikati. Programer posjeduje par ključeva – privatni i javni ključ. Pri potpisivanju stvara se jedinstveni otisak (hash) datoteke aplikacije i šifrira privatnim ključem programera. Rezultat se zajedno s certifikatom dodaje datoteci kao digitalni potpis.
Kada korisnik preuzme aplikaciju, operacijski sustav provjerava potpis: dešifrira otisak javnim ključem iz certifikata i uspoređuje ga sa stvarnim otiskom datoteke. Ako se podudaraju, kod je netaknut i dolazi od izdavača navedenog u certifikatu. Ako je promijenjen makar jedan bajt aplikacije, provjera ne uspijeva i sustav upozorava korisnika.
Nepotpisani softver danas je praktički nemoguće distribuirati. Microsoftovi sigurnosni mehanizmi poput Defender SmartScreena i Smart App Controla beskompromisno blokiraju nepotpisane preuzete aplikacije i upozoravaju korisnike na njihovo pokretanje. CODE certifikat stoga je nezaobilazan alat svake softverske tvrtke i programera.
Potpisivanje koda ne mijenja sam softver. Izvršnoj datoteci samo dodaje digitalni potpis. Važan dio potpisa je vremenski žig (timestamp), koji dokazuje da je kod potpisan dok je certifikat bio valjan. Potpis s vremenskim žigom ostaje pouzdan i nakon isteka samog certifikata.
Zašto potpisati svoj softver?
CODE certifikat treba svaki izdavač softvera koji distribuira kod ili sadržaj internetom. Zbog pravila operacijskih sustava kao što su Windows i macOS trebalo bi potpisivati i kod koji se distribuira unutar tvrtke putem intraneta. Svi moderni sustavi preferiraju potpisani kod kako bi zaštitili korisnike i spriječili širenje zlonamjernog softvera.
Prednosti CODE certifikata
- Dokazuje identitet izdavača softvera
- Jamči integritet koda – softver nije mijenjan
- Uklanja upozorenja "Nepoznati izdavač" tijekom instalacije
- Štiti vaše ime i marku od zlouporabe za krivotvoreni softver
- Povećava povjerenje korisnika, broj preuzimanja i prodaju
- Radi za Windows i macOS aplikacije
Što CODE certifikat ne radi
- Ne šifrira aplikaciju ni njezine podatke
- Ne jamči da je kod bez pogrešaka
- Ne zamjenjuje SSL certifikat za vaše web-stranice
- Ne stvara odmah SmartScreen reputaciju
Vrste CODE certifikata
CODE certifikati razlikuju se po razini provjere izdavača. Za razliku od SSL certifikata, ne postoji varijanta s provjerom domene – certifikacijsko tijelo uvijek provjerava podnositelja zahtjeva.
Standard Code Signing (OV)
Standardni Code Signing certifikat s provjerom organizacije (OV) izdaje se tvrtkama i organizacijama. Certifikacijsko tijelo provjerava postojanje tvrtke u javnim registrima, njezinu adresu i ovlaštenje podnositelja zahtjeva. Potpis zatim kao izdavača (CN) prikazuje provjereni naziv tvrtke.
Najprodavaniji CODE certifikat danas je Cloud CODE certifikat certifikacijskog tijela Certum.
Code Signing za pojedince
Neovisni programeri bez registrirane tvrtke mogu dobiti Code Signing certifikat za samostalne programere. Certifikacijsko tijelo provjerava identitet programera pomoću identifikacijskog dokumenta. Potpis zatim kao izdavača prikazuje provjereno ime programera. Ovaj CODE certifikat ima identična svojstva kao Standard Code Signing
EV Code Signing
EV Code Signing certifikati nude najvišu, proširenu razinu provjere tvrtke (Extended Validation). Obavezni su za potpisivanje upravljačkih programa u kernel načinu rada i sistemskih komponenti za Microsoft Windows. Namijenjeni su prvenstveno razvijateljima hardvera, razvijateljima sistemskog softvera i organizacijama koje zahtijevaju najvišu razinu provjere tvrtke.
CODE certifikati i Windows SmartScreen
Microsoft Defender SmartScreen tehnologija je temeljena na reputaciji koja štiti korisnike Windowsa pri preuzimanju datoteka s interneta. Ako aplikacija nema dovoljnu reputaciju, SmartScreen prije njezina pokretanja prikazuje upozorenje – čak i ako je aplikacija potpisana. Reputacija se gradi brojem instalacija i vezana je ne samo uz sam softver nego i uz Code Signing certifikat korišten za potpisivanje.
Kada je reputacija izgrađena i instalacije automatski prolaze SmartScreen, nove verzije aplikacije mogu se potpisivati istim CODE certifikatom i sve radi glatko. Međutim, pri korištenju novog ili obnovljenog certifikata reputacija se mora graditi iznova.
U prošlosti su EV Code certifikati pružali trenutnu SmartScreen reputaciju. Nakon sigurnosnih ažuriranja Windowsa objavljenih u proljeće 2026. Microsoft je promijenio svoja pravila i EV Code certifikate sada tretira slično kao standardne OV certifikate – reputacija se mora graditi i za EV Code Signing certifikate. Više pojedinosti naći ćete na stranici Windows SmartScreen filtar.
Cloud Code Signing
Budući da privatni ključ CODE certifikata mora biti pohranjen na certificiranom hardveru, certifikacijska tijela tradicionalno su isporučivala certifikate na fizičkim USB tokenima. Cloud Code Signing uklanja tu komplikaciju: privatni ključ generira se i pohranjuje u sigurnoj HSM infrastrukturi certifikacijskog tijela, a programer potpisuje kod na daljinu – s bilo kojeg mjesta, odmah nakon izdavanja certifikata i bez čekanja na dostavu tokena.
Prema zahtjevima CA/Browser Foruma privatni ključ CODE certifikata mora biti pohranjen na certificiranom hardveru (fizičkom tokenu ili HSM modulu). Zato se moderni CODE certifikati izdaju uglavnom kao cloud certifikati, kod kojih je ključ sigurno pohranjen u HSM-u certifikacijskog tijela, a programer potpisuje na daljinu – bez slanja tokena i bez hardvera za održavanje.
Tipičan primjer je usluga Certum SimplySign, kod koje se potpisivanje autorizira mobilnom aplikacijom i radi sa standardnim alatima poput Microsoft SignToola. Neki Cloud CODE certifikati mogu se integrirati u CI/CD build pipelineove, što ih čini praktičnim i isplativim izborom za današnje programere.
CODE certifikati na projektu SSLmentor
Na našim web-stranicama pronaći ćete pouzdane CODE signing certifikate globalno pouzdanih certifikacijskih tijela DigiCert, Sectigo i Certum. Većini programera preporučujemo Cloud Code certifikate europskog certifikacijskog tijela Certum, koje nudimo po najboljoj cijeni na tržištu.
Kamo dalje?
Povratak na pomoć
Našli ste grešku ili ne razumete nešto? Pišite nam!
