ਜਦੋਂ ਡਿਵਾਈਸ ਦੀ ਘੜੀ ਖਿਸਕਦੀ ਹੈ ਤਾਂ TOTP ਕੋਡ ਕਿਉਂ ਫੇਲ੍ਹ ਹੁੰਦੇ ਹਨ
ਕੋਡ ਭੇਦ ਅਤੇ ਮੌਜੂਦਾ ਸਮਾਂ-ਕਦਮ ਦਾ ਹੈਸ਼ ਹੈ। ਦੋਵੇਂ ਸਿਰਿਆਂ ਦੇ ਆਫਸੈੱਟ ਦੀ ਤੁਲਨਾ ਕਰੋ, ਫਿਰ ਵਿੰਡੋ ਚੌੜੀ ਕਰਨ ਦੀ ਬਜਾਏ ਘੜੀ ਠੀਕ ਕਰੋ।
ਇੱਕ ਵਾਰ ਵਰਤੋਂ ਵਾਲੇ ਕੋਡ ਤੁਹਾਡੇ ਫ਼ੋਨ ਉੱਤੇ ਬਿਲਕੁਲ ਸਹੀ ਹੋ ਸਕਦੇ ਹਨ ਅਤੇ ਉਸੇ ਸਕਿੰਟ ਸਰਵਰ ਉਹਨਾਂ ਨੂੰ ਰੱਦ ਕਰ ਸਕਦਾ ਹੈ। ਦੋਵੇਂ ਧਿਰਾਂ ਇੱਕ ਸਾਂਝੇ ਭੇਦ ਅਤੇ ਮੌਜੂਦਾ ਸਮਾਂ-ਕਦਮ ਤੋਂ ਉਹੀ ਫੰਕਸ਼ਨ ਗਿਣਦੀਆਂ ਹਨ, ਇਸ ਲਈ ਸਮੇਂ ਬਾਰੇ ਮਤਭੇਦ ਕੋਡ ਬਾਰੇ ਮਤਭੇਦ ਪੈਦਾ ਕਰਦਾ ਹੈ। ਇਹ ਘੜੀ ਦੀ ਖਿਸਕਣ ਨੂੰ ਸਿਰਫ਼ ਝੰਜਟ ਨਹੀਂ, ਸੁਰੱਖਿਆ ਨਾਲ ਸੰਬੰਧਿਤ ਨੁਕਸ ਬਣਾ ਦਿੰਦਾ ਹੈ।
ਇੱਥੇ ਦੋ ਘੜੀਆਂ ਮਹੱਤਵਪੂਰਨ ਹਨ, ਅਤੇ ਦਿਖਣ ਵਾਲੀ ਘੜੀ ਠੀਕ ਕਰਨਾ ਉਹ ਹਿੱਸਾ ਹੈ ਜੋ ਲੋਕ ਪਹਿਲਾਂ ਕਰਦੇ ਹਨ। ਆਮ ਤੌਰ ਉੱਤੇ ਧਿਆਨ ਚਾਹੁਣ ਵਾਲੀ ਘੜੀ ਦੂਜੀ ਹੈ।
ਕੋਡ ਸਮੇਂ ਦਾ ਫੰਕਸ਼ਨ ਹੈ, ਪਾਸਵਰਡ ਨਹੀਂ
TOTP ਸਾਂਝਾ ਭੇਦ ਅਤੇ ਮੌਜੂਦਾ ਸਮੇਂ ਤੋਂ ਕੱਢਿਆ ਕਾਊਂਟਰ ਲੈਂਦਾ ਹੈ, ਦੋਵਾਂ ਨੂੰ ਚਾਬੀ ਵਾਲੇ ਹੈਸ਼ ਵਿੱਚੋਂ ਲੰਘਾਉਂਦਾ ਹੈ ਅਤੇ ਨਤੀਜੇ ਨੂੰ ਛੋਟੀ ਦਸ਼ਮਲਵ ਲੜੀ ਵਿੱਚ ਕੱਟ ਦਿੰਦਾ ਹੈ, ਜਿਵੇਂ RFC 6238 ਵਿੱਚ ਦੱਸਿਆ ਗਿਆ ਹੈ। ਕਾਊਂਟਰ ਹਰ ਸਮਾਂ-ਕਦਮ ਉੱਤੇ ਅੱਗੇ ਵਧਦਾ ਹੈ, ਆਮ ਤੌਰ ਉੱਤੇ ਤੀਹ ਸਕਿੰਟ, ਇਸ ਲਈ ਕਦਮ ਬਦਲਣ ਉੱਤੇ ਉਹੀ ਭੇਦ ਨਵਾਂ ਮੁੱਲ ਬਣਾਉਂਦਾ ਹੈ। ਪ੍ਰਮਾਣਕ ਮੌਜੂਦਾ ਕਦਮ ਦਾ ਉਮੀਦ ਕੀਤਾ ਮੁੱਲ ਮੁੜ ਗਿਣ ਕੇ ਤੁਲਨਾ ਕਰਦਾ ਹੈ, ਜਿਸ ਲਈ ਉਹੀ ਭੇਦ ਅਤੇ ਹੁਣ ਬਾਰੇ ਉਹੀ ਸਮਝ ਲੋੜੀਂਦੀ ਹੈ। ਪਾਸਵਰਡ ਬਦਲੇ ਜਾਣ ਤੱਕ ਮੁੜ ਵਰਤੋਂ ਯੋਗ ਰਹਿੰਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਇਹ ਮੁੱਲ ਕਲਾਇੰਟ ਨੂੰ ਨ ਦਿਸਣ ਵਾਲੀ ਹੱਦ ਉੱਤੇ ਖਤਮ ਹੁੰਦਾ ਹੈ।
ਇਸ ਲਈ ਇੱਕ ਕੋਡ ਕੰਮ ਕਰਦਾ ਹੈ ਅਤੇ ਅਗਲਾ ਕੁਝ ਪਲਾਂ ਬਾਅਦ ਫੇਲ੍ਹ ਹੁੰਦਾ ਹੈ। ਇਹ ਵੀ ਦੱਸਦਾ ਹੈ ਕਿ ਚੈਟ ਸੁਨੇਹੇ ਵਿੱਚੋਂ ਕੋਡ ਕਾਪੀ ਕਰਨਾ ਇੰਨੀ ਭਰੋਸੇਯੋਗ ਨਾ ਹੋਣ ਵਾਲੀ ਆਦਤ ਕਿਉਂ ਹੈ।
ਦੋ ਘੜੀਆਂ ਮੇਲ ਖਾਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ, ਇੱਕ ਨਹੀਂ
ਰਜਿਸਟਰੇਸ਼ਨ ਸਮੱਗਰੀ ਪਹਿਲੀ ਸਾਂਝੀ ਚੀਜ਼ ਹੈ, ਅਤੇ ਸਮਾਂ ਦੂਜੀ। ਜੇ ਭੇਦ ਸਹੀ ਹੈ ਪਰ ਘੜੀਆਂ ਸਹਿਣਯੋਗ ਵਿੰਡੋ ਤੋਂ ਵੱਧ ਵੱਖਰੀਆਂ ਹਨ, ਤਾਂ ਬਣਾਇਆ ਹਰ ਮੁੱਲ ਗਲਤ ਕਦਮ ਵਿੱਚ ਪੈ ਕੇ ਰੱਦ ਹੋ ਜਾਂਦਾ ਹੈ। ਜੇ ਘੜੀਆਂ ਮੇਲ ਖਾਂਦੀਆਂ ਹਨ ਪਰ ਭੇਦ ਗਲਤ ਹੈ, ਤਾਂ ਹਰ ਮੁੱਲ ਵੀ ਰੱਦ ਹੋ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਦੋਵੇਂ ਫੇਲ੍ਹਤਾਵਾਂ ਲੌਗਇਨ ਸਕਰੀਨ ਤੋਂ ਇੱਕੋ ਜਿਹੀਆਂ ਦਿਸਦੀਆਂ ਹਨ। ਉਹਨਾਂ ਨੂੰ ਵੱਖ ਕਰਨ ਦਾ ਮਤਲਬ ਹੈ ਖਾਤਾ ਐਂਟਰੀ ਅਤੇ ਸਮਾਂ ਵੱਖਰੇ ਤੌਰ ਉੱਤੇ, ਉਸੇ ਕ੍ਰਮ ਵਿੱਚ ਜਾਂਚਣਾ।
ਪ੍ਰਮਾਣਕ ਦੀ ਘੜੀ ਵੀ ਡਿਵਾਈਸ ਦੀ ਘੜੀ ਜਿੰਨੀ ਹੀ ਜਾਂਚ ਦੀ ਹੱਕਦਾਰ ਹੈ। ਜਿਸ ਦਾ ਸਮਾਂ ਸਰੋਤ ਖਰਾਬ ਹੈ ਅਜਿਹਾ ਸਰਵਰ ਇੱਕੋ ਵੇਲੇ ਸਾਰੇ ਵਰਤੋਂਕਾਰਾਂ ਦੇ ਸਹੀ ਕੋਡ ਰੱਦ ਕਰਦਾ ਹੈ, ਅਤੇ ਰਿਪੋਰਟਾਂ ਖਿਸਕਣ ਦੀ ਬਜਾਏ ਅਚਾਨਕ ਰੁਕਾਵਟ ਦੱਸਣਗੀਆਂ। ਇਹ ਪੈਟਰਨ ਪਛਾਣਨ ਯੋਗ ਹੈ, ਕਿਉਂਕਿ ਇਸਦਾ ਇਲਾਜ ਸਰਵਰ ਉੱਤੇ ਹੈ, ਸੌ ਫ਼ੋਨਾਂ ਉੱਤੇ ਨਹੀਂ।
ਵਿੰਡੋ ਚੌੜੀ ਕਰਨ ਦੀ ਕੀਮਤ
ਅਮਲਦਰਆਮਦ ਛੋਟੇ ਅੰਤਰ ਸੋਖਣ ਲਈ ਨਾਲ ਵਾਲੇ ਕਦਮ ਦਾ ਕੋਡ ਸਵੀਕਾਰ ਕਰ ਸਕਦੇ ਹਨ, ਅਤੇ ਉਹ ਸਹਿਣਸ਼ੀਲਤਾ ਮੁਫ਼ਤ ਸਮਾਯੋਜਨ ਨਹੀਂ, ਡਿਜ਼ਾਈਨ ਫੈਸਲਾ ਹੈ। ਹਰ ਵਾਧੂ ਕਦਮ ਕਿਸੇ ਵੀ ਪਲ ਵੈਧ ਮੁੱਲਾਂ ਦੀ ਗਿਣਤੀ ਨੂੰ ਗੁਣਾ ਕਰਦਾ ਹੈ, ਜੋ ਬਿਲਕੁਲ ਉਹੀ ਹੈ ਜੋ ਅੰਦਾਜ਼ਾ ਲਾਉਣ ਵਾਲੇ ਹਮਲਾਵਰ ਨੂੰ ਪਸੰਦ ਹੈ। ਮੁੜ ਵਰਤੋਂ ਨਿਯਮ ਵੀ ਇਸੇ ਕਾਰਨ ਮਹੱਤਵਪੂਰਨ ਹੈ, ਕਿਉਂਕਿ ਦੋ ਵਾਰ ਸਵੀਕਾਰ ਕੀਤਾ ਕੋਡ ਉਹ ਕੋਡ ਹੈ ਜੋ ਲਾਹੇਵੰਦ ਢੰਗ ਨਾਲ ਲੀਕ ਹੋਇਆ। ਸ਼ਿਕਾਇਤਾਂ ਚੁੱਪ ਕਰਾਉਣ ਲਈ ਵਿੰਡੋ ਚੌੜੀ ਕਰਨ ਵਾਲਾ ਪ੍ਰਬੰਧਕ ਅਸਲੀ ਗੁਣ ਦੀ ਦਿੱਖ ਸੁਧਾਰ ਨਾਲ ਅਦਲਾ-ਬਦਲੀ ਕਰਦਾ ਹੈ।
ਘੜੀ ਠੀਕ ਕਰਨਾ ਮੁਰੰਮਤ ਹੈ, ਜਦੋਂ ਕਿ ਵਿੰਡੋ ਚੌੜੀ ਕਰਨਾ ਸ਼ਾਂਤ ਕਰਨ ਵਾਲਾ ਹੈ। ਪਹਿਲਾ ਕਾਰਨ ਹਟਾਉਂਦਾ ਹੈ ਅਤੇ ਦੂਜਾ ਉਸਨੂੰ ਲੁਕਾਉਂਦਾ ਹੈ।
ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦੋਵੇਂ ਘੜੀਆਂ ਜਾਂਚੋ
ਡਿਵਾਈਸ ਅਤੇ ਸਰਵਰ ਉੱਤੇ ਸਮਾਂ ਪੜ੍ਹੋ, ਅਤੇ ਦਿਖਾਏ ਸਥਾਨਕ ਸਮਿਆਂ ਦੀ ਬਜਾਏ ਆਫਸੈੱਟ ਦੀ ਤੁਲਨਾ ਕਰੋ। ਹੇਠਾਂ ਦਿੱਤੇ ਆਦੇਸ਼ ਲਿਨਕਸ ਹੋਸਟ ਜਾਂ ਸਰਵਰ ਉੱਤੇ ਸਿੰਕ੍ਰੋਨਾਈਜ਼ੇਸ਼ਨ ਸਥਿਤੀ ਅਤੇ ਕੱਚਾ UTC ਪਲ ਦਿਖਾਉਂਦੇ ਹਨ। ਕੋਈ ਵੀ ਪ੍ਰਮਾਣੀਕਰਨ ਸੈਟਿੰਗ ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਇਹਨਾਂ ਨੂੰ ਦੋਵੇਂ ਸਿਰਿਆਂ ਉੱਤੇ ਚਲਾਓ।
timedatectl
date -u +'%Y-%m-%dT%H:%M:%SZ'
chronyc tracking
timedatectl timesync-status
ਸਕਿੰਟਾਂ ਵਿੱਚ ਮਾਪਿਆ ਆਫਸੈੱਟ ਨਿਰਦੋਸ਼ ਹੈ, ਮਿੰਟਾਂ ਵਿੱਚ ਮਾਪਿਆ ਰੱਦ ਹੋਣ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ, ਅਤੇ ਕੋਈ ਵੀ ਸਿੰਕ੍ਰੋਨਾਈਜ਼ੇਸ਼ਨ ਸਰੋਤ ਨ ਦੱਸਣ ਵਾਲਾ ਸਿਸਟਮ ਦੋਵਾਂ ਲਈ ਉਮੀਦਵਾਰ ਹੈ। ਦੋਵੇਂ UTC ਟਾਈਮਸਟੈਂਪ ਸਿੱਧੀ ਤੁਲਨਾ ਕਰੋ, ਕਿਉਂਕਿ ਸਥਾਨਕ ਸਮੇਂ ਵਿੱਚ ਅਜਿਹਾ ਟਾਈਮ ਜ਼ੋਨ ਹੁੰਦਾ ਹੈ ਜੋ ਐਲਗੋਰਿਦਮ ਕਦੇ ਨਹੀਂ ਦੇਖਦਾ। ਜੇ ਆਫਸੈੱਟ ਛੋਟੇ ਹਨ ਅਤੇ ਕੋਡ ਅਜੇ ਵੀ ਫੇਲ੍ਹ ਹੁੰਦੇ ਹਨ, ਤਾਂ ਘੜੀ ਸੈੱਟ ਕਰਨਾ ਬੰਦ ਕਰੋ ਅਤੇ ਇਸਦੀ ਬਜਾਏ ਰਜਿਸਟਰੇਸ਼ਨ ਐਂਟਰੀ ਜਾਂਚੋ। ਲਾਕ ਕੀਤੇ ਖਾਤੇ ਖਿਲਾਫ਼ ਵਾਰ-ਵਾਰ ਕੋਸ਼ਿਸ਼ਾਂ ਮੂਲ ਨੁਕਸ ਨੂੰ ਵੇਖਣਾ ਔਖਾ ਬਣਾ ਦਿੰਦੀਆਂ ਹਨ।
ਰੱਦ ਹੋਣ ਦਾ ਸਮਾਂ, ਆਫਸੈੱਟ ਅਤੇ ਗਲਤੀ ਦਾ ਪਾਠ ਦਰਜ ਕਰੋ, ਅਤੇ ਸਾਂਝਾ ਭੇਦ ਇਸ ਤੋਂ ਬਾਹਰ ਰੱਖੋ। ਸਹਾਇਤਾ ਪਹਿਲੇ ਤਿੰਨ ਨਾਲ ਕੰਮ ਕਰ ਸਕਦੀ ਹੈ ਅਤੇ ਚੌਥਾ ਕਦੇ ਨਹੀਂ ਵੇਖਣਾ ਚਾਹੀਦਾ।