Category Archives: технология

Integrity Guarantees of Blockchains In Case of Single Owner Or Colluding Owners

от Божидар Божанов
лиценз CC BY

The title may sound as a paper title, rather than a blogpost, because it was originally an idea for such, but I’m unlikely to find the time to put a proper paper about it, so here it is – a blogpost.

Blockchain has been touted as the ultimate integrity guarantee – if you “have blockchain”, nobody can tamper with your data. Of course, reality is more complicated, and even in the most distributed of ledgers, there are known attacks. But most organizations that are experimenting with blockchain, rely on a private network, sometimes having themselves as the sole owner of the infrastructure, and sometimes sharing it with just a few partners.

The point of having the technology in the first place is to guarantee that once collected, data cannot be tampered with. So let’s review how that works in practice.

First, we have two define two terms – “tamper-resistant” (sometimes referred to as tamper-free) and “tamper-evident”. “Tamper-resistant” means nobody can ever tamper with the data and the state of the data structure is always guaranteed to be without any modifications. “Tamper-evident”, on the other hand, means that a data structure can be validated for integrity violations, and it will be known that there have been modifications (alterations, deletions or back-dating of entries). Therefore, with tamper-evident structures you can prove that the data is intact, but if it’s not intact, you can’t know the original state. It’s still a very important property, as the ability to prove that data is not tampered with is crucial for compliance and legal aspects.

Blockchain is usually built ontop of several main cryptographic primitives: cryptographic hashes, hash chains, Merkle trees, cryptographic timestamps and digital signatures. They all play a role in the integrity guarantees, but the most important ones are the Merkle tree (with all of its variations, like a Patricia Merkle tree) and the hash chain. The original bitcoin paper describes a blockchain to be a hash chain, based on the roots of multiple Merkle trees (which form a single block). Some blockchains rely on a single, ever-growing merkle tree, but let’s not get into particular implementation details.

In all cases, blockchains are considered tamper-resistant because their significantly distributed in a way that enough number of members have a copy of the data. If some node modifies that data, e.g. 5 blocks in the past, it has to prove to everyone else that this is the correct merkle root for that block. You have to have more than 50% of the network capacity in order to do that (and it’s more complicated than just having them), but it’s still possible. In a way, tamper resistance = tamper evidence + distributed data.

But many of the practical applications of blockchain rely on private networks, serving one or several entities. They are often based on proof of authority, which means whoever has access to a set of private keys, controls what the network agree on. So let’s review the two cases:

  • Multiple owners – in case of multiple node owners, several of them can collude to rewrite the chain. The collusion can be based on mutual business interest (e.g. in a supply chain, several members may team up against the producer to report distorted data), or can be based on security compromise (e.g. multiple members are hacked by the same group). In that case, the remaining node owners can have a backup of the original data, but finding out whether the rest were malicious or the changes were legitimate part of the business logic would require a complicated investigation.
  • Single owner – a single owner can have a nice Merkle tree or hash chain, but an admin with access to the underlying data store can regenerate the whole chain and it will look legitimate, while in reality it will be tampered with. Splitting access between multiple admins is one approach (or giving them access to separate nodes, none of whom has access to a majority), but they often drink beer together and collusion is again possible. But more importantly – you can’t prove to a 3rd party that your own employees haven’t colluded under orders from management in order to cover some tracks to present a better picture to a regulator.

In the case of a single owner, you don’t even have a tamper-evident structure – the chain can be fully rewritten and nobody will understand that. In case of multiple owners, it depends on the implementation. There will be a record of the modification at the non-colluding party, but proving which side “cheated” would be next to impossible. Tamper-evidence is only partially achieved, because you can’t prove whose data was modified and whose data hasn’t (you only know that one of the copies has tampered data).

In order to achieve tamper-evident structure with both scenarios is to use anchoring. Checkpoints of the data need to be anchored externally, so that there is a clear record of what has been the state of the chain at different points in time. Before blockchain, the recommended approach was to print it in newspapers (e.g. as an ad) and because it has a large enough circulation, nobody can collect all newspapers and modify the published checkpoint hash. This published hash would be either a root of the Merkle tree, or the latest hash in a hash chain. An ever-growing Merkle tree would allow consistency and inclusion proofs to be validated.

When we have electronic distribution of data, we can use public blockchains to regularly anchor our internal ones, in order to achieve proper tamper-evident data. We, at LogSentinel, for example, do exactly that – we allow publishing the latest Merkle root and the latest hash chain to Ethereum. Then even if those with access to the underlying datastore manage to modify and regenerate the entire chain/tree, there will be no match with the publicly advertised values.

How to store data on publish blockchains is a separate topic. In case of Ethereum, you can put any payload within a transaction, so you can put that hash in low-value transactions between two own addresses (or self-transactions). You can use smart-contracts as well, but that’s not necessary. For Bitcoin, you can use OP_RETURN. Other implementations may have different approaches to storing data within transactions.

If we want to achieve tamper-resistance, we just need to have several copies of the data, all subject to tamper-evidence guarantees. Just as in a public network. But what a public network gives is is a layer, which we can trust with providing us with the necessary piece for achieving local tamper evidence. Of course, going to hardware, it’s easier to have write-only storage (WORM, write once, ready many). The problem with it, is that it’s expensive and that you can’t reuse it. It’s not so much applicable to use-cases that require short-lived data that requires tamper-resistance.

So in summary, in order to have proper integrity guarantees and the ability to prove that the data in a single-owner or multi-owner private blockchains hasn’t been tampered with, we have to send publicly the latest hash of whatever structure we are using (chain or tree). If not, we are only complicating our lives by integrating a complex piece of technology without getting the real benefit it can bring – proving the integrity of our data.

The post Integrity Guarantees of Blockchains In Case of Single Owner Or Colluding Owners appeared first on Bozho's tech blog.

Представителна история за една шофьорска книжка

от Божидар Божанов
лиценз CC BY

Миналата година на мой близък човек му изтече шофьорската книжка. И решихме да пробваме да бъде заявена новата онлайн. Тогава още я нямаше обновената система на МВР за е-услуги, така че свалихме бланката, попълнихме я и я изпратихме през системата за сигурно електронно връчване, подписана с КЕП, вкл. с прикачено необходимото медицинско.

Влизането с КЕП също не беше тривиално, защото инсталирането на софтуера за подписване имаше някои неочевидни настройки.

Последва дежурното обаждане (от пътна полиция към СДВР) „то не може“, предадено към мен – настоях за правно основание за отказа, тъй като Законът за електронно управление ги задължава да приемат заявлението и да изпълнят услугата. Казаха, че пак ще звъннат. Не звъннаха. Потърсихме ги отново, като в отговор потвърдиха, че не – няма да издадат така книжката.

Подадохме сигнал до Държавна агенция „Електронно управление“, аргументирайки се, че мълчаливият (към онзи момент) отказ противоречи на Закона за електронното управление.

Отговорът на ДАЕУ беше да се съгласят мотивите от изричния отказ на МВР, получен няколко дни след това. А той е абсурден. Според Закона за българските лични документи, МВР предоставя електронни услуги за лични документи през централизирана система за услуги. В правилния за прилагане на закона се изреждат услугите, включени в портала. Но издаване на шофьорска книжка липсва (тъй като към онзи момент не се поддържа). Да, Законът за електронното управление казва следното:

(2) Административните органи, лицата, осъществяващи публични функции, и организациите, предоставящи обществени услуги, са длъжни да предоставят всички услуги в рамките на своята компетентност и по електронен път, освен ако закон предвижда особена форма за извършване на отделни действия или издаване на съответни актове.

Обаче МВР казва „нашият подзаконов акт дерогира (отменя) закона, защото нашият специален закон делегира детайлите на нашия подзаконов акт, а той не казва нищо за тая конкретна услуга“. Абсурдна теза, граничеща с тази на РИК Стара Загора при отказа за вписване на листата на Демократична България, но останал несанкциониран.

Е, месец-два след това се появиха електронните услуги в системата, така че този казус вече не съществува. Но той илюстрира три проблема, за чието решаване ще работя:

  • Неудобно е – след като се оправиш с неудобния и „чуплив“ квалифициран електронен подпис, трябва да търсиш бланки (които ги няма там, където трябва – в административния регистър)
  • „Не може по електронен път“ – администрацията си търси всякакви абсурдни оправдания за да „им дойдеш“ на гише, както са си свиканли
  • Няма контрол – ДАЕУ като че ли беше уплашено, че няма политическата подкрепа да напише акт на МВР и да им издаде задължително предписание да спазват закона, макар че има такива правомощия

Само първият от тези проблеми е технически. Останалите са организационни и политически. И ще трябва да бъдат решени.

Материалът Представителна история за една шофьорска книжка е публикуван за пръв път на БЛОГодаря.

Избран съм за народен представител

от Божидар Божанов
лиценз CC BY

ЦИК обяви резултатите. Избран съм за народен представител.

Благодаря на всички за подкрепата. За мен лично, за Демократична България и за посоката на промяна.

Няма да спестя клишето, че тя е задължаваща. И че гледам на депутатството не като „награда“, а като на отговорност.

Ще работя за модернизация на държавата. И за това всички затлачвани дейности и замитани проблеми да бъдат поправени.

Не самоцелно, а за да не бъде държавата в тежест на гражданите и бизнеса, да не пилее парите ни с неефективността си.

Ще приемам предложения, ще приемам и критики. Ще опитвам да обяснявам решенията си и политиките, които прокарвам. Ще опитам да бъда „представител“ в истинския смисъл.

И ще се постарая да имаме перспективно, прозрачно и добро управление, което да бъде в ярък контраст с предишните.

Още веднъж – благодаря.

Материалът Избран съм за народен представител е публикуван за пръв път на БЛОГодаря.

Кратък следизборен анализ

от Божидар Божанов
лиценз CC BY

Благодаря на всички, гласували за Демократична България и за мен лично.

Да, Демократична България реализира значителен спад в получените гласове. И със сигурност е имало какво да направим по-добре и по-правилно. Но нека обясня причините за това, както ги виждам през многото данни, които минаха през ръцете ми.

ГЕРБ, БСП и ДПС са „изпилени“ до ядрата си – с малки изключения никой не може да вземе глас от тях и те не могат да вземат глас от никого. Остават другите, които искат промяна. Техните гласове два пъти отидоха за ДБ, ИТН и ИБНИ, но поради хаотичните и неадекватни действия на ИТН, това не доведе до резултат. Негативът от това се понесе и от трите партии.

В началото на кампанията ДБ загуби част от избирателите си в посока Продължаваме промяната, най-вече по линията „Радев“. След това започна бавно да си ги „връща“, докато не дойде необяснимата атака на подкрепения от ДБ кандидат за президент. Това, според мен, счупи най-важното – усещането за стабилност и предвидимост в ДБ. Не че самата стабилност и предвидимост ги няма, но тези необясними действия в този електорален терен казаха на част от избирателите „тука има нещо особено, можете да ходите другаде“. Според екзит половете в крайна сметка над 1/3 от гласовете на ДБ през юли са отишли към ПП. Това далеч не е единственият фактор, разбира се. И тези избиратели не принадлежат на никого.

Факторът „новост“ комбиниран с умората от 3-ти поредни избори на останалите партии, комбиниран с неуспеха в предния парламент, комбиниран с одобрението на Радев, комбиниран с добрата им кампания донесе този успех на Продължаваме промяната, които „изсмукаха“ трудно спечелените избиратели от ДБ през тази година.

Можеше ли нещо друго да се направи? Нито можехме да бъдем нов субект след 2 кампании, нито след 2 кампании можехме да сменим рязко посланията, нито имаше откъде да привлечем други избиратели – тези на ГЕРБ, БСП и ДПС са „заключени“, а както беше казал някой – негласуващите имат една характерна особеност – не гласуват.

Нямаше как и да подкрепим Радев – дори само агентите на ДС в инициативния му комитет правят такъв избор почти невъзможен. Дори в момента 50% от избирателите ни гласуваха за Радев. Ако не се бе появила ПП, щяха да са 2/3 (такива бяха данните). И когато Лозан Панов атакува остро Радев (макар и не без причини, както посочих преди малко), допълнително „отпъди“ хора, които биха ни подкрепили, но пък харесват Радев. Получих доста такива коментари в кампанията. Бяхме наясно и с това явление, но поне 1/3 от избирателите ни щяха да са тежко разочаровани от липсата на кандидат. Панов очевидно беше напълно независим, което може би беше тактическа грешка, но много хора от ядрото ни оценяват тази независимост.

Друго важно решение, което взехме – да бъдем партньорски и позитивно настроени спрямо ПП, също имаше, макар и по-малък негативен електорален ефект – много от хората ни считат за естествен партньор след изборите и особено в изборния ден вероятно са взели решение „нека едните наши да бият ГЕРБ, после ще управляват с другите наши“. Споделените ни периферии в областните центрове потвърждават това. В други исторически моменти дясното се е нахвърляло върху всичко ново. И е губило много от това в дългосрочен план.

И последно – нашите ясни послания „за“ ваксинация нямаше как да ни донесат допълнителна подкрепа при тези ниски нива на доверие във ваксините. Но когато умират толкова, това беше отговорната, принципна позиция.

Важните решения, които взехме, на база принципи, бяха с ясен и предвидим електорален резултат – негативен. Първо, че не подкрепихме кабинета на ИТН и отказахме преговори с мандат на БСП беше част от причините за трети избори. Само че просто няма как да дадем такава подкрепа и да се погледнем в огледалото. Изборът да не подкрепим Радев, въпреки, че мнозинството от избирателите ни го подкрепяха, също беше базиран на принципи, макар да носи гарантирани електорални щети.

Цялата тази комбинация от фактори допринесе за по-слабия резултат, а не толкова кампанията ни – тя беше правена от същите хора, които доведоха коалицията от съмнения за влизане до 12% през юли. И, иронично или не, резултатът е следствие от принципните ни решения и на много сложната обстановка. Но в политиката е така.

Представляването на избиратели с разнородни и понякога противопололожни мнения е трудно. Задържането им мотивирани в три поредни кампании, последната от които, съвпадаща с президентската, при поява на нов субект на същия електорален терен, е почти невъзможно. Аз все пак заставам зад всички взети решения – те са такива, защото ние сме такива. Това носи електорални рискове, но носи и увереност, че правим правилните неща за България. И че ще ги правим, когато имаме възможност да управляваме.

Нека не забравяме, че преди година този резултат би бил определян като „успех“. Сега не е, защото екипът ни показа, че може да постига резултати.

