Protocollo Signal: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Sezione sull'utilizzo del protocollo |
Nessun oggetto della modifica |
||
Riga 1:
{{Nota disambigua|l'applicazione di messaggistica|Signal (software)}}
[[File:Double Ratchet Algorithm.png|miniatura|289x289px|Algoritmo di Double Ratchet che fa parte del protocollo Signal]]
Il '''protocollo Signal''', in [[Lingua inglese|inglese]] ''Signal Protocol'', (precedentemente noto come '''protocollo TextSecure''') è un [[protocollo crittografico]] non federato che fornisce la [[crittografia end-to-end]] per i messaggi e le chiamate di [[messaggistica istantanea]].<ref name=":1">{{Cita|Ksenia|titolo=Internet Science}}</ref> Il protocollo è stato sviluppato da [[Open Whisper Systems]] nel 2013<ref name=":1" /> ed è stato introdotto nell'app [[open source]] [[TextSecure]],
Diverse applicazioni con [[Software proprietario|codice proprietario]] hanno implementato questo protocollo, come [[WhatsApp]], che crittografa le conversazioni di "oltre un miliardo di persone in tutto il mondo"<ref>{{Cita web|url=https://signal.org/blog/whatsapp-complete/|titolo=WhatsApp's Signal Protocol integration is now complete|sito=Signal|accesso=5 aprile 2016}}</ref> o [[Google (azienda)|Google]] che fornisce la crittografia end-to-end per impostazione predefinita a tutte le conversazioni [[Rich Communication Services|RCS]] individuali tra gli utenti dell'app [[Google Messaggi]].<ref name=":0">{{Cita web|url=https://www.theverge.com/platform/amp/2020/11/19/21574451/android-rcs-encryption-message-end-to-end-beta|titolo=Google is rolling out end-to-end encryption for RCS in Android Messages beta|sito=The Verge|accesso=28 novembre 2020|urlarchivio=https://web.archive.org/web/20201119174803/https://www.theverge.com/platform/amp/2020/11/19/21574451/android-rcs-encryption-message-end-to-end-beta}}</ref> Anche [[Facebook Messenger]] offre il protocollo per le "Conversazioni segrete", così come [[Skype]] per le sue "Conversazioni private".
Il protocollo combina l'algoritmo di [[Double Ratchet (algoritmo)|Double Ratchet]], le prechiavi (le chiavi pubbliche effimere monouso che sono state caricate in anticipo su un server centrale) e un [[handshake]] [[Scambio di chiavi Diffie-Hellman|Diffie–Hellman a tripla curva ellittica]] (3-DH),<ref name="Unger-2015-p239" /> e utilizza [[Curve25519]], [[Advanced Encryption Standard|AES-256]] e [[HMAC|HMAC-SHA256]] come primitive crittografiche.<ref name="Frosch 2016">{{Cita|Frosh|titolo="How Secure is TextSecure?"}}</ref>▼
▲Il protocollo combina l'algoritmo di [[Double Ratchet (algoritmo)|Double Ratchet]], le prechiavi (le chiavi pubbliche effimere monouso che sono state caricate in anticipo su un server centrale) e un [[Handshake (informatica)|handshake]] [[Scambio di chiavi Diffie-Hellman|Diffie–Hellman a tripla curva ellittica]] (3-DH),<ref name="Unger-2015-p239" /> e utilizza [[Curve25519]], [[Advanced Encryption Standard|AES-256]] e [[HMAC|HMAC-SHA256]] come primitive crittografiche.<ref name="Frosch 2016">{{Cita|Frosh|titolo="How Secure is TextSecure?"}}</ref>
== Storia ==
Riga 10 ⟶ 12:
Il 24 febbraio 2014, Open Whisper Systems ha introdotto TextSecure v2,<ref name="Donohue-2014">{{Cita web|url=https://threatpost.com/textsecure-sheds-sms-in-latest-version/104456|titolo=TextSecure Sheds SMS in Latest Version|sito=Threatpost|accesso=14 luglio 2016}}</ref> la seconda versione del protocollo che è basata su Axolotl Ratchet.<ref name="Cohn-Gordon-2016-p2"></ref><ref>{{Cita web|url=https://github.com/WhisperSystems/TextSecure/wiki/ProtocolV2|titolo=Protocol V2|accesso=28 ottobre 2016|dataaccesso=}}</ref> Il design dell'Axolotl Ratchet si basa sullo scambio di chiavi effimere introdotto da OTR e lo combina con un ''ratchet'' a chiave simmetrica basato sul protocollo di messaggistica instantanea Silent Circle (SCIMP).<ref name="advanced-ratcheting">{{Cita web|autore=Moxie Marlinspike|url=https://whispersystems.org/blog/advanced-ratcheting/|titolo=Advanced cryptographic ratcheting|data=26 novembre 2013|accesso=23 settembre 2016}}</ref> Ha introdotto il supporto per la comunicazione asincrona come sua principale nuova caratteristica, così come una migliore resilienza con un ordine distorto dei messaggi e un supporto più semplice per le conversazioni con più partecipanti.<ref>{{cita|Unger|titolo=SoK: Secure Messaging}}</ref> L'Axolotl Ratchet prende il nome da una salamandra acquatica, l'[[Ambystoma mexicanum|Axolotl]], in grave pericolo di estinzione, dotata di straordinarie capacità di autoguarigione. Gli sviluppatori si riferiscono all'algoritmo come auto-riparante perché disabilita automaticamente un aggressore dall'accesso ai messaggi successivi dopo aver compromesso una [[chiave di sessione]].<ref name="advanced-ratcheting" />
La terza versione del protocollo, TextSecure v3, ha apportato alcune modifiche alle primitive crittografiche e al protocollo wire.<ref name="Cohn-Gordon-2016-p2"></ref> Nell'ottobre 2014, i ricercatori dell'[[Università della Ruhr a Bochum|università della Ruhr a Bochym]] hanno pubblicato un'analisi di TextSecure v3.<ref name="Frosch 2016"></ref><ref name="Cohn-Gordon-2016-p2"></ref> Tra le altre scoperte, hanno presentato un attacco di condivisione
Nel marzo 2016, gli [[Sviluppatore di software|sviluppatori]] hanno rinominato il protocollo TextSecure in
Nell'ottobre 2016, alcuni ricercatori dell'[[università di Oxford]] nel regno unito, dell'università Queensland in [[Australia]] e dell'università McMaster in [[Canada]] hanno pubblicato un'analisi formale del protocollo concludendo che è crittograficamente
Un'ulteriore
== Proprietà ==
Il protocollo fornisce: riservatezza, integrità, [[Cifratura autenticata|autenticazione]], coerenza dei partecipanti, convalida della destinazione, [[Forward secrecy|segretezza in avanti]], sicurezza post-compromesso (nota anche come segretezza futura), preservazione della causalità, non collegabilità del messaggio, ripudio del messaggio, ripudio della partecipazione e asincronicità.<ref name="Unger-2015-p239" /> Non garantisce la conservazione dell'[[anonimato]] e richiede [[server]] per la trasmissione dei messaggi e l'archiviazione della [[chiave pubblica]].<ref name="Unger-2015-p239">{{cita|Unger|p. 239|titolo=SoK: Secure Messaging}}</ref>
Il protocollo Signal supporta anche chat di gruppo crittografate end-to-end. Il protocollo di chat di gruppo è una combinazione di crittografia [[Double Ratchet (algoritmo)|Double Ratchet]] a coppie e [[crittografia multicast]].<ref name="Unger-2015-p239"></ref> Oltre alle proprietà fornite dal protocollo per le chat individuali, il protocollo di chat di gruppo fornisce coerenza dell'oratore, resilienza fuori ordine, resilienza dei messaggi eliminati, uguaglianza computazionale, uguaglianza di fiducia, messaggistica
=== Autenticazione ===
Per l'autenticazione, gli utenti possono confrontare manualmente le impronte delle [[Chiave pubblica|chiavi pubbliche]] attraverso un canale esterno.<ref name="Rottermanner-2015-p5">{{cita|Rottermanner|p. 5|titolo=Privacy and Data Protection in Smartphone Messengers}}</ref> Ciò consente agli utenti di verificare reciprocamente le proprie identità ed evitare un [[attacco man in the middle]].<ref name="Rottermanner-2015-p5" /> Un'implementazione può anche scegliere di impiegare un meccanismo di fiducia al primo utilizzo per
=== Metadati ===
Il protocollo Signal non impedisce ad un'azienda di conservare informazioni su quando e con chi gli utenti comunicano, ossia i [[Metadato|metadati]].<ref name="Rottermanner-2015-p4">{{cita|Rottermanner|p. 4|titolo=Privacy and Data Protection in Smartphone Messengers}}</ref><ref name="Lee-2016-06-22" /> Possono quindi esserci differenze nel modo in cui i vari fornitori di [[Messaggistica istantanea|messaggistica]] scelgono di gestire queste informazioni. L'[[Privacy policy|informativa sulla privacy]] di Signal stabilisce che gli identificativi dei destinatari vengono conservati sui [[server]] Signal solo per il tempo necessario alla trasmissione di ciascun messaggio.<ref name="privacy-policy">{{Cita web|url=https://whispersystems.org/signal/privacy/|titolo=Privacy|accesso=8 ottobre 2016}}</ref> Nel giugno 2016, Moxie Marlinspike ha dichiarato a ''[[The Intercept]]'': "Gli unici metadati che il server Signal memorizza sono l'ultima volta che ogni utente si è connesso al server, e la precisione di questa informazione è limitata al giorno, piuttosto che all'ora, minuto e secondo".<ref name="Lee-2016-06-22">{{Cita web|lingua=en|autore=Micah Lee|url=https://theintercept.com/2016/06/22/battle-of-the-secure-messaging-apps-how-signal-beats-whatsapp/|titolo=Battle of the Secure Messaging Apps: How Signal Beats WhatsApp|sito=[[The Intercept]]|data=22 giugno 2016|accesso=18 aprile 2025|urlarchivio=https://web.archive.org/web/20170219051224/https://theintercept.com/2016/06/22/battle-of-the-secure-messaging-apps-how-signal-beats-whatsapp/|urlmorto=no}}</ref>
Nell'ottobre 2018, [[Signal (software)|Signal]] ha annunciato di aver implementato nell'app la funzionalità
== Utilizzo ==
Open Whisper Systems ha inizialmente introdotto il protocollo nell'applicazione [[TextSecure]]. Sucessivamente l'applicazione è stata unita con
Nel novembre 2014 Open Whisper Systems ha annunciato una collaborazione con [[WhatsApp]] per integrare la [[crittografia end-to-end]] fornita dal protocollo Signal in ogni [[client]] WhatsApp.<ref>{{Cita web|lingua=en-US|autore=Jon Evans|url=https://techcrunch.com/2014/11/18/end-to-end-for-everyone/|titolo=WhatsApp Partners With Open WhisperSystems To End-To-End Encrypt Billions Of Messages A Day|sito=TechCrunch|data=2014-11-18|accesso=2025-04-18}}</ref> Inizialmente il protocollo è stato integrato su [[Android]] mentre il supporto per le altre piattaforme e per i media e messaggi di gruppo sarebbe seguito a breve. <ref>{{Cita web|lingua=en|autore=Moxie Marlinspike|url=https://signal.org/blog/whatsapp/|titolo=Open Whisper Systems partners with WhatsApp to provide end-to-end encryption|sito=Signal Messenger|data=18 novembre 2014|accesso=18 aprile 2025}}</ref> Il 5 aprile 2016 WhatsApp e Open Whisper Systems hanno annunciato che il protocollo era stato implementato in "ogni forma di comunicazione" su WhatsApp<ref>{{Cita news|lingua=en-US|nome=Cade|cognome=Metz|url=https://www.wired.com/2016/04/forget-apple-vs-fbi-whatsapp-just-switched-encryption-billion-people/|titolo=Forget Apple vs. the FBI: WhatsApp Just Switched on Encryption for a Billion People|pubblicazione=Wired|data=5 aprile 2016|accesso=18 aprile 2025}}</ref><ref>{{Cita web|lingua=en-US|autore=Natasha Lomas|url=https://techcrunch.com/2016/04/05/whatsapp-completes-end-to-end-encryption-rollout/|titolo=WhatsApp completes end-to-end encryption rollout|sito=TechCrunch|data=2016-04-05|accesso=2025-04-18}}</ref> Nel febbraio 2017 WhatsApp ha annunciato una nuova funzione, gli ''Stati WhatsApp'' che utilizzavano a loro volta il protocollo Signal per proteggerne il contenuto.<ref>{{Cita web|lingua=en|url=https://blog.whatsapp.com/whats-app-status|titolo=WhatsApp Status|sito=WhatsApp.com|data=20 febbraio 2017|accesso=2025-04-18|urlarchivio=http://web.archive.org/web/20250227143258/https://blog.whatsapp.com/whats-app-status|dataarchivio=2025-02-27|urlmorto=no}}</ref>
Nell'ottobre 2016 [[Meta Platforms|Facebook]] ha aggiunto una opzione in [[Facebook Messenger]] chiamata
Nel settembre 2016 [[Google (azienda)|Google]] ha lanciato una nuova applicazione di messaggistica chiamata [[Google Allo|Allo]] che
A gennaio 2018 Open Whisper Systems e [[Microsoft]] hanno annunciato l'aggiunta del protocollo Signal su [[Skype
Nel novembre 2020 [[Google (azienda)|Google]] ha annunciato che avrebbe utilizzato il protocollo Signal per fornire la crittografia end-to-end di default per le conversazioni [[Rich Communication Services|RCS]] individuali nell'app Google Messaggi.<ref name=":0" /><ref>{{Cita web|lingua=en|autore=Emad Omara|url=https://www.gstatic.com/messages/papers/messages_e2ee.pdf|titolo=Messages End-to-End Encryption Overview}}</ref>
== Implementazioni ==
Signal Messenger mantiene un'[https://github.com/signalapp/libsignal implementazione di riferimento] della [[Libreria (software)|libreria]] per il
Signal ha mantenuto le seguenti librerie ora deprecate:
|