Come usare IOTA per l'IoT (senza spendere 1 cent)
IoT e Tangle
Sia nel 2017 che nel 2018 il termine "IoT" è stato sempre protagonista in tutti gli articoli tecnici.
Se poi uniamo la parola "IoT" con la parola "blockchain" ecco che formiamo la coppia perfetta
Oggi mi concentrerò su una piccola dimostrazione pratica dell'utilizzo della tangle IOTA
Il codice di seguito descritto lo potete trovare direttamente sulla mia pagina github https://github.com/Fabryprog/iot-tangle-example
Per utilizzare questo esempio occorre installare nodejs
Se state creando un progetto tutto vostro il primo comando da lanciare è l'inizializzazione del progetto nodejs e l'installazione delle dipendenze (in questo caso iota)
npm init
npm install iota.lib.js --save
Per potere interagire con la tangle iota servono due cose essenziali:
- un nodo della rete
- un seed
Per reperire un nodo della rete è possibile andare su questo simpatico sito che sfrutta la tangle per una chat (inutile). Io lo trovo utile soprattutto perchè da questo sito è possibile reperire una serie di nodi funzionanti (pulsante in alto a destra)
Per creare un seed e state usando un sistema linux è possibile utilizzare il seguente comando (sconsiglio vivamente di utilizzare servizi online)
cat /dev/urandom | LC_ALL=C tr -dc 'A-Z9' | fold -w 81 | head -n 1
Il codice sorgente è molto semplice ed è tutto all'interno del main file index.js
const IOTA = require('iota.lib.js')
const iota = new IOTA({
host: 'http://node01.iotatoken.nl:14265',
port: 14265
})
const DEPTH = 3;
const MINWEIGHT = 16; // PoW difficulty
const seed = "OKKGZMWEWOMCSD9PTPGNMRJCROFDCAHOFMIRFCRJIJSFAOCHWO9GFDSXFHCQD9DPWFHOVRYKFYZPZFWSX";
const myAddress = "AQJFGBHRLKWSGDGPOWAH9XWZJMUEISJVMERTBLVJYIDQADDOB9VATPJJYKCHPLRBTVXQXZQYTSURRD9SY";
const transfers = [
{
address: myAddress,
value: 0,
message: iota.utils.toTrytes('W IOTA (part 2)!')
}
]
const options = {
inputs: []
}
iota.api.sendTransfer(seed, DEPTH, MINWEIGHT, transfers, options, (error, transactions) => {
if (error) {
console.error('sendTransfer error', error);
} else {
console.log('transactions sent!', transactions);
}
});
Per eseguire questo semplice script è necessario inviare il seguente comando:
node index.js
L'esecuzione dura all'incirca una ventina di secondi.
Usando uno dei tanti tangle explorer potete controllare i dati inviati
A presto!
Commenti
Posta un commento