Context
Les administracions públiques estem en ple procés de transformació digital, una autèntica revolució que està canviant en positiu la forma en què ens relacionem amb la ciutadania. Podem dir que estem avançant cap a un futur que ja és inajornable, construint noves administracions que han de tenir la plena capacitat i flexibilitat per adaptar-se i respondre a les necessitats i demandes de la ciutadania. Estem avançant, per tant, cap al paradigma d’un autèntic govern obert, i els seus pilars –transparència, participació i col·laboració– s’articulen sobre les dades obertes, claus per fomentar aquest canvi cultural de relació entre les administracions públiques i els ciutadans, per guanyar en qualitat democràtica, per acostar les nostres institucions a la ciutadania i fent aquesta partícip de les seves polítiques públiques.
Aquesta transformació també té efecte a nivell intern de les nostres organitzacions. Hem de donar el màxim valor a les dades que generem des de l’Administració, conscienciant tots els integrants que en forment part que les dades que s’obtenen s’han de posar a disposició dels ciutadans i empreses.
Des d’aquest enfocament, les administracions públiques han d’esdevenir organitzacions obertes, eficients i integradores, i prestar serveis públics digitals fàcils d’utilitzar. A banda, per tal de prestar serveis millors, cal aplicar, en el seu disseny, enfocaments innovadors.
Hem d’aprofitar les oportunitats que brinda l’entorn digital actual. En aquest entorn s’identifiquen una sèrie de tecnologies que poden canviar radicalment el nostre món digital, com són: el 5G, la intel·ligència artificial, blockchain i el big data, entre d’altres.
Un altre aspecte important és l’entrega de serveis fiables i segurs. Totes les iniciatives haurien d’anar més enllà del mer compliment del marc jurídic sobre la protecció de dades personals i de la intimitat i la seguretat informàtica, integrant aquests elements en la fase de disseny. Es tracta de condicions prèvies importants per augmentar la confiança en els serveis digitals i la seva utilització.
Amb tot aquest context, es construeix un projecte a l’Ajuntament de Valls per crear un nou servei de publicació de dades, el Portal de Dades Obertes, però integrant els diferents aspectes que hem comentat anteriorment. El projecte OpenVallsChain és un portal de dades obertes distribuït. Suposa el primer cas pràctic de l’aplicació de la tecnologia de registre distribuït, blockchain, en una entitat local. Es va posar en producció el novembre de 2019 i es va publicar en la modalitat centralitzada i distribuïda. L’accés estàndard al servei es realitza a través de: https://dadesobertes.valls.cat
Descripció
El projecte OpenVallsChain neix amb l’objectiu de proveir la ciutadania de Valls i l’empleat públic d’un conjunt de dades estructurades i interoperable. L’Ajuntament de Valls està immers en un procés de transformació digital i el portal de dades obertes és una de les eines utilitzades per visualitzar aquest procés i lliurar valor mitjançant la publicació de dades.
La solució, a part de presentar-la de manera centralitzada (portal de dades obertes estàndard), es presenta i es publica de manera distribuïda, utilitzant tecnologies de registre distribuït (blockchain).
Això fa que proporcionem els conjunts de dades obertes de forma persistent en local (web centralitzada) i, al mateix temps, registrades en un xarxa distribuïda (blockchain) de manera immutable. Es registren totes les actualitzacions de dades i, a més, es publica el mateix recurs (dataset) de forma distribuïda.
Aquest projecte s’utilitza per dinamitzar i modernitzar les operacions del departament de TI, desplegant serveis en una arquitectura flexible de contenidors. Introduïm en aquest projecte noves metodologies àgils per al desenvolupament de projectes. A més, es vol millorar el servei de transparència, automatitzant el procés de publicació d’informació.
Caràcter innovador
El projecte s’ha desenvolupat per proveir per primera vegada l’Ajuntament de Valls (i l’Administració pública catalana) d’un servei de publicació de dades distribuït usant blockchain, en què la no-dependència d’una entitat centralitzadora que publica i assegura la informació lliura un valor al ciutadà o al consumidor de dades superior al que s’aporta tradicionalment. També s’alinea amb l’estratègia Blockchain Catalana, publicada durant el 2019 per part de la Generalitat de Catalunya.
Les característiques més destacades que aporta l’ús de tecnologia de registre distribuït són:
· Resiliència de dades: la publicació de manera distribuïda assegura la disponibilitat de la dada.
· Persistència i immutabilitat: les dades no poden canviar. Un cop s’adquireix el compromís de publicació, aquestes dades romanen publicades de manera immutable.
· Traçabilitat: es pot controlar tots els esdeveniments de publicació de dades, evidenciant l’origen de la publicació (Ajuntament de Valls) i certificant l’històric i la seqüència de publicació.
· Distribució: publiquem les evidències de publicació en una xarxa blockchain pública i la dada a través d’un servei d’emmagatzematge distribuït P2P (IPFS).
Totes aquestes característiques fan que la provisió de dades condueixin a l’empoderament del ciutadà, en el sentit que ell és el que decideix accedir a la informació quan i com vol, sense possibilitat que l’administració publicadora pugui desfer aquest compromís de publicació o en modifiqui la informació lliurada.
Situació inicial
Fins ara, els portals web, entre els quals s’inclouen els portals de dades obertes, són serveis centralitzats: aquests poden tancar-se en qualsevol moment. Si el portal cau o si el servei es deshabilita per algun motiu, l’accés a les dades publicades és impossible.

