Algoritmo per generare One time password

Salve, finora ho realizzato un generatore di numeri pseudocasuali grazie alle funzioni randomSeed() e random(), ma ora qualcuno sa dirmi o suggerrire fonti per implementare un algoritmo (es. Hash) per generare one time password? Dovrei passargli anche un seed da 8 bit come ho fatto per il progetto precedente.

Grazie in anticipo.

Ho trovato questa libreria dello Sha1:

e da quel che ho capito, per usarla devo usare i seguenti comandi:

 Sha1.init();
Sha1.print ("qui passerò il mio seed");
hash = Sha1.result();

se è giusto mi darà un codice hash a 160 bit (20byte), i miei dubbi sono:

  1. come devo trsformare l'hash per avere un numero da visualizzare?

  2. dato che dovrò visualizzarlo su display led a 4 cifre, come faccio a troncarlo?

Perfavore aiutatemi... :frowning: