Io li ho tirato dentro a mano nel mio progetto e amen… Ma l’sdk, ora come ora, non funziona è inutile. (vedi le issue su github)
Si ho risolto anche io così, e ho visto le issue sulle chiamate ai metodi dell’sdk.
buongiorno Francesco
non voglio far polemica, anzi, ma mi spiegherebbe perche il controllo diffuso della popolazione non è desiderabile ? In Cina mi sembra lo stiano facendo per avere più “potenza” a livello mondiale. Sbaglio ?
Salve a tutti, questo codice python non usa la chiave pubblica per decifrare il Json codificato nel COSE, per cui mi chiedo, se non occorre la chiave pubblica per decifrare perchè dovrebbe essere necessaria per cifrarlo…? Oppure mi sono persa qualcosa?
#! /usr/bin/env python3
import json
import sys
import zlib
import base45
import cbor2
from cose.messages import CoseMessage
payload = sys.argv[1][4:]
print("decoding payload: "+ payload)
# decode Base45 (remove HC1: prefix)
decoded = base45.b45decode(payload)
# decompress using zlib
decompressed = zlib.decompress(decoded)
# decode COSE message (no signature verification done)
cose = CoseMessage.decode(decompressed)
# decode the CBOR encoded payload and print as json
print(json.dumps(cbor2.loads(cose.payload), indent=2))
la chiave pubblica serve solo per verificare la firma.
il contenuto e’ in chiaro.
se non ti interessa un controllo di integrità e di provenienza la chiave pubblica non serve
Grazie per aver risposto. Se il contenuto è in chiaro allora dove sta la sicurezza della cifratura per evitare falsi green pass? Non capisco questo concetto… Ai dati dell’utente viene solo AGGIUNTA la chiave privata dunque? Ho capito bene?
Appunto, la firma evita falsi non nasconde le informazioni. Per sua stessa definizione.
Astraendo da tutto il contorno green pass: hai un contenuto informativo sotto forma di dati, ne estrai l’impronta (hash), cifri l’impronta con la chiave privata, invii il contenuto informativo in chiaro + impronta cifrata. Chi riceve calcola a sua volta l’impronta del contenuto informativo, decifra con la chiave pubblica l’impronta cifrata ricevuta e confronta i risultati: se coincidono vuol dire che il contenuto informativo non è stato alterato e che proviene da chi ha accesso alla chiave privata.
Grazie mille. Ora mi è più chiaro.
Magari perchè si è visto col fascismo (e col comunismo) che se al governo c’è gente senza scrupoli non è cosa buona? E perchè anche senza arrivare a certi livelli di aberrazione un simile potere, in mano a chiunque ce l’abbia, è pericolosissimo? La butto lì, eh…
Qualcuno è riuscito ad utilizzare l’SDK ? Il readme dice poco o nulla, su github non ho trovato un esempio di utilizzo, e in più nel mio progetto non riesco a fargli importare il package “it.ministerodellasalute.verificaC19sdk.worker”
Anch’io sono al palo su questo errore:
A problem occurred evaluating project ':decoder'.
> Could not get unknown property 'Config' for extension 'android' of type com.android.build.gradle.LibraryExtension.
Mi sembra molto strano che il Ministero imponga, nell’imminenza dell’entrata in vigore delle (nuove) modalità di verifica del GP, un unico strumento (SDK Android) che finora nessuno è riuscito a far funzionare, senza documentazione e senza esempi.
Ciao, se guardi su la repo di github qualcosa si inizia a risolvere tra gli utenti nelle issue.
Ovviamente dire che questa è una modalità umana di implementare una SDK, è dire una bugia.
Questa, oggettivamente, non è una vera e propria sdk, è una costola di VerificaC-19 che per la fretta di trasformarla in sdk è stata spostata, ma ovviamente porta dietro una valanga di problematiche.
Comunque, se guardi su github qualcuno è riuscito a compilare, poi rimane sempre lo scoglio dell’ “usarla” non essendoci esempi, nemmeno banali, risulta difficile.
Concordo pienamente (sono uno degli utenti che ha aperto gli issue)
C’è da dire che per compilarla abbiamo dovuto modificare un file presente dentro l’SDK quindi “potenzialmente” non stiamo già più utilizzando l’SDK ma è come se l’avessimo “forkata” e rischiamo già di non essere compliant.
Vero! Grazie alle indicazioni di sirol81 sono riuscito anch’io a compilare: la modifica all’SDK è veramente minima, formalmente magari non si è compliant ma, usando il buon senso, metterei sull’altro piatto della bilancia l’obbligo all’utlizzo di questo strumento unico (altimenti non funzionante), la mancanza di documentazione, i tempi ed i modi con cui ci è stato comunicato il tutto…
Ora la strada in salita è capire come vanno utilizzate le funzioni dell’SDK, confidiamo nella community degli issuers (con l’amaro in bocca di aver già sviluppato tutto da mesi in linux con la dcc-utils, che però non è stata autorizzata nell’ultimo DPCM).
Speriamo di avere presto un merge con le vostre correzioni e magari un arricchimento della documentazione, personalmente e professionalmente preferirei non avventurarmi in una sperimentazione a queste condizioni anche perché poi tradurre tutto questo all’interno di un processo in una PA significherebbe prendersi anche le relative responsabilità.
Io fossi in te attenderei.
Non è cosi impossibile che la DCC-Utils venga “abilitata”, alla fine fa esattamente quello che fa la “sdk”.
Con l’unica differenza che non fa direttamente i controlli sulle scadenze, ma solo sulle firme e i certificati devi scaricarteli da solo.
Quindi è un po’ più homemade, ma alla fine il controllo davvero importante lo fa anche la DCC-utils.
A mio avviso, una sdk in NodeJs sin da subito sarebbe decisamente stato migliore, anche solo per la capillarità e l’applicabilità.
Cosi come è ora, a parte che non la riesce ad utilizzare nessuno, ma la può utilizzare solo un App Android.
Vedremo.
Buonasera a tutti,
spero di esservi utile, date un’occhiata qui:
Qui
Questo programmatore asserisce che con tale progetto può modificare e creare un CP valido.
Chiaramente non hai nemmeno perso tempo a leggere il readme… è un fake, come chiunque sappia un minimo di crittografia (ma proprio minimo) sa, senza neanche bisogno di provarci.
Se manco sa scrivere 2 righe in un post non mi stupisce la cosa francamente