VPN లో సమరూప vs. పబ్లిక్-కీ ఎన్క్రిప్షన్: ప్రతి ఒక్కటి ఏమి చేస్తుంది
VPN పబ్లిక్ కీలతో సహచరులను ధృవీకరిస్తుంది, తర్వాత ఉత్పన్నమైన సెషన్ కీలతో ప్యాకెట్లను ఎన్క్రిప్ట్ చేస్తుంది. సర్టిఫికెట్లు మరియు ట్రాఫిక్ కీలను వేర్వేరు వస్తువులుగా పరిగణించండి.
ప్రజలు VPN ను „పబ్లిక్-కీ ఎన్క్రిప్షన్ ఉపయోగించేది“ అని వివరించి, ప్రతి ప్యాకెట్ సర్వర్ సర్టిఫికెట్తో లాక్ చేయబడిందని ఊహిస్తారు. ఆ చిత్రం కాన్ఫిగ్ ఫైల్ లేదా ప్యాకెట్ రికార్డును చదివేటప్పుడు ముఖ్యమైన విధంగా తప్పు. VPN యొక్క పబ్లిక్-కీ సగం సహచరుడు ఎవరో నిరూపించడం మరియు రహస్య పదార్థంపై ఏకీభవించడం గురించి; సమరూప సగం ట్రాఫిక్ను నిజంగా రక్షించే భాగం, ప్యాకెట్ తర్వాత ప్యాకెట్, సెషన్ మొత్తం ఆయుష్షులో.
రెండు సగాలకు వేర్వేరు ఆయుష్షు, వైఫల్య విధానాలు మరియు సురక్షితంగా ప్రచురించగలిగే విషయాలు భిన్నం. వాటిని వేరు చేసిన తర్వాత, „RSA 2048 AES-128 కంటే బలహీనమా“ వంటి ప్రశ్నలు గందరగోళం కలిగించడం ఆపేస్తాయి, ఎందుకంటే అవి ఎప్పుడూ పోల్చదగినవి కావు.
కలిసి కలిపే మూడు కార్యకలాపాలు
పబ్లిక్-కీ క్రిప్టోగ్రఫీ కనీసం మూడు వేర్వేరు కార్యకలాపాలపై ఒక గొడుగు. సంతకం ప్రైవేట్ కీ యజమాని నిర్దిష్ట సందేశాన్ని ఆమోదించాడని నిరూపిస్తుంది. కీ ఒప్పందం ఇరు సహచరులకు బహిరంగంగా మార్పిడి చేసుకున్న విలువల నుండి పంచుకున్న రహస్యాన్ని పొందేలా చేస్తుంది. పబ్లిక్-కీ ఎన్క్రిప్షన్ డేటాను ఒకరి పబ్లిక్ కీ కింద దాచుతుంది, కాబట్టి ప్రైవేట్ కీ మాత్రమే దాన్ని తెరవగలదు.
VPN హ్యాండ్షేక్లు ఎక్కువగా మొదటి రెండింటిని ఉపయోగిస్తాయి. సర్టిఫికెట్ ఎన్క్రిప్షన్ కీ కాదు; అది పేరును పబ్లిక్ కీతో కలిపే సంతకం చేసిన ప్రకటన మరియు ఇప్పుడే పొందిన కీని నమ్మాలా అని మరొక వైపు నిర్ణయించుకోవడానికి అనుమతిస్తుంది. ఉదాహరణకు, TLS 1.3 కీ స్థాపన (EC)DHE కీ ఒప్పందం మరియు సర్టిఫికెట్ సంతకాలపై ఆధారపడి ఉంటుంది, సర్వర్ పబ్లిక్ కీతో సెషన్ను ఎన్క్రిప్ట్ చేయడంపై కాదు.
హ్యాండ్షేక్ నిజంగా ఏమి ఉత్పత్తి చేస్తుంది
ఆధునిక హ్యాండ్షేక్లో ప్రతి వైపు తాత్కాలిక కీ జోడిని సృష్టించి, పబ్లిక్ సగాలను మార్పిడి చేసుకుని, వైరు దాటని పంచుకున్న రహస్యాన్ని లెక్కిస్తుంది. ఆ రహస్యం తర్వాత కీ-ఉత్పాదన ఫంక్షన్ గుండా వెళ్లి ప్రతి దిశకు ప్రత్యేక కీలను, అలాగే రికార్డు పొరకు అవసరమైన nonce మరియు IV పదార్థాన్ని తయారు చేస్తుంది. WireGuard దీన్ని Noise ఆధారిత నిర్మాణంతో చేస్తుంది; TLS 1.3 దీన్ని హ్యాండ్షేక్ ట్రాన్స్క్రిప్ట్పై HKDF ద్వారా చేస్తుంది.
దీర్ఘకాలిక ఆధారం — సర్టిఫికెట్ మరియు ప్రైవేట్ కీ, లేదా స్థిర WireGuard కీ — ఆ మార్పిడిని ధృవీకరిస్తుంది. అది ట్రాన్స్క్రిప్ట్పై సంతకం చేస్తుంది లేదా అందులో కలుస్తుంది, కాబట్టి అపరిచితుడు సహచరుడి స్థానంలో హ్యాండ్షేక్ పూర్తి చేయలేడు. ఆ తర్వాత ఆధారం ప్రతి ప్యాకెట్కు పని చేయదు. చేసినట్లయితే ప్రతి ప్యాకెట్కు ప్రైవేట్-కీ కార్యకలాపం అవసరమయ్యేది, మరియు రద్దీగా ఉన్న సొరంగం స్టాక్లోని నెమ్మదైన కార్యకలాపంతో పరిమితమయ్యేది.
దీని నుండి రెండు ప్రక్క ప్రభావాలు వస్తాయి. మొదటిది, సెషన్ కీలు ప్రతిసారీ కొత్తవి, కాబట్టి తర్వాత దీర్ఘకాలిక కీని దొంగిలించే దాడికి పాల్పడేవాడు మునుపు రికార్డు చేసిన సెషన్లను డీక్రిప్ట్ చేయలేడు, ఒప్పందం తాత్కాలికమైతే. రెండవది, లీక్ అయిన సెషన్ కీ ఒక సెషన్ను ప్రమాదంలోకి నెడుతుంది, గుర్తింపును కాదు.
పెద్ద డేటా పరిమాణాలు సమరూప కీలను ఎందుకు ఉపయోగిస్తాయి
సమరూప సైఫర్లు పరిమాణాన్ని బాగా నిర్వహిస్తాయి: AES-GCM లేదా ChaCha20-Poly1305 ప్రతి ప్యాకెట్ను ఇప్పటికే మెమొరీలో ఉన్న కీతో ప్రాసెస్ చేసి, హెడర్ను ధృవీకరించి, కౌంటర్ పెంచుతాయి. స్వీకరించే వైపు nonce మరియు ధృవీకరణ ట్యాగ్ను తనిఖీ చేసి విఫలమైన లేదా పునరావృతమైన అన్నింటినీ పారేస్తుంది. ఇది సాధారణ హార్డ్వేర్పై లైన్ వేగంతో నడపడానికి తగినంత చవక, మరియు అదే నిర్మాణం ఒకే పాస్లో గోప్యతను, సమగ్రతను ఇస్తుంది.
నిర్మాణమే ఎక్కువ ఇంప్లిమెంటేషన్ బగ్లు నివసించే స్థలం. GCM లో nonce పునరావృతమైతే గోప్యత, ప్రామాణికత ఒకేసారి దెబ్బతింటాయి, కాబట్టి ప్రోటోకాల్లు దిశకు కీలను ఉత్పన్నం చేసి స్పష్టమైన కౌంటర్ లేదా యుగాన్ని ఉంచుతాయి. ప్యాకెట్ రికార్డును చదివేటప్పుడు ఎన్క్రిప్టెడ్ టెక్స్ట్ పొడవు సాదా టెక్స్ట్కు స్థిర అదనంతో సరిపోతే, పని చేస్తున్నది సమరూప పొర, ప్రతి ప్యాకెట్కు పబ్లిక్-కీ కార్యకలాపం కాదు.
ఆయుష్షు, కీ పునరుద్ధరణ మరియు ముందుకు రహస్యత
సెషన్ కీలు ముగిసేలా ఉద్దేశించబడ్డాయి. TLS 1.3 KeyUpdate సందేశానికి ట్రాఫిక్ కీలను తిప్పడానికి అనుమతిస్తుంది; WireGuard సెట్ చేసిన సమయం లేదా సందేశాల సంఖ్య తర్వాత సెషన్ను పునరుద్ధరించి, దారిలో ఉన్న ప్యాకెట్లకు పాతదాన్ని కొద్దిసేపు ఉంచుతుంది. OpenVPN తన డేటా ఛానెల్ కీలను షెడ్యూల్ ప్రకారం మళ్లీ చర్చిస్తుంది, reneg-sec విరామాన్ని నియంత్రిస్తుంది.
ఆ భ్రమణాలలో ఏదీ సర్టిఫికెట్ పునరుద్ధరణతో సమానం కాదు. సర్టిఫికెట్ ఏడాది చెల్లుబాటు కావచ్చు, అదే సమయంలో సెషన్ కీలు ప్రతి కొన్ని నిమిషాలకు మారుతాయి, మరియు నడుస్తున్న సొరంగం కీలను తాకకుండా సర్టిఫికెట్ను మార్చవచ్చు. గడువు ముగింపును ప్లాన్ చేసేటప్పుడు, ఏ వస్తువును తిప్పుతున్నారో అడగండి; క్లయింట్లు మళ్లీ కనెక్ట్ అవుతారా లేదా కీలను మాత్రమే పునరుద్ధరిస్తారా అని సమాధానం నిర్ణయిస్తుంది.
వస్తువులను కలపకుండా కాన్ఫిగ్ మరియు నిర్ధారణను చదవడం
ఆచరణలో మీరు పూర్తి ప్రోటోకాల్ మరియు దాని మద్దతు ఇచ్చే ప్రిమిటివ్లను ఎంచుకుంటారు, మీ స్వంతది కలిపి తయారు చేయరు. OpenVPN యొక్క --tls-crypt కీ నియంత్రణ ఛానెల్ను రక్షిస్తుంది; డేటా ఛానెల్ చర్చించిన సమరూప సైఫర్లను ఉపయోగిస్తుంది. WireGuard యొక్క PrivateKey, PublicKey నమోదులు గుర్తింపు పదార్థం, దాని రవాణా కీలు లోపలి నుండి ఉత్పన్నమవుతాయి. ఆ ఫీల్డ్లను ఒకే రకమైన రహస్యంగా చదవడం ప్రైవేట్ కీ ఉండాల్సిన చోట పబ్లిక్ కీని అతికించడం వంటి పొరపాట్లకు దారి తీస్తుంది.
పబ్లిక్ పదార్థాన్ని ప్రైవేట్ నుండి వేరుగా ఉంచండి. సర్టిఫికెట్, WireGuard పబ్లిక్ కీ మరియు వేలిముద్రను టికెట్లో పంచుకోవడం సురక్షితం. ప్రైవేట్ కీ, ముందుగా పంచుకున్న కీ మరియు ఎగుమతి చేసిన సెషన్ కీ అలా కావు. బలాన్ని పోల్చినప్పుడు ఒకే రకం లోపల పోల్చండి: దీర్ఘవృత్తాకార వక్ర గుర్తింపు, RSA మాడ్యులస్ పరిమాణం మరియు AES కీ పరిమాణం వేర్వేరు ఊహల కింద వేర్వేరు విషయాలను కొలుస్తాయి. TLS 1.3 స్పెసిఫికేషన్ మీ సొరంగం TLS కాకపోయినా రెండు పొరలు ఎలా సరిపోతాయనే దానికి ఉపయోగకరమైన సూచన.