Off-the-Record Messaging (OTR) è il nome di un protocollo crittografico che fornisce una cifratura alle conversazioni di messaggistica istantanea utilizzando una combinazione di crittografia simmetrica AES con chiavi di 128 bit, scambio di chiavi Diffie-Hellman e funzione crittografica di hash SHA-1. Oltre all'autenticazione e alla cifratura, l'OTR fornisce anche perfect forward secrecy.

Il protocollo OTR è stato progettato dai crittografi Ian Goldberg e Nikita Borisov. Essi hanno creato una libreria client per facilitare il supporto agli sviluppatori di client di messaggistica istantanea che vogliono implementare il protocollo. Esistono plugin per Pidgin e Kopete che consentono di usare l'OTR insieme a qualunque protocollo di messaggistica supportato dai due programmi; è presente inoltre una funzione di autoriconoscimento che consente l'avvio automatico della sessione OTR con gli utenti che l'hanno attivato senza interferire con le conversazioni non cifrate.

Implementazione

[modifica | modifica wikitesto]

Oltre a fornire cifratura e autenticazione — funzionalità comunemente fornite da altri protocolli crittografici come PGP, GnuPG e X.509 (S/MIME) — l'OTR supporta anche altre funzioni meno comuni:

Limitazioni

[modifica | modifica wikitesto]

A causa delle limitazioni del protocollo, l'OTR nel 2009 non supportava conversazioni multiutente. Dalla versione 3 delle specifiche, una chiave simmetrica aggiuntiva può essere derivata durante lo scambio delle chiavi autenticate per essere usata per comunicazioni sicure su un canale differente (ad esempio un trasferimento di file cifrato). Il supporto per video e audio cifrati non è in programma.

Dal protocollo OTR v3 (pidgin-otr 4.0.0 e libotr 4.0.0) il plugin supporta conversazioni multiple con lo stesso utente che si connette da differenti posizioni.

Supporto

[modifica | modifica wikitesto]

Nativo

[modifica | modifica wikitesto]

I seguenti client supportano l'Off-the-Record Messaging nativamente:

Mediante plugin

[modifica | modifica wikitesto]

I seguenti client richiedono un plugin per supportare l'Off-the-Record Messaging:

Collegamenti esterni

[modifica | modifica wikitesto]