И да, Продължаваме промяната преразпределиха гласовете на партиите извън БСП, ДПС и ГЕРБ. Привлякоха малко негласуващи за сметка на 2-та процента „фира“ от ИБНИ. Но смятам, че те са много по-перспективен и позитивен водещ партньор от ИТН и съответно резултатите на тези избори са по-скоро позитивни. Предстоят коалиционни преговори и се надявам скоро да имаме добри новини и ще можем да реализираме идеите, които печелиха доверие.

П.П. Въпреки горееизложеното, осъзнаваме отговорността си като ръководство на партията. В такива моменти е редно да бъдат подадени оставки, което и направихме – Христо Иванов и изпълнителният съвет, от който съм част, подадохме оставки.

Материалът Кратък следизборен анализ е публикуван за пръв път на БЛОГодаря.

Избори ноември 2021: секциите в чужбина

от Боян Юруков
лиценз CC BY-SA

След много неразбории и объркани решения на ЦИК, секциите в чужбина са ясни. Това вече се е превърнало в практика, макар този път умората и разочарованието на доброволци и организации от комуникацията с ЦИК да си каза думата. Атаките срещу доверието във вота ще се отразят несъмнено и на гласуващите зад граница.

За разлика от който и да е вот в последните 10 години обаче, по лични причини аз не успях да публикувам картата със секциите рано. Довърших я едва няколко дни преди вота и едва вчера разпратих мейл на 2815-те абонирали се за персонализирана информация за секциите до тях. След това още 51 се записаха и има прати мейл току-що.

Картата е все пак готова и всеки може да види къде е най-близката секция до тях. В изчистването на информацията ми помогнаха от Тук-Там, които имат прекрасен портал със съвети и карта в помощ на гласуващите зад граница.

Ето и картата на Glasuvam.org със секциите. Може да я отворите и на цял екран.

Ето най-важното, което трябва да знаете за вота утре:

  • Изборният ден започва в 7:00 сутринта местно време и свършва в 8:00 часа вечерта
  • Може да гласува всеки български гражданин независимо дали е подал заявление или не
  • Независимо от отбелязаната в заявлението Ви секция, може да гласувате където и да е в чужбина
  • В чужбина може да гласува всеки български гражданин независимо от обичайното му пребиваване. Това означава, че ако пътувате зад граница по работа или на почивка, може да упражните гласа си в близка до Вас секция. Отново, няма значение дали сте подавали заявление.
  • Ако все пак сте в България по време на изборите, може да гласувате само по постоянен адрес. Тогава попълвате приложение 32, че не сте гласували в чужбина и са длъжни да Ви отбележат. Присъствате в списъка и след името Ви е отбелязано МВнР
  • Ако гласувате в чужбина попълвате приложение 38, че не сте и няма да гласувате другаде. В секцията следва да има бланки за попълване на място, но имате право да я попълните вкъщи и да я донесете. Това ще Ви спести време. Ако комисията на секцията откаже да приеме предварително попълнено заявление, имате право да обжалвате и са длъжни да се свържат с ЦИК и да решат въпроса веднага без отлагане. Ако откажат или продължават да настояват, може да подадете сами сигнал до ЦИК на телефоните, които ще бъдат обявени на сайта или по мейл
  • Гласува се с валидна лична карта или паспорт или такава изтекла след 13 март 2020 г. Ако е изтекла преди това може да гласувате като покажете бележка от консулството, че сте заявили нов документ. Това беше потвърдено с решение на ЦИК.
  • В чужбина има възможност да гласувате само за партия/коалиция. Няма възможност за преференции, каквито има в страната. Така гласът Ви помага само на конкретната коалиция да влезе в парламента. Запознайте се и с бюлетините за президент и парламент.
  • В част от секциите в чужбина ще има възможност да се гласува с машини. Това ефективно изключва вероятността за невалидни гласове. Пример за електронната бюлетина ще намерите тук, а тук е видео показващо как се работи машините.

Както и на предишните избори може да натискате на адреса и да го отворите в Google. Тъй като изписването на адресите невинаги се намира в Google, съм добавил и възможност за отваряне по географски координати.

Също така, когато гласувате, ви призовавам да дадете обратна връзка колко време сте чакали. Това става чрез бутоните към въпросната секция. Повече информация за това и как ще помогне на другите да намерят близка секция може да прочетете тук.

The post Избори ноември 2021: секциите в чужбина first appeared on Блогът на Юруков.

Рискове и мерки за защита на машинното гласуване

от Божидар Божанов
лиценз CC BY

Тези дни ескалираха съмненията в машинното гласуване. Тази ескалация е с политически мотив, но няма да правя политически коментар, а експертен, с който да обясня къде всъщност са рисковете за машинното гласуване и какви са мерките, които трябва да вземем, за да бъде то защитено. Ще опитам да обясня и защо допълнителни машини по никакъв начин не помагат за компрометирането на системата, ако Сиела биха искали да я компрометират.

Тук е важно да отбележа, че не твърдя, че някой иска да манипулира резултата – нито Сиела, нито ЦИК, нито Информационно обслужване. Но една добра система трябва да бъде отворена и прозрачна и да може всяка заинтересована страна да се убеди, че тя работи правилно, без да разчита на някой доверен участник. Т.е. дори да вярваме на Сиела, ЦИК и Информационно обслужване, сме длъжни да имаме система, която не разчита на доверието към тях.

Машинното гласуване не е просто една машина, то е процес. Процесът има следните стъпките:

  1. Доставка на празни машини
  2. Получаване на изходния код
  3. Компилиране на изходния код до системен образ
  4. Електронно подписване на системния образ
  5. Записване на подписания системния образ на флашка
  6. Инсталиране на системния образ на всички машини (отключване на машините, в случай, че на тях е бил инсталиран друг системен образ, подписан с други ключ)
  7. Провизиране на данните за конкретния избор върху машината (кандидатски листи, номер на секция, номер на машина)
  8. Генериране на ключове върху смарт-карти (тези белите, с които секционните комисии подписват)
  9. Комплектоване на смарт-картите и техните ПИН-кодове
  10. Транспортиране на машините и смарт-картите до РИК, съответно до секциите
  11. Стартиране на изборния ден
  12. Гласуване
  13. Приключване на изборния ден и подписване на протокола (както на хартия, така и електронно)
  14. Транспортиране на хартиения протокол, смарт-картите и флаш-паметите с машинния протокол
  15. Проверка на протокола и въвеждането му в системата за машинна обработка
  16. Сумиране и обявяване на резултата

На почти всяка от тези стъпки съществува някакъв риск, който трябва да бъде адресиран. Рискът може да бъде за манипулация на целия изборен процес или на отделни секции. Рискът не значи, че това ще се случи, но трябва да бъдат взети съответните мерки. Сходни рискове съществуват и при хартиеното гласуване – и там има защитни механизми (като напр. голям брой членове на секционни комисии, наблюдатели, бюлетини с уникален номер, и т.н.)

Нека започна с въвеждането на няколко термина, които ще ми се наложи да използвам в обяснението.

  • Криптографски ключ – освен като ключ, с който може да се отключва и заключва електронно съдържание, може да си го представите като много дълга (незапомняема) парола, която ни дава достъп до дадена скрита информация, но също така ни дава опция да “подпишем” нещо електронно.
  • Електронен подпис – използване на криптографски ключ с цел гарантиране, че даден файл не е бил подменян и че е създаден от оторизирано за това лице (притежател на ключа)
  • Хеш – “отпечатък” на файл или група от файлове. Хешът е това, което се разпечатва на разписката и служи за идентифициране на софтуера, който работи на машината. Всяка най-малка промяна в дори един файл би променила този хеш.
  • Изходен код – кодът описва как работи софтуера – какво прави в един или друг случай, как смята, къде записва резултата
  • UEFI secure boot – това е технология, която ограничава възможния системен софтуер, който може да работи на една машина само до такъв, който е бил електронно подписан с ключ на оторизиран участник (между другото, всеки домашен компютър или лаптоп също използва тази технология).

