Un certificato è costituito da una chiave pubblica, da informazioni di identificazione ed eventualmente da uno o più certificati appartenenti all'autorità di certificazione emittente.
Per definire l'attendibilità in un certificato, sono disponibili due metodi. Potete stabilire l'attendibilità ottenendo una copia del certificato direttamente dal firmatario, ad esempio su un supporto fisico o tramite una trasmissione digitale protetta, quale una transazione SSL. Potete anche fare affidamento su un'autorità di certificazione per determinare se il certificato di firma è attendibile.
A questo scopo, il certificato di firma deve essere emesso da un'autorità considerata attendibile sul computer in cui la firma viene convalidata. Quasi tutti i produttori di sistemi operativi inseriscono i certificati principali di alcune autorità di certificazione nell'archivio delle fonti attendibili del sistema operativo. Gli utenti possono anche aggiungere o rimuovere i certificati da tale archivio.
Anche se un certificato viene emesso da un'autorità di certificazione attendibile, dovete comunque stabilire se tale certificato appartiene a una fonte che voi considerate attendibile. In molti scenari, questa decisione viene lasciata all'utente finale. Quando ad esempio viene installata un'applicazione AIR, il programma di installazione di AIR visualizza le informazioni di identificazione dal certificato dell'editore quando chiede all'utente di confermare se desidera installare l'applicazione. In altri casi, potreste dover confrontare la chiave pubblica o altre informazioni del certificato con un elenco di chiavi accettabili. (L'elenco deve essere protetto, eventualmente mediante una propria firma o memorizzandolo nell'archivio locale crittografato di AIR, per evitare che l'elenco stesso venga manomesso).
Nota:
mentre potete scegliere di considerare attendibile il certificato di firma senza una verifica indipendente, ad esempio nel caso di un certificato autofirmato, non ottenete in tal modo alcun tipo di assicurazione verificando la firma. Senza sapere che ha creato la firma, la certezza che non sia stata manipolata non è assolutamente di alcun valore. La firma potrebbe essere una contraffazione apparentemente valida.
Scadenza e revoca dei certificati
Tutti i certificati hanno una scadenza. I certificati possono inoltre essere revocati dall'autorità di certificazione emittente se, ad esempio, la chiave privata correlata al certificato è stata compromessa o rubata. Se una firma è accompagnata da un certificato scaduto o revocato, sarà segnalata come non valida a meno che, come parte della firma stessa, sia stato incluso un indicatore di data e ora. Se è presente un indicatore di data e ora, la classe XMLSignatureValidator convalida la firma, a condizione che il certificato fosse valido al momento dell'apposizione della firma.
Un indicatore di data e ora è un messaggio digitale firmato da un servizio apposito che certifica che i dati sono stati firmati in una determinata data e a una determinata ora. Gli indicatori di data e ora vengono emessi dalle autorità preposte e firmati con il certificato emesso dalla stessa autorità. Il certificato dell'autorità di emissione degli indicatori di data e ora incorporato nell'indicatore stesso deve essere considerato attendibile sul computer in uso, perché possa essere considerato valido. In XMLSignatureValidator non è disponibile un'API per designare un certificato diverso da usare nella convalida dell'indicatore di data e ora.