లాగిన్ ఎలా పనిచేస్తుంది: Google సైన్-ఇన్, OAuth, పాస్కీలు, సులువుగా అర్థమయ్యేలా
ఈ పేజీ ఇంగ్లీష్ నుంచి ఆటోమేటిక్గా అనువదించబడింది.
Contents24
మీరు ఏదైనా యాప్ తెరిచినప్పుడు అది మిమ్మల్ని వెంటనే గుర్తుపడుతుంది కదా? దాని వెనుక కొన్ని చెక్లు నిశ్శబ్దంగా జరిగిపోతాయి. ఆశా అనే ఒక విద్యార్థిని, ఆమె ఫోన్లోని Edme App ద్వారా ఆ చెక్లు ఏంటో ఈ పోస్ట్లో చూద్దాం.
ఆశా UPSCకి ప్రిపేర్ అవుతోంది. ఆమె చదువులో ఎక్కువ భాగం ఫోన్లోనే జరుగుతుంది: బస్సులో, క్లాసుల మధ్యలో, రాత్రి పొద్దుపోయాక. పాఠాలు, ప్రాక్టీస్ టెస్టుల కోసం ఆమె Edme App వాడుతుంది. తన Google Calendarలో ఉన్న ఈవెంట్లను బట్టి యాప్ చదువుకునే టైమ్ ప్లాన్ చేస్తే బాగుంటుందని ఆమె అనుకుంటోంది. ఆమె లాగిన్ అయిన క్షణం నుంచి ఆమెతో పాటు నడుద్దాం.
మీ అకౌంట్ ఏదో యాప్కి ఎలా తెలుస్తుందో,
లాగిన్ అవ్వడం, ఏదైనా తెరవడానికి అనుమతి ఉండటం అనేవి రెండు వేర్వేరు చెక్లు ఎందుకో,
"Continue with Google" నొక్కినప్పుడు నిజంగా ఏం జరుగుతుందో,
మీ క్యాలెండర్ చదివే ముందు యాప్ ఎందుకు అనుమతి అడుగుతుందో, అలాగే
పాస్కీ (passkey)తో కేవలం వేలిముద్రతోనే ఎలా లాగిన్ అవ్వొచ్చో, ఫేక్ వెబ్సైట్లు దాన్ని ఎందుకు దొంగిలించలేవో.
1. ఈ అకౌంట్ మీదేనని నిరూపించడం
ఆశా Edme App తెరవగానే, యాప్ అన్నిటికంటే ముందు ఒక ప్రశ్నకు జవాబు తెలుసుకోవాలి: ఇది నిజంగా ఆశానేనా? ఆ ప్రశ్న అడగకపోతే, ఎవరైనా ఆమె నోట్స్, టెస్ట్ మార్కులు, సేవ్ చేసిన జవాబులు తెరిచేయొచ్చు.
ఆథెంటికేషన్ అంటే, స్క్రీన్ ముందు ఉన్న వ్యక్తి తాను తెరవాలనుకుంటున్న అకౌంట్ నిజంగా తన కంట్రోల్లోనే ఉందని చెక్ చేయడం.
దీనికి అన్నిటికంటే పాత పద్ధతి ఈమెయిల్, పాస్వర్డ్. ఈమెయిల్ ఏ అకౌంటో చెబుతుంది. పాస్వర్డ్ ఆ అకౌంట్లోకి వెళ్ళే హక్కు మీకు ఉందని చూపించే ఆధారం. ఫోన్కి వచ్చే OTP, మీ వేలిముద్ర, పాస్కీ ఇవన్నీ వేరే రకాల ఆధారాలు. అన్నీ ఒకే ప్రశ్నకు జవాబు చెబుతాయి.
లాగిన్ అవ్వడం వేరు, లోపలికి అనుమతి ఉండటం వేరు
ఇది ఆశానే అని తెలిశాక, యాప్ రెండో ప్రశ్న, వేరే ప్రశ్న అడుగుతుంది: ఆమె ఏమేం చూడొచ్చు? దీన్నే ఆథరైజేషన్ (Authorization) అంటారు.
మీ కాలేజీనే తీసుకోండి. గేటు దగ్గర ID కార్డు చూపిస్తే మీరు అక్కడి విద్యార్థి అని రుజువవుతుంది. అది ఆథెంటికేషన్. కానీ స్టాఫ్ రూమ్లోకి వెళ్ళొచ్చా లేదా అనేది పూర్తిగా వేరే రూల్. అది ఆథరైజేషన్.
Edme Appలో కూడా ఇలాగే పనిచేస్తుంది. ఆశా Prelims కోర్సు కొన్నది, కాబట్టి Prelims పాఠాలన్నీ తెరవగలదు. Mains కోర్సు కొనలేదు, ఆమె టీచర్ కూడా కాదు. అందుకే లాగిన్ అయి ఉన్నా ఆ స్క్రీన్లు ఆమెకు లాక్ అయ్యే ఉంటాయి.
ప్రశ్న | దాని పేరు |
|---|---|
ఈ వ్యక్తి కంట్రోల్లో ఉన్న అకౌంట్ ఏది? | ఆథెంటికేషన్ |
ఈ అకౌంట్ ఏమేం చేయొచ్చు? | ఆథరైజేషన్ |
అంటే మీ లాగిన్ బాగానే పనిచేసింది. రెండో చెక్, అంటే పర్మిషన్ చెక్, కుదరదు అంటోంది. లాగౌట్ చేసి మళ్ళీ లాగిన్ అయినా ఏమీ మారదు; కోర్సు కొంటే లేదా సరైన రోల్ వస్తే మారుతుంది.
2. పాస్వర్డ్లు, యాప్ ప్రతిసారీ ఎందుకు అడగదు
ఆశా పాస్వర్డ్తో లాగిన్ అయినప్పుడు మూడు విషయాలు జరుగుతాయి:
ఆమె తన ఈమెయిల్, పాస్వర్డ్ టైప్ చేస్తుంది.
Edme App పాస్వర్డ్ని చెక్ చేస్తుంది.
సరిపోతే, ఆమె లోపలికి వెళ్ళిపోతుంది.
బాగా తయారు చేసిన యాప్ మీ పాస్వర్డ్ని ఎప్పుడూ అలాగే చదవగలిగే టెక్స్ట్గా దాచుకోదు. దాని గజిబిజి చేసిన రూపాన్ని మాత్రమే దాచుకుంటుంది. మీరు టైప్ చేసిన పాస్వర్డ్ సరైనదో కాదో చెక్ చేయడానికి అది పనికొస్తుంది, కానీ దాన్ని మళ్ళీ అసలు పాస్వర్డ్గా మార్చలేం. అందుకే "Forgot password" నొక్కితే మీ పాత పాస్వర్డ్ చెప్పకుండా రీసెట్ లింక్ పంపిస్తుంది: నిజంగానే అది యాప్ దగ్గర ఉండదు.
ప్రతి పాఠానికీ ఆమె మళ్ళీ ఎందుకు లాగిన్ అవ్వదు
ఆశా ఒక పాఠం తెరుస్తుంది, తర్వాత ఇంకోటి, తర్వాత ఒక టెస్ట్. ప్రతిసారీ పాస్వర్డ్ టైప్ చేయదు. ఒక్కసారి లాగిన్ సక్సెస్ అయ్యాక, యాప్ ఆమె ఫోన్కి ఒక తాత్కాలిక పాస్ ఇస్తుంది. దీన్నే సెషన్ (session) అంటారు.
కాన్సర్ట్లోనో, కాలేజీ ఫెస్ట్లోనో ఇచ్చే రిస్ట్బ్యాండ్ లాంటిది ఇది. గేటు దగ్గర ఒక్కసారి టికెట్ చూపిస్తారు, వాళ్ళు మీ చేతికి బ్యాండ్ కడతారు. ఇక ఈవెంట్ అయిపోయేవరకు మీరు హాయిగా లోపల తిరగొచ్చు.
వెబ్సైట్లో అయితే, బ్రౌజర్ ఈ పాస్ని కుకీ (cookie) అనే చిన్న సేవ్ చేసిన డేటాలో దాచుకుంటుంది. ఆమె ఫోన్లోని Edme App కూడా దాదాపు అలాంటిదే దాచుకుంటుంది. ఏదైనా సరే, దాని వల్ల యాప్ మళ్ళీ అడగకుండానే ప్రతి స్క్రీన్లో ఆమెను గుర్తుపడుతుంది.
"Log out" నొక్కినా, బ్రౌజర్ డేటా క్లియర్ చేసినా, లేదా కొంత టైమ్ తర్వాత పాస్ ఎక్స్పైర్ అయిపోయినా, ఆ రిస్ట్బ్యాండ్ పోయినట్టే. తర్వాతిసారి యాప్ మళ్ళీ రుజువు అడుగుతుంది.
మిగతా పోస్ట్ అంతా ఇది గుర్తుంచుకోండి: ఆశా ఏ పద్ధతిలో లాగిన్ అయినా (పాస్వర్డ్, Google లేదా పాస్కీ), లాగిన్ స్టెప్ ఆమె ఎవరో మాత్రమే నిరూపిస్తుంది. ఆ తర్వాత ఆమెను లాగిన్లోనే ఉంచేది సెషన్.
3. "Continue with Google" నొక్కినప్పుడు ఏం జరుగుతుంది
Edme App లాగిన్ స్క్రీన్పై Continue with Google అనే బటన్ ఉంటుంది. ఆశా దాన్ని నొక్కితే, Edme App కోసం కొత్త పాస్వర్డ్ పెట్టుకోవాల్సిన అవసరమే లేదు. ఆ పని ఆమె Google అకౌంట్ చూసుకుంటుంది.
ఆ రెండు మూడు సెకన్లలో జరిగేది ఇదే:
Edme App ఆశాను Google దగ్గరికి పంపిస్తుంది.
అది ఆమేనా అని Google చెక్ చేస్తుంది. సాధారణంగా ఆమె ఫోన్లో ఇప్పటికే Googleలో సైన్ ఇన్ అయి ఉంటుంది, కాబట్టి ఆమె చేయాల్సిందల్లా తన అకౌంట్ ఎంచుకోవడమే.
Google, Edme Appకి సంతకం చేసిన ఒక చీటీ ఇస్తుంది. దాని అర్థం ఇంచుమించు ఇదే: "ఇది ఆశా Google అకౌంట్, మేము చెక్ చేశాం."
ఆ చీటీ నిజంగా Google నుంచే వచ్చిందా, అది వేరే యాప్ కోసం కాకుండా Edme App కోసమే ఉద్దేశించిందా అని Edme App చెక్ చేస్తుంది.
Edme App ఆమె కోసం తన సొంత సెషన్ మొదలుపెడుతుంది. ఇంతకు ముందు చెప్పుకున్న రిస్ట్బ్యాండ్ ఇదే.
sequenceDiagram
participant A as ఆశా
participant E as Edme App
participant G as Google
A->>E: Continue with Google నొక్కుతుంది
E->>G: ఇది ఎవరో కన్ఫర్మ్ చేయండి
G->>A: మీ అకౌంట్ ఎంచుకోండి
A->>G: తన అకౌంట్ ఎంచుకుంటుంది
G-->>E: సంతకం చేసిన చీటీ: ఇది ఆశా
E->>E: చీటీ నిజమైనదేనా అని చెక్ చేస్తుంది
E-->>A: ఆమె Edme అకౌంట్ తెరుస్తుందిGoogle ఆశా తరఫున హామీ ఇస్తుంది. Edme App Google చీటీని చెక్ చేసి, తన సొంత సెషన్ మొదలుపెడుతుంది.
దానికి Google ఇచ్చే చీటీ మాత్రమే అందుతుంది. మీ Google పాస్వర్డ్ మీకూ Googleకీ మధ్యనే ఉంటుంది.
ఆ చీటీ రాయడానికి, చెక్ చేయడానికి ఉన్న రూల్బుక్ పేరు OpenID Connect, లేదా OIDC. వివరాలు మీకు అవసరం లేదు. ఒక సర్వీస్ ఇంకో సర్వీస్కి "అవును, ఈ వ్యక్తి తాను చెప్పుకుంటున్న వ్యక్తే" అని చెప్పే స్టాండర్డ్ పద్ధతి ఇది అని గుర్తుంచుకుంటే చాలు.
"Continue with Google" మీరు ఎవరో మాత్రమే Edme Appకి చెబుతుంది. మీ క్యాలెండర్ చదవాలంటే వేరే పర్మిషన్ కావాలి, దాని గురించి Google తన సొంత స్క్రీన్పై మిమ్మల్ని అడుగుతుంది. అదే తర్వాతి సెక్షన్.
4. OAuth: మీ Google డేటాలో కొంచెం ఒక యాప్ వాడుకోనివ్వడం
తన క్లాసులు, కోచింగ్ టైమింగ్స్ చుట్టూ చదువుకునే స్లాట్లు సూచించడానికి Edme App తన క్యాలెండర్ చూడాలని ఆశా కోరుకుంటుంది. దానికోసం, Google దగ్గర ఉన్న సమాచారాన్ని యాప్ చదవాలి.
పాత, తప్పుడు పద్ధతి ఏంటంటే, Edme Appకి ఆమె Google పాస్వర్డ్ ఇచ్చేయడం. ఒక్క మొక్కకి నీళ్ళు పోయమని ఫ్రెండ్కి ఇంటి తాళాలన్నీ ఇచ్చేసినట్టు ఉంటుంది. వాళ్ళు ఏ గది అయినా తెరవగలరు.
OAuth అంటే, మీ పాస్వర్డ్ ఎవరికీ ఇవ్వకుండానే, ఇంకో సర్వీస్లోని మీ అకౌంట్తో ఒక నిర్దిష్టమైన పని చేయడానికి ఒక యాప్కి అనుమతి ఇచ్చే స్టాండర్డ్ పద్ధతి.
Google Calendar కనెక్ట్ చేయడం
ఆశా Edme Appలో Connect Google Calendar నొక్కినప్పుడు, Google తన సొంత స్క్రీన్ చూపిస్తుంది, ఇంచుమించు ఇలా:
Edme App wants to: See your calendar events. [Cancel] [Allow]
ఆమె Allow నొక్కితే, Google Edme Appకి ఒక యాక్సెస్ టోకెన్ (access token) ఇస్తుంది. దీన్ని ఒక పరిమితమైన పాస్ అనుకోండి. హాస్టల్ విజిటర్ స్లిప్ లాగా: దానితో ఎవరైనా కామన్ రూమ్ వరకే వెళ్ళగలరు, ఇంకెక్కడికీ కాదు. Edme App ఆమె క్యాలెండర్ కోసం Googleని అడిగిన ప్రతిసారీ ఈ పాస్ చూపిస్తుంది, జవాబు ఇచ్చే ముందు Google దాన్ని చెక్ చేస్తుంది.
flowchart TD
A[Edme App క్యాలెండర్ చదవడానికి అనుమతి అడుగుతుంది] --> B[Google ఆశాకు పర్మిషన్ స్క్రీన్ చూపిస్తుంది]
B --> C{ఆశా అనుమతి ఇస్తుందా?}
C -->|లేదు| D[ఏమీ షేర్ అవ్వదు]
C -->|అవును| E[Edme Appకి యాక్సెస్ టోకెన్ వస్తుంది]
E --> F[Edme App టోకెన్ చూపించి Googleని క్యాలెండర్ ఈవెంట్లు అడుగుతుంది]
F --> G[Google టోకెన్ చెక్ చేసి, అనుమతించినవి మాత్రమే పంపిస్తుంది]పర్మిషన్ లేకపోతే డేటా లేదు. పర్మిషన్ ఉంటే, ఆశా ఒప్పుకున్న వాటికి మాత్రమే టోకెన్ పనిచేస్తుంది.
మీరు ఒప్పుకున్న వాటికే పాస్ పనిచేస్తుంది
క్యాలెండర్ ఈవెంట్లు చదవడానికి అనుమతి ఉన్న టోకెన్తో Edme App ఆమె Gmail చదవలేదు, ఫోటోలు చూడలేదు, ఆమె ఈవెంట్లను డిలీట్ చేయలేదు. ఈ హద్దునే ఆ పర్మిషన్ యొక్క స్కోప్ (scope) అంటారు. Allow నొక్కే ముందు ఆ Google స్క్రీన్ని ఎప్పుడూ చదవండి.
పర్మిషన్ వెనక్కి తీసుకోవడం
ఆశా ఎప్పుడైనా తన Google Account సెట్టింగ్స్ నుంచి Edme Appకి ఇచ్చిన క్యాలెండర్ యాక్సెస్ తీసేయొచ్చు. Security కింద, ఆమె కనెక్ట్ చేసిన థర్డ్-పార్టీ యాప్ల లిస్ట్ ఉంటుంది. గమనించండి, Edme App నుంచి లాగౌట్ అయితే ఈ పర్మిషన్ పోదు. అవి రెండు వేర్వేరు స్విచ్లు.
Google సైన్-ఇన్ vs OAuth, పక్కపక్కన
రెండూ ఒకే Google స్క్రీన్లు వాడతాయి కాబట్టి వీటిని తరచూ కలిపేసుకుంటారు. తేడా ఇదే:
Continue with Google (OIDC) | Connect Google Calendar (OAuth) | |
|---|---|---|
ఇది జవాబు చెప్పే ప్రశ్న | మీరు ఎవరు? | మీ డేటాతో ఈ యాప్ ఏం చేయొచ్చు? |
యాప్కి ఏం వస్తుంది | మీరు ఎవరో చెప్పే, సంతకం చేసిన చీటీ | కొన్ని నిర్దిష్ట డేటా కోసం ఒక పరిమిత పాస్ (యాక్సెస్ టోకెన్) |
ఉదాహరణ | Edme Appలోకి లాగిన్ అవ్వడం | Edme App మీ క్యాలెండర్ చదవడం |
ఈ రెండు పేర్లు కలిసి కనిపించడానికి కారణం ఉంది: OpenID Connect అనేది OAuth 2.0 పైనే నిర్మించబడింది. ఒకటి "మీరు దేనికి అనుమతించారు" అని చెబితే, దానిపైన రెండోది "మీరు ఎవరు" అనేది జోడిస్తుంది.
5. పాస్కీలతో వెబ్ ఆథెంటికేషన్
పాస్వర్డ్లతో రెండు పెద్ద సమస్యలు ఉన్నాయి. జనం వాటిని మర్చిపోతారు, అందుకే అన్ని చోట్లా ఒకటే వాడేస్తారు. ఇంకా, మోసపోయి ఫేక్ వెబ్సైట్లలో టైప్ చేసేస్తారు. పాస్కీలు ఈ రెండు సమస్యలనూ తీర్చేస్తాయి. లాగిన్ అవ్వడానికి ఇదే సరికొత్త పద్ధతి. ఇకపై చాలా యాప్లలో కనిపిస్తాయి కాబట్టి, వీటిని సరిగ్గా అర్థం చేసుకోవడం మంచిది.
పాస్కీ అంటే ఏమిటి
పాస్కీ అనేది మీ బుర్రలో కాకుండా మీ ఫోన్లో (లేదా మీ Google లేదా Apple అకౌంట్లో) ఉండే ఒక లాగిన్. మీరు దాన్ని ఎప్పుడూ చూడరు, టైప్ చేయరు. మీ ఫోన్ అన్లాక్ చేయడానికి వాడేదానితోనే దాన్ని అన్లాక్ చేస్తారు: మీ వేలిముద్ర, మీ ముఖం, లేదా మీ స్క్రీన్ PIN.
ఆశా వైపు నుంచి చూస్తే, పాస్కీతో లాగిన్ ఇలా ఉంటుంది: Sign in with passkey నొక్కాలి, ఫింగర్ప్రింట్ సెన్సర్ తాకాలి, అయిపోయింది. పాస్వర్డ్ లేదు, OTP కోసం ఎదురుచూపు లేదు.
దీని వెనుక ఉన్న రెండు కీలు
ప్రతి పాస్కీ నిజానికి ఒక జత డిజిటల్ కీలు. ఇవి ఫోన్ తయారు చేసే పొడవైన అంకెల వరుసలు. వీటిని ఎవరూ గుర్తుపెట్టుకోవాల్సిన అవసరం లేదు.
ప్రైవేట్ కీ (private key) ఆశా ఫోన్లోనే ఉంటుంది. రుజువు తయారు చేయడానికి దీన్ని వాడతారు.
పబ్లిక్ కీ (public key) Edme Appకి ఇస్తారు. ఆ రుజువును చెక్ చేయడానికి దీన్ని వాడతారు.
దీన్ని ఇలా ఊహించుకోండి. ఆశా దగ్గర ఒక రబ్బర్ స్టాంప్ ఉంది, దాని డిజైన్ ప్రపంచంలో ఇంకెవరి దగ్గరా లేదు. ఆమె ఆ స్టాంప్ని తాళం వేసి దాచుకుంటుంది. ఆ స్టాంప్ ముద్ర ఎలా ఉంటుందో ఒక ఫోటో Edme Appకి ఇస్తుంది. లాగిన్ అవ్వాలనుకున్న ప్రతిసారీ, ఒక కొత్త కాగితం మీద స్టాంప్ వేస్తుంది, యాప్ ఆ ముద్రను ఫోటోతో పోల్చి చూస్తుంది. యాప్ ముద్రను చెక్ చేయగలదు, కానీ ఆ ఫోటో చూసి స్టాంప్కి కాపీ ఎవరూ చెక్కలేరు.
డిజిటల్ వెర్షన్ నిజమైన స్టాంప్ కంటే చాలా బలమైనది: ఇది ఒక రకమైన గణితం మీద ఆధారపడి ఉంటుంది. ఎంత శక్తివంతమైన కంప్యూటర్లు ఉన్నా, పబ్లిక్ కీ నుంచి వెనక్కి లెక్కించి ఎవరూ కనిపెట్టలేరు.
ప్రైవేట్ కీ మీ డివైస్ దాటి ఎప్పటికీ బయటికి వెళ్ళదు. పబ్లిక్ కీని యాప్ దాచుకోవడం సురక్షితమే. దానితో మాత్రమే లాగిన్ అవ్వలేరు, కాబట్టి ఎవరైనా యాప్ నుంచి దాన్ని దొంగిలించినా, దానితో మీ అకౌంట్లోకి రాలేరు.
పాస్కీ తయారు చేయడం
ఆశా ఇప్పటికే Edme Appలో లాగిన్ అయి ఉంది. తన అకౌంట్ సెట్టింగ్స్కి వెళ్ళి Create a passkey నొక్కుతుంది. తర్వాత:
ఫోన్ పట్టుకున్నది నిజంగా ఆమేనా అని నిర్ధారించుకోవడానికి, ఫోన్ ఆమె వేలిముద్ర అడుగుతుంది.
ఫోన్ కేవలం Edme App కోసమే ఒక సరికొత్త కీ జత తయారు చేస్తుంది.
ప్రైవేట్ కీ ఫోన్లో (లేదా ఆమె Google Password Manager / iCloud Keychainలో) సురక్షితంగా సేవ్ అవుతుంది.
పబ్లిక్ కీ Edme Appకి వెళ్తుంది.
Edme App ఆ జవాబును చెక్ చేసి, పబ్లిక్ కీని ఆశా అకౌంట్తో పాటు సేవ్ చేస్తుంది.
sequenceDiagram
participant A as ఆశా
participant P as ఆమె ఫోన్
participant E as Edme App
A->>E: Create a passkey నొక్కుతుంది
E-->>P: edmeapp.ai కోసం ఒక పాస్కీ తయారు చేయండి
P->>A: ఫింగర్ప్రింట్ సెన్సర్ తాకండి
A->>P: తాకుతుంది
P->>P: కీ జత తయారు చేసి, ప్రైవేట్ కీని దాచుకుంటుంది
P->>E: పబ్లిక్ కీని మాత్రమే పంపిస్తుంది
E->>E: దాన్ని ఆశా అకౌంట్లో సేవ్ చేస్తుందిపాస్కీ తయారీ: ప్రైవేట్ కీ ఫోన్లోనే ఉంటుంది, పబ్లిక్ కీ మాత్రమే బయటికి వెళ్తుంది.
పాస్కీతో లాగిన్ అవ్వడం
మరుసటి రోజు ఆశా Edme App తెరిచి Sign in with passkey నొక్కుతుంది.
Edme App ఆమె ఫోన్కి ఒక కొత్త, రాండమ్ పజిల్ పంపిస్తుంది. ప్రతిసారీ కొత్తదే వస్తుంది.
ఫోన్ ఆమె వేలిముద్ర అడుగుతుంది.
ఆమె సెన్సర్ తాకగానే, ఫోన్ ప్రైవేట్ కీతో సరిగ్గా ఆ పజిల్ మీదే సంతకం చేస్తుంది. ఈ సంతకం చేసిన జవాబునే డిజిటల్ సంతకం (digital signature) అంటారు.
Edme App ఇంతకు ముందు సేవ్ చేసుకున్న పబ్లిక్ కీతో ఆ సంతకాన్ని చెక్ చేస్తుంది.
సరిపోతే, ఆమె లోపలికి వెళ్ళిపోతుంది, యాప్ ఆమె సెషన్ మొదలుపెడుతుంది.
sequenceDiagram
participant A as ఆశా
participant P as ఆమె ఫోన్
participant E as Edme App
A->>E: Sign in with passkey నొక్కుతుంది
E-->>P: ఇదిగో కొత్త పజిల్, దీనిపై సంతకం చేయండి
P->>A: ఫింగర్ప్రింట్ సెన్సర్ తాకండి
A->>P: తాకుతుంది
P->>E: ప్రైవేట్ కీతో సంతకం చేసిన పజిల్
E->>E: పబ్లిక్ కీతో సంతకాన్ని చెక్ చేస్తుంది
E-->>A: లాగిన్ అయిందిలాగిన్: ఫోన్ ప్రతిసారీ కొత్త పజిల్పై సంతకం చేస్తుంది, యాప్ దాన్ని చెక్ చేస్తుంది.
ప్రతిసారీ కొత్త పజిల్ ఎందుకు? ఎందుకంటే అప్పుడు పాత జవాబు ఎందుకూ పనికిరాదు. ఎవరైనా ఎలాగోలా నిన్నటి సంతకం చేసిన పజిల్ని రికార్డ్ చేసినా, ఈరోజు పజిల్ వేరే. కాబట్టి దాన్ని మళ్ళీ వాడినా ఏ లాభం ఉండదు. ప్రతి లాగిన్కీ మారే OTP లాంటి ఆలోచనే ఇది.
ఫేక్ వెబ్సైట్ పాస్కీని ఎందుకు దొంగిలించలేదు
ఇలా ఊహించుకోండి. ఆశాకు ఒక SMS వస్తుంది: "మీ Edme సబ్స్క్రిప్షన్ ఈరోజు ఎక్స్పైర్ అవుతుంది! edme-app-offer.comలో రెన్యూ చేయండి". ఆ పేజీ అచ్చం అసలు Edme లాగిన్ స్క్రీన్ లాగే ఉంటుంది.
పాస్వర్డ్ అయితే, అడ్రస్ తప్పు అని గమనించకుండా ఆమె టైప్ చేసేయొచ్చు. ఇక అది మోసగాళ్ళ చేతికి చిక్కినట్టే.
పాస్కీ అయితే, ఆమె ఫోన్ లోగో చూసి కాకుండా, వెబ్సైట్ అడ్రస్ని తనే స్వయంగా చెక్ చేస్తుంది. ఆమె పాస్కీ edmeapp.ai కోసం తయారైంది, కాబట్టి edme-app-offer.comలో ఫోన్ దాన్ని అసలు చూపించదు. ఆమె టైప్ చేయడానికి ఏమీ లేదు, ఇవ్వడానికీ ఏమీ లేదు.
ఫేక్ పేజీ చూసి మీరు మోసపోవచ్చు. కానీ ఫేక్ అడ్రస్కి మీ ఫోన్ మోసపోదు. పాస్కీతో మీ రహస్యాన్ని మీరు ఎప్పుడూ ఎవరికీ ఇవ్వరు, కాబట్టి మిమ్మల్ని మోసం చేసి లాక్కోవడానికి ఏమీ ఉండదు.
మీ వేలిముద్ర మీ ఫోన్లోనే ఉంటుంది
మీ వేలిముద్ర మీ సొంత ఫోన్లో పాస్కీని అన్లాక్ చేస్తుంది అంతే, స్క్రీన్ అన్లాక్ చేసినట్టే. మీ వేలిముద్ర, ఫేస్ స్కాన్, ఫోన్ PIN ఏదీ Edme Appకి చేరదు. దానికి అందేది సంతకం చేసిన పజిల్ మాత్రమే.
ఫోన్ పోగొట్టుకుంటే ఎలా?
ఇది పాస్కీ ఎక్కడ సేవ్ అయిందనే దాని మీద ఆధారపడి ఉంటుంది.
సింక్ అయ్యే పాస్కీలు మీ Google Password Manager (Android) లేదా iCloud Keychain (iPhone)లో సేవ్ అవుతాయి. కొత్త ఫోన్లో మీ Google లేదా Apple అకౌంట్తో సైన్ ఇన్ అయితే, అవి కూడా తిరిగి వచ్చేస్తాయి.
ఒక్క డివైస్కే పరిమితమైన పాస్కీలు, ఉదాహరణకు USB సెక్యూరిటీ కీలో ఉన్నవి, ఆ ఒక్క డివైస్లోనే ఉంటాయి. అది పోతే, ఆ పాస్కీ కూడా పోయినట్టే.
ఏదైనా సరే, మీ అకౌంట్లోకి రావడానికి ఇంకో దారి ఉంచుకోండి: రెండో పాస్కీ, మీ Google సైన్-ఇన్, లేదా యాప్లోని అకౌంట్ రికవరీ. అదే మీ బ్యాకప్ తలుపు.
మీ ఫోన్ PIN తెలిసిన ఎవరైనా మీ పాస్కీలు వాడేయొచ్చు. స్క్రీన్ లాక్ ఎప్పుడూ ఆన్లో ఉంచండి, ఆ PIN ఫ్రెండ్స్కి కూడా చెప్పకండి.
అయితే WebAuthn అంటే ఏమిటి?
సెట్టింగ్స్లో గానీ ఆర్టికల్స్లో గానీ WebAuthn అనే పదం మీకు కనిపించొచ్చు. ఇది Web Authenticationకి షార్ట్ ఫామ్.
WebAuthn అంటే పాస్కీల గురించి వెబ్సైట్ మీ బ్రౌజర్తో మాట్లాడే కామన్ భాష. దీని ద్వారా వెబ్సైట్ "నా కోసం కొత్త పాస్కీ తయారు చేయి" అని గానీ "ఈ పజిల్పై సంతకం చేయి" అని గానీ అడగగలదు. అప్పుడు బ్రౌజర్ మీ ఫోన్లోని ఫింగర్ప్రింట్ సెన్సర్, ఫేస్ అన్లాక్ లేదా సెక్యూరిటీ కీతో మాట్లాడి, జవాబును తిరిగి అందిస్తుంది. Chrome, Safari, Firefox, Edge అన్నీ ఈ భాష మాట్లాడతాయి. Android, iPhone యాప్లు కూడా లోపల ఇదే స్టాండర్డ్ వాడతాయి. అందుకే ఒక యాప్, దాని వెబ్సైట్ లింక్ అయి ఉంటే, ఒకే పాస్కీ రెండింట్లోనూ పనిచేయగలదు.
పాస్కీ అంటే తాళం చెవి. ఆ తాళం చెవిని వాడమని వెబ్సైట్ మీ బ్రౌజర్ని అడిగే పద్ధతే WebAuthn.
పాస్కీల గురించి సాధారణంగా ఉండే అపోహలు
జనం ఏమనుకుంటారు | అసలు నిజం |
|---|---|
పాస్కీ అంటే నా వేలిముద్రే. | కాదు. మీ వేలిముద్ర మీ ఫోన్లో పాస్కీని అన్లాక్ చేస్తుంది అంతే. |
వెబ్సైట్ నా వేలిముద్రను దాచుకుంటుంది. | కాదు. అది పబ్లిక్ కీని మాత్రమే దాచుకుంటుంది, మీ వేలిముద్రను ఎప్పుడూ చూడదు. |
వెబ్సైట్ హ్యాక్ అయితే, నా పాస్కీ దొంగతనం అవుతుంది. | పబ్లిక్ కీని మాత్రమే తీసుకోగలరు, దానితో లాగిన్ అవ్వడం కుదరదు. |
పాస్కీ నేను తయారు చేసిన ఫోన్లో మాత్రమే పనిచేస్తుంది. | సాధారణంగా కాదు. చాలా పాస్కీలు మీ Google లేదా Apple అకౌంట్ ద్వారా సింక్ అవుతాయి. |
పాస్కీలు అంటే ఫ్యాన్సీ పాస్వర్డ్లే. | కాదు. మీరు టైప్ చేసే లేదా షేర్ చేసే రహస్యం ఏదీ ఉండదు. అందుకే ఫేక్ సైట్లు దాన్ని పట్టుకోలేవు. |
6. అన్నీ కలిపి చూద్దాం
ఆశా ఉదయం ఇలా గడుస్తుంది, ఈ పోస్ట్లోని ప్రతి ఆలోచన దాని చోట:
ఆమె Continue with Google నొక్కుతుంది. Google సంతకం చేసిన చీటీ పంపిస్తుంది, Edme App దాన్ని చెక్ చేస్తుంది. (ఆథెంటికేషన్, OIDC ద్వారా)
ఆమె తన Prelims పాఠం తెరుస్తుంది. ఆమె అకౌంట్ ఆ కోర్సు కొన్నదా అని యాప్ చెక్ చేస్తుంది. (ఆథరైజేషన్)
ఆమె ప్రాక్టీస్ టెస్ట్కి వెళ్తుంది. మళ్ళీ లాగిన్ అవసరం లేదు, ఎందుకంటే ఆమె రిస్ట్బ్యాండ్ ఇంకా పనిచేస్తోంది. (సెషన్)
ఆమె తన క్యాలెండర్ కనెక్ట్ చేస్తుంది. Google ఆమె అనుమతి అడుగుతుంది, యాప్కి ఒక పరిమిత పాస్ వస్తుంది. (OAuth)
ఆమె ఒక పాస్కీ తయారు చేస్తుంది. రేపటి నుంచి కేవలం వేలిముద్రతోనే లాగిన్ అవ్వొచ్చు. (పాస్కీ, WebAuthn ద్వారా)
వీటిలో ప్రతి ఒక్కటీ వేరే వేరే పని చేస్తుంది, ఒక మామూలు యాప్ వీటన్నిటినీ కలిపి వాడుతుంది.
క్లుప్తంగా
పదం | ఒక్క లైన్లో దాని పని |
|---|---|
ఆథెంటికేషన్ (Authentication) | అకౌంట్ మీదేనని నిరూపిస్తుంది. |
ఆథరైజేషన్ | మీరు ఏమేం తెరవొచ్చో నిర్ణయిస్తుంది. |
సెషన్ | ఒక్కసారి లాగిన్ అయ్యాక మిమ్మల్ని లాగిన్లోనే ఉంచుతుంది. |
Google సైన్-ఇన్ / OIDC | మీరు ఎవరో Google హామీ ఇచ్చేలా చేస్తుంది. |
OAuth | వేరే చోట ఉన్న మీ డేటాలో కొంత భాగానికి ఒక యాప్కి పరిమిత పాస్ ఇస్తుంది. |
పాస్కీ | పాస్వర్డ్కి బదులు మీ ఫోన్లోని కీతో లాగిన్ చేయిస్తుంది. |
WebAuthn | బ్రౌజర్ ద్వారా పాస్కీలు తయారు చేయడానికి, వాడటానికి వెబ్సైట్లు వాడే భాష. |
7. మిమ్మల్ని మీరు చెక్ చేసుకోండి
జవాబు చూడటానికి ప్రశ్నపై నొక్కండి.
1. ఆశా సక్సెస్ఫుల్గా లాగిన్ అయింది, కానీ టీచర్ డాష్బోర్డ్ తెరవలేకపోతోంది. ఏ చెక్ ఆమెను ఆపింది?
ఆథరైజేషన్. ఆమె లాగిన్ పనిచేసింది. ఆమె అకౌంట్కి టీచర్ పర్మిషన్ లేదు అంతే.
2. "Continue with Google" వల్ల Edme App ఆమె క్యాలెండర్ చదవగలదా?
లేదు. సైన్ ఇన్ చేయడం వల్ల ఆమె ఎవరో మాత్రమే యాప్కి తెలుస్తుంది. క్యాలెండర్ యాక్సెస్కి వేరే పర్మిషన్ (OAuth) కావాలి.
3. పాస్కీ లాగిన్ సమయంలో పబ్లిక్ కీ ఏం చేస్తుంది?
అది రుజువును చెక్ చేస్తుంది. ఫోన్ ప్రైవేట్ కీతో ఒక కొత్త పజిల్పై సంతకం చేస్తుంది, ఆ సంతకాన్ని చెక్ చేయడానికి యాప్ పబ్లిక్ కీని వాడుతుంది.
4. Edme Appకి ఆశా వేలిముద్ర చేరుతుందా?
లేదు. వేలిముద్ర చెక్ ఆమె ఫోన్లోనే జరుగుతుంది. యాప్కి సంతకం చేసిన పజిల్ మాత్రమే అందుతుంది, ఇంకేమీ కాదు.
5. ఒక ఫేక్ సైట్ Edme లాగిన్ పేజీని అచ్చుగుద్దినట్టు కాపీ చేసింది. అయినా ఆశా పాస్కీని అది ఎందుకు తీసుకోలేదు?
ఎందుకంటే ఆమె ఫోన్ పేజీ ఎలా కనిపిస్తుందో కాదు, వెబ్సైట్ అడ్రస్ని చెక్ చేస్తుంది. ఆమె పాస్కీ edmeapp.aiకి చెందినది, కాబట్టి వేరే ఏ అడ్రస్లోనూ ఫోన్ దాన్ని వాడదు.
6. హ్యాకర్లు ఒక వెబ్సైట్లోకి చొరబడి అందరి పాస్కీ డేటా కాపీ చేశారు. వాళ్ళు ఆ యూజర్లుగా లాగిన్ అవ్వగలరా?
లేదు. వెబ్సైట్ దగ్గర ఎప్పుడూ పబ్లిక్ కీలు మాత్రమే ఉన్నాయి. లాగిన్ అవ్వాలంటే ప్రైవేట్ కీ కావాలి, అది యూజర్ల ఫోన్లు దాటి ఎప్పుడూ బయటికి రాలేదు.
ఇంకా చదవాలంటే
ఇంకా లోతుగా తెలుసుకోవాలనుకుంటే, ఈ పోస్ట్కి ఆధారమైన సోర్సులు ఇవే. మొదలుపెట్టడానికి MDN పేజీలు అన్నిటికంటే సులువుగా ఉంటాయి.