GPG - Usa la custodia per il sistema incorporato

2

Sto cercando di aggiungere la crittografia a un data logger incorporato e apprezzerei davvero qualche consiglio per assicurarmi che il mio approccio fosse ragionevole / sicuro.

L'utente caricherà una chiave pubblica GPG sul dispositivo. I dati del sensore arriveranno nel tempo e il dispositivo utilizzerà quindi la chiave pubblica GPG per crittografare i dati del sensore. Se il dispositivo è compromesso, è importante che i dati non siano recuperabili con la sola chiave pubblica. In un secondo momento, l'utente raccoglierà il dispositivo, scaricherà i dati e utilizzerà la chiave privata per decrittografare i risultati.

Innanzitutto, creo una coppia di chiavi pubblica / privata su una macchina separata:

gpg --gen-key
gpg --export -a "User Usington" > my.public.key

Quindi, importare solo la chiave pubblica sul dispositivo incorporato. Faccio affidamento assoluto sulla chiave caricata dall'utente, quindi ignoro alcune verifiche. Inoltre, il dispositivo incorporato potrebbe non avere la data corretta impostata. Allora crittografare alcuni dati:

FILE_NAME=lorem.txt
OUT_NAME=${FILE_NAME}.gpg
KEY_NAME=my.public.key

# Import the key
gpg --batch --allow-non-selfsigned-uid --ignore-time-conflict --import ${KEY_NAME} 

# Scrape the key ID
KEYID=$(gpg --batch --ignore-time-conflict --with-colons ${KEY_NAME} | head -n1 | cut -d: -f5)

# Encrypt the data
cat ${FILE_NAME} | gpg --batch --ignore-time-conflict --ignore-valid-from --trust-model always --recipient ${KEYID} --encrypt > ${OUT_NAME}

Questo sembra ragionevole?

    
posta Bill 05.09.2018 - 15:25
fonte

0 risposte

Leggi altre domande sui tag