Sto sviluppando un programma che contiene una funzione di login in C ++. Il problema è che non so come svilupparlo nella mia situazione. Voglio eseguire il software su un Raspberry Pi, ha solo una CPU con clock su 1 GHZ e 512 MB di memoria. La memoria non causerà un problema, ma la CPU lo fa.
Il problema è che non posso sfruttare molta potenza della CPU sulla crittografia, ovviamente crittografo tutte le password, ma non riesco a crittografare la connessione. Questo perché penso che l'HTTPS sia pesante. Nessun HTTPS non è un problema reale perché i dati non sono classificati, ma voglio assicurarmi che nessun altro possa acquisire le azioni di connessione e preforme.
Questo è ciò che ho progettato fino ad ora:
Le funzioni di login convalidano l'utente, se viene fornito un nome utente e una password corretti, l'utente ottiene un numero cifrato univoco. L'utente deve inviare questo numero ogni volta per accedere al proprio account.
Il problema:
Il problema è che ognuno può catturare il numero univoco dell'utente, e potrebbe usare questo numero per accedere al proprio account. Come posso sviluppare una funzione di login senza questo problema? Posso utilizzare l'IP dell'utente nel numero crittografato, ma questo non è sicuro quando l'hacker ha accesso alla rete dei target.
Oltre a ciò, l'utente invia le sue credenziali sulla rete. Immagino di poter preformare anche parte del client di crittografia, ma questo non è molto utile per la mia CPU perché ho bisogno di fare più cicli di crittografia sul mio server.