Pagina 1 di 1

aiuto programma c++ e gpg

Inviato: mar 31 mag 2011, 12:16
da Ryol
Salve a tutti, sono nuovo del forum e purtroppo sono alla ricerca di un aiuto per comprendere meglio la mia tesina di c++ di criptografia e sicurezza delle reti che deve essere sviluppata su slackware in ambiente kdevelop.

La tesina è la seguente.

Definire completamente e programmare in c++ le due parti di un sistema di autenticazione per la protezione automatica di applicazioni software che ricalchi nei limiti del possibile un sitema disponibile come Microsoft Authenticode utilizzando chiavi PGP e keyserver al posto di certificati e e autorità di certificazione.In pratica questo sistema aggiungendo una firma digitale a partire da una self generated key-pairs deve proteggere gli user da software pericoloso autenticando la sorgete e verificando l'integrità dei dati.

Il prof mi ha fatto vedere il tool di slackware GPG con cui si possono creare le chiavi, firmare documenti ecc...e in teoria dovrei usarlo.

Ma come creare un programma c++ che mi utilizzi il gpg???? Non so se sono stato molto chiaro......aiutoooooooo

Re: aiuto programma c++ e gpg

Inviato: mar 31 mag 2011, 13:01
da Toni
professore alcuri?

Re: aiuto programma c++ e gpg

Inviato: mar 31 mag 2011, 13:17
da Ryol
Si... :-(

Re: aiuto programma c++ e gpg

Inviato: mar 31 mag 2011, 14:10
da Toni
la libreria che ti serve è questa:

http://www.gnupg.org/related_software/g ... ex.en.html

troverai tutte le funzioni che ti servono dalla generazione delle chiavi alla verifica della firma

UPDATE :

Ho riletto il tuo post , se nel tuo programma puoi utilizzare gpg tutto è molto più semplice ,basta che utilizzi la funzione system
esempio

Codice: Seleziona tutto

#include <cstdlib>

using namespace std;

int main()
{
     system("ls");    // system( "comando_da_eseguire")
}

A questo punto impari come funziona gpg ( man gpg per tutte le informazioni) e il tuo problema sarà costruire le stringhe da passare a system e ovviamente creare un menu che ti permette di fare ogni operazione ( creare chiavi , firmare , verifica)