Usiamo il termine "Ego" per indicare che su GNUnet gli utenti possono avere molteplici identità scollegate tra loro, nel senso di alter ego. La possibilità di avere più di un'identità è fondamentale, perché potremmo voler tenere separati i nostri ego per attività di business da quelli per attività politiche o relazioni. Da un punto di vista tecnico, gli Ego su GNUnet sono equivalenti alle identità (e il codice non fa distinzioni tra loro). Talvolta usiamo il termine "ego" per sottolineare che puoi averne più di uno.
Identità
Su GNUnet gli utenti vengono identificati tramite una chiave pubblica, che spesso viene indicata come "Identità" dell'utente. Tuttavia, il concetto di identità non è così draconiano come spesso lo è nella vita reale, dove molte persone sono obbligate ad avere un nome, un passaporto e un numero di identificazione unico. Finché le identità su GNUnet sono semplicemente chiavi pubbliche, gli utenti sono liberi di creare quante identità vogliono, che noi chiamiamo "Ego" per sottolineare la differenza. Sebbene gli utenti possano creare questi Ego liberamente, è possibile farsi certificare un Ego da un ente certificatore. In questo modo, l'Ego diventa qualcosa di molto più simile al concetto tradizionale di identità. Ad esempio, un'università potrebbe certificare le identità dei suoi studenti affinché possano provare di essere effettivamente studenti. Questi ultimi possono tenere separata la loro identità studentesca (certificata) da altri Ego che usano per altre attività della loro vita.
Pseudonimo
Uno pseudonimo è un Ego con il preciso scopo di non essere associato al vero nome di una persona. Gli utenti di GNUnet possono creare molti Ego e, allo stesso modo, anche molti pseudonimi. Usare ripetutamente lo stesso pseudonimo significa, per definizione, essere associabile, perché comporta l'utilizzo della stessa chiave pubblica. L'anonimato necessita dell'uso di pseudonimi speciali "anonimi" (per GNUnet, è l'elemento neutro sulla curva ellittica) o di uno pseudonimo usa e getta da usare una volta sola.
Spazi dei nomi
Lo GNU Name System permette a ogni Ego (o identità) di associare in modo sicuro e privato qualsiasi quantità di coppie etichetta-valore a un Ego. I valori sono chiamati set di record, secondo la terminologia del Sistema dei Nomi di Dominio (Domain Name System - DNS). Il mapping dalle etichette ai record stabilito per un dato Ego viene chiamato spazio di nomi. Se i record sono resi pubblici e quindi vengono pubblicati, altri utenti possono consultare il record sulla base della chiave pubblica e dell'etichetta dell'Ego. In questo caso, possono funzionare come passphrase non solo l'etichetta, ma anche la chiave pubblica che, nonostante il nome, potrebbe non essere di dominio pubblico e che non viene mai divulgata dal protocollo GNS.
Peer
Un "peer" è un'istanza di GNUnet con la propria chiave pubblica e i propri indirizzi di rete per istanza. Tecnicamente, è possibile eseguire diversi peer sullo stesso host, ma ha senso farlo solo per fare dei test. Da progettazione, GNUnet supporta la condivisione dello stesso peer da parte di vari utenti, così come UNIX è un sistema multiutente. Un "peer" generalmente consiste in un insieme di servizi di base di GNUnet, che vengono eseguiti come lo user "gnunet" e consentono agli altri utenti nel gruppo "gnunet" di utilizzare l'API. Sui sistemi multiutente, possono essere richiesti dei servizi aggiuntivi "personalizzati" per ogni utente. Sebbene i peer siano identificati anche dalle chiavi pubbliche, queste non hanno nulla a che fare con gli Ego o le identità. Gli spazi di nome non possono essere associati a un peer, ma solo agli Ego.