В целия процес има три групи рискове, които надграждат един върху друг. Основният риск е първият, защото той определя поведението на системата, но останалите рискове са свързани с него:

  • Изходният код – съществува риск някой (доставчикът) да е заложил определено изкривяване на резултата в изходния код, напр. “всеки трети глас за Х отива за Y или Z”.
  • Системният образ – дори кодът да бъде проверен и да не манипулира резултата, системният образ, който е изграден на база на този код, може да бъде подменен с друг. Затова трябва да сме сигурни, че системният образ е точно този, който е изграден от проверения изходен код
  • Управление на ключове – гарантирането на системния образ, а и на машинните протоколи на флаш-паметите, разчита на електронни подписи с криптографски ключове. Те трябва да бъдат управлявани и съхранявани правилно, за да не може някой да подмени едно или друго съдържание.

Следва таблица с рисковете по тези направления, както и мерки, които са взети за тяхното елиминиране. Ще си позволя да добавя колона “участие на ДБ”, защото всякакви обвинения в манипулация са абсолютно нелепи при всичките усилия, които системно полагаме за честността на изборите. Държа да подчертая, че знанието, описано тук, сме го използвали, за да подобрим процеса.

А откъде имам информация за този анализ? От общи познания по информационна сигурност, от техническата спецификация за поръчката, от докладите за удостоверяване на машините на Държавна агенция “Електронно управление” и от участието ми на техническите срещи с експерти от ДАЕУ и ЦИК, на които задавах въпроси. Не твърдя, че имам пълната картина, но имам достатъчно, така че да оценя рисковете.

Броенето на хартиените разписки е мярка, която позволява откриването на манипулации, ако бъде изпълнена както трябва. Затова и още при предните избори настоявахме чрез нашите представители в ЦИК за извадкова проверка. При проверката на разписките гаранцията идва от това, че избирател се е уверил визуално, че машината е приела гласа, който той е подал. Затова е добра идея да има извадково преброяване в СИК (напр. в 5% от секциите), както и по-обстоен централизиран следизборен одит на разписките, при който рисковете от грешки и от умишлен саботаж са намалени. Важно е при одита да бъде сканиран и QR кода, защото той е гаранцията, че разписката е автентична, а СИК трябва да документира всички извънредни събития, като граждани, тръгнали си с разписка в джоба, свършила хартия и др., които могат да се отразят на броя разписки. Този подход би открил опит за мащабна манипулация, без да създава предпоставки за друг вид манипулации – комуникационни, в които определени технически грешки при броенето и въвеждането на резултата се използват за подкопаване на доверието в изборите.

Риск Мерки за защита Прилагат ли се в момента? Ниво на риск Участие на ДБ
Уязвимости в кода, които позволяват промяна на резултата Автоматизирано тестване за уязвимости на изходния код; Да, от ДАЕУ в процеса на удостоверяване Ниско (това за уязвимости, които не са съзнателно поставени и съответно, дори да ги има, не е ясно дали някой може да се възползва от тях) Не директно, но процеса на удостоверяване беше добавен включително и заради натиска на ДБ за одит на машините.
“Вратичка” (backdoor) в кода, която позволява съзнателна манипулация Преглед на кода от участници в процеса и в процеса на удостоверяване Частично – в момента ДАЕУ проверява кода, но все още ЦИК не е дала достъп до представителите на партиите Високо Предложено от ДБ в Изборния кодекс. Три писма, както и внесено проект на решение на ЦИК.
Подмяна на изходния код след неговото одитиране и преди компилиране на системния образ Генериране на хеш на изходния код и публикуването му Да, в рамките на публичната процедура се сравнява хеша на удостоверения код с този на кода, с който се компилира системния образ. Високо В техническата среща настоявах това да се случи; все пак от Сиела и ДАЕУ вече се бяха подготвили с тази стъпка. Публичното компилиране на системния образ беше поискано от ДБ чрез писмо и становище в комисия в Народното събрание
Вкарване на злонамерена функционалност през библиотеки, които не са част от кода, но системата разчита на тях Проверка на електронните подписи или хешовете на библиотеките спрямо публично обявените Частично – това е част от скриптовете за компилиране на системния образ, до които не са ни предоставили достъп. Ниско – такава атака е с висока сложност, защото в кода трябва да има код, който да се възползва от тази промяна по неочевиден начин.
Инсталиране на системен образ, различен от официалния, който да изкривява резултата Подписване на официалния с ключ на ЦИК; Извадкова проверка на UEFI db на машините в процеса на инсталиране извадкова проверка на хеша с външен инструмент HashExtractor Частично – от тези избори системният образ се подписва от ЦИК, а не от Сиела. На предните избори е извършена проверка на процеса на инсталиране, но тя трябва да е по-мащабна. Очакваме решение на ЦИК за извадкова проверка с HashExtractor Високо. Хешът на системната разписка е само частична гаранция, тъй като той се генерира от машината (и тя може да разпечата “правилния’). Затова е нужно разделяне на контрола на ключа и инсталирането (за да не са в една и съща организация) ДБ в няколко писма за предните и тези избори предлага на ЦИК извадкова проверка с външния инструмент HashExtractor, както и проверка на UEFI db (дали разпознава правилните ключове или са добавени изключения) и е подкрепила подписването с ключ на ЦИК
Управляване на машината дистанционно в изборния ден Неизползване на карта за безжична комуникация и премахване на драйверите за всякакви мрежови карти. Да, машините са с премахнати мрежови драйвери по спецификация (и това е потвърдено при удостоверяването) и нямат антени за безжична комуникация Ниско Изрично сме се уверили на база на докладите, че няма възможност за отдалечена комуникация с машините.
Изтичане на ключа за UEFI secure boot Генериране на ключа на смарт-карта и съхранение в сигурна физическа среда; евентуално разпределение на ключа между членовете на ЦИК с напр. С алгоритъма за споделяне на ключове на Шамир. За съжаление не може ключът да се генерира на смарт-карта, защото ако тя се развали, губим машините. Алтернативно, може да се генерира на HSM, който поддържа резервни копия. Частично – доколкото разбрах ЦИК е приело протоколни правила за генерирането и съхранението на ключовете и се пазят физически. За следващите избори това трябва да стане в публична процедура. Средно – изтичането на ключа не значи автоматично манипулация на изборите. В този случай проверката с HashExtractor отново би открила проблема, а разделението между собственика на ключа и организацията, инсталираща машините, допълнително намалява риска. Още на предните избори в писмо сме поискали точните процедури за управление на UEFI ключовете
Подписване на секционни машинни протоколи с нелегитимни ключове Публикуване на всички сертификати от смарт-картите на секционните комисии преди изборния ден, което да позволи последваща проверка и защита срещу нелегитимни ключове Не, в момента се разчита, че карти могат да се издават само от Информационно обслужване и че няма допълнително издадени карти. Ниско, тъй като хартиеният протокол, от който имат копие всички членове на СИК и наблюдателите, съдържа валидните данни и хващането на такава манипулация е лесно.. С писмо от миналата седмица до ЦИК сме поискали публикуване на всички сертификати/публични ключове
Подписване на фалшив машинен протокол по пътя от СИК до РИК Разделяне на смарт-картите от флаш-паметите при транспорта Не, в момента се разчита, че такава манипулация в мащаб едва ли е възможна, поради необходимостта от технически познания на член на СИК. Ниско, тъй като хартиеният протокол, от който имат копие всички членове на СИК и наблюдателите, съдържа валидните данни и хващането на такава манипулация е лесно. С писмо преди предходните избори сме предложили разделяне на смарт-картите от флаш-паметите
Изкривяване на резултата при машинна обработка в РИК/ЦИК Публикуване на всички протоколи; получаване на копие от протоколите от всеки член на СИК и застпъник Да Много ниско – протоколите са първичният документ и след неговото генериране всеки опит за мащабна манипулация може да бъде установен много лесно.

Виждаме, че на практика всички рискове са или адресирани по някакъв начин, или с достатъчно ниско ниво, за да не представляват системен проблем. Моята критика, когато има такава, е в подобряване на вече прилаганите мерки за защита.

Ако приемем, че допълнителните машини са за манипулация на изборите, то Сиела е тази, която би го направила. Само че Сиела в момента разполага с UEFI ключа от предните избори, с който може да отключи съществуващите, “легитимни” машини. Именно затова допълнителните машини с нищо не се различават от съществуващите и не добавят вектор на атака. При следващите избори, в които Сиела няма да има ключа да отключи съществуващите машини, това би било потенциален проблем, тъй като в новите машини може да инсталира всичко, а в старите – само системен образ, подписан от ЦИК. Но на тези разлика няма.

Когато говорим за изходния код, за съжаление в момента той не е собственост на държавата и тя няма право да го публикува. Може, в условия на конфиденциалност, да се предостави на заинтересовани страни (представители на партии, напр.) Това трябва да бъде коригирано за следващи избори – добра идея е да се напиша изцяло нов код, който да е публично достъпен, одитиран, и за чийто прелед да бъдат поканени международни експерти. За това тази година нямаше време, но при малко по-стабилен парламент това трябва да бъде следващата стъпка, според мен.

С оглед на изложеното по-горе, смятам, че изборите в момента са с разумно ниво на защита и че мащабни манипулации няма да бъдат извършвани. Има какво да се желае от процеса, поради което правим постоянни препоръки. ЦИК приема някои от тях, макар и със закъснение.

Бих препоръчал за следващите избори ЦИК да позволи на партиите да изпратят свои представители в складовете, където се извършва инсталирането на машини, и да могат, оп определен ред, да задават въпроси и следят процеса.

Знам, че гореописаното е сложно и твърде експертно. И изисква наблюдатели на етапи различни от изборния ден, на места различни от изборната секция. Но категорично не съм съгласен с политическите внушения, че щом е по-сложно, значи някой го манипулира.

До момента машинното гласуване елиминира невалидните гласове и намали купения и контролиран вот (вероятно защото няма “тъмна стаичка” и не може да се снима екрана, не може да се носят конци за отмерване на дължина, не могат да се изнасят бюлетини в нишка и др.); елиминираха се и грешките при броенето в СИК, а процесът на приемане на протоколи се ускори. Това са ползи, които си струват допълнителното усилие. Ако намерим други начини за справяне с тези проблеми, супер. Но дотогава, нека партиите наистина впрегнат симпатизиращите им ИТ експерти да наблюдават процеса и да се уверяват в неговата честност, вместо да рисуват абсурдни конспиративни графики и да всяват несигурност и недоверие.

Материалът Рискове и мерки за защита на машинното гласуване е публикуван за пръв път на БЛОГодаря.

Избори ноември 2021: вотът в чужбина е отново под риск

от Боян Юруков
лиценз CC BY-SA

На 14-ти ноември ще се проведат смесени президентски и парламентарни избори. Право да гласуват имат всички български граждани независимо къде се намират. Възможност да гласуват… е, това за пореден път остава сложно.

Срокът за подаване на заявление за гласуване в чужбина изтича в полунощ българско време на вторник 19-ти октомври. Това е третият път, когато събираме заявления по този начин тази година, но е важно да се разбере, че всеки път трябва да се подава ново заявление. Ето най-важните неща на този етап:

  • Подаването на заявление за гласуване в секцията най-близо до Вас, ще Ви улесни и ще ускори изборния процес, тъй като ще сте вече вписани в списъците
  • Дори да подадете заявление, а се окаже, че на 14-ти ноември сте в България, ще може да гласувате в секцията си по постоянен адрес с попълване на декларация (Приложение 17)
  • Вече са одобрени почти 700 секции в чужбина, където в последните 5 години е имало над 100 подадени гласове. Все пак, това не означава, че на тези места местните общости ще имат възможност или разрешение от приемащата страна да организират секции. Затова се свържете с местната си общност, за да научите къде всъщност се организират такива. Изискването за една секция вече е намалено от 60 на 40 заявления.
  • Отпадна изискването за максимум 35 секции в страни извън ЕС. Това означава, че в САЩ и Великобритания, които бяха най-засегнати на предишния вот, ще има възможност за много такива. Отново, потърсете секция наблизо, за да я подкрепите
  • В Германия се очаква проблем, тъй като германските власти са ограничили секциите до 40 места извън консулствата
  • Подаването на заявления освен, че подпомага изборния процес, показва и повишен интерес на съгражданите ни в чужбина към вота

Както знаем, основна роля в организацията на изборния процес в чужбина имат организациите ни и доброволци по места. В голяма степен това са активни българи, които от години се занимава с това, което всъщност следва ЦИК и МВнР да свършат. На всеки вот информираме, призоваваме, изясняваме, намираме помещения, попълваме комисии и нужди.

През годините тази роля рядко е разпознавана, а понякога дори блокирана. Най-фрапантна беше акцията на прокуратурата в последните години да призовава българи в чужбина на разпит заради разследване за изборни измами. Независимо, че няма никакви доказателства за такива или съмнения в документацията, използваха за пореден път писания в жълти медии като повод за сериозна кампания. Той включваше дори задържане на границата за разпит на хора, които не са били уведомени по никакъв начин за това, че са търсени. Обвинения липсваха – прокурорите само им било любопитно. Това отношение и откровеният тормоз накара доста да се откажат не само да помагат с изборите, но и да имат каквото и да е с България. Общата позиция, включително на хора в ЦИК е, че целта на прокуратурата е именно била такава – деморализация на активните българи най-вече в западна Европа.

Независимо от това доста хора продължиха да се занимават, донякъде напук. Резултатът беше рекорден брой заявления за изборите през април. След още един вот и серия от спънки от ЦИК явно на много им е писнало и сега има своеобразен бойкот на изборите. Целта е да има формално споразумение и ефективна съвместна работа между ЦИК, Външно и българските организации в чужбина. Това е нещо, за което се настоява от над десетилетие, но така и не получихме някакъв отговор. Тази умора и бойкот поставя пред реален риск изборите в чужбина, защото е практически невъзможно консулствата ни с крайно недостатъчния им персонал и ресурси да организират дори част от секциите.

Тъй като ЦИК далеч не се слави с разум и трезва преценка, може да очакваме сериозни проблеми в следващия месец. Независимо, че 700 секции са принципно одобрени независимо от заявленията, надали ще има кой да плати за помещенията, да попълни комисиите и да свърши всичката работа около вота, която остава скрита за обикновения гласоподавател.

Всичко това, както и умората от поредния вот, обяснява намаленият брой заявления този път. За април събрахме 85815 заявления. За юли – 70960. Ако поддържаме сегашната тенденция сега ще има около 42 хиляди или двойно по-малко от първите избори за годината. Друга причина, макар не основна, е времето на събиране. Докато периода за подаване на заявления в началото на годината беше 29 дни, сега е едва 19. За вота през юли беше 24 дни. Тук виждате прогресията за събиране на заявления по дни от откриването на електронния формуляр.

Следейки активността по дни към този етап на кампанията по събиране виждаме, че средният брой заявления на ден е останал относително същия в САЩ и Турция. В Испания е намалял леко. В Германия и Великобритания е паднал повече от половина. Ако моделираме активността от предишните вотове ще очакваме сериозен спад с между 30 и 50% навсякъде.

Както споменах по-горе, това няма да се отрази непременно на броя на секциите – основен риск за това е отказа на ЦИК да говори с хората, които всъщност им вършат работата зад граница. Липсата на заявления обаче ще остави списъците празни, което ще забави допълнително изборния ден.

Както и предишни години, може да следите активността на подаването на заявления в реално време на таблицата и картата на Glasuvam.org. Ще публикувам картата със секциите, когато станат известни и официално потвърдени.

The post Избори ноември 2021: вотът в чужбина е отново под риск first appeared on Блогът на Юруков.

Hypotheses About What Happened to Facebook

от Божидар Божанов
лиценз CC BY

Facebook was down. I’d recommend reading Cloudflare’s summary. Then I recommend reading Facebook’s own account on the incident. But let me expand on that. Facebook published announcements and withdrawals for certain BGP prefixes which lead to removing its DNS servers from “the map of the internet” – they told everyone “the part of our network where our DNS servers are doesn’t exist”. That was the result of a backbone self-inflicted failure due to a bug in the auditing tool that checks whether the commands executed aren’t doing harmful things.

Facebook owns a lot of IPs. According to RIPEstat they are part of 399 prefixes (147 of them are IPv4). The DNS servers are located in two of those 399. Facebook uses a.ns.facebook.com, b.ns.facebook.com, c.ns.facebook.com and d.ns.facebook.com, which get queries whenever someone wants to know the IPs of Facebook-owned domains. These four nameservers are served by the same Autonomous System from just two prefixes – 129.134.30.0/23 and 185.89.218.0/23. Of course “4 nameservers” is a logical construct, there are probably many actual servers behind that (using anycast).

I wrote a simple “script” to fetch all the withdrawals and announcements for all Facebook-owned prefixes (from the great API of RIPEstats). Facebook didn’t remove itself from the map entirely. As CloudFlare points out, it was just some prefixes that are affected. It can be just these two, or a few others as well, but it seems that just a handful were affected. If we sort the resulting CSV from the above script by withdrawals, we’ll notice that 129.134.30.0/23 and 185.89.218.0/23 are the pretty high up (alongside 185.89 and 123.134 with a /24, which are all included in the /23). Now that perfectly matches Facebook’s account that their nameservers automatically withdraw themselves if they fail to connect to other parts of the infrastructure. Everything may have also been down, but the logic for withdrawal is present only in the networks that have nameservers in them.

So first, let me make three general observations that are not as obvious and as universal as they may sound, but they are worth discussing:

  • Use longer DNS TTLs if possible – if Facebook had 6 hour TTL on its domains, we may have not figured out that their name servers are down. This is hard to ask for such a complex service that uses DNS for load-balancing and geographical distribution, but it’s worth considering. Also, if they killed their backbone and their entire infrastructure was down anyway, the DNS TTL would not have solved the issue.
  • We need improved caching logic for DNS. It can’t be just “present or not”; DNS caches may keep “last known good state” in case of SERVFAIL and fallback to that. All of those DNS resolvers that had to ask the authoritative nameserver “where can I find facebook.com” knew where to find facebook.com just a minute ago. Then they got a failure and suddenly they are wondering “oh, where could Facebook be?”. It’s not that simple, of course, but such cache improvement is worth considering. And again, if their entire infrastructure was down, this would not have helped.
  • Have a 100% test coverage on critical tools, such as the auditing tool that had a bug. 100% test coverage is rarely achievable in any project, but in such critical tools it’s a must.

The main explanation is the accidental outage. This is what Facebook engineers explain in the blogpost and other accounts, and that’s what seems to have happened. However, there are alternative hypotheses floating around, so let me briefly discuss all of the options.

  • Accidental outage due to misconfiguration – a very likely scenario. These things may happen to everyone and Facebook is known for it “break things” mentality, so it’s not unlikely that they just didn’t have the right safeguards in place and that someone ran a buggy update. The scenarios why and how that may have happened are many, and we can’t know from the outside (even after Facebook’s brief description). This remains the primary explanation, following my favorite Hanlon’s razor. A bug in the audit tool is absolutely realistic (btw, I’d love Facebook to publish their internal tools).
  • Cyber attack – It cannot be known by the data we have, but this would be a sophisticated attack that gained access to their BGP administration interface, which I would assume is properly protected. Not impossible, but a 6-hour outage of a social network is not something a sophisticated actor (e.g. a nation state) would invest resources in. We can’t rule it out, as this might be “just a drill” for something bigger to follow. If I were an attacker that wanted to take Facebook down, I’d try to kill their DNS servers, or indeed, “de-route” them. If we didn’t know that Facebook lets its DNS servers cut themselves from the network in case of failures, the fact that so few prefixes were updated might be in indicator of targeted attack, but this seems less and less likely.
  • Deliberate self-sabotage1.5 billion records are claimed to be leaked yesterday. At the same time, a Facebook whistleblower is testifying in the US congress. Both of these news are potentially damaging to Facebook reputation and shares. If they wanted to drown the news and the respective share price plunge in a technical story that few people understand but everyone is talking about (and then have their share price rebound, because technical issues happen to everyone), then that’s the way to do it – just as a malicious actor would do, but without all the hassle to gain access from outside – de-route the prefixes for the DNS servers and you have a “perfect” outage. These coincidences have lead people to assume such a plot, but from the observed outage and the explanation given by Facebook on why the DNS prefixes have been automatically withdrawn, this sounds unlikely.

Distinguishing between the three options is actually hard. You can mask a deliberate outage as an accident, a malicious actor can make it look like a deliberate self-sabotage. That’s why there are speculations. To me, however, by all of the data we have in RIPEStat and the various accounts by CloudFlare, Facebook and other experts, it seems that a chain of mistakes (operational and possibly design ones) lead to this.

The post Hypotheses About What Happened to Facebook appeared first on Bozho's tech blog.

Какво разделя антиваксърите и скептиците?

от Боян Юруков
лиценз CC BY-SA

Сякаш колкото повече ваксини биват изхвърлени заради минал срок на годност, колкото повече се отдалечаваме от нивото на имунизация на другите европейски държави и колкото повече смъртни случаи виждаме от поредната вълна на коронавирус, толкова повече четем възмущения какво правила държавата и реторични въпроси „Антиваксър ли съм, ако…“. На първо място, почти винаги когато някой започва така статус, то той или тя си е антиваксър. Въпросът обаче има доста смисъл. Какво всъщност е антиваксър?

Следя движението им от много години и от също толкова време предупреждавам, че ще достигне измерения поставящи обществото ни под риск. Не очаквах да е толкова скоро. От друга страна, малко неща, които видяхме в последната година, бяха очаквани или предвидими. Едно нещо обаче неизменно следваше пандемията и това бяха отричащите я – диагнозите, данните, смъртността и не на последно място – ваксините.

В началото на 2019-та WHO включва „отричащите ваксините“ в списъка си за глобалните заплахи срещу общественото здраве. Това беше година преди пандемията – време, в което антиваксърите бяха просто лунатици подвизаващи се в тайни фейс групи, развяваше странни плакати, време в което само шепа доктори, включително Мангъров, яростно защитаваха имунизационния календар и нуждата от масова имунизация.

Какво е „антиваксър“?

Никой обаче не даде ясна дефиниция на „антиваксър“. По онова време разделението беше някак ясно. Светът се обърна и дезинформацията блуждаеща преди в сенките на мрежата се разля в медии и политика до степен невиждана в здравната сфера от десетилетия. Дали да се носи маска и да се ваксинираш придоби политически оттенък. Заговори се за дискриминация, фашизъм и контрол над населението.

В действителност дефиницията е изключително проста и според мен важи за последните 200 години. Зависи почти изцяло от това каква е позицията на даден човек към следното твърдение. Формулирах го преди няколко години в безкрайните си дебати с малката тогава клика:

Трябва да се постигне възможно най-високо ниво на имунизация максимално бързо изключвайки само тези с медицински противопоказания.

Това, разбира се, показва моята представа за въпроса. Както казах, няма единна дефиниция и се използва най-вече като нарицателно. Предвид това, че имам значително повече опит от мнозинството по темата, мога дори да разделя антиваксърите на няколко категории според вярванията, отдадеността на движението и развитието им през времето. Тук обаче по-важно е как стигнах до това разграничение.

Предистория

В началото на 2015-та националистически партии взаимстват дословно законопроект и аргументите към него от най-голямата антивакс група. В същността си той отменя задължителния характер на ваксините, санкциите за пропускането им и поставяше бариери пред възможността здравните власти да реагират адекватно при епидемия като тези от морбили.

Покрай този законопроект дойде отново на дневен ред дали задължителните ваксини отговарят на Конвенцията за правата на човека и защо са препоръчителни в „развитите държави“. По първия въпрос – да отговарят на Конвенцията и има няколко дела, които са потвърдили това. Причината е, че рискът е нищожен докато в същото време гарантират здравословен живот на децата. Същото, впрочем, беше потвърдено и за евентуалната задължителна ваксинация срещу коронавирус.

Въпросът дали трябва да са задължителни е по-сложен. Моят отговор, който многократно съм отстоявал, е „не“. Тук говорим не само за COVID19 ваксините, но за всички от имунизационния календар. Причината за тази ми позиция е, че със задължението се прехвърля отговорността към родителите, вместо лекарите да инвестират повече време в работа с тях, разяснения и следене за нежелани реакции.

В същото време обаче имаме ситуация, в която ваксините са задължителни в доста държави, включително България. На хартия поне – в България ваксините са повече от препоръчителни гледайки колко глоби падат в съда и колко безотговорно подхождат градини и ясли. Но промяната към препоръчителна форма сама по себе си няма да помогне на нивото на имунизация. От друга страна доста държави като Италия, Австралия, Германия и Франция минаха на задължителна форма за поне някои ваксини, защото видяха, че нивата падат.

Спор за медицина или общество

Когато спорех с антиваксърите им казах, че още утре ще изляза с плакати пред министерството да протестирам за отмяна на задължителните ваксини, ако ми покажат ясно как това ще увеличи покритието на ваксините. Защото това е идеята независимо от юридическата форма и мерките, нали – повече деца да са защитени. Отговорът им беше красноречив – че целта им е точно обратното – безпрепятствено да не се ваксинират когато и да е.

Тук идва разграничението в „антивакс теста“, който дефинирах горе. Ваксините, независимо дали говорим за туберколоза, морбили, HPV, полио или коронавирус, имат две страни. От медицинска гледна точка имаме препоръки, варианти, противопоказания и схема на приемане, всички съобразени със спецификите на болестта, демографията, заболеваемостта, та дори и климата в дадена държава. Другата страна е чисто психологическа и обществена – как да защитим максимален брой хора, отсявайки надеждно тези с алергии към препаратите и други противопоказания, взимайки предвид икономическия, социалния и историческия контекст.

Антиваксърите отричат първата страна – че има нужда от ваксините, че работят и че рискът е минимален и съобразен със заболяването, което предотвратяват. Скептиците са тези, които поставят под въпрос втората част – дали моделът на ваксиниране е оптимален. Скептиците не влизат в ролята на „тоалетни изследователи“ изравяйки изречения извадени от контекст от случайни трудове, за да покажат, че всъщност във ваксините има отрови и всичко е конспирация за печелене на пари и контрол над населението. Разграничението идва в това дали се доверяваш на науката, но имаш съмнения как следва да се подходи в обществото.

И с право трябва да имаме съмнения. Една от основните причини да се прибягва към задължителна имунизация е продължаващия десетилетия провал на здравните власти да поддържат квалификацията на лекарите. Особено личните лекари са в немалка степен в основата на антивакс настроенията срещу ваксината за коронавирус. Докато повечето от тях ще застанат твърдо зад тези от задължителния календар, липсата на разбиране на материята и доверие в здравните авторитети довежда до същия чисто човешки цинизъм, който ще срещнете у всеки бакшиш настояващ, че „я скапаха тая държава“.

Тази некадърност на чиновниците, пренебрегване на тлеещ от години проблем, затваряне на очите пред всякакви хомеопатични, нутриционистични и холистични залитания на уж сериозни лекари и активно подкопаване на капацитета и доверието у здравните институции доведе до ситуация, в която нямаме кой да поведе борбата срещу една съвсем реална заплаха за обществото ни. В такава ситуация автоматичната реакция на повечето политици и чиновници е да се издават забрани, задължения и регистри. Това виждаме и сега.

От друга страна, в държави, където уж се славят с добрата си здравна култура и система, виждаме подобни стъпки. Истината е, че недоверието в науката и особено медицината има доста дълбоки корени и е сложен феномен, който наблюдаваме едва в последните няколко поколения. Липсата на т.н. споделена реалност пречи да се разговаря с такива хора, тъй като отричат основни постулати в науката и как работи човешкото тяло. Този феномен наблюдаваме специално при ваксините много преди да навлезе в сфера на политиката покрай Тръмп и дори в космологията покрай плоскоземците. Прави задачата толкова по-трудна, но е оправдава бездействието на чиновниците ни не само преди пандемията, а и година след началото ѝ.

Фалшивите новини не са от днес

Нормално е хората да се притесняват. Оставяйки настрана страшната информация, която ни залива отвсякъде, дори страничните ефекти и противопоказанията изглеждат стряскащи. Свикнали сме да очакваме медицината да знае всичко, ваксините да са просто ежедневие, а за всяка болест да има лечение. Дори СПИН вече не е смъртна присъда, а хепатит B и C вече се лекуват с голяма успеваемост. С короната се върнахме обаче няколко поколения назад, когато пра-бабите ни са се редели с радост на опашка, за да получат децата им ваксинация срещу туберколоза и полио. Още 200 години назад и много хора са инокулирали децата си, за да ги предпазят от едра шарка. Самата процедура в началото си водело до 2% смъртност, но е това е било далеч по-добре от смъртността от болестта. Говорим и за време, където 40% от децата не са доживявали пубертет.

По онова време също е имало противници на ваксините. Рисували са колко противоестествено било да се поставя така препарат в тялото, нищо, че същото се е практикувало в България, например, от стотици години по интуиция като част от „бабините методи“ (заедно с пресоляването ма водата за къпане на бебето че да не се поти). В известен смисъл и следвайки дефиницията ми горе, грешно е обаче да наричаме тези хора антиваксъри. В мнозинството си те не са отхвърляли, че процедурата работи или е нужна. Някои са вярвали обаче, че подобна болест, както много други, са нужни, за да „прочистят“ обществото от „слабите“. Такива настроения виждаме и сред антиваксърите днес, макар преди няколко години да беше избутано встрани от основните послания в рамките на усилията им за ребрандиране към „ние искаме само избор“.

Основната част от противниците на ваксините при въвеждането на инокулацията са настоявали, че само бедните и затворниците следва да поемат този риск. Те, бидейки издигнати и знатни, нямало нужда да си правят труда. Вариация на тази тематика виждаме и днес в България, особено в припокриващата се общност на антиваксърите и неонационалистите.

Провалът е налице. Какво следва?

В огромната си степен хората, които не са се ваксинирали още, не са антиваксъри. Повечето не поставят под въпрос препоръката за ваксината или не са се замисляли просто. Някои се притесняват за ефектите, други не смятат, че болестта представлява риск за тях, трети подават ухо на слухове, а повечето не знаят какво да мислят. Тази какафония е в основата на това да сме в плачевно положение като ниво на имунизация тичайки по хълма на поредната вълна от смъртност. Дори загубата на близък или ежедневното броене на труповете не помага. Виждаме провал в комуникацията на властите, доверието в институциите и медицинската етика на твърде много лекари.

Провалът е факт. Въпросът е какво следва. Ако отговорим положително на дефиницията ми горе и целим максимално ниво на имунизация, какво следва тогава? Как го постигаме? Гоним ли до дупка всеки лекар съветващ пациентите си да не се ваксинират и да рискуваме още по-сериозен недостиг на кадри в системата? Въвеждаме ли задължение в система, която не успяваше да го наложи дори преди пандемията? При неработещи институции, прокуратура и съд какво според вас следва да направим, за да убедим повече съмняващи се, че си струва да защитят себе си и близките си.

Защото това е целта в крайна сметка. Антиваксъри е имало и ще има винаги. Въпросът е какво да направим, за да се намали влиянието им над другите, които просто се притесняват за семействата си. Как да го направим с една очевидно счупена система, но с премного надъхани и всеотдайни хора в нея, които не получават достатъчно подкрепа?

The post Какво разделя антиваксърите и скептиците? first appeared on Блогът на Юруков.

Digital Transformation and Technological Utopianism

от Божидар Божанов
лиценз CC BY

Today I read a very interesting article about the prominence of Bulgarian hackers (in the black-hat sense) and virus authors in the 90s, linking that to the focus on technical education in the 80s, lead by the Bulgarian communist party in an effort to revive communism through technology.

Near the end of the article I was pleasantly surprised to read my name, as a political candidate who advocates for digital e-government and transformation of the public sector. The article then ended with something that I’m in deep disagreement with, but that has merit, and is worth discussing (and you can replace “Bulgaria” with probably any country there):

Of course, the belief that all the problems of a corrupt Bulgaria can be solved through the perfect tools is not that different to the Bulgarian Communist Party’s old dream that central planning through electronic brains would create communism. In both cases, the state is to be stripped back to a minimum

My first reaction was to deny ever claiming that the state would be stripped back to a minimum, as it will not (risking to enrage my libertarian readers), or to argue that I’ve never claimed there are “perfect tools” that can solve all problems, nor that digital transformation is the only way to solve those problems. But what I’ve said or written has little to do with the overall perception of techno-utopianism that IT people-turned-policy makers are usually struggling with.

So I decided to clearly state what e-government and digital transformation of the public sector is about.

First, it’s just catching up to the efficiency of the private sector. Sadly, there’s nothing visionary about wanting to digitize paper processes and provide services online. It’s something that’s been around for two decades in the private sector and the public sector just has to catch up, relying on all the expertise accumulated in those decades. Nothing grandiose or mind-boggling, just not being horribly inefficient.

When the world grows more complex, legislation and regulation grows more complex, the government gets more and more functions and more and more details to care about. There are more topics to have policy about (and many to take an informed decision to NOT have a policy about). All of that, today, can’t rely on pen-and-paper and a few proverbial smart and well-intentioned people. The government needs technology to catch up and do its job. It has had the luxury to not have competition and therefore it lagged behind. When there are no market forces to drive the digital transformation, what’s left is technocratic politicians. This efficiency has nothing to do with ideology, left or right. You can have “small government” and still have it inefficient and incapable of making sense of the world.

Second, technology is an enabler. Yes, it can help solve the problems with corruption, nepotism, lack of accountability. But as a tool, not as the solution itself. Take open data, for example (something I’ve been working on five years ago when Bulgaria jumped to the top of the EU open data index). Just having the data out there is an important effort, but by itself it doesn’t solve any problem. You need journalists, NGOs, citizens and a general understanding in society what transparency means. Same for accountability – it’s one thing to have every document digitized, every piece of data – published and every government official action leaving an audit trail; it’s a completely different story to have society act on those things – to have the institutions to investigate, to have the public pressure to turn that into political accountability.

Technology is also a threat – and that’s beyond the typical cybersecurity concerns. It poses the risk of dangerous institutions becoming too efficient; of excessive government surveillance; of entrenched interests carving their ways into the digital systems to perpetuate their corrupt agenda. I’m by no means ignoring those risks – they are real already. The Nazis, for example, were extremely efficient in finding the Jewish population in the Netherlands because the Dutch were very good at citizen registration. This doesn’t mean that you shouldn’t have an efficient citizen registration system. It means that it’s not good or bad per se.

And that gets us to the question of technological utopianism, of which I’m sometimes accused (though not directly in the quoted article). When you are an IT person, you have a technical hammer and everything may look like a binary nail. That’s why it’s very important to have a glimpse on humanities sides as well. Technology alone will not solve anything. And my blockchain skepticism is a hint in that direction – many blockchain enthusiasts are claiming that blockchain will solve many problems in many areas of life. It won’t. At least not just through clever cryptography and consensus algorithms. I once even wrote a sci-fi story about exactly the aforementioned communist dream of a centralized computer brain that solves all social issues while people are left to do what they want. And argued that no matter how perfect it is, it won’t work in a non-utopian human world. In other words, I’m rather critical of techno-utopianism as well.

The communist party, according to the author, saw technology as a tool by which the communist government would achieve its ideological goal.

My idea is quite different. First, technology necessary for “catching up” of the public sector, and second, I see technology as an enabler. What for – whether it’s for accountability or surveillance, fight with corruption or entrenching corruption even further – it’s our role as individuals, as society, and (in my case) as politicians, to formulate and advocate for. We have to embed our values, after democratic debate, into the digital tools (e.g. by making them privacy-preserving). But if we want to have good governance, and to be good at policy-making in the 21st century, we need digital tools, fully understanding their pitfalls and without putting them on a pedestal.

The post Digital Transformation and Technological Utopianism appeared first on Bozho's tech blog.