Protocollo Signal: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
Aggiornamento incipit: messenger tutte le chat individuali e skype è stato chiuso
 
(19 versioni intermedie di 5 utenti non mostrate)
Riga 1:
{{Software
[[File:|Screenshot = Double Ratchet Algorithm.png|miniatura|289x289px]]
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]]. Il protocollo è stato sviluppato da [[Open Whisper Systems]] nel 2013 ed è stato introdotto nell'app [[open source]] [[TextSecure]], che in seguito è stata rinominata [[Signal (software)|Signal]]..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/|sito=Signal|anno=2016|dataaccesso=5 April 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 Messages.<ref name=":0">{{Cita web|url=https://www.theverge.com/platform/amp/2020/11/19/21574451/android-rcs-encryption-message-end-to-end-beta|sito=The Verge|dataaccesso=28 November 2020}}</ref> Anche [[Facebook Messenger]] offre il protocollo per le "Conversazioni segrete", così come [[Skype]] per le sue "Conversazioni private".
|Didascalia = Schema dell'algoritmo di Double Ratchet, una componente del protocollo Signal
|Sviluppatore = [[Fondazione Signal]]
|SistemaOperativo = multipiattaforma
|Genere = crittografia
|SoftwareLibero = sì
}}
 
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]], la quale, in seguito, è stata rinominata [[Signal (software)|Signal]]. A partire dal 2018 il protocollo è sviluppato dalla [[fondazione Signal]] ed è distribuito con [[licenza libera]] [[GNU Affero General Public License|AGPLv3]].
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>{{Harvnb|Unger|Dechand|Bonneau|Fahl|2015|p=241}}</ref> e utilizza [[Curve25519]], [[Advanced Encryption Standard|AES-256]] e [[HMAC|HMAC-SHA256]] come primitive crittografiche.<ref name="Frosch 2016">{{Harvnb|Frosch|Mainka|Bader|Bergsma|2016}}</ref>
 
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]]. Il protocollo è stato sviluppato da [[Open Whisper Systems]] nel 2013 ed è stato introdotto nell'app [[open source]] [[TextSecure]], che in seguito è stata rinominata [[Signal (software)|Signal]]..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|lingua=en|url=https://signal.org/blog/whatsapp-complete/|sitotitolo=WhatsApp's Signal Protocol integration is now complete|annosito=2016Signal|dataaccessoaccesso=5 Aprilaprile 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 MessagesMessaggi]].<ref name=":0">{{Cita web|lingua=en|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|dataaccessoaccesso=28 Novembernovembre 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 [[FacebookMessenger (Meta)|Messenger]] offredi il[[Meta protocolloPlatforms|Meta]] perusa leil "Conversazioniprotocollo segrete",Signal cosìper comechat [[Skype]]e perchiamate le sueindividuali.<ref name="Conversazioni private:2". />
 
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>{{Harvnb| name="Unger|Dechand|Bonneau|Fahl|-2015|p=241}}<-p239" /ref> e utilizza [[Curve25519]], [[Advanced Encryption Standard|AES-256]] e [[HMAC|HMAC-SHA256]] come primitive crittografiche.<ref name="Frosch 2016">{{HarvnbCita|FroschFrosh|Mainka|Bader|Bergsma|2016titolo="How Secure is TextSecure?"}}</ref>
 
== Storia ==
Lo sviluppo del Protocollo Signal è iniziato nel 2013 grazie a [[Trevor Perrin]] e [[Moxie Marlinspike]] (Open Whisper Systems). La prima versione del protocollo, TextSecure v1, era basata sul protocollo di [[Off-the-Record Messaging|messaggistica Off-the-record]] (OTR).<ref name="Cohn-Gordon-2016-p2">{{Harvnb|Cohn-Gordon|Cremers|Dowling|Garratt|2016}}</ref><ref>{{Cita web|url=https://github.com/WhisperSystems/TextSecure/wiki/Protocol|dataaccesso=28 October 2016}}</ref>
 
Lo sviluppo del Protocolloprotocollo Signal è iniziato nel 2013 grazie a [[Trevor Perrin]] e [[Moxie Marlinspike]] (Open Whisper Systems). La prima versione del protocollo, TextSecure v1, era basata sul protocollo di [[Off-the-Record Messaging|messaggistica Off-the-record]] (OTR).<ref name="Cohn-Gordon-2016-p2">{{Harvnbcita|Cohn-Gordon|Cremers|Dowling|Garrattp. 2|2016titolo=A Formal Security Analysis of the Signal Messaging Protocol}}</ref><ref>{{Cita web|lingua=en|url=https://github.com/WhisperSystems/TextSecure/wiki/Protocol|dataaccessotitolo=28Protocol|data=2 Octobermarzo 20162014|urlarchivio=https://web.archive.org/web/20150107094950/https://github.com/WhisperSystems/TextSecure/wiki/Protocol}}</ref>
Il 24 febbraio 2014, Open Whisper Systems ha introdotto TextSecure v2,<ref name="Donohue-2014">{{Cita web|lingua=en|url=https://threatpost.com/textsecure-sheds-sms-in-latest-version/104456|titolo=TextSecure Sheds SMS in Latest Version|sito=Threatpost|dataaccessoaccesso=14 Julyluglio 2016}}</ref> la seconda versione del protocollo che è basata su Axolotl Ratchet.<ref name="Cohn-Gordon-2016-p2">{{Harvnb|Cohn-Gordon|Cremers|Dowling|Garratt|2016}}</ref><ref>{{Cita web|lingua=en|url=https://github.com/WhisperSystems/TextSecure/wiki/ProtocolV2|dataaccessotitolo=28Protocol OctoberV2|data=2 2016marzo 2014|urlarchivio=https://web.archive.org/web/20141015215356/https://github.com/WhisperSystems/TextSecure/wiki/ProtocolV2}}</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 instantaneaistantanea Silent Circle (SCIMP).<ref name="advanced-ratcheting">{{Cita web|lingua=en|autore=Moxie Marlinspike|url=https://whispersystems.org/blog/advanced-ratcheting/|dataaccessotitolo=Advanced cryptographic ratcheting|data=26 novembre 2013|accesso=23 Septembersettembre 2016}}</ref> Ha introdotto il supporto per la comunicazione asincrona come sua principale nuova caratteristica, cosìoltre comea una migliore resilienza con un ordine distorto dei messaggi e un supporto più semplice per le conversazioni con più partecipanti.<ref>{{Harvnbcita|Unger|Dechand|Bonneau|Fahl|2015titolo=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é disabilitaimpedisce automaticamente a un aggressore dall'accessodi accedere 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">{{Harvnb|Cohn-Gordon|Cremers|Dowling|Garratt|2016}}</ref> Nell'ottobre 2014, i ricercatori dell'[[Università della Ruhr a Bochum|università della Ruhr a Bochym]] hanno pubblicato un'analisi di TextSecure v3comunicazione.<ref name="Frosch 2016">{{Harvnb|Frosch|Mainka|Bader|Bergsma|2016}}</ref><ref name="Cohn-Gordon-2016-p2" /> Tra le altre scoperte, hanno presentato un attacco di condivisione delle chiavi sconosciuto, ma in generale, hanno concluso che era sicuro.<ref name="Pauli-2014-11-03">{{Cita web|url=https://www.theregister.co.uk/2014/11/03/how_secure_is_textsecure_pretty_well_secure/|sito=[[The Register]]|dataaccesso=4 November 2014}}</ref>
 
Nell'ottobre 2014, i ricercatori dell'[[università della Ruhr a Bochum]] 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 della chiave sconosciuta, ma in generale, hanno concluso che era sicuro.<ref name="Pauli-2014-11-03">{{Cita web|lingua=en|url=https://www.theregister.co.uk/2014/11/03/how_secure_is_textsecure_pretty_well_secure/|titolo=Auditors find encrypted chat client TextSecure is secure|sito=[[The Register]]|accesso=4 novembre 2014}}</ref>
Nel marzo 2016, gli [[Sviluppatore di software|sviluppatori]] hanno rinominato il protocollo TextSecure in Protocolloprotocollo Signal. Hanno inoltre rinominato l'algoritmo Axolotl Ratchet in [[Double Ratchet (algoritmo)|Double Ratchet]] per differenziare meglio il ''ratchet'' dal protocollo completo<ref name="signal-inside-and-out" />, questo perché alcune persone avevano utilizzato il nome Axolotl riferendosi al protocollo completo.<ref>{{Cita|Cohn-Gordon|p. 1|titolo=A Formal Security Analysis of the Signal Messaging Protocol}}</ref><ref name="signal-inside-and-out">{{Cita web|lingua=en|url=https://whispersystems.org/blog/signal-inside-and-out/|titolo=Signal on the outside, Signal on the inside|sito=Signal Blog|dataaccessoaccesso=9 Aprilaprile 2016}}</ref>!
 
Nell'ottobre 2016, alcuni ricercatori dell'[[università di Oxford]] nel regnoRegno unitoUnito, dell'università del Queensland in [[Australia]] e dell'università McMaster in [[Canada]] hanno pubblicato un'analisi formale del protocollo concludendo che è crittograficamente solidoaffidabile.<ref name="Brook-2016-11-10">{{Cita web|lingua=en|url=https://threatpost.com/signal-audit-reveals-protocol-cryptographically-sound/121892/|titolo=Signal Audit Reveals Protocol Cryptographically Sound|sito=Threatpost|dataaccessoaccesso=11 Novembernovembre 2016}}</ref><ref name="Cohn-Gordon-2016-p2">{{Harvnb|Cohn-Gordon|Cremers|Dowling|Garratt|2016}}</ref>
 
Un'ulteriore altrovalutazione del protocollo ([[audit]] del protocollo) è statostata pubblicatopubblicata nel 2017.<ref>{{Cita libro|lingua=en|cognome=N. Kobeissi|cognome2=K. Bhargavan|cognome3=B. Blanchet|titolo=2017 IEEE European Symposium on Security and Privacy (EuroS&P)|url=https://hal.inria.fr/hal-01575923/file/KobeissiBhargavanBlanchetEuroSP17.pdf|anno=2017|pp=435–450|ISBN=978-1-5090-5762-7|DOI=10.1109/EuroSP.2017.38}}</ref>
 
== Utilizzo ==
 
Open Whisper Systems ha inizialmente introdotto il protocollo nell'applicazione [[TextSecure]]. Successivamente l'applicazione è stata unita con [[RedPhone]], un'applicazione per effettuare videochiamate crittografate, ed è stata rinominata [[Signal (software)|Signal]].
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>
 
A settembre 2015 [[G Data]] ha lanciato una nuova applicazione di messaggistica chiamata ''Chat Sicure'' che utilizza il protocollo Signal.<ref>{{Cita web|lingua=en-gb|autore=Tara Seals|url=https://www.infosecurity-magazine.com/news/g-data-adds-encryption-for-secure/|titolo=G DATA Adds Encryption for Secure Mobile Chat|sito=Infosecurity Magazine|data=2015-09-17|accesso=2025-04-18}}</ref><ref>{{Cita pubblicazione|data=2018-05-08|titolo=SecureChat|editore=G DATA CyberDefense AG|accesso=2025-04-18|url=https://github.com/GDATASoftwareAG/SecureChat}}</ref> Il servizio è stato interrotto nel maggio 2018.<ref>{{Cita web|url=https://www.gdata.de/support/faq/consumer/g-data-secure-chat-wird-eingestellt|titolo=G DATA Secure Chat wird eingestellt|sito=www.gdata.de|data=18 maggio 2018|accesso=2025-04-18|urlarchivio=https://web.archive.org/web/20190426093244/https://www.gdata.de/support/faq/consumer/g-data-secure-chat-wird-eingestellt}}</ref>
 
Nell'ottobre 2016 [[Meta Platforms|Facebook]] ha aggiunto un'opzione in [[Messenger (Meta)|Facebook Messenger]] chiamata ''Conversazioni segrete'' che utilizza la crittografia end-to-end fornita dal protocollo Signal.<ref>{{Cita news|lingua=en-US|nome=Mike|cognome=Isaac|url=https://www.nytimes.com/2016/07/09/technology/facebook-messenger-app-encryption.html|titolo=Facebook to Add 'Secret Conversations' to Messenger App|pubblicazione=The New York Times|data=2016-07-08|accesso=2025-04-18}}</ref><ref>{{Cita web|lingua=en-US|autore=bdarwell|url=https://about.fb.com/news/2016/07/messenger-starts-testing-end-to-end-encryption-with-secret-conversations/|titolo=Messenger Starts Testing End-to-End Encryption with Secret Conversations|sito=Meta|data=2016-07-08|accesso=2025-04-18}}</ref><ref>{{Cita news|lingua=en-US|nome=Andy|cognome=Greenberg|url=https://www.wired.com/2016/07/secret-conversations-end-end-encryption-facebook-messenger-arrived/|titolo=By this fall, your Facebook messages will have end-to-end encryption---if you turn it on.|pubblicazione=Wired|accesso=2025-04-18}}</ref><ref>{{Cita news|lingua=en-US|nome=Andy|cognome=Greenberg|url=https://www.wired.com/2016/10/facebook-completely-encrypted-messenger-update-now/|titolo=You can finally encrypt Facebook Messenger, so do it.|pubblicazione=Wired|accesso=2025-04-18}}</ref> A novembre 2023 [[Meta Platforms|Meta]] ha iniziato ad implementare la crittografia end-to-end per impostazione predefinita nelle chat e chiamate individuali.<ref name=":2">{{Cita web|lingua=en-US|autore=Jay Peters|url=https://www.theverge.com/2023/12/6/23991501/facebook-messenger-default-end-to-end-encryption-meta|titolo=Messenger is finally getting end-to-end encryption by default|sito=The Verge|data=2023-12-07|accesso=2025-06-30}}</ref><ref>{{Cita web|lingua=en-US|url=https://engineering.fb.com/2023/12/06/security/building-end-to-end-security-for-messenger/|titolo=Building end-to-end security for Messenger|sito=Engineering at Meta|data=2023-12-07|accesso=2025-06-30}}</ref><ref>{{Cita pubblicazione|autore=Meta|data=6 dicembre 2023|titolo=Messenger End-to-End Encryption Overview|url=https://engineering.fb.com/wp-content/uploads/2023/12/MessengerEnd-to-EndEncryptionOverview_12-6-2023.pdf}}</ref>
 
Nel settembre 2016 [[Google (azienda)|Google]] ha lanciato una nuova applicazione di messaggistica chiamata [[Google Allo|Allo]] che include una modalità incognito opzionale che utilizza il protocollo Signal per fornire la crittografia end-to-end.<ref>{{Cita news|lingua=en-US|nome=Andy|cognome=Greenberg|url=https://www.wired.com/2016/05/allo-duo-google-finally-encrypts-conversations-end-end/|titolo=With Allo and Duo, Google Finally Encrypts Conversations End-to-End|pubblicazione=Wired|accesso=2025-04-18}}</ref><ref>{{Cita news|lingua=en-GB|nome=Samuel|cognome=Gibbs|url=https://www.theguardian.com/technology/2016/sep/21/google-whatsapp-allo-google-assistant|titolo=Google launches WhatsApp competitor Allo – with Google Assistant|pubblicazione=The Guardian|data=2016-09-21|accesso=2025-04-18}}</ref> Nel marzo 2019 il servizio di Allo è stato interrotto in favore dell'applicazione [[Google Messaggi]] su Android.<ref>{{Cita web|lingua=en-US|autore=Jon Porter|url=https://www.theverge.com/2019/3/12/18261932/google-allo-messaging-app-shutting-down-march-12th-2019|titolo=Google is finally saying goodbye to Allo today|sito=The Verge|data=2019-03-12|accesso=2025-04-18}}</ref><ref>{{Cita web|lingua=en-us|url=https://blog.google/products/messages/latest-messages-allo-duo-and-hangouts/|titolo=The latest on Messages, Allo, Duo and Hangouts|sito=Google|data=2018-12-05|accesso=2025-04-18}}</ref>
 
A gennaio 2018 Open Whisper Systems e [[Microsoft]] hanno annunciato l'aggiunta del protocollo Signal su [[Skype]] nelle ''conversazioni private''.<ref>{{Cita news|lingua=en-US|nome=Lily Hay|cognome=Newman|url=https://www.wired.com/story/skype-end-to-end-encryption-voice-text/|titolo=Skype Finally Starts Rolling Out End-to-End Encryption|pubblicazione=Wired|accesso=2025-04-18}}</ref><ref>{{Cita web|lingua=en|autore=Joshua Lund|url=https://signal.org/blog/skype-partnership/|titolo=Signal partners with Microsoft to bring end-to-end encryption to Skype|sito=Signal Messenger|data=11 gennaio 2018|accesso=2025-04-18}}</ref>
 
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>
 
== 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">{{Harvnb|Unger|Dechand|Bonneau|Fahl|2015}}</ref>!
 
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">{{Harvnbcita|Unger|Dechandp. 239|Bonneau|Fahl|2015titolo=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">{{Harvnb|Unger|Dechand|Bonneau|Fahl|2015}}</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 diin sottogruppi, nonché appartenenza al gruppo contrattabile ed espandibile. <ref name="Unger-2015-p239" />
 
=== Autenticazione ===
Per l'autenticazione, gli utenti possono confrontare manualmente le impronte delle chiavi pubbliche attraverso un canale esterno.<ref name="Rottermanner-2015-p5">{{Harvnb|Rottermanner|Kieseberg|Huber|Schmiedecker|2015}}</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 notificare agli utenti se la chiave di un corrispondente cambia.<ref name="Rottermanner-2015-p5" />
 
Per l'autenticazione, gli utenti possono confrontare manualmente le impronte delle [[Chiave pubblica|chiavi pubbliche]] attraverso un canale esterno.<ref name="Rottermanner-2015-p5">{{Harvnbcita|Rottermanner|Kiesebergp. 5|Huber|Schmiedecker|2015titolo=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 notificaresegnalare agli utenti se la chiave di un corrispondente cambia.<ref name="Rottermanner-2015-p5" />
=== Metadati ===
Il protocollo Signal non impedisce ad un'azienda di conservare informazioni su quando e con chi gli utenti comunicano, ossia i metadati.<ref name="Rottermanner-2015-p4">{{Harvnb|Rottermanner|Kieseberg|Huber|Schmiedecker|2015}}</ref>!<ref name="Lee-2016-06-22" /> Possono quindi esserci differenze nel modo in cui i vari fornitori di 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/|dataaccesso=8 October 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|url=https://theintercept.com/2016/06/22/battle-of-the-secure-messaging-apps-how-signal-beats-whatsapp/|sito=[[The Intercept]]|dataaccesso=8 October 2016}}</ref>Controlla
 
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">{{Harvnbcita|Rottermanner|Kiesebergp. 4|Huber|Schmiedecker|2015titolo=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|lingua=en|url=https://whispersystems.org/signal/privacy/|dataaccessotitolo=Privacy|accesso=8 Octoberottobre 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]]|dataaccessodata=822 Octobergiugno 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>Controlla
Nell'ottobre 2018, [[Signal (software)|Signal]] ha annunciato di aver implementato nell'app la funzionalità "mittente sigillato", in inglese ''sealed sender''. Questa funzione riduce la quantità di metadati a cui i server Signal hanno accesso nascondendo l'identificativo del mittente.<ref name="ars2018">{{Cita web|lingua=en|autore=Dan Goodin|url=https://arstechnica.com/information-technology/2018/10/new-signal-privacy-feature-removes-sender-id-from-metadata/|dataaccessotitolo=2019-03-28New Signal privacy feature removes sender ID from metadata|data=30 ottobre 2018|accesso=18 aprile 2025}}</ref><ref name="sealed-sender">{{Cita web|lingua=en|autore=Joshua Lund|url=https://signal.org/blog/sealed-sender/|titolo=Technology preview: Sealed sender for Signal|sito=signal.org|dataaccessodata=29 ottobre 2018|accesso=1618 Aprilaprile 20192025}}</ref> L'identità del mittente viene trasmessa al destinatario nel messaggio, ma è crittografata con una [[Chiave (crittografia)|chiave]] che il server non possiede.<ref name="sealed-sender" /> Questo avviene automaticamente se il mittente è nei contatti del destinatario o ha accesso al suo profilo Signal.<ref name="sealed-sender" /> Gli utenti possono anche abilitare un'opzione per ricevere messaggi con il "mittente sigillato" anche da persone non nella rubrica e che non hanno accesso al loro profilo Signal.<ref name="sealed-sender" /> Un'intercettazione telefonica contemporanea del dispositivo dell'utente e/o dei server Signal potrebbe comunque rivelare che l'[[indirizzo IP]] del dispositivo ha avuto accesso al server Signal per inviare o ricevere messaggi in determinati momenti.<ref name="ars2018" />
 
== Implementazioni ==
Signal Messenger mantiene un'[https://github.com/signalapp/libsignal implementazione di riferimento] della [[Libreria (software)|libreria]] per il Protcollo Signal scritta in [[Rust (linguaggio di programmazione)|Rust]] pubblicata con licenza [[GNU Affero General Public License|AGPLv3]] su [[GitHub]]. Sono disponibili inoltre parti di codice che permettono di utilizzarlo in [[Swift (linguaggio di programmazione)|Swift]], [[Java (linguaggio di programmazione)|Java]], [[TypeScript]], [[C (linguaggio di programmazione)|C]] e altri linguaggi che utilizzano come riferimento l'implementazione in Rust.
 
Signal Messenger mantiene un'[https://github.com/signalapp/libsignal implementazione di riferimento] della [[Libreria (software)|libreria]] per il Protcolloprotocollo Signal scritta in [[Rust (linguaggio di programmazione)|Rust]] pubblicata con licenza [[GNU Affero General Public License|AGPLv3]] su [[GitHub]]. Sono disponibili inoltre parti di codice che permettono di utilizzarlo in [[Swift (linguaggio di programmazione)|Swift]], [[Java (linguaggio di programmazione)|Java]], [[TypeScript]], [[C (linguaggio di programmazione)|C]] e altri linguaggi che utilizzano come riferimento l'implementazione in Rust.
Signal ha mantenuto le seguenti librerie ora deprecate:
 
Riga 39 ⟶ 65:
* [https://github.com/signalapp/libsignal-protocol-javascript libsignal-protocol-javascript] : una libreria scritta in [[JavaScript|Javascript]].
 
Esistono anche librerie alternative scritte da terze parti in altri linguaggi, come [[TypeScript]].<ref>{{Cita web|lingua=en|url=https://github.com/privacyresearchgroup/libsignal-protocol-typescript|titolo=Signal Protocol Typescript Library (libsignal-protocol-typescript)|sito=github.com|dataaccessoaccesso=28 Novembernovembre 2020}}</ref>
 
== Vedi anche ==
 
* [[Scambio di chiavi Diffie-Hellman]]
 
== Note ==
Riga 49 ⟶ 71:
 
== Bibliografia ==
 
 
* {{Cita rivista|autore=Katriel Cohn-Gordon|autore2=Cas Cremers|autore3=Benijamin Dowling|coautori=Garratt Luke, Stebila Douglas|data=25 ottobre 2016|titolo=A Formal Security Analysis of the Signal Messaging Protocol|rivista=International Association for Cryptologic Research (IACR)|lingua=en|accesso=27 ottobre 2016|url=https://eprint.iacr.org/2016/1013|urlarchivio=https://web.archive.org/web/20161228222451/http://eprint.iacr.org/2016/1013|urlmorto=no}}
* {{Cita libro|lingua=en|nome=Ksenia|cognome=Ermoshina|nome2=Francesca|cognome2=Musiani|nome3=Harry|cognome3=Halpin|titolo=Internet Science|collana=Lecture Notes in Computer Science|data=settembre 2016|editore=Springer|città=Firenze|pp=244-254|volume=9934|capitolo=End-to-End Encrypted Messaging Protocols: An Overview|ISBN=978-3-319-45982-0|DOI=10.1007/978-3-319-45982-0_22}}
* {{Cita libro|lingua=en|nome=Tilman|cognome=Frosch|nome2=Christian|cognome2=Mainka|nome3=Christoph|cognome3=Bader|etal=sì|titolo=2016 IEEE European Symposium on Security and Privacy (EuroS&P)|data=marzo 2016|editore=IEEE|città=Saarbrücken, Germania|pp=457-472|capitolo=How Secure is TextSecure?|ISBN=978-1-5090-1752-2|DOI=10.1109/EuroSP.2016.41}}
* {{Cita libro|lingua=en|nome=Christoph|cognome=Rottermanner|nome2=Peter|cognome2=Kieseberg|nome3=Markus|cognome3=Huber|etal=sì|titolo=Privacy and Data Protection in Smartphone Messengers|url=https://www.sba-research.org/wp-content/uploads/publications/paper_drafthp.pdf|accesso=16 aprile 2025|data=dicembre 2015|editore=ACM International Conference Proceedings Series|opera=Proceedings of the 17th International Conference on Information Integration and Web-based Applications & Services (iiWAS2015)|ISBN=978-1-4503-3491-4}}
* {{Cita libro|lingua=en|nome=Nik|cognome=Unger|nome2=Sergej|cognome2=Dechand|nome3=Joseph|cognome3=Bonneau|etal=sì|titolo=2015 IEEE Symposium on Security and Privacy|accesso=16 aprile 2025|anno=2015|editore=IEEE Computer Society's Technical Committee on Security and Privacy|pp=232–249|opera=Proceedings of the 2015 IEEE Symposium on Security and Privacy|capitolo=SoK: Secure Messaging|url_capitolo=http://ieee-security.org/TC/SP2015/papers-archived/6949a232.pdf|ISBN=978-1-4673-6949-7|DOI=10.1109/SP.2015.22}}
* {{Cita libro|lingua=en|nome=Paul|cognome=Rösler|nome2=Christian|cognome2=Mainka|nome3=Jörg|cognome3=Schwenk|titolo=More is Less: On the End-to-End Security of Group Chats in Signal, WhatsApp, and Threema|url=https://eprint.iacr.org/2017/713.pdf|accesso=16 aprile 2025|anno=2017|editore=International Association for Cryptologic Research (IACR)}}
 
== Voci correlate ==
* [[Scambio di chiavi Diffie-Hellman]]
* [[Double Ratchet (algoritmo)|Double Ratchet]]
 
== Collegamenti esterni ==
{{Collegamenti esterni}}
* {{YouTube|id=7WnwSovjYMs|titolo=TextSecure Protocol: Present and Future|autore=NorthSec|lingua=en|data=10 giugno 2015}}
 
* {{Sito ufficiale}}
* [https://www.youtube.com/watch?v=7WnwSovjYMs "TextSecure Protocol: Present and Future"], talk by Trevor Perrin at NorthSec 2015 (video)
{{Messaggistica istantanea}}
{{Portale|informatica|crittografia|software libero|sicurezza informatica}}
<nowiki>
[[Categoria:Software per la crittografia liberi]]
[[Categoria:Protocolli crittografici]]
[[Categoria:ProtocolliAlgoritmi livello applicazionecrittografici]]</nowiki>
[[Categoria:Protocolli livello applicazione]]