La majoria de serveis públics digitals en entorn web s’acullen al model A, centralitzat. Si evolucionéssim el model, publicaríem en un sistema descentralitzat (assimilable a la informàtica en núvol). La proposta és passar al model C, totalment descentralitzat, en el qual no es depèn d’un node central (A) o de sistemes autònoms dependents d’un node central (B).
També hi ha la problemàtica d’assegurar la manera de provar l’origen de les dades, tot i que aquest punt es pot solucionar amb una autoritat de certificació i un segell de temps per a cada publicació. Però tornem a dependre d’un tercer centralitzador que ens certifiqui.
Finalment, els usuaris tampoc no saben quins canvis s’han produït en un recurs de dades publicat.
Un altre element central del projecte és proporcionar continguts autogestionats. Això vol dir que no hi ha intervenció humana en la publicació. Un cop es programa què publicar i la periodicitat, el portal s’autoproveeix.
La solució dissenyada compleix:
· Descentralització per defecte
· Evidència de la procedència de la dada publicada
· Registre de canvis en els recursos publicats
· Emmagatzematge persistent i distribuït en nodes (equips de xarxa) descentralitzats, fins i tot en nodes de què pugui disposar el client consumidor de dades mateix
· Autogestió de continguts
Solució plantejada
La solució plantejada es basa en una arquitectura oberta desenvolupada sobre productes de programari lliure.
El disseny i el desenvolupament de la solució han estat realitzats íntegrament pel personal del Departament de Sistemes de la Informació i Comunicacions de l’Ajuntament de Valls.
Com a esquema principal de la solució tenim els diferents elements:

1. Fonts d’informació: conjunt d’orígens de dades que l’organització (Ajuntament de Valls) vol consumir i publicar. Entre els diferents orígens de dades tenim:
· Sistemes d’informació departamentals: serveis econòmics, registre, contractació…
· Bases de dades i fulls de càlcul
· Sistema d’Informació Geogràfica
· Sistemes ad hoc: estació meteorològica
· Altres web: altres portals de dades
2. Processador de dades. Utilitzem una eina de programari lliure per al procés de fitxers. En el nostre cas, es converteix en la interfície d’ingestió de dades, procés i publicació, a través de les tres fases de treball de l’eina. Aquest element de programari és el que estandarditza el procés de publicació de dades, definint el flux d’informació per programari. Això vol dir que tot queda definit en un fitxer de configuració per recurs a publicar: origen de dades, procés de transformació si s’escau, sortides i periodicitat de publicació. Ens permet posar el focus en la configuració i no en l’eina pròpiament.
Com a sortides al procés de publicació tenim el portal centralitzat de dades (3) i la xarxa de registre distribuït (4).
3. Portal centralitzat de dades: utilitzem el programari de codi lliure CKAN (https://ckan.org/). Aquest portal ens proveeix de les funcionalitats bàsiques que ha de tenir un portal de dades obertes i assegura un evolutiu d’acord amb els estàndards de mercat. L’element principal per interactuar amb el portal és l’API (interfície de programació), que servirà per crear el contingut de manera dinàmica i automàtica, a cada crida de l’intermediari (2).
4. API d’intercanvi amb xarxa distribuïda. S’ha desenvolupat una API per interactuar amb la xarxa de registre distribuït. Aquesta API, basada en un altre producte de codi lliure, rep les peticions de l’intermediari (2), gestiona la publicació de la informació a la xarxa blockchain a través d’un contracte intel·ligent i distribueix la informació en una xarxa d’emmagatzematge distribuït.
Un cop transacciona amb la xarxa distribuïda, per deixar evidències del procés, es publica al portal centralitzat (3) informació sobre les diferents transaccions realitzades.
Tots els elements de la solució estan desplegats en producció usant tecnologia de contenidors. Això ens ha proporcionat facilitat en el desplegament i una millora del manteniment de la solució.
Resultat
El producte final és el portal de dades obertes centralitzat, que s’ha publicat sota el domini: https://dadesobertes.valls.cat

Aquest portal és el que anomenem front-end i ens dona accés centralitzat a les dades (back-end). Aquestes dades estan publicades de manera centralitzada (al portal de dades) i de forma descentralitzada (xarxa Blockchain Ethereum i servei d’emmagatzemament distribuït IPFS). En cas que el portal centralitzat no estigués disponible, l’accés a les dades sempre es podria realitzar interactuant amb el contracte intel·ligent sobre la xarxa blockchain; en el nostre cas, Ethereum.
La xarxa Ethereum no està dissenyada, almenys en la versió actual, per emmagatzemar conjunts grans de dades. Un recurs de dades pot consistir en un fitxer amb milers d’entrades, d’ordre de magnitud de kb o Mb. Emmagatzemar el fitxer a la xarxa blockchain no és escalable, pels costos de transacció i el rendiment de la transacció mateixa. Per aquest motiu, s’ha utilitzat un servei complementari IPFS (Interplanetary File System).
IPFS funciona amb identificadors únics de fitxers no modificables dins de la xarxa. Això vol dir que no hi ha duplicats en tota la xarxa i que cada canvi d’un fitxer genera un nou identificador. Per cada recurs de dades a publicar, es genera aquest identificador únic. Aquest identificador ens permet accedir al recurs de manera unívoca. A la xarxa Ethereum publiquem aquest identificador, de manera que deixem constància de la dada a la xarxa distribuïda.
Per acreditar les transaccions que realitzem a la xarxa Etehreum podem utilitzar el servei d’accés públic Etherscan. Accedint a https://ropsten.etherscan.io/address/0x9eca25ee04fdcc9d9cdff377aa8da019dba38437 es detallen totes les transaccions sobre la xarxa que estem realitzant. L’identificador de l’Ajuntament de Valls dins de la xarxa és 0x9eca25ee04fdcc9d9cdff377aa8da019dba38437

Per completar la prova de concepte de servei públic distribuït, s’ha publicat un front-end distribuït web amb funcionalitats bàsiques.
Per fer-ho, hem utilitzat un servei de noms per a la xarxa distribuïda de fitxers.
Qualsevol usuari que tingui un client IPFS podria disposar d’aquesta web en local, accedint al recurs identificat per QmS4sKXTmxgMiU3E6AJaFbxw15NaG9jNvm4y5yo8resXo7
Igualment, podem vincular aquesta URL a un domini estàndard d’internet, on publicarem el front-end de manera distribuïda. L’URL d’accés és http://open.vallschain.io

És una prova de concepte per a la publicació de serveis web distribuïts, sense la funcionalitat del portal centralitzat (CKAN), però publicant i actualitzant els enllaços a les dades publicades a la xarxa distribuïda (Ethereum i IPFS).
Per evidenciar la informació que publiquem en l’entorn distribuït, al portal centralitzat, s’actualitza en la descripció del recurs publicat. Publiquem informació sobre la transacció a la xarxa blockchain (Tx) i el conjunt de dades en entorn distribuït (IPFS), per deixar evidències accessibles:

Conclusions
Hem aconseguit complir els objectius de l’abast del projecte:
· Disposar d’un portal de dades obertes
· Millorar el servei de transparència, complementant els continguts del portal de transparència, i automatitzant extrem a extrem el procés de publicació
· Aplicació en el món local de la tecnologia de registre distribuït. S’ha creat un cas real, concret i pioner, d’aplicació de blockchain al món local. El servei és descentralitzat per defecte, amb les implicacions que ja hem mencionat a l’apartat Caràcter innovador
· Transferència de coneixement, compartint el projecte entre grups de treball de tècnics de l’AAPP, participació en congressos per exposar la solució i atenció a altres AAPP, empreses i particulars que s’han interessat pel projecte. Possibilitat d’aplicar la solució plantejada a altres portals de dades obertes i mecanismes de publicació d’informació.
OpenVallsChain encaixa, a més, en el desenvolupament d’estratègies Smart per proveir solucions madures de transformació digital; en aquest cas, automatitzant per complet el procés de captura de dades de diferents fonts d’informació, processament, publicació i compartició de dades, amb un enfocament de disponibilitat total de la informació generada.
Des de la posada en marxa, el novembre de 2019, el portal s’ha actualitzat més de 75.000 vegades de forma automàtica, deixant constància a la xarxa distribuïda de totes les actuacions fetes.
El coneixement generat en aquest projecte ens permet assumir la tecnologia blockchain, veure els beneficis i dificultats i compartir-ho en obert amb la comunitat. El compromís amb el ciutadà amb serveis públics distribuïts s’alinea perfectament amb el concepte de govern obert. La tecnologia, la xarxa, permet participar al ciutadà del servei, conformar el servei. Experiències senzilles i pràctiques com aquesta permetran desenvolupar productes nous que combinin l’ús d’aquesta i d’altres tecnologies innovadores.
Al nostre Ajuntament ja hi estem començant a treballar, integrant la tecnologia de cadena de blocs en altres serveis de tramitació de l’Ajuntament. En aquest moment de transformació de l’entorn digital, de l’aparició de noves tecnologies estratègiques i de la necessitat de fer productes i serveis més respectuosos amb la gestió de les dades, es farà necessari que cada cop més es desenvolupin serveis públics digitals que incorporin aquestes tecnologies facilitadores. És la nostra obligació com a treballadors públics, imaginar i projectar serveis en què el ciutadà estigui al centre, on les dades siguin reutilitzables, interoperables, i on el nivell de transparència i rendició de comptes amb el ciutadà vagi més enllà del que indiquen les normes actuals. Imaginem ara com ha de ser l’Administració del futur.
Ricardo González
Cap de Sistemes de la Informació i Comunicacions de l’Ajuntament de Valls