IOTA è un protocollo flessibile che può essere utilizzato in vari modi. Il più comune è il trasferimento di valore tramite il token nativo. Tuttavia, IOTA può essere facilmente esteso sviluppando standard utilizzando il protocollo di base. Sia il Masked Authenticated Messaging (link in inglese)che i Flash Channels (link in inglese) ne sono un esempio perfetto.

Segue la descrizione di un nuovo standard che permetterà di costruire applicazioni basate su IOTA attorno alle regioni geografiche.


Introduzione dei codici area IOTA (IAC)

Le IAC sono codici di localizzazione brevi, codificati su in trinario, che possono essere utilizzati per etichettare (tag) e recuperare le transazioni IOTA relative a località specifiche. Le IAC sono in genere lunghe 10 tryte e rappresentano un’area di 13,5m per 13,5m, all’equatore. Tuttavia, le IAC possono essere lunghe 11 trytes e rappresentare una griglia di 2.8m per 3.5m.

Le IAC sono una copia diretta dei Open Location Code, noti anche come Plus Codes (link in inglese), proposti da Google Zurich nel 2014. Ci sono alcune piccole modifiche per renderle compatibile con la codifica IOTA.

IAC
IOTA Area Code

Qual’è il potenziale

Quando si pubblicano informazioni su IOTA non c’è modo di identificare facilmente le transazioni che si riferiscono ad una zona geografica. Queste transazioni possono contenere pubblicità di servizi localizzati, informazioni di sensori o qualsiasi altro formato di dati.

Al fine di trovare le transazioni relative ad un’area sarebbe necessario registrare le transazioni con un servizio centralizzato, come un mercato di dati, che raccoglie le posizioni per immagazzinarle e servirle ai consumatori.

Utilizzando le IAC nei primi 11 tryte dei 27 tryte del campo tag in una transazione IOTA, è possibile localizzare una transazione IOTA in un’area di 2,8m per 3,5m. Questo permette a qualcuno di trovare una transazione relativa ad una piccola area, tuttavia il valore reale di questo sistema deriva dalla possibilità di interrogare grandi estensioni di terreno per le relative transazioni.

Interrogazione di grandi aree

Il protocollo OLC originale è in grado di rappresentare accuratamente le aree del globo utilizzando 5 coppie di caratteri. Ogni coppia di caratteri aggiunti al codice rappresenta un aumento di precisione di 400x. Un effetto collaterale del codice determinato da un insieme sequenziale di coppie, piuttosto che da un codice unico, è la possibilità di variare la precisione rimuovendo le coppie da destra a sinistra. Questo permette di ingerire e memorizzare le coppie in modo tale da interrogarle in modo efficiente.

Quindi, interrogando i 4 trytes iniziali del tag, che corrispondono al formato IAC corretto, è possibile trovare le transazioni in un’area di 100 km per 100 km.

Esempio: Interrogando tutti i tag che iniziano con NPHT è possibile trovare tutti gli oggetti in un’area di 100 km per 100 km che copre Berlino e parti di Potsdam. Utilizzando questi 6 trytes: NPHTQO si è in grado di vedere le transazioni in pochi sobborghi nel centro/nord di Berlino.

Esempi

È stata pubblicata la libreria che permette la codifica e la decodifica dei dati di localizzazione. Insieme a questo, Martyn Janes ha creato una dimostrazione completa che permette di fare quanto segue:

  • Creare e convertire IACs
  • Pubblicare messaggi IAC al Devnet
  • Interrogazioni wildcard di tutte le transazioni IAC sul Devnet
  • Mostrare le transazioni IAC in tempo reale su una mappa

Applicazione Demo: https://iota-poc-area-codes.dag.sh/

Github Library: https://github.com/iotaledger/iota-area-codes

NPM Repo: https://www.npmjs.com/package/@iota/area-codes

Cosa seguirà?

Le IAC sono destinate ad essere un catalizzatore per la comunità. Lo standard, nel suo formato attuale, è utile ma potrebbe essere migliorato. Si invitia a passare da Github e a creare alcune richieste di pull per migliorare il codice o suggerire esempi.


Il testo originale in lingua inglese si trova qui: https://blog.iota.org/iota-area-codes-a-proposal-to-geo-tag-iota-transactions-d3c457d1df1b


Per ulteriori informazioni in italiano o tedesco trovate i miei contatti a questa pagina.
Se avete trovato utile la mia libera traduzione, accetto volentieri delle donazioni 😉

IOTA:
QOQJDKYIZYKWASNNILZHDCTWDM9RZXZV9DUJFDRFWKRYPRMTYPEXDIVMHVRCNXRSBIJCJYMJ9EZ9USHHWKEVEOSOZB
BTC:
1BFgqtMC2nfRxPRge5Db3gkYK7kDwWRF79

Non garantisco nulla e mi libero da ogni responsabilità.