Kompania Google njoftoi formimin e degëve të para të qëndrueshme të komponenteve që përbëjnë projektin Sigstore, i cili shpallet i përshtatshëm për krijimin e implementimeve funksionale. Sigstore zhvillon mjete dhe shërbime për verifikimin e softuerit përmes nënshkrimeve digjitale dhe mbajtjes së një regjistri publik që konfirmon autenticitetin e ndryshimeve (transparency log). Projekti po zhvillohet nën përkujdesjen e organizatës jo fitimprurëse Linux Foundation nga kompanitë Google, Red Hat, Cisco, vmWare, GitHub dhe HP Enterprise, me pjesëmarrjen e organizatës OpenSSF (Open Source Security Foundation) dhe universitetit Purdue.
Sigstore mund tĂ« shihet si njĂ« analog i Letâs Encrypt pĂ«r kodin, duke ofruar certifikata pĂ«r tĂ« vĂ«rtetuar kodin me nĂ«nshkrime digjitale dhe njĂ« mjet pĂ«r automatizimin e verifikimit. Me ndihmĂ«n e Sigstore, zhvilluesit do tĂ« jenĂ« nĂ« gjendje tĂ« krijojnĂ« nĂ«nshkrime digjitale pĂ«r artefaktet e lidhura me aplikacionin, siç janĂ« skedarĂ«t e lĂ«shimeve, imazhet e konteinerĂ«ve, manifestet dhe skedarĂ«t ekzekutivĂ«. Materiali i pĂ«rdorur pĂ«r nĂ«nshkrim reflektohet nĂ« njĂ« regjistĂ«r publik tĂ« mbrojtur nga ndryshimet, qĂ« mund tĂ« pĂ«rdoret pĂ«r verifikim dhe auditim.
Në vend të çelësave të përhershëm, në Sigstore përdoren çelësa efemerë me jetëshkurtër, të cilët gjenerohen mbi bazën e autorizimeve të konfirmuara nga ofruesit e OpenID Connect (në momentin e gjenerimit të çelësave të nevojshëm për krijimin e nënshkrimit digjital, zhvilluesi identifikohet përmes ofruesit OpenID me lidhje në email). Autenticiteti i çelësave konfirmohet përmes një regjistri publik të centralizuar, që lejon sigurimin se autori i nënshkrimit është vërtet ai që thotë se është dhe nënshkrimi është krijuar nga i njëjti pjesëmarrës që ka qenë përgjegjës për lëshimet e mëparshme.
GatishmĂ«ria e Sigstore pĂ«r implementim Ă«shtĂ« e shoqĂ«ruar nga formimi i lĂ«shimeve tĂ« dy komponenteve kyçe â Rekor 1.0 dhe Fulcio 1.0, ndĂ«rfaqet e programimit tĂ« tĂ« cilĂ«ve shpallen tĂ« qĂ«ndrueshme dhe do tĂ« ruajnĂ« pajtueshmĂ«rinĂ« me versionet e mĂ«parshme. KomponentĂ«t e shĂ«rbimit janĂ« shkruar nĂ« gjuhĂ«n Go dhe shpĂ«rndahen nĂ«n licencĂ«n Apache 2.0.
Komponenti Rekor përmban zbatimin e logut për ruajtjen e metadatumve të verifikuar me nënshkrime digjitale, që pasqyrojnë informacione mbi projektet. Për të siguruar integritetin dhe mbrojtjen nga deformimi i të dhënave retroaktive, aplikohet struktura në formë peme "pemë Merkle" (Merkle Tree), në të cilën çdo degë verifikon të gjitha degët dhe nodet e poshtme përmes hashimit të përbashkët (strukturor). Duke pasur një hash të fundëm, përdoruesi mund të sigurojë saktësinë e gjithë historisë së operacioneve, si dhe saktësinë e gjendjeve të kaluara të BD-së (hashi kontrollues rrënjësor i gjendjes së re të bazës llogaritet duke marrë parasysh gjendjen e kaluar). Për verifikimin dhe shtimin e regjistrimeve të reja ofrohet një API RESTful, si dhe një ndërfaqe për komandën.
Komponenti Fulcio (SigStore WebPKI) përfshin një sistem për krijimin e autoriteteve të certifikimit (root CA), që lëshojnë certifikata me jetëgjatësi të shkurtër në bazë të email-it, të autentikuar përmes OpenID Connect. Kohëzgjatja e certifikatës është 20 minuta, gjatë së cilës zhvilluesi duhet të formojë nënshkrimin digjital (nëse më pas certifikata kalon në duar të të hajdutëve, ajo do të jetë tashmë e skaduar). Së tepërmi, projekti zhvillon një mjet të quajtur Cosign (Container Signing), i destinuar për formimin e nënshkrimeve për kontejnerët, verifikimin e nënshkrimeve dhe vendosjen e kontejnerëve të nënshkruar në depozitë të përputhshme me OCI (Open Container Initiative).
Shpërndarja e Sigstore ofron mundësi për të rritur sigurinë e kanaleve të shpërndarjes së softuerit dhe për t'u mbrojtur nga sulmet që janë të synuara për të zëvendësuar bibliotekat dhe varësitë (supply chain). Një nga problemet kryesore të sigurisë në softuerin e hapur është vështirësia e verifikimit të burimit të marrjes së programit dhe verifikimit të procesit të ndërtimit. Për shembull, për të verifikuar integritetin e publikimeve, shumica e projekteve përdorin hash-e, por shpesh informacioni i nevojshëm për verifikimin e origjinalitetit ruhet në sisteme të pasigurta dhe depo të zakonshme me kod, si rezultat i komprometimit të të cilave sulmuesit mund të zëvendësojnë skedarët e nevojshëm për verifikim dhe, pa shkaktuar dyshime, të integrojnë ndryshime të dëmshme.
Përdorimi i nënshkrimeve digjitale për verifikimin e çlirimeve ende nuk ka marrë përhapje të gjerë për shkak të vështirësive në menaxhimin e çelësave, shpërndarjen e çelësave publikë dhe tërheqjen e çelësave të komprometuar. Për të pasur kuptim verifikimi, kërkohet gjithashtu të organizohet një proces i besueshëm dhe të sigurt për shpërndarjen e çelësave publikë dhe kontrollsumave. Edhe kur ka një nënshkrim digjital, shumë përdorues e injorojnë verifikimin, pasi duhet të kalojnë kohë për të studiuar procesin e verifikimit dhe të kuptojnë se cili çelës meriton besimin. Projekti Sigstore përpiqet të thjeshtojë dhe automatizojë këto procese, duke ofruar një zgjidhje të përgatitur dhe të verifikuar.
Burimi: opennet.ru
