Recentemente IBM e Microsoft hanno mostrato il loro interesse ( IBM post , < a href="https://www.cryptocoinsnews.com/microsoft-also-exploring-blockchain-technology-iot-world-distributed-connected-devices/"> Microsoft post ) nell'utilizzo della blockchain di bitcoin per internet di lo sviluppo delle cose (IoT). Supponiamo che in un prossimo futuro la tecnica blockchain sia implementata nelle auto intelligenti sovrapponendo le condizioni stradali o i dati del traffico l'una all'altra. La Blockchain di Bitcoin è basata su un Proof-of-Work SHA256 o sulla ricerca di una prova che quando hash è più di un obiettivo. Questo aiuta ad affrontare un attacco a doppia spesa.
Nell'esempio delle future macchine intelligenti descritte sopra la maggior parte dei nodi onesti saranno dispositivi di potenza a basso computazionale (forse come il raspberry pi) quindi, sarà facile per un avversario effettuare un attacco a doppia spesa se l'algoritmo di mining implementato non essere in grado di strozzare le capacità di mining dei dispositivi.
Nella domanda " Come posso assicurarmi che l'hashing della password sia sicuro sui computer senza rallentare eccessivamente sui dispositivi mobili? " Mr.nsl sta cercando un algoritmo di hashing della password in grado di bilanciare sicurezza e velocità per dispositivi con CPU veloce e dispositivi mobili lenti. Sto cercando un algoritmo in grado di resistere a CPU / GPU veloci per utilizzare la loro potenza di calcolo per il vantaggio di sorpasso sulla rete di dispositivi a bassa computazione. Pertanto ho due ipotesi su come affrontare questo problema:
- Utilizzare una funzione di hashing in grado di fornire equità / equilibrio in una certa misura tra dispositivi a bassa elaborazione e dispositivi a più rapido consumo (ad esempio tra laptop e Raspberry PI).
- Durante la connessione ai peer in un nodo di rete si inviano reciprocamente versioni e se le versioni sono uguali, i nodi procedono con lo scambio di messaggi verack (un riconoscimento della connessione). Quindi forse questi dispositivi dovrebbero insieme a una versione del client installato dovrebbe inviare le loro capacità computazionali. Pertanto, se un peer richiedente possiede troppa potenza computazionale, nessun altro nodo sarà collegato a lui.
Quindi domande,
-
Anche se capisco che la risoluzione delle prove di lavoro è direttamente influenzata dalla velocità di calcolo, una persona criptata può suggerirmi un algoritmo di hash della memoria che può soddisfare l'assunto n. 1, cioè essere buono per il raspberry pi (che attualmente ha un massimo di 512 MB di RAM) e non consente a un computer medio con 8 GB di superare una rete ed eseguire attacchi a doppia spesa?
-
Inoltre, è fisicamente possibile inviare il tuo potere di calcolo reale durante una stretta di mano con un nodo?
Grazie