భద్రత ఎలా పని చేస్తుందో, సులభమైన మాటల్లో.
ఆసక్తి ఉన్నవారికీ, జాగ్రత్తగా ఉండాలనుకునే వారికీ. ముందు సంక్షిప్తంగా, తర్వాత సాంకేతిక వివరాలు.
సులభమైన మాటల్లో
మీ ప్రతి పరికరం దాని స్వంత కీల జంటను తయారు చేసుకుంటుంది. మీరు సందేశం పంపినప్పుడు, మీ phone అది ఒక్కసారి మాత్రమే వాడే కొత్త కీతో దాన్ని తాళం వేస్తుంది, తర్వాత ఆ కీని చాట్లోని ప్రతి పరికరానికి విడిగా తాళం వేస్తుంది. ఆ పరికరాలు మాత్రమే దాన్ని తెరవగలవు. మీ phone సందేశంపై సంతకం కూడా చేస్తుంది, కాబట్టి చదివే వారి phone అది నిజంగా మీ నుండే వచ్చిందని, దారిలో మార్చబడలేదని గుర్తించగలదు.
సాంకేతిక సారాంశం
- పరికర కీలు: కీ అంగీకారానికి X25519, సంతకాలకు Ed25519 — పరికరంలోనే తయారవుతాయి. ప్రైవేట్ కీలు పరికరంలోని సురక్షిత నిల్వలో ఉంచబడతాయి, ఎప్పుడూ అప్లోడ్ చేయబడవు.
- సందేశాలు: యాదృచ్ఛికమైన 256-bit కంటెంట్ కీ, ChaCha20-Poly1305 తో విషయాన్ని రక్షిస్తుంది. కంటెంట్ కీని ప్రతి గ్రహీత పరికరానికి ephemeral X25519 + HKDF-SHA256 ద్వారా చుట్టి పంపుతారు. envelope header (సంభాషణ, పంపినవారు, పరికరం, సందేశం id, గ్రహీతల జాబితా) associated data గా జతచేయబడి Ed25519 తో సంతకం చేయబడుతుంది.
- ఫైళ్ళు: పరికరంలోనే ఒక్కసారి మాత్రమే వాడే కీతో రక్షించబడతాయి; ఆ కీ రక్షించబడిన సందేశం లోపల ప్రయాణిస్తుంది. సర్వర్ కేవలం రక్షించబడిన రూపాన్ని మాత్రమే నిల్వ చేస్తుంది.
- కాల్లు: WebRTC తో DTLS-SRTP మీడియా. Offers, answers మరియు ICE candidates అదే సంతకం చేయబడిన, రక్షించబడిన envelopes లో ప్రయాణిస్తాయి, కాబట్టి సర్వర్ కాల్ ఏర్పాటును చదవలేదు లేదా మార్చలేదు.
- భద్రతా సంఖ్యలు: ఇద్దరి పరికర కీల ముద్ర. మధ్యలో ఎవరైనా ఉన్నారా అని నిర్ధారించుకోవడానికి నేరుగా కలిసి పోల్చుకోండి. పరిచయస్తుల కీలు మారినప్పుడు app హెచ్చరిస్తుంది.
- లాగిన్: scrypt password hashes, ఐచ్ఛికంగా TOTP రెండు-దశల ధృవీకరణ హ్యాష్ చేయబడిన రికవరీ కోడ్లతో, 5 విఫలయత్నాల తర్వాత లాక్, 12 గంటల నిష్క్రియ మరియు గరిష్టంగా 24 గంటల sessions, HttpOnly SameSite=Strict cookie. ఎక్కడా SMS లేదు.
- వెబ్: కఠినమైన Content-Security-Policy, బయటి మూలాలేవీ అనుమతించబడవు, ఫ్రేమ్లో పెట్టడం అనుమతించబడదు, ప్రొడక్షన్లో HSTS.
- Android: స్క్రీన్ చిత్రం తీయకుండా FLAG_SECURE, సాదా టెక్స్ట్ ట్రాఫిక్ నిలిపివేయబడింది, యాప్ బ్యాకప్ నిలిపివేయబడింది.
సర్వర్కు ఏమి కనిపిస్తుంది
ఎవరు ఎవరితో మాట్లాడుతున్నారు మరియు ఎప్పుడు, సందేశం మరియు ఫైల్ పరిమాణాలు, గ్రూప్ పేర్లు మరియు సభ్యత్వం, మరియు కాల్ ఏర్పాటు అవుతోందని — ఇవి సర్వర్కు కనిపిస్తాయి. పనులు, ఒప్పందాలు మరియు నివేదిక ముసాయిదాలు సర్వర్లో చివరి నుండి చివరి వరకు రక్షణ లేకుండా నిల్వ చేయబడతాయి. దీన్ని మేము Privacy పేజీలో బహిరంగంగా పేర్కొంటాము.
మేము ఎలా పరీక్షిస్తాము
ప్రతి విడుదల 40 కంటే ఎక్కువ తనిఖీలతో కూడిన స్వయంచాలక పరీక్షను దాటాలి; వాటిలో: Python లో రాసిన protocol యొక్క స్వతంత్ర అమలు app తో కలిసి పని చేయాలి; మార్చబడిన, నకిలీ మరియు మళ్ళీ పంపిన envelopes పై దాడులు; plaintext కోసం సర్వర్ డేటాబేస్ స్కాన్; గడువు తీరిన మాయమయ్యే సందేశాలు వాటి కీలతో సహా తొలగించబడ్డాయని ధృవీకరణ; మరియు web app ఏ మూడో పక్ష అభ్యర్థనలూ చేయడం లేదని browser తనిఖీ.
తెలిసిన పరిమితులు
- ఇంకా forward secrecy ratchet లేదు: దొంగిలించబడిన పరికర కీ ఆ పరికరానికి పంపిన గత సందేశాలను చదవగలదు. double-ratchet రూపకల్పన రోడ్మ్యాప్లో ఉంది.
- పైన వివరించినట్లు, metadata సర్వర్కు కనిపిస్తుంది.
- వెబ్ వెర్షన్ భద్రత మీరు వాడే బ్రౌజర్ మీద, మా సర్వర్ పంపే కోడ్ మీద ఆధారపడి ఉంటుంది. అందుకే వెబ్ వెర్షన్ ఇప్పుడు కొద్దిమంది ఆహ్వానితులకే పరిమితమైన చిన్న పైలట్గా ఉంచాం: ముందు Google Play app వస్తుంది, దాని సైనింగ్ సర్టిఫికేట్ను మేము Namaskara పొందండి పేజీలో ప్రచురిస్తాము.
భద్రతా సమస్యను నివేదించండి
ఏదైనా లోపం కనుగొన్నారా? దయచేసి బహిరంగంగా ప్రచురించే ముందు, విషయంలో "Security" అని రాసి Contact ద్వారా మాకు ప్రైవేట్గా తెలియజేయండి. మేము సమాధానం ఇస్తాము, సరిదిద్దుతాము, మీకు ఇష్టమైతే మీకు గుర్తింపు కూడా ఇస్తాము. దయచేసి ఇతరుల accounts పై పరీక్షలు చేయవద్దు.