Дигиталниот суверенитет започнува со контролата врз сопствените криптографски клучеви. Денес, дигиталните потписи и автентикацијата се речиси целосно монополизирани од комерцијални корпоративни SaaS платформи и затворени сертификациски тела (CA) што наплаќаат скапи годишни лиценци, ги следат метаподатоците на секој потпишан документ и наметнуваат затворени формати. Овој проект докажува како независни хакерспејси, инженерски иницијативи и локални заедници можат да воспостават сопствена, математички докажлива криптографска инфраструктура со нула зависност од комерцијални облачни сервери.
Самостоен дигитален идентитет и Ed25519 криптографија
Контролата врз приватните клучеви му припаѓа исклучиво на поединецот: - Модерни елиптични криви (Ed25519): Користиме Едвардсови криви (Ed25519 според RFC 8032) базирани на Curve25519. Тие нудат супериорни безбедносни маргини со 128-битно ниво на сигурност, екстремно брзо потпишување, компактни 64-бајтни потписи и аритметика со константно време што е имуна на софистицирани напади преку странични канали (cache-timing attacks). - Отворен безбедносен хардвер: Интеграција со хардверски безбедносни токени со отворен код (Nitrokey 3, SoloKey) и смарт-картички со отворени аплети (OpenPGP / PIV). Приватните клучеви се генерираат и се чуваат во заштитениот силициум на токенот — криптографските операции се извршуваат директно на чипот, а екстракција на клучот е физички невозможна. - Елиминација на SaaS посредници: Документите се верификуваат преку стандардни математички проверки без потреба од регистрација на комерцијални платформи за управување со документи.
Локален PKI со step-ca и ACME автоматизација
За управување со животниот циклус на сертификатите во нашиот хардверски лаб и локална мрежа користиме step-ca (Smallstep Certificate Authority) — лесно, робусно сертификационо тело со отворен код:
- Хиерархија на доверба: Изолиран офлајн Root CA чиј приватен клуч се чува на шифриран хардверски токен, поврзан со активен Intermediate CA што се извршува како локален demon на независен раб-сервер.
- Локален ACME протокол: Интегриран ACME provisioner што овозможува автоматско издавање и обновување на TLS сертификати за локални сервери, соларни контролери и внатрешни домени (*.lab.internal, *.solar.mesh) преку Caddy или Nginx без изложување на јавен интернет.
- Краткотрајни сертификати (Short-Lived X.509): Сертификатите се издаваат со валидност од 8 до 24 часа врз основа на OIDC токени или SSH сертификати. Ова го елиминира ризикот од застарени или компромитирани сертификати и ја прави непотребна бавната проверка на списоци за отповикување (CRL).
- SSH автентикација базирана на сертификати: Елиминирање на статички authorized_keys датотеки преку step ssh што издава временски ограничени SSH сертификати потпишани од локалниот CA.
Потпишување PDF документи со pyHanko (PAdES-LT / LTA)
За создавање правно релевантни и архиварски сигурни дигитално потпишани документи користиме pyHanko — напредна слободна Python библиотека и CLI алатка: - PAdES стандард (ETSI EN 319 142): Создавање дигитални потписи според европскиот стандард за напредни електронски потписи на PDF фајлови. Поддржуваме PAdES Baseline-LT (Long-Term) и LTA (Long-Term Archival) профили кои гарантираат дека документот ќе може да се верификува дури и по десет години. - Криптографски временски жиг (RFC 3161 TSA): Вградување на криптографски временски печат од независен временски орган што математички докажува дека документот постоел и не бил изменет во точната секунда на потпишување. - Визуелни потписи со вектори: Автоматско вградување на визуелен печатен потпис со SVG графика, QR-код со криптографскиот отпечаток на потписот и името на потписникот.
Нула-облачна верификација (Zero-Cloud Verification)
Најважниот архитектонски принцип е целосната изолација од трети страни:
1. 100% локална обработка: Документот се хешира (SHA-256 / SHA-512) директно во работната меморија (RAM) на локалниот компјутер. Ниту еден бајт од содржината или метаподатоците не се испраќа кон надворешни сервери.
2. Офлајн верификација: Секој соработник или примач може да го провери потписот офлајн користејќи стандарден PDF читач (Adobe Reader, PDF-XChange) или со слободната команда pyhanko sign validate --fps, користејќи ја локално увезената јавна коренска сертификациска верига.
3. Примена во отворени проекти: Оваа алатка ја користиме за потпишување на интерни договори за соработка меѓу мејкери, записници од координативни состаноци, верификација на верзии на фирмвер и криптографско означување на официјални хардверски шеми. Сите конфигурациски скрипти и CLI упатства се отворени за заедницата.
Дискусија
Дискусијата сè уште не е отворена.