Questa osservazione riguarda chi eventualmente volesse svolgere la parte opzionale dell'esercizio 1 del primo Mid Term. Uno studente mi ha segnalato che la DHT di IPFS si comporta nello stesso modo di quella di Ethereum, DHT che con il mio gruppo ho già analizzato con alcuni tirocini. Questo comportamento differisce leggermente da quello visto a lezione, ovvero, quando si cerca la distanza tra due identificatori, non si applica lo XOR direttamente agli identificatori, ma prima si calcola lo SHA256 dei due identificatori, quindi si calcola lo XOR dell'hash degli ID. Questo implica che quando si vuole capire quali ID siano contenuti in una entrata nella tabella di routing di un nodo, ad esempio nel bucket i, in realtà occorre trovare un identificatore il cui SHA ricada nel bucket i. Questo può generato brute-force, ovvero andando a generare identificatori casuali, fino a che non se ne trova uno il cui SHA ricade nel bucket i, il che implica ovviamente un alto costo computazionale. Oppure si potrebbe preventivamente costruirsi un database di identificatori di nodi effettivamente presenti nella rete, con il loro SHA ed utilizzare questa conoscenza per diminuire il carico computazionale.
Chi è interessato e vuole chiarimenti, può mandarmi una e-mail, per fissare un appuntamento su Meet.