పరికరం గడియారం జరిగినప్పుడు TOTP కోడ్లు ఎందుకు విఫలమవుతాయి
కోడ్ అనేది రహస్యం మరియు ప్రస్తుత సమయ-దశ యొక్క హాష్. రెండు చివరల ఆఫ్సెట్లను పోల్చి, ఆపై విండోను విస్తరించడం బదులు గడియారాన్ని సరిచేయండి.
ఒకసారి ఉపయోగించే కోడ్లు మీ ఫోన్లో పూర్తిగా సరిగ్గా ఉండవచ్చు, అయినా అదే సెకనులో సర్వర్ వాటిని తిరస్కరించవచ్చు. రెండు వైపులా ఒకే పంచుకున్న రహస్యం మరియు ప్రస్తుత సమయ-దశ నుండి ఒకే ఫంక్షన్ను లెక్కిస్తాయి, కాబట్టి సమయం గురించి భిన్నాభిప్రాయం కోడ్ గురించి భిన్నాభిప్రాయాన్ని కలిగిస్తుంది. ఇది గడియార జరుగుదలను కేవలం ఇబ్బంది కాకుండా భద్రతకు సంబంధించిన లోపంగా మారుస్తుంది.
ఇక్కడ రెండు గడియారాలు ముఖ్యం, కనిపించే దాన్ని సరిచేయడం ప్రజలు మొదట చేసే భాగం. సాధారణంగా శ్రద్ధ అవసరమయ్యే గడియారం మరొకటి.
కోడ్ సమయం యొక్క ఫంక్షన్, పాస్వర్డ్ కాదు
TOTP పంచుకున్న రహస్యాన్ని మరియు ప్రస్తుత సమయం నుండి తీసుకున్న కౌంటర్ను తీసుకొని, రెండింటినీ కీలు కలిగిన హాష్ ద్వారా పంపి ఫలితాన్ని చిన్న దశాంశ శ్రేణిగా కత్తిరిస్తుంది, ఇది RFC 6238 లో పేర్కొనబడింది. కౌంటర్ ప్రతి సమయ-దశలో ముందుకు సాగుతుంది, సాధారణంగా ముప్పై సెకన్లు, కాబట్టి దశ మారినప్పుడు అదే రహస్యం కొత్త విలువను ఉత్పత్తి చేస్తుంది. ధృవీకర్త ప్రస్తుత దశకు ఆశించిన విలువను తిరిగి లెక్కించి పోలుస్తాడు, దీనికి అదే రహస్యం మరియు ఇప్పుడు గురించి అదే అవగాహన అవసరం. పాస్వర్డ్ మార్చే వరకు తిరిగి ఉపయోగించదగినదిగా ఉంటుంది, అయితే ఈ విలువ క్లయింట్ చూడలేని సరిహద్దులో గడువు ముగుస్తుంది.
అందుకే ఒక కోడ్ పనిచేస్తుంది మరియు తదుపరిది కొన్ని క్షణాల్లో విఫలమవుతుంది. చాట్ సందేశం నుండి కోడ్ను కాపీ చేయడం ఎందుకు అంత నమ్మదగని అలవాటో కూడా ఇది వివరిస్తుంది.
రెండు గడియారాలు సరిపోలాలి, ఒకటి కాదు
నమోదు పదార్థం మొదటి పంచుకున్న విషయం, సమయం రెండవది. రహస్యం సరిగ్గా ఉన్నా గడియారాలు సహించదగిన విండో కంటే ఎక్కువ భిన్నంగా ఉంటే, ఉత్పత్తి అయిన ప్రతి విలువ తప్పు దశలో పడి తిరస్కరించబడుతుంది. గడియారాలు సరిపోలినా రహస్యం తప్పు అయితే, ప్రతి విలువ కూడా తిరస్కరించబడుతుంది, మరియు రెండు వైఫల్యాలు లాగిన్ స్క్రీన్ నుండి ఒకేలా కనిపిస్తాయి. వాటిని వేరు చేయడం అంటే ఖాతా నమోదు మరియు సమయాన్ని విడివిడిగా, అదే క్రమంలో తనిఖీ చేయడం.
ధృవీకర్త గడియారం కూడా పరికరం గడియారానికి సమానమైన పరిశీలనకు అర్హం. సమయ మూలం పాడైన సర్వర్ అందరు వినియోగదారుల సరైన కోడ్లను ఒకేసారి తిరస్కరిస్తుంది, నివేదికలు జరుగుదల బదులు హఠాత్తు అంతరాయాన్ని వివరిస్తాయి. ఈ నమూనాను గుర్తించడం విలువైనది, ఎందుకంటే దాని సవరణ సర్వర్కు చెందుతుంది, వంద ఫోన్లకు కాదు.
విండోను విస్తరించడం ఖర్చు
అమలులు చిన్న భేదాలను గ్రహించడానికి పక్కనున్న దశ కోడ్ను అంగీకరించవచ్చు, ఆ సహనం ఉచిత సర్దుబాటు కాదు, రూపకల్పన నిర్ణయం. ప్రతి అదనపు దశ ఏ క్షణంలోనైనా చెల్లుబాటయ్యే విలువల సంఖ్యను గుణిస్తుంది, అది ఊహించే దాడిదారు ఇష్టపడేది సరిగ్గా అదే. పునరావృత్తి నిబంధన కూడా అదే కారణంతో ముఖ్యం, ఎందుకంటే రెండుసార్లు అంగీకరించిన కోడ్ ఉపయోగకరంగా లీక్ అయిన కోడ్. ఫిర్యాదులను నిశ్శబ్దం చేయడానికి విండోను విస్తరించే నిర్వాహకుడు నిజమైన లక్షణాన్ని ఉపరితల మెరుగుదలతో మార్చుకుంటాడు.
గడియారాన్ని సరిచేయడం మరమ్మత్తు, విండోను విస్తరించడం ప్రశాంతకం. మొదటిది కారణాన్ని తొలగిస్తుంది, రెండవది దాన్ని దాచుతుంది.
మళ్లీ ప్రయత్నించే ముందు రెండు గడియారాలను తనిఖీ చేయండి
పరికరంలో మరియు సర్వర్లో సమయాన్ని చదివి, చూపిన స్థానిక సమయాల బదులు ఆఫ్సెట్లను పోల్చండి. కింది ఆదేశాలు లినక్స్ హోస్ట్ లేదా సర్వర్లో సింక్రొనైజేషన్ స్థితిని మరియు ముడి UTC క్షణాన్ని చూపుతాయి. ఏదైనా ప్రామాణీకరణ సెట్టింగ్ మార్చే ముందు వాటిని రెండు చివరల్లో అమలు చేయండి.
timedatectl
date -u +'%Y-%m-%dT%H:%M:%SZ'
chronyc tracking
timedatectl timesync-status
సెకన్లలో కొలిచిన ఆఫ్సెట్ హానికరం కాదు, నిమిషాల్లో కొలిచినది తిరస్కరణను వివరిస్తుంది, ఏ సింక్రొనైజేషన్ మూలాన్నీ నివేదించని వ్యవస్థ రెండింటికీ అభ్యర్థి. రెండు UTC టైమ్స్టాంప్లను నేరుగా పోల్చండి, ఎందుకంటే స్థానిక సమయంలో అల్గోరిథం ఎప్పుడూ చూడని సమయ మండలం ఉంటుంది. ఆఫ్సెట్లు చిన్నవి అయినా కోడ్లు ఇంకా విఫలమైతే, గడియారాలను సర్దుబాటు చేయడం ఆపి బదులుగా నమోదు నమోదును తనిఖీ చేయండి. లాక్ చేసిన ఖాతాపై పునరావృత ప్రయత్నాలు అసలు లోపాన్ని గమనించడం కష్టతరం చేస్తాయి.
తిరస్కరణ సమయం, ఆఫ్సెట్ మరియు లోపం వచనాన్ని నమోదు చేసి, పంచుకున్న రహస్యాన్ని దాని వెలుపల ఉంచండి. మద్దతు మొదటి మూడింటితో పనిచేయగలదు మరియు నాల్గవదాన్ని ఎప్పుడూ చూడకూడదు.