- ಮೂಲಭೂತ ಇನ್ಪುಟ್ ವ್ಯತ್ಯಾಸ: HOTP ನಿರಂತರವಾಗಿ ಹೆಚ್ಚಾಗುವ ಕೌಂಟರ್ C ನಿಂದ ಹ್ಯಾಶ್ಗಳನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ, ಆದರೆ TOTP C ಯ ಬದಲಿಗೆ ಯುನಿಕ್ಸ್ ಎಪೋಕ್ ಸಮಯ ಹಂತ T (CurrentUnixTime / 30) ಅನ್ನು ಬಳಸುತ್ತದೆ.
- ನೇರ ಉತ್ತರಾಧಿಕಾರ: ಗಣಿತದ ಪ್ರಕಾರ TOTP ಯು HOTP ಯ ಒಂದು ವಿಶೇಷ ರೂಪವಾಗಿದೆ:
TOTP(K, Time) = HOTP(K, T). ಎರಡೂ ಅಲ್ಗಾರಿದಮ್ಗಳು ಒಂದೇ ರೀತಿಯ ಡೈನಾಮಿಕ್ ಟ್ರಂಕೇಶನ್ (Dynamic Truncation) ಕಾರ್ಯವನ್ನು ಬಳಸುತ್ತವೆ. - ಆರ್ಕಿಟೆಕ್ಚರಲ್ ನಿರ್ಣಾಯಕ ಅಂಶ: HOTP ಯು ಸ್ಟೇಟ್ಫುಲ್ (stateful) ಆಗಿದೆ (ಪ್ರತಿ ಮೌಲ್ಯೀಕರಣದ ನಂತರ ಸರ್ವರ್ಗಳು ಕೌಂಟರ್ಗಳನ್ನು ಡಿಸ್ಕ್ನಲ್ಲಿ ಲಾಕ್ ಮಾಡಿ ಸಂಗ್ರಹಿಸಬೇಕು). TOTP ಯು ಸ್ಟೇಟ್ಲೆಸ್ (stateless) ಆಗಿದೆ, ಇದು ಆಧುನಿಕ ಕ್ಲೌಡ್ ಮೈಕ್ರೋಸರ್ವಿಸ್ಗಳಿಗೆ ಕೇಂದ್ರೀಕೃತ ಡೇಟಾಬೇಸ್ ಬರವಣಿಗೆ ಕಾರ್ಯಾಚರಣೆಗಳಿಲ್ಲದೆ ವಿತರಿಸಲಾದ ಲೋಡ್-ಬ್ಯಾಲೆನ್ಸ್ಡ್ ಕ್ಲಸ್ಟರ್ಗಳಲ್ಲಿ ಟೋಕನ್ಗಳನ್ನು ಮೌಲ್ಯೀಕರಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ಐತಿಹಾಸಿಕ ಮೂಲಗಳು: ಸ್ವಾಮ್ಯದ ಹಾರ್ಡ್ವೇರ್ ಟೋಕನ್ಗಳಿಂದ ಮುಕ್ತ ವೆಬ್ ಮಾನದಂಡಗಳವರೆಗೆ
2000 ರ ದಶಕದ ಆರಂಭದಲ್ಲಿ, ಕಾರ್ಪೊರೇಟ್ ದ್ವಿ-ಅಂಶ ದೃಢೀಕರಣವು RSA SecurID ಯಂತಹ ಸ್ವಾಮ್ಯದ (proprietary) ಕೀ ಫೋಬ್ಗಳಿಂದ ಪ್ರಾಬಲ್ಯ ಹೊಂದಿತ್ತು. ಈ ದುಬಾರಿ, ಮುಚ್ಚಿದ ಸಾಧನಗಳು ಸ್ವಾಮ್ಯದ ಎಂಟರ್ಪ್ರೈಸ್ ಸರ್ವರ್ಗಳೊಂದಿಗೆ ಸಿಂಕ್ರೊನೈಸ್ ಮಾಡಲಾದ ಆಂತರಿಕ ಕ್ವಾರ್ಟ್ಜ್ ಹರಳುಗಳನ್ನು ಒಳಗೊಂಡಿದ್ದವು. ಒಂದು ಸಂಸ್ಥೆಯು ಸಾವಿರಾರು ಉದ್ಯೋಗಿಗಳಿಗೆ ಮಲ್ಟಿ-ಫ್ಯಾಕ್ಟರ್ ಭದ್ರತೆಯನ್ನು ಒದಗಿಸಲು ಬಯಸಿದರೆ, ಹಾರ್ಡ್ವೇರ್ ಖರೀದಿ ಮತ್ತು ಸ್ವಾಮ್ಯದ ಪರವಾನಗಿ ವೆಚ್ಚಗಳು ವಿಪರೀತವಾಗಿದ್ದವು.
ದೃಢೀಕರಣವನ್ನು ಸ್ವಾಮ್ಯದ ಮಾರಾಟಗಾರರಿಂದ ಮುಕ್ತಗೊಳಿಸಲು, ಉದ್ಯಮದ ಮುಖಂಡರಿಂದ OATH (Initiative for Open Authentication) ಒಕ್ಕೂಟವನ್ನು ರಚಿಸಲಾಯಿತು. ಇದು ಯಾವುದೇ ಸಾಫ್ಟ್ವೇರ್ ಎಂಜಿನಿಯರ್ ಮುಕ್ತವಾಗಿ ಪರಿಶೀಲಿಸಬಹುದಾದ, ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ ಮತ್ತು ಆಡಿಟ್ ಮಾಡಬಹುದಾದ ರಾಯಧನ-ಮುಕ್ತ IETF ಮಾನದಂಡಗಳನ್ನು ನೀಡಲು ಪ್ರಾರಂಭಿಸಿತು:
HMAC-Based One-Time Password Algorithm. ಭೌತಿಕ ಪುಶ್ ಬಟನ್ಗಳನ್ನು ಹೊಂದಿರುವ ಕಡಿಮೆ-ವಿದ್ಯುತ್ ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ಗಳಿಗಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಬಟನ್ ಒತ್ತುವುದರಿಂದ ಆಂತರಿಕ ಕೌಂಟರ್ ಹೆಚ್ಚಾಗುತ್ತದೆ ಮತ್ತು ಎಲ್ಸಿಡಿ ಪರದೆಯ ಮೇಲೆ 6-ಅಂಕಿಯ ಟೋಕನ್ ಪ್ರದರ್ಶಿತವಾಗುತ್ತದೆ.
Time-Based One-Time Password Algorithm. ಸ್ಮಾರ್ಟ್ಫೋನ್ ಬಳಕೆ ಹೆಚ್ಚಾದಂತೆ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಸೆಲ್ಯುಲಾರ್ NTP ನೆಟ್ವರ್ಕ್ ಸಮಯ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಬಳಸುವ ಮೂಲಕ, TOTP ಭೌತಿಕ ಬಟನ್ ಸ್ಥಿತಿಯ ಹೊಂದಾಣಿಕೆಯಾಗದಿರುವ ಸಮಸ್ಯೆಯನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿವಾರಿಸಿತು.
HOTP (RFC 4226) ಆರ್ಕಿಟೆಕ್ಚರ್ ಮತ್ತು ಡೈನಾಮಿಕ್ ಟ್ರಂಕೇಶನ್ ಬೈಟ್ ಮೆಕ್ಯಾನಿಕ್ಸ್
HOTP ಯ ಪ್ರಮುಖ ಗಣಿತದ ವ್ಯಾಖ್ಯಾನವು ಅತ್ಯಂತ ಸಂಕ್ಷಿಪ್ತವಾಗಿದೆ:
ಪ್ಯಾರಾಮೀಟರ್ ವಿವರಣೆ:
K: ಹಂಚಿದ ಸಮ್ಮಿತೀಯ ರಹಸ್ಯ ಕೀ (ಸಾಮಾನ್ಯವಾಗಿ Base32 ಡಿಕೋಡ್ ಮಾಡಲಾದ 160-ಬಿಟ್ / 20-ಬೈಟ್ ಬೈನರಿ ಅನುಕ್ರಮ).C: 8-ಬೈಟ್ (64-ಬಿಟ್) ಬಿಗ್-ಎಂಡಿಯನ್ ಪೂರ್ಣಾಂಕ ಕೌಂಟರ್.HMAC-SHA-1: 20-ಬೈಟ್ (160-ಬಿಟ್) ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಡೈಜೆಸ್ಟ್ ಅನ್ನು ಉತ್ಪಾದಿಸುವ ಕೀಲಿ-ಆಧಾರಿತ ಹ್ಯಾಶ್ ಸಂದೇಶ ದೃಢೀಕರಣ ಕೋಡ್.
🔍 ಡೈನಾಮಿಕ್ ಟ್ರಂಕೇಶನ್ (DT) 20 ಬೈಟ್ಗಳನ್ನು 6 ಅಂಕಿಗಳಾಗಿ ಹೇಗೆ ಪರಿವರ್ತಿಸುತ್ತದೆ:
HMAC-SHA1 ಡೈಜೆಸ್ಟ್ 160 ಬಿಟ್ಗಳನ್ನು (20 ಬೈಟ್ಗಳು) ಹೊಂದಿರುತ್ತದೆ. 6 ಏಕರೂಪದ ದಶಮಾಂಶ ಅಂಕಿಗಳನ್ನು ಹೊರತೆಗೆಯಲು RFC 4226 ರ ವಿಭಾಗ 5.3 ರಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ನಿರ್ಣಾಯಕ, ಘರ್ಷಣೆ-ನಿರೋಧಕ ಆಯ್ಕೆ ಕಾರ್ಯವಿಧಾನದ ಅಗತ್ಯವಿದೆ:
ರಹಸ್ಯ ಕೀ ASCII "12345678901234567890" ಮತ್ತು ಕೌಂಟರ್ C = 0 ಎಂದು ಭಾವಿಸೋಣ. ಹೆಕ್ಸಾಡೆಸಿಮಲ್ನಲ್ಲಿ ಫಲಿತಾಂಶದ HMAC-SHA1 ಡೈಜೆಸ್ಟ್ ಹೀಗಿದೆ:
1. ಅಂತಿಮ ಬೈಟ್ 0x71 ಆಗಿದೆ. 0x71 & 0x0F = 0x01, ಆದ್ದರಿಂದ Offset = 1.
2. ಬೈಟ್ಗಳು 1 ರಿಂದ 4 ಹೀಗಿವೆ: 93 cf 18 50. MSB ಶೂನ್ಯಗೊಳಿಸಿದಾಗ 0x13cf1850 ಬರುತ್ತದೆ, ಇದು ದಶಮಾಂಶದಲ್ಲಿ 332,339,280 ಕ್ಕೆ ಸಮಾನವಾಗಿರುತ್ತದೆ.
3. 332339280 mod 1000000 = 339280. ಫಲಿತಾಂಶದ 6-ಅಂಕಿಯ OTP 339280 ಆಗಿದೆ!
TOTP (RFC 6238) ವಿಕಾಸ: ಟೈಮ್-ಸ್ಟೆಪ್ ಮ್ಯಾಜಿಕ್
HOTP ಕ್ಲೈಂಟ್ನಲ್ಲಿರುವ ಕೌಂಟರ್ ಅನ್ನು ಸರ್ವರ್ನೊಂದಿಗೆ ಸಿಂಕ್ನಲ್ಲಿ ಇರಿಸಿಕೊಳ್ಳುವ ಅಗತ್ಯವಿತ್ತು. ಸಾಫ್ಟ್ವೇರ್ ಸಾಧನಗಳಲ್ಲಿ, ಕೀಸ್ಟ್ರೋಕ್ಗಳು ಅಥವಾ ಬಟನ್ ಪ್ರೆಸ್ಗಳನ್ನು ಎಣಿಸುವುದು ನಿರಂತರ ಮಾನವ ದೋಷಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ.
RFC 6238 ಕೌಂಟರ್ C ಅನ್ನು ಯುನಿಕ್ಸ್ ಎಪೋಕ್ ಗಡಿಯಾರದಿಂದ ನೇರವಾಗಿ ಪಡೆದ ಪ್ರತ್ಯೇಕ ಸಮಯದ ಹಂತ T ಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿತು:
- CurrentUnixTime: 1970-01-01 00:00:00 UTC ಯಿಂದ ಕಳೆದ ಸೆಕೆಂಡುಗಳು.
- T0: ಎಪೋಕ್ ಆರಂಭಿಕ ಉಲ್ಲೇಖ (ಎಲ್ಲಾ ಆಧುನಿಕ ನಿಯೋಜನೆಗಳಲ್ಲಿ ಡೀಫಾಲ್ಟ್ ಆಗಿ 0).
- X (ಸಮಯದ ಹಂತದ ವಿಂಡೋ): ಪ್ರಮಾಣಿತ ಶಿಫಾರಸು ಮಾಡಿದ ಅವಧಿ 30 ಸೆಕೆಂಡುಗಳು.
- ಫ್ಲೋರ್ ಫಂಕ್ಷನ್ ⌊ ⌋: 30-ಸೆಕೆಂಡಿನ ವಿಂಡೋದೊಳಗಿನ ಯಾವುದೇ ಟೈಮ್ಸ್ಟ್ಯಾಂಪ್ಗೆ, T ಬದಲಾಗದೆ ಇರುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಎಪೋಕ್ ಸೆಕೆಂಡುಗಳು 1728211200 ಮತ್ತು 1728211229 ನಡುವೆ, T ನಿಖರವಾಗಿ ಅದೇ 64-ಬಿಟ್ ಪೂರ್ಣಾಂಕವನ್ನು ನೀಡುತ್ತದೆ.
ಬೈನರಿ ಸೀರಿಯಲೈಸೇಶನ್: T ಅನ್ನು ಲೆಕ್ಕಹಾಕಿದ ನಂತರ, ಅದನ್ನು 8-ಬೈಟ್ ಬಿಗ್-ಎಂಡಿಯನ್ ಬೈನರಿ ಬೈಟ್ ಬಫರ್ನಲ್ಲಿ ಪ್ಯಾಕ್ ಮಾಡಲಾಗುತ್ತದೆ (ಇದು HOTP ಯಲ್ಲಿನ ಕೌಂಟರ್ C ಯ ಮೆಮೊರಿ ರಚನೆಗೆ ಹೋಲುತ್ತದೆ). ಪರಿಣಾಮವಾಗಿ, ಏಕೀಕೃತ ಸೂತ್ರವು ಸರಳಗೊಳ್ಳುತ್ತದೆ:
TOTP(K, Time) = HOTP(K, T)
ಈ ಗಣಿತದ ಸೊಬಗು, ನಿರಂತರ ಸ್ಥಿತಿ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಅಗತ್ಯವಿಲ್ಲದೆಯೇ ಆಥೆಂಟಿಕೇಟರ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಪ್ರತಿ 30 ಸೆಕೆಂಡಿಗೆ ಏಕಕಾಲದಲ್ಲಿ ಟೋಕನ್ಗಳನ್ನು ಏಕೆ ನವೀಕರಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ವಿವರಿಸುತ್ತದೆ.
HS[31] & 0x0F); SHA-512 (64-ಬೈಟ್ ಡೈಜೆಸ್ಟ್) ನಲ್ಲಿ, ಆಫ್ಸೆಟ್ ಅನ್ನು ಬೈಟ್ 63 ರಿಂದ ತೆಗೆದುಕೊಳ್ಳಲಾಗುತ್ತದೆ (HS[63] & 0x0F). ಆದಾಗ್ಯೂ, 99.9% ವಾಣಿಜ್ಯ ವೆಬ್ಸೈಟ್ಗಳಲ್ಲಿ (Google, Microsoft, GitHub, AWS), ಹಳೆಯ ಮೊಬೈಲ್ ಕ್ಲೈಂಟ್ ಹೊಂದಾಣಿಕೆಯ ಕಾರಣದಿಂದಾಗಿ SHA-1 ಸಾರ್ವತ್ರಿಕ ಡೀಫಾಲ್ಟ್ ಆಗಿ ಉಳಿದಿದೆ.
ಸಮಗ್ರ ಮುಖಾಮುಖಿ ಹೋಲಿಕೆ ಮ್ಯಾಟ್ರಿಕ್ಸ್ (HOTP vs. TOTP)
| ಆಯಾಮ | HOTP (RFC 4226) | TOTP (RFC 6238) |
|---|---|---|
| ಇನ್ಪುಟ್ ವೇರಿಯಬಲ್ | ಈವೆಂಟ್ ಕೌಂಟರ್ C (ನಿರಂತರವಾಗಿ ಹೆಚ್ಚಾಗುವ) | ಸಮಯದ ಹಂತ T (30-ಸೆಕೆಂಡ್ ಯುನಿಕ್ಸ್ ಎಪೋಕ್ ವಿಂಡೋ) |
| ಟೋಕನ್ ಜೀವಿತಾವಧಿ | ಅನಿರ್ದಿಷ್ಟ (ಮುಂದಿನ ಲಾಗಿನ್ನಲ್ಲಿ ಬಳಸುವವರೆಗೆ ಮಾನ್ಯವಾಗಿರುತ್ತದೆ) | ಕಟ್ಟುನಿಟ್ಟಾದ 30 ಸೆಕೆಂಡುಗಳು (ಸ್ವಯಂ ಅಮಾನ್ಯವಾಗುತ್ತದೆ) |
| ಸರ್ವರ್ ಆರ್ಕಿಟೆಕ್ಚರ್ | ಸ್ಟೇಟ್ಫುಲ್ (ಪ್ರತಿ ಲಾಗಿನ್ಗೆ ಪರಮಾಣು ಡೇಟಾಬೇಸ್ ಬರವಣಿಗೆ ಅಗತ್ಯವಿದೆ) | ಸ್ಟೇಟ್ಲೆಸ್ (ಸ್ವತಂತ್ರ NTP ಪರಿಶೀಲನೆ) |
| ರೀಪ್ಲೇ ದಾಳಿಯ ಅಪಾಯ | ಮಧ್ಯಮ (ಮಧ್ಯಪ್ರವೇಶಿಸಿದ ಟೋಕನ್ ಬಳಸುವವರೆಗೆ ಮಾನ್ಯವಾಗಿರುತ್ತದೆ) | ಕನಿಷ್ಠ (ಪ್ರಸ್ತುತ ವಿಂಡೋದಲ್ಲಿ ಉಳಿದಿರುವ ಸೆಕೆಂಡುಗಳಿಗೆ ಸೀಮಿತವಾಗಿದೆ) |
| ಪ್ರಾಥಮಿಕ ವೈಫಲ್ಯ ಮೋಡ್ | ಕೌಂಟರ್ ಡಿಸಿಂಕ್ರೊನೈಸೇಶನ್ (ಆಕಸ್ಮಿಕ ಕೀ ಪ್ರೆಸ್ಗಳು) | ಗಡಿಯಾರ ವಿಚಲನೆ (ಕ್ಲೈಂಟ್ ಫೋನ್ ಸಮಯದ ವ್ಯತ್ಯಾಸ) |
| ಬೆಂಬಲಿತ ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಹ್ಯಾಶ್ಗಳು | ಕೇವಲ HMAC-SHA-1 | HMAC-SHA-1, HMAC-SHA-256, HMAC-SHA-512 |
| ಉದ್ಯಮದ ಅಳವಡಿಕೆ | ಲೆಗಸಿ ಬ್ಯಾಂಕಿಂಗ್ ಫೋಬ್ಗಳು, ವಿಶೇಷ ಭೌತಿಕ ಗೇಟ್ಗಳು | ಆಧುನಿಕ ವೆಬ್ ಆಥೆಂಟಿಕೇಟರ್ಗಳಲ್ಲಿ 99.9% |
ಡಿಸಿಂಕ್ರೊನೈಸೇಶನ್ vs ಸಮಯ ವಿಚಲನೆ: ತಾಂತ್ರಿಕ ಪರಿಹಾರಗಳು
ವಿತರಿಸಲಾದ ಉತ್ಪಾದನಾ ಪರಿಸರಗಳಲ್ಲಿ, ಕ್ಲೈಂಟ್ಗಳು ಮತ್ತು ಸರ್ವರ್ಗಳು ಅನಿವಾರ್ಯವಾಗಿ ವಿಚಲನೆಗೊಳ್ಳುತ್ತವೆ. ವಿಶ್ವಾಸಾರ್ಹತೆಯನ್ನು ಕಾಪಾಡಿಕೊಳ್ಳಲು ಕ್ರಿಪ್ಟೋಗ್ರಾಫರ್ಗಳು ನಿರ್ದಿಷ್ಟ ಪರಿಹಾರ ವಿಂಡೋಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಿದ್ದಾರೆ:
ಒಬ್ಬ ಬಳಕೆದಾರರು ಸಬ್ಮಿಟ್ ಮಾಡದೆಯೇ ತಮ್ಮ ಟೋಕನ್ ಬಟನ್ ಅನ್ನು 5 ಬಾರಿ ಕ್ಲಿಕ್ ಮಾಡಿದರೆ, ಸರ್ವರ್ C ನಲ್ಲಿದ್ದಾಗ ಕ್ಲೈಂಟ್ ಕೌಂಟರ್ C+5 ತಲುಪುತ್ತದೆ.
RFC 4226 ಪ್ರಕಾರ, ದೃಢೀಕರಣದ ಸಮಯದಲ್ಲಿ ಸರ್ವರ್ [C+1, C+s] (ಸಾಮಾನ್ಯವಾಗಿ s=20) ವ್ಯಾಪ್ತಿಯ ಲುಕ್-ಅಹೆಡ್ ವಿಂಡೋವನ್ನು ಲೆಕ್ಕಹಾಕುತ್ತದೆ. ಹೊಂದಾಣಿಕೆ ಕಂಡುಬಂದರೆ, ಸರ್ವರ್ ತಕ್ಷಣವೇ ಮುಂದೆ ಸಾಗಿ ಕೌಂಟರ್ C ಅನ್ನು ಸಿಂಕ್ರೊನೈಸ್ ಮಾಡುತ್ತದೆ.
ನೆಟ್ವರ್ಕ್ ವಿಳಂಬ ಅಥವಾ ಕ್ಲೈಂಟ್ ಸಾಧನದ ಗಡಿಯಾರ ವಿಚಲನೆಯಿಂದಾಗಿ (ಉದಾಹರಣೆಗೆ, ಫೋನ್ ಗಡಿಯಾರವು 10 ಸೆಕೆಂಡುಗಳು ನಿಧಾನವಾಗಿದ್ದರೆ), ಟೋಕನ್ಗಳು ಪಕ್ಕದ ಸಮಯದ ಹಂತಗಳಲ್ಲಿ ಬರಬಹುದು.
ಪ್ರೊಡಕ್ಷನ್ ಸರ್ವರ್ಗಳು 3-ವಿಂಡೋ ಅರೇಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡುತ್ತವೆ: [T-1, T, T+1], ಇದು ಸ್ವೀಕಾರ ವಿಂಡೋವನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ 90 ಸೆಕೆಂಡುಗಳಿಗೆ ವಿಸ್ತರಿಸುತ್ತದೆ.
ಬಳಕೆದಾರರು ಸಲ್ಲಿಸಿದ ಕೋಡ್ ಲೆಕ್ಕಹಾಕಿದ ಕೋಡ್ಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆಯೇ ಎಂದು ಸರ್ವರ್ಗಳು ಪರಿಶೀಲಿಸಿದಾಗ, ಸಾಮಾನ್ಯ ಸ್ಟ್ರಿಂಗ್ ಸಮಾನತೆಯ ಪರಿಶೀಲನೆಗಳು (ಉದಾಹರಣೆಗೆ userOtp === serverOtp) ಮೊದಲ ಹೊಂದಾಣಿಕೆಯಾಗದ ಅಕ್ಷರದಲ್ಲೇ ನಿಲ್ಲುತ್ತವೆ. ಸೂಕ್ಷ್ಮ ನೆಟ್ವರ್ಕ್ ಪ್ರತಿಕ್ರಿಯೆ ಸಮಯವನ್ನು ಅಳೆಯುವ ದಾಳಿಕೋರನು ಅಂಕಿಗಳನ್ನು ಹಂತ-ಹಂತವಾಗಿ ಮರುನಿರ್ಮಿಸಬಹುದು. ಸೈಡ್-ಚಾನೆಲ್ ಟೈಮಿಂಗ್ ವಿಶ್ಲೇಷಣೆಯನ್ನು ತಡೆಯಲು ಎಂಟರ್ಪ್ರೈಸ್ ಬ್ಯಾಕೆಂಡ್ಗಳು ಸ್ಥಿರ-ಸಮಯದ (constant-time) ಸಮಾನತೆಯ ಹೋಲಿಕೆಗಳನ್ನು (ಉದಾ. Node.js ನಲ್ಲಿ crypto.timingSafeEqual) ಜಾರಿಗೊಳಿಸುತ್ತವೆ.
ಆಧುನಿಕ ಇಂಟರ್ನೆಟ್ ಅನ್ನು TOTP ಏಕೆ ಗೆದ್ದಿತು
ವೆಬ್ನಾದ್ಯಂತ HOTP ಗಿಂತ TOTP ಯ ನಿರ್ಣಾಯಕ ಗೆಲುವಿಗೆ ಮೂರು ಆರ್ಕಿಟೆಕ್ಚರಲ್ ಅಗತ್ಯತೆಗಳು ಕಾರಣವಾಗಿವೆ:
ವಿತರಿಸಲಾದ ಬಹು-ಪ್ರದೇಶದ ಮೈಕ್ರೋಸರ್ವಿಸ್ಗಳಲ್ಲಿ, NTP-ಸಿಂಕ್ರೊನೈಸ್ ಮಾಡಿದ ಗಡಿಯಾರವನ್ನು ಹೊಂದಿರುವ ಯಾವುದೇ ಸರ್ವರ್ ನಿದರ್ಶನವು ಕೇಂದ್ರೀಕೃತ ಡೇಟಾಬೇಸ್ ದಾಖಲೆಯನ್ನು ಪ್ರಶ್ನಿಸದೆ ಅಥವಾ ಲಾಕ್ ಮಾಡದೆ TOTP ಟೋಕನ್ಗಳನ್ನು ಮೌಲ್ಯೀಕರಿಸಬಹುದು.
ಸ್ಮಾರ್ಟ್ಫೋನ್ಗಳು ಸೆಲ್ಯುಲಾರ್ ಬೇಸ್ ಸ್ಟೇಷನ್ಗಳು ಮತ್ತು ಜಿಪಿಎಸ್ ಮೂಲಕ ತಮ್ಮ ಸಿಸ್ಟಮ್ ಗಡಿಯಾರಗಳನ್ನು ನಿರಂತರವಾಗಿ ಮಾಪನಾಂಕ ನಿರ್ಣಯಿಸುತ್ತವೆ, ಇದು ಭೌತಿಕ ಹಾರ್ಡ್ವೇರ್ ನಿರ್ವಹಣೆಯ ಅಗತ್ಯವಿಲ್ಲದೆ ಗಡಿಯಾರ ವಿಚಲನೆಯನ್ನು ನಿವಾರಿಸುತ್ತದೆ.
HOTP ಟೋಕನ್ಗಳು ಬಳಸುವವರೆಗೆ ಅನಿರ್ದಿಷ್ಟವಾಗಿ ಮಾನ್ಯವಾಗಿರುತ್ತವೆ. TOTP ಟೋಕನ್ಗಳು 30 ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಮುಕ್ತಾಯಗೊಳ್ಳುತ್ತವೆ, ಇದು ರಾಜಿ ಮಾಡಿಕೊಂಡ ಲಾಗ್ಗಳು ಮತ್ತು ನಿಷ್ಕ್ರಿಯ ಪ್ಯಾಕೆಟ್ ಕ್ಯಾಪ್ಚರ್ಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.
2FA-Tool ನಲ್ಲಿ ರಿಯಲ್-ಟೈಮ್ TOTP ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಅನುಭವಿಸಿ
HMAC-SHA1 ಡೈನಾಮಿಕ್ ಟ್ರಂಕೇಶನ್ ಮೂಲಕ ನಿಮ್ಮ Base32 ರಹಸ್ಯ ಸ್ಟ್ರಿಂಗ್ ಹೇಗೆ ಡೈನಾಮಿಕ್ 6-ಅಂಕಿಯ ಕೋಡ್ಗಳಾಗಿ ರೂಪಾಂತರಗೊಳ್ಳುತ್ತದೆ ಎಂಬುದನ್ನು ವೀಕ್ಷಿಸಿ. ನಿಮ್ಮ ಬ್ರೌಸರ್ನಲ್ಲಿ 100% ಆಫ್ಲೈನ್.
📚 ಸಂಬಂಧಿತ ಭದ್ರತಾ ಮಾರ್ಗದರ್ಶಿಗಳು
ಆಫ್ಲೈನ್ QR ಕೋಡ್ಗಳು ಮತ್ತು ಕ್ಲೌಡ್ ಸಿಂಕ್ ಬಳಸಿ ಸ್ಮಾರ್ಟ್ಫೋನ್ಗಳಲ್ಲಿ 2FA ಖಾತೆಗಳನ್ನು ಹೇಗೆ ವರ್ಗಾಯಿಸುವುದು.
ಅನುಸರಣೆ ನಿಯಮಗಳು, ರಿಕವರಿ ಕೋಡ್ಗಳನ್ನು ಉಳಿಸುವುದು, SSH ಕೀ ಸಂವಹನ ಮತ್ತು ರಕ್ಷಣಾ ಕಾರ್ಯವಿಧಾನಗಳು.
Google, Microsoft, Steam, Binance, Apple ಮತ್ತು Discord ನಲ್ಲಿ ಪ್ರವೇಶವನ್ನು ಹೇಗೆ ಮರುಪಡೆಯುವುದು.