์ด๊ฒ์ Ubuntu Online, Fedora Online, Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MAC OS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ์ ๊ฐ์ ์ฌ๋ฌ ๋ฌด๋ฃ ์จ๋ผ์ธ ์ํฌ์คํ ์ด์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ OnWorks ๋ฌด๋ฃ ํธ์คํ ๊ณต๊ธ์์์ ์คํํ ์ ์๋ ๋ช ๋ น dacstoken์ ๋๋ค.
ํ๋ก๊ทธ๋จ:
์ด๋ฆ
dacstoken - ํด์ ๊ธฐ๋ฐ ์ผํ์ฉ ๋น๋ฐ๋ฒํธ ๊ด๋ฆฌ
๊ฐ์
๋ฅ์คํก [๋ฅ์ค์ต์ [1] [-๋ชจ๋] [-๋ฒ ์ด์ค NUM] [-์นด์ดํฐ NUM] [-์ซ์ NUM]
[-์ฅ์ ๋ฅผ ์ ํ๋ค | -ํ ์์๊ฒํ๋ค] [-hotp-์ฐฝ NUM] [-์ํค ํญ๋ชฉ ํ์]
[[-ํค ํค๋ฐ] | [-ํค ํ์ผ ํ์ผ ์ด๋ฆ] | [-ํค ํ๋กฌํํธ]] [-์์ otp ๋ชจ๋]
[- ์์ํค ํญ๋ชฉ ํ์]
[[ํ ํ๋ฐ] | [-ํ ํ์ผ ํ์ผ ์ด๋ฆ] | [-ํ ํ๋กฌํํธ]] [-ํ ์ ์ฝ ํ์ ๋ฒ์ ]
[-rnd] [-์จ ํ์ ๋ฒ์ ] [-์ฐ์๋ฌผ ํ์ ๋ฒ์ ] [-์๋จ-๋ธํ NUM] [-ํ ๋๋ฆฌํํธ ์์๋์ฐ]
[-top-hash ALG]
[-top-timestep ์ด] [-vfs vfs_uri] [์ฐ์ฐ ์ฌ์] [์ฌ์ฉ์ ์ด๋ฆ]
๊ธฐ์
์ด ํ๋ก๊ทธ๋จ์ DACS ๋ชจ์๊ณก.
XNUMXD๋ดํ์ ๋ฅ์คํก ์ ํธ๋ฆฌํฐ ๊ด๋ฆฌ DACS OTP(์ผํ์ฑ ๋น๋ฐ๋ฒํธ)์ ์ฐ๊ฒฐ๋ ๊ณ์
์์ฑ ์ฅ์น(ํ ํฐ) ๋๋ ์ํํธ์จ์ด ๊ธฐ๋ฐ ํด๋ผ์ด์ธํธ. ๋ํ ๋ช ๋ น์ค ์ต์ ์ ์ฌ์ฉํ์ฌ
OTP ๊ฐ์ ๊ณ์ฐํฉ๋๋ค. ํ ํฐ ๊ณ์ ๋งค๊ฐ๋ณ์๋ ์ฌ์ ์ํ ์ ์์ง๋ง ๊ณ์ ์
์ด ํ์ํฉ๋๋ค.
๊ฐ๋ ฅํ ์ด์ค ์์ ์ธ์ฆ์ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ ์ ๊ณต๋ ์ ์์ต๋๋ค. dacs_์ธ์ฆ[2] ๊ตฌ์ฑ
๋ฅผ ์ฌ์ฉํ๋ local_token_authenticate[3] ์ธ์ฆ ๋ชจ๋ ๋๋ ๋ ๋ฅ์คํก ๋ก ์ฌ์ฉ๋๋ค
์ํธ๋ฅผ ํ์ธํ๋ ๋ ๋ฆฝ ์คํํ ํ๋ก๊ทธ๋จ. HMAC ๊ธฐ๋ฐ ์ผํ์ฉ ๋น๋ฐ๋ฒํธ ๋ชจ๋
(HOTP), ์ด๋ฒคํธ ์นด์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ง์ RFC 4226[4] ๋ฐ ์๊ฐ ๊ธฐ๋ฐ
TOTP(์ผํ์ฑ ์ํธ ๋ชจ๋), ์ต๊ทผ IETF ์ธํฐ๋ท ์ด์[5] ์ ์,
์ง์๋ฉ๋๋ค. ์ถ๊ฐ ์ด์ ๋ชจ๋[6] OCRA(๋งน์ธ ๋์ -์๋ต
์๊ณ ๋ฆฌ์ฆIETF Internet-Draft์ ์ค๋ช ๋ )์ ์์ง ์์ ํ ์ง์๋์ง ์์ต๋๋ค.
์ฃผ์ ์ฌํญ
์ด ๋ฒ์ ์ ๋ฅ์คํก ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ง์ ๋ณ๊ฒฝ ์ฌํญ์ ํตํฉํฉ๋๋ค.
๋ฆด๋ฆฌ์ค 1.4.24a ๋ฐ ์ด์ ๋ฒ์ ์์. ์ผ๋ถ ๋ช ๋ น์ค ํ๋๊ทธ๋ ๋ค๋ฅด๊ฒ ์๋ํ๋ฉฐ,
๊ณ์ ํ์ผ์ ํ์์ด ๋ณ๊ฒฝ๋์์ต๋๋ค. ์ด์ ์ ์ด ๋ช ๋ น์ ์ฌ์ฉํ ๊ฒฝ์ฐ
๋ฆด๋ฆฌ์ค, ํ ํฐ ๊ณ์ ํ์ผ์ ๋ฐฑ์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค๊ณ ์ด ์ค๋ช ์๋ฅผ ๊ฒํ ํ์ญ์์ค.
๊ณ์ํ๊ธฐ ์ ์ ํ์ด์ง๋ฅผ ์ฃผ์ ๊น๊ฒ -์ ํํ๋ค ํนํ ํ๋๊ทธ[7]).
์ค๋ํ
๊ณต๊ธ์ ์ฒด ์ ๊ณต ์ํํธ์จ์ด๊ฐ ํ์ํ์ง ์์ ๋ฅ์คํก ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. NS
ํ์ฌ ์ง์๋๋ ์ฅ์น๋ ๋ฑ๋ก ๋๋ ๊ตฌ์ฑ ์ํธ ์์ฉ์ด ํ์ํ์ง ์์ต๋๋ค.
๊ณต๊ธ์ ์ฒด์ ๋ฅ์คํก ํ์ง ์ง์ ์ํธ ์์ฉํ๋ ๊ณผ ๋ฒค๋' ์๋ฒ or ์ฌ์ฉ ์ด๋ค
์์ ๊ถ ์ํํธ์จ์ด. ์ํํ๋ ค๋ฉด ๊ณต๊ธ์ ์ฒด ์ ๊ณต ์ํํธ์จ์ด๊ฐ ํ์ํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ค๋ฅธ ํ ํฐ ์ฅ์น์ ๋ํ ์ด๊ธฐํ ๋๋ ๊ตฌ์ฑ ๋ฅ์คํก ํ์ง
๊ทธ๋ฌํ ์ง์์ ์ ๊ณตํ์ง ์์ต๋๋ค.
๊ฐ ํ ํฐ ์ฅ์น๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค์์์ ๊ด๋ฆฌํ๋ ์ ํํ ํ๋์ ๊ณ์ ์ ํด๋นํฉ๋๋ค.
๋ฅ์คํก, ์ผ๋ถ ๊ณต๊ธ์ ์ฒด๋ ์ฌ๋ฌ ๊ณ์ ์ ์ง์ํ ์ ์๋ ํ ํฐ์ ์์ฐํฉ๋๋ค.
์์ฝํ์๋ฉด ์ด ์ ํธ๋ฆฌํฐ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ยท ์์ฑ ๋ฐ ๊ด๋ฆฌ DACS ์นด์ดํฐ ๊ธฐ๋ฐ ๋ฐ ์๊ฐ ๊ธฐ๋ฐ ๊ณ์
์ผํ์ฑ ๋น๋ฐ๋ฒํธ
ยท ๊ฒ์ฆ ๋ฐ ํ ์คํธ ๊ธฐ๋ฅ ์ ๊ณต
ยท ๋ช ๋ น์ค ์ธ์ฆ ๊ธฐ๋ฅ ์ ๊ณต
๋ณด์
์ค์ง DACS ๊ด๋ฆฌ์๋ ์ด ํ๋ก๊ทธ๋จ์ ์ฑ๊ณต์ ์ผ๋ก ์คํํ ์ ์์ด์ผ ํฉ๋๋ค.
๋ช ๋ น์ค. ๋๋ฌธ์ DACS ํค ๋ฐ ๊ตฌ์ฑ ํ์ผ(์ฌ์ฉ๋ ํ์ผ ํฌํจ)
์คํ ์ด ๊ณ์ ์ ๊ด๋ฆฌ์๋ก ์ ํ๋์ด์ผ ํ๋ฉฐ ์ผ๋ฐ์ ์ผ๋ก
๊ทธ๋ฌ๋ ์ ์คํ ๊ด๋ฆฌ์๋ ๋ชจ๋ ํ์ผ์ ๋ํ ์ก์ธ์ค๋ฅผ ๊ฑฐ๋ถํ๋๋ก ํ์ผ ๊ถํ์ ์ค์ ํฉ๋๋ค.
๋ค๋ฅธ ์ฌ์ฉ์.
์ฃผ์ ์ฌํญ
XNUMXD๋ดํ์ dacs_token(8)[8] ์น ์๋น์ค๋ ์ฌ์ฉ์์๊ฒ ์ ํ๋ ์ ํ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ณ์ PIN์ ์ค์ ๋๋ ์ฌ์ค์ ํ๊ณ ํ ํฐ์ ๋๊ธฐํํ๋ ๊ธฐ๋ฅ. ๋ํ
ํ ์คํธ ๋ฐ ํ๊ฐ๋ฅผ ๋จ์ํํ๋ ๋ฐ๋ชจ ๋ชจ๋๊ฐ ์์ต๋๋ค.
๋ค๋ฆฌ (๊ณ์ ๋น๋ฐ๋ฒํธ)
A ๋ฅ์คํก ๊ณ์ ์๋ ์ ํ์ ์ผ๋ก ์ฐ๊ฒฐ๋ PIN(์: ์ํธ)์ด ์์ ์ ์์ต๋๋ค. NS
์ด๋ฌํ ๊ณ์ ์ ๋ํด ์ธ์ฆํ๋ ค๋ฉด ์ฌ์ฉ์๋ ์์ฑ๋ ์ผํ์ฉ ์ํธ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
ํ ํฐ์ผ๋ก ๊ณผ ํ. NS TOKEN_REQUIRES_PIN[9] ๊ตฌ์ฑ ์ง์๋ฌธ์ ๋ค์์ ๊ฒฐ์ ํฉ๋๋ค.
๊ณ์ ์ ๋ง๋ค๊ฑฐ๋ ๊ฐ์ ธ์ฌ ๋ PIN์ ์ ๊ณตํด์ผ ํ๋์ง ์ฌ๋ถ ์ ์ ์ฉ๋์ง ์์ต๋๋ค
์ ํจ๊ป -๋ธํ ํ๋๊ทธ, ๊ด๋ฆฌ์๋ง ์ํํ ์ ์์ด์ผ ํ๋ฏ๋ก
๊ทธ ๊ธฐ๋ฅ.
PIN์ ํด์๋ PIN ์์ฒด๊ฐ ์๋ ๊ณ์ ๋ ์ฝ๋์ ์ ์ฅ๋ฉ๋๋ค. ๋๊ฐ๋ค
์ ์ํด ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ ๋ฅ์คํจ์ค์๋(1)[10] ๋ฐ dacs_passwd(8)[11]์ด ์ ์ฉ๋๋ฉฐ, ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค.
๋น๋ฐ๋ฒํธ_DIGEST[12] ๋ฐ ๋น๋ฐ๋ฒํธ_SALT_PREFIX[13] ์ง์นจ์ด ๋ฐํจ ์ค์ ๋๋ค. ๋ง์ฝ์
๋น๋ฐ๋ฒํธ_DIGEST[12]๊ฐ ๊ตฌ์ฑ๋๋ฉด ํด๋น ์๊ณ ๋ฆฌ์ฆ์ด ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ปดํ์ผ ์๊ฐ
๊ธฐ๋ณธ๊ฐ(SHA1)์ด ์ฌ์ฉ๋ฉ๋๋ค. ์ฌ์ฉ์๊ฐ PIN์ ์์ด๋ฒ๋ฆฐ ๊ฒฝ์ฐ ์ด์ PIN์ ๋ณต๊ตฌํ ์ ์์ผ๋ฏ๋ก
์ญ์ ํ๊ฑฐ๋ ์๋ก ์ค์ ํด์ผ ํฉ๋๋ค.
์ผ๋ถ ํ ํฐ ์ฅ์น์๋ PIN ๊ธฐ๋ฅ์ด ๋ด์ฅ๋์ด ์์ต๋๋ค. ์ฌ์ฉ์๋ PIN์ ์ ๋ ฅํด์ผ ํฉ๋๋ค.
์ฅ์น๊ฐ ์ผํ์ฑ ์ํธ๋ฅผ ๋ฐฉ์ถํ๊ธฐ ์ ์ ์ฅ์น. ์ด "๊ธฐ๊ธฐ PIN"์
์์ ๊ด๋ฆฌํ๋ ๊ณ์ PIN๊ณผ ์์ ํ ๋ค๋ฆ ๋๋ค. ๋ฅ์คํก, ๊ทธ๋ฆฌ๊ณ ์ด ์ค๋ช ์๋
์๋ง ๊ด์ฌ ๋ฅ์คํก ํ. ๊ธฐ๊ธฐ PIN์ ๊ฐ๋ฅํ๋ฉด ํญ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ ์, ๋ฅ์คํก PIN์ ๊ฐ๋ ฅํ๊ฒ ๊ถ์ฅ๋๋ฉฐ ์ด์ค ์ธ์ฆ์ ํ์ํฉ๋๋ค.
(์ถ๊ฐ ์ธ์ฆ ์์๊ฐ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ์ ์ฉ๋์ง ์๋ ํ).
๊ด๋ฆฌ์๋ง ์ด ๋ช ๋ น์ ์คํํ ์ ์์ผ๋ฏ๋ก ์ ํ์ด ์์ต๋๋ค.
๊ด๋ฆฌ์๊ฐ ์ ๊ณตํ๋ PIN์ ๊ธธ์ด ๋๋ ํ์ง ๊ฒฝ๊ณ ๋ฉ์์ง
๋จ, ๋น๋ฐ๋ฒํธ๊ฐ ์ทจ์ฝํ๋ค๊ณ ํ๋จ๋๋ ๊ฒฝ์ฐ
PASSWORD_CONSTRAINTS[14] ์ง์.
ํ ๋ฒ ์ํธ
๋ ์ข ๋ฅ์ ์ผํ์ฉ ์ํธ ์ฅ์น๋ ์์ ํ
ํค ํด์ ์๊ณ ๋ฆฌ์ฆ(RFC 2104[15], FIPS 198[16]). ์นด์ดํฐ ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์์ ์ฅ์น
์๋ฒ๋ ์ซ์๋ฅผ ์์ฑํ๊ธฐ ์ํด ํด์๋ ๋น๋ฐ ํค์ ์นด์ดํฐ ๊ฐ์ ๊ณต์ ํฉ๋๋ค.
ํน์ ์๋ฆฟ์๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ๊ธฐ์์ ํ์๋๋ ๊ฐ์ ๋๋ค. ์ฑ๊ณต์ ์ธ
์ธ์ฆ์ ์ํด์๋ ์ฅ์น์ ์๋ฒ๊ฐ ์ผ์นํ๋ ์ํธ๋ฅผ ๊ณ์ฐํด์ผ ํฉ๋๋ค. ๋งค๋ฒ
์ฅ์น๊ฐ ์ํธ๋ฅผ ์์ฑํ๋ฉด ์นด์ดํฐ๊ฐ ์ฆ๊ฐํฉ๋๋ค. ์๋ฒ๊ฐ ๋งค์นญ์ ๋ฐ์์ ๋
์ํธ๋ฅผ ์ ๋ ฅํ๋ฉด ์นด์ดํฐ๊ฐ ์ฆ๊ฐํฉ๋๋ค. ๋ ์นด์ดํฐ๊ฐ ๋ ์ ์๊ธฐ ๋๋ฌธ์
๋๊ธฐํ๋์ง ์์ ๊ฒฝ์ฐ ์๋ฒ์ ์ผ์น ์๊ณ ๋ฆฌ์ฆ์ ์ผ๋ฐ์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์ํธ๋ฅผ ํ์ฉํฉ๋๋ค.
์นด์ดํฐ ๊ฐ์ "์ฐฝ"์ ์ํฉ๋๋ค. ์๊ฐ ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ์ ์ฌํ์ง๋ง ์ฃผ์
์ฐจ์ด์ ์ ํ์ฌ Unix ์๊ฐ( ์๊ฐ(3)[17], ์)๋
๊ณ์ฐ์์ ์นด์ดํฐ ๊ฐ์ผ๋ก ์ฌ์ฉ๋๋ "์๊ฐ ๋จ๊ณ ์ฐฝ"์ ์ค์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๋ณด์ ํด์์. ์ฅ์น์ ์๋ฒ์ ์ค์๊ฐ ์๊ณ๊ฐ ์ผ์นํ์ง ์์ ์ ์๊ธฐ ๋๋ฌธ์
์ถฉ๋ถํ ๋๊ธฐํ๋๋ฉด ์๋ฒ์ ์ผ์น ์๊ณ ๋ฆฌ์ฆ์ ํด๋ผ์ด์ธํธ์
์ด๋ฌํ ์ฅ์น์ ๋ํ ๋ช ๊ฐ์ง ์๊ฐ ๋จ๊ณ ์ฐฝ์ ์ํ๋๋ก ์ํธ๋ฅผ ์ค์ ํฉ๋๋ค.
๋ณด์
ํ ํฐ์๋ ์๊ตฌ ๋น๋ฐ ํค(OTP ์๋๋ผ๊ณ ๋ ํจ)๊ฐ ํ ๋น๋ ์ ์์ต๋๋ค.
์ ์กฐ์ ์ฒด ๋๋ ํค๋ฅผ ํ๋ก๊ทธ๋๋ฐํ ์ ์์ต๋๋ค. ์ด ๋น๋ฐ ํค๋ ํ ํฐ์
์ํธ ์์ฑ ์ ์ฐจ๋ ๋น๊ณต๊ฐ๋ก ์ ์งํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ํ ํฐ์ ๊ฒฝ์ฐ
ํ๋ก๊ทธ๋๋ฐํ ์ ์๋ ๊ฒฝ์ฐ ํค๋ ๊ณต๊ธ์ ์ฒด์์ ์ป์ต๋๋ค(HOTP ํ ํฐ์ ๊ฒฝ์ฐ ์ผ๋ฐ์ ์ผ๋ก
์ฅ์น์ ์ผ๋ จ ๋ฒํธ์ ์ธ ๊ฐ์ ์ฐ์ ์ํธ๋ฅผ ์ ๊ณตํ์ฌ). ๊ธฐ๋ก
์ผ๋ จ ๋ฒํธ์์ ๋น๋ฐ ํค๋ก ๋งคํํ ๋๋ง๋ค ๋ณด์ ์์น์ ๋ณด๊ดํด์ผ ํฉ๋๋ค.
๋น๋ฐ ํค๊ฐ ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ํํธ์จ์ด ํด๋ผ์ด์ธํธ์ ํจ๊ป ์์ ๊ฐ๋ฅ์ฑ์ด ๋์ผ๋ฏ๋ก
์ต์ํ ํ์ 128 ๋นํธ ๊ธธ์ด; ์ต์ 160 ๋นํธ ๊ถ์ฅ๋ฉ๋๋ค. ๊ทธ๋งํผ
ํค๋ 16์(๋๋ ๊ทธ ์ด์)์ XNUMX์ง์ ๋ฌธ์์ด๋ก ํ์๋ฉ๋๋ค. ์ด์ ๋
๋๋ค ๋นํธ์ ์ํธํ ํ์ง ์์ค์์ ์ป์ ์ ์์ต๋๋ค. ์ผ๋ถ ํด๋ผ์ด์ธํธ๋
์ ์ ํ ํค๋ฅผ ์์ฑํ ์ ์์ง๋ง ๋ฅ์น์คํ๋ฅด(1)[18] :
% dacsexpr -e "์์(๋ฌธ์์ด, 20)"
"bb2504780e8075a49bd88891b228fc7216ac18d9"
ํ
ํ ํฐ์ ์ปดํจํฐ ๋ก๊ทธ์ธ ์ด์ธ์ ์ธ์ฆ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ์์ํ
์๋ฅผ ๋ค์ด ๊ณ ๊ฐ์ ๊ณ์ ๋ฒํธ, PIN ๋ฐ ํ ํฐ ๊ฐ์ ์ ๊ณตํ์ฌ ์ ์ํ๊ฒ
์ ํ๋ฅผ ํตํ ์ธ์ฆ์ ํตํด ๋น์ฉ์ด ๋ง์ด ๋๋ ๋น์ฉ์ ์ค์ด๊ฑฐ๋ ์ ๊ฑฐํฉ๋๋ค.
์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ๋ณด์ ์ง๋ฌธ.
์ผํ์ฉ ์ํธ ์ฅ์น ๋ฐ ์์ฉ ํ๋ก๊ทธ๋จ์๋ ๋ค์๊ณผ ๊ฐ์ ์๋ ๋งค๊ฐ๋ณ์๊ฐ ์์ต๋๋ค.
์ด๋ฌํ ๋งค๊ฐ๋ณ์๋ ์์ฑ๋๋ ์ํธ ์ํ์ค๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. ์ผ๋ถ ์ด์
๋งค๊ฐ๋ณ์๋ (๊ด๋ จ ํ์ค์ ์ํด ๋๋ ๊ตฌํ์ผ๋ก ์ธํด) ๊ณ ์ ๋ ์ ์์ง๋ง,
๋ค๋ฅธ ๊ฒ๋ค์ ์ฌ์ฉ์๊ฐ ๋ถ๋ถ์ ์ผ๋ก ๋๋ ์์ ํ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ๋ฅผ ์ฐธ์กฐํ์ญ์์ค
์์ธํ ๋ด์ฉ์ ์ฐธ์กฐ ๋ฐ ์ ์กฐ์ ์ฒด ์ค๋ช ์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
๊ธฐ์ง
์ํธ๊ฐ ํ์๋๋ ๊ธฐ์์ ๋๋ค.
์นด์ดํฐ
HOTP ๋ชจ๋์ ๊ฒฝ์ฐ์๋ง ํ์ฌ ์นด์ดํฐ ๊ฐ์ ๋๋ค.
์ซ์
๊ฐ ์ผํ์ฉ ์ํธ์ ์๋ฆฟ์์ ๋๋ค.
ํค
๋น๋ฐ ํค(OTP ์๋).
์ผ๋ จ ๋ฒํธ
์ฅ์น์ ๊ณ ์ ์๋ณ์ ๋๋ ์ด๋ฆ์ ๋๋ค.
์๊ฐ ๋จ๊ณ ํฌ๊ธฐ
TOTP ๋ชจ๋์ ๊ฒฝ์ฐ์๋ง ๊ฐ ์๊ฐ ๊ฐ๊ฒฉ์ ๋๋น(์ด)์ ๋๋ค. ๋์ผํ ๋น๋ฐ๋ฒํธ
์ฃผ์ด์ง ๊ฐ๊ฒฉ ๋ด์์ ์์ฑ๋ฉ๋๋ค. ์ฆ, ์ด๊ฒ์ "ํ์" ๋๋ ์ ํจ์ฑ์ ๋๋ค.
๊ฐ TOTP ๋น๋ฐ๋ฒํธ์ ๊ธฐ๊ฐ.
์ด๋ฌํ ๋งค๊ฐ๋ณ์ ์ธ์๋ ๋ฅ์คํก ๊ณ์ ๋น(์ฆ, ๊ธฐ๊ธฐ๋น) ์ฌ๋ฌ ๊ฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋งค๊ฐ ๋ณ์ :
์๋ฝ ์ฐฝ
HOTP ๋น๋ฐ๋ฒํธ๋ฅผ ๊ฒ์ฆํ ๋ ๊ณ ๋ คํด์ผ ํ ์ต๋ ๋น๋ฐ๋ฒํธ ์
์์ ๋น๋ฐ๋ฒํธ.
ํ๋ฅํ๋ค
TOTP ๋ชจ๋์ ๊ฒฝ์ฐ์๋ง ์๋ฒ์ ์๊ณ๋ฅผ ์กฐ์ ํ๋ ์๊ฐ(์ด)
์ฅ์น์ ๋ ์ ๋๊ธฐํํ๋ ค๋ฉด ์์ผ๋ก ๋๋ ๋ค๋ก. ์ด๊ฒ์ ์ฌ์ฉ๋ฉ๋๋ค
ํด๋ญ์ด ๋๊ธฐํ๋์ง ์์ ํ ํฐ ๋๋ ํด๋ผ์ด์ธํธ ์ํํธ์จ์ด๋ฅผ ๋ณด์ํฉ๋๋ค.
์๋ฒ์.
๋๋ฆฌํํธ ์๋์ฐ
TOTP ๋ชจ๋์๋ง ํด๋นํ์ง๋ง ์๋ฝ ์ฐฝ๊ณผ ์ ์ฌํ๊ฒ ์ต๋
์ ํจ์ฑ์ ๊ฒ์ฌํ ๋ ์๋ค๋ก ๊ฒ์ํ ๊ฐ๊ฒฉ(๊ฐ ์๊ฐ ๋จ๊ณ ํฌ๊ธฐ)
์ฃผ์ด์ง ์ํธ์ ๋ํด.
๋๊ธฐํ OTP
HOTP ๋ชจ๋์ ๊ฒฝ์ฐ์๋ง ํ์ํ ์ฐ์ XNUMXํ์ฉ ๋น๋ฐ๋ฒํธ์ ์
๊ณ์ ์ ์ฅ์น์ ๋๊ธฐํํฉ๋๋ค.
์ฌ์ฉ์ ์ด๋ฆ
์ ์ด๋ฆ DACS ์ฅ์น์ ๋ฐ์ธ๋ฉ๋ ๊ณ์ .
์ผํ์ฉ ์ํธ ์ฅ์น๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ์ธ์ฆ์๋ ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ด ์์ต๋๋ค.
ยท ์ฌ์ฉ์๊ฐ ์ธ์ฆํ ๋๋ง๋ค ๋ค๋ฅธ ์ํธ๊ฐ ์์ฑ๋ฉ๋๋ค(๋์
๊ฐ์ฐ์ฑ); ๋ฐ๋ผ์ ์ฌ์ฉ์๋ "๋น๋ฐ๋ฒํธ"๋ฅผ ๊ธฐ๋กํ ์ ์์ต๋๋ค.
ํญ์ ๋ณํ๋; ์ฌ์ฉ์๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ด๋ฒ๋ฆด ์ ์์ต๋๋ค.
ยท ํ ๋ฒ ์ฌ์ฉ๋ HOTP ๋ชจ๋ ์ํธ๋ ์ฆ์ "์๋น"๋๋ฉฐ ์ฌ์ฉ ๊ฐ๋ฅ์ฑ์ด ๋ฎ์ต๋๋ค.
๋ค์ ์ค๋ซ๋์; ์ ์ ํ ๊ตฌ์ฑ ๋งค๊ฐ๋ณ์๊ฐ ์๋ TOTP ๋ชจ๋ ์ํธ
๋น๊ต์ ์งง์ ์๊ฐ ๊ฐ๊ฒฉ ๋ด์ ์๋์ผ๋ก "๋ง๋ฃ"๋๋ฉฐ
์ค๋ซ๋์ ๋ค์ ์ฌ์ฉ;
ยท ํด๋ญ ๋๋ฆฌํํธ์ ๋ํ ์์ ์ด ํ์ํ์ง ์์ ๊ฒฝ์ฐ TOTP ๋ชจ๋ ๊ณ์ ์ ์ฝ๊ธฐ ์ ์ฉ์ผ ์ ์์ต๋๋ค.
์กฐ์;
ยท ๋น๋ฐ๋ฒํธ๋ ์ฝ๊ฒ ์ถ์ธกํ ์ ์๋ ์ซ์๋ ๋ฌธ์์ด์ด ์๋๊ธฐ ๋๋ฌธ์
๋๋ถ๋ถ์ ์ฌ์ฉ์๊ฐ ์ ํํ ์ํธ๋ณด๋ค ๊ฐ๋ ฅํด์ผ ํฉ๋๋ค.
ยท HOTP ํ ํฐ์ ์ํธ("์๋ฐฉํฅ") ์ธ์ฆ ๋ฐฉ๋ฒ์ ๊ธฐ์ด๊ฐ ๋ ์ ์์ต๋๋ค. NS
์๋ฒ๋ ID๋ฅผ ํ์ธํ๊ธฐ ์ํด ์ฌ์ฉ์์๊ฒ ํ ํฐ์ ๋ค์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณด์ฌ์ค๋๋ค(๋ ๋ค
๋น์ฌ์๊ฐ ์นด์ดํฐ๋ฅผ ์งํํจ), ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ๋ค์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณด์ฌ์ค๋๋ค.
๊ทธ์ ์ ์์ ํ์ธํ๊ธฐ ์ํด;
ยท ์ฌ์ฉ์์ ์ปดํจํฐ์ ํค ์ค๋ํผ๊ฐ ์ค์น๋์ด ์์ผ๋ฉด ์ค๋ํ๋ ์ํธ๋
๊ณต๊ฒฉ์๊ฐ ์ข์ ์ผ์ ํ์ง ์๋ ํ ์ค๊ฐ์ ๊ณต๊ฒฉ[19] ๊ฐ๋ฅํฉ๋๋ค. ์ฃผ์ด์ง N
์ฐ์ ๋น๋ฐ๋ฒํธ ๋น๋ฐ๋ฒํธ๋ฅผ ๊ณ์ฐํ๋ ๊ฒ์ ์ฌ์ ํ โโ๋งค์ฐ ์ด๋ ต์ต๋๋ค. N + 1 ์์ด
๋น๋ฐ ํค๋ฅผ ์๋ ๊ฒ;
ยท ์ฌ์ฉ์๊ฐ ๊ณ์ ์ ๊ณต์ ํ๋ ๊ฒ์ด ๋ ์ด๋ ต์ต๋๋ค(์ฌ์ฉ์๊ฐ ๋๋๋ก
์ด๊ฒ์ ๋ถํธํ๊ฒ ์๊ฐํ์ญ์์ค);
ยท ๋ง์ฝ ๋ฅ์คํก PIN์ ๊ณ์ ์ ํ ๋น๋๊ณ ๊ณต๊ฒฉ์๋ ๊ณ์ ์
๊ณต๊ฒฉ์๊ฐ PIN์ ๋ชจ๋ฅธ ์ฑ ์ธ์ฆํ๋ ๊ฒ์ ์ฌ์ ํ โโ์ด๋ ต์ต๋๋ค.
ยท ๊ณ์ ์ ๋นํ์ฑํํ๋ ๋น ๋ฅด๊ณ ์ฆ๊ฐ์ ์ธ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ ๋จ์ํ
ํ๋์จ์ด ํ ํฐ(์: ์ง์์ด ํด๊ณ ๋ ๊ฒฝ์ฐ)์ ์ํด ๊ณ์ ์ด ๋นํ์ฑํ๋ ์ ์์ง๋ง
์ด ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๊ฑฐ๋ ํ์ง ๋ช ๋ถ[20];
ยท ํฐ, PDA ๋ฑ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ์์ ์คํ๋๋ ์ํํธ์จ์ด ํด๋ผ์ด์ธํธ์ ๊ฒฝ์ฐ,
์ฌ์ฉ์๋ ์ด๋ฏธ ์ฅ์น๋ฅผ ํด๋ํ๊ณ ์์ต๋๋ค. ๋ฌด๋ฃ ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก
์ถ๊ฐ ๋น์ฉ์ด ์์ ์ ์์ต๋๋ค(๋ชจ๋ฐ์ผ ์ฅ์น์์ ๋์ผํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง ์์ ์ ์์
ํ๋์จ์ด ํ ํฐ์ ๋ณ์กฐ ๋ฐฉ์ง, ๋ด๊ตฌ์ฑ, ํค ๋น๋ฐ์ฑ, ์๊ณ ์ ํ๋ ๋ฑ).
์ผํ์ฉ ์ํธ ์ฅ์น์๋ ๋ค์๊ณผ ๊ฐ์ ์ ์ฌ์ ์ธ ๋จ์ ์ด ์์ต๋๋ค.
ยท ํ๋์จ์ด ํ ํฐ์ ๋ํ ์ผํ์ฑ ๋น์ฉ์ด ์์ต๋๋ค(๊ตฌ๋งค๋์ ๋ฐ๋ผ,
$10-$100 USD๋ฅผ ์ง๋ถํ ๊ฒ์ผ๋ก ์์ํ ์ ์์ต๋๋ค.
๋ถ์ค ๋๋ ํ์๋ ํ ํฐ ๋๋ ํ ํฐ์ ๋ฐฐํฐ๋ฆฌ๋ฅผ ๊ต์ฒดํ์ญ์์ค(์ผ๋ถ ์ฅ์น์๋
๊ต์ฒดํ ์ ์๋ ๋ฐฐํฐ๋ฆฌ, ๋ช ๋ ํ์ ์ผํ์ฉ์ผ๋ก ๋ง๋ค๊ธฐ);
ยท ์ด๊ธฐ ์ค์ ์ด ๋ค๋ฅธ ์ธ์ฆ์ ๋นํด ๋ค์ ๊น๋ค๋กญ์ต๋๋ค.
๋ฐฉ๋ฒ ๋ฐ ์ฅ์น์ ์ต์ํ์ง ์์ ์ฌ์ฉ์๋
์ฌ์ฉํ๋ค;
ยท ์ผ๋ฐ์ ์ผ๋ก ํฌ๊ธฐ๊ฐ ๋งค์ฐ ์์(์: 5cm x 2cm x 1cm)
ํค์ฒด์ธ์ด๋ ๋, ๋๋ ์ง๊ฐ์ ๋ณด๊ดํ๋ ๊ฒฝ์ฐ ์ฌ์ฉ์๋ ํ ํฐ์ ํด๋ํด์ผ ํ๋ ๊ฒ์ ๋ํด ์์ฐํ ์ ์์ต๋๋ค.
๊ทธ๋ค๊ณผ ํจ๊ป;
ยท ์ฌ์ฉ์๋ ํ ํฐ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ ์์ด๋ฒ๋ฆฌ๊ฑฐ๋ ํ ํฐ์ ์์ด๋ฒ๋ฆด ์ ์์ต๋๋ค.
ยท ๋ชจ๋ฐ์ผ ์ฅ์น(์ํํธ์จ์ด ํด๋ผ์ด์ธํธ ํฌํจ)๋ ์๋ง๋ ์ ๋์ ํ์ ์ด ๋ ์ ์์ต๋๋ค.
ํ๋์จ์ด ํ ํฐ๋ณด๋ค(๋ฐ๋ผ์ ์ด ์ฅ์น์ ๋ํ PIN์ ์ค์์ฑ);
ยท ํค๊ฐ ์ก์ธ์คํ ์ ์๋ ๋ณ์กฐ ๋ฐฉ์ง๋ก ์๊ฐ๋๋ ํ๋์จ์ด ํ ํฐ๊ณผ ๋ฌ๋ฆฌ
๋ฉ๋ชจ๋ฆฌ, ์ํํธ์จ์ด ํด๋ผ์ด์ธํธ์ ๊ตฌ์ฑ๋ ํค๋ ํด๋น ํด๋ผ์ด์ธํธ์์ ์ฝ์ ์ ์์ต๋๋ค.
์์ ์, ๊ณ์ ๊ณต์ ๊ฐ๋ฅ
ยท ๋ชจ๋ฐ์ผ ์ฅ์น์ 40์ ์ด์์ ์ด๊ธฐ๊ฐ์ ์ ๋ ฅํ๋ฉด ๋ต๋ตํ ์ ์์ต๋๋ค.
์ค๋ฅ๊ฐ ๋ฐ์ํ๊ธฐ ์ฝ์ต๋๋ค.
ยท TOTP ์ฅ์น๊ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ๋ฉด ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ ๋๊น์ง
์ฌ์ฉ์๊ฐ 30์ด(๋๋ 60์ด)๋ฅผ ๊ธฐ๋ค๋ ค์ผ ํ๋ ๋ค์ ์๊ฐ ๋จ๊ณ ์ฐฝ(์:
์ ๋ ฅ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ);
ยท ์ผ๋ถ ์ฅ์น๋ ์ ์กฐ๋ ์กฐ๊ฑด์์ ์ฝ๊ธฐ ์ด๋ ต์ต๋๋ค. ๋ ธ์ ์ฌ์ฉ์ ๋ฐ ๊ทธ
์๊ฐ ์ฅ์ ๊ฐ ์๋ ์ฌ์ฉ์๋ ๋์คํ๋ ์ด๋ฅผ ์ฝ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช์ ์ ์์ต๋๋ค.
๊ณ์
์์ ๊ด๋ฆฌํ๋ ๊ณ์ ๋ฅ์คํก ์์ ์ฌ์ฉํ๋ ๊ณ์ ๊ณผ ์์ ํ ๋ถ๋ฆฌ๋์ด ์์ต๋๋ค.
local_passwd_authenticate[21] ๋๋ ๊ธฐํ DACS ์ธ์ฆ ๋ชจ๋.
HOTP ๋ฐ TOTP ์ฅ์น์ ๋ํ ๊ณ์ ์ ๊ฒฐํฉ๋๊ฑฐ๋ ๋ณ๋๋ก ์ ์ง๋ ์ ์์ต๋๋ค. ๊ฐ์์ ๊ฒฝ์ฐ
filestore ํญ๋ชฉ ์ ํ auth_hotp_token์ด ์ ์๋์ด ์์ผ๋ฉฐ ์ฐ๊ฒฐ๋ ๊ณ์ ์๋ง ์ฌ์ฉ๋ฉ๋๋ค.
HOTP ํ ํฐ์ผ๋ก. ๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ์ ํ์ผ ์ ์ฅ์ ํญ๋ชฉ ์ ํ auth_totp_token์ด
์ ์๋ TOTP ํ ํฐ๊ณผ ์ฐ๊ฒฐ๋ ๊ณ์ ์๋ง ์ฌ์ฉ๋ฉ๋๋ค. ํญ๋ชฉ ์ ํ์ด ๋ค์ ์ค ํ๋์ธ ๊ฒฝ์ฐ
์ ์๋์ง ์์ ๊ณ์ ์ ๋ค์์ ํตํด ์ก์ธ์ค๋ฉ๋๋ค. DACS์ ํญ๋ชฉ ์ ํ์ ์ฌ์ฉํ๋ ๊ฐ์ ํ์ผ ์ ์ฅ์
์ธ์ฆ ํ ํฐ. ๊ณ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ํ์ผ ๊ถํ์ ๋ชจ๋
์ ๊ทผ์ ๊ด๋ฆฌ์๋ก ์ ํ๋๋ฉฐ local_token_authenticate.
๋ ๊ธฐ๊ธฐ ์ ํ์ ๋ํ ๊ณ์ ์ด ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ๊ฒฐํฉ ๋, ์๋ํ๋ฉด ๊ฐ ์ฌ์ฉ์ ์ด๋ฆ์
์ธ์ฆ ๋ฐฉ๋ฒ์ ๊ณ ์ ํด์ผ ํ๋ฉฐ ๊ฐ์ธ์ด ๋ ๊ฐ์ง ์ ํ์ ํ ํฐ์ ๋ชจ๋ ๊ฐ์ง๊ณ ์๋ ๊ฒฝ์ฐ
๋ค๋ฅธ ์ฌ์ฉ์ ์ด๋ฆ์ด ํ ๋น๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด Auggie๊ฐ ํ๋์ HOTP ํ ํฐ๊ณผ ํ๋์
TOTP ํ ํฐ, ์ ์๋ ์ฌ์ฉ์ ์ด๋ฆ auggie-hotp์ ํด๋นํ๊ณ ํ์๋
์ค์งํ; ๋ก๊ทธ์ธ ์์์๋ Auggie๋ฅผ ํ์ฉํ๋ ์ฅ์น ๋ชจ๋ ์ ๋ ฅ์ด ํฌํจ๋ ์ ์์ต๋๋ค.
์ฌ์ฉ์ ์ด๋ฆ ํ๋์ "auggie"๋ฅผ ์ ๋ ฅํ๊ณ JavaScript๋ฅผ ์๋์ผ๋ก ์ถ๊ฐํ๋ ค๋ฉด
์ ํ ์ฅ์น ๋ชจ๋์ ๋ฐ๋ผ ์ ์ ํ ์ ๋ฏธ์ฌ. ์ด๊ฒ์ ๋ช ๋ฐฑํ ๋จ์
๊ตฌ์ฑ์ ๋ ๊ฐ์ง ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ํ๋ค๋ ๊ฒ์ ๋๋ค. DACS ๋์ผํ ๊ฐ์ธ์ ์ ์;
Auggie๋ฅผ ์๋ณํ๋ ๋ฐ ์ก์ธ์ค ์ ์ด ๊ท์น์ด ํ์ํ ๊ฒฝ์ฐ ์ด ์ ๋ณด๋ฅผ ๊ธฐ์ตํด์ผ ํฉ๋๋ค.
๋ช ์์ ์ผ๋ก. ๋ ํ ํฐ์ด ๋์ผํ๊ฒ ๋งคํ๋์ด์ผ ํ๋ ๊ฒฝ์ฐ DACS ID, Auth ์ ์
์ธ์ฆ ์ฑ๊ณต ํ ์ ๋ฏธ์ฌ๋ฅผ ์ ๊ฑฐํ์ง๋ง ๊ด๋ฆฌ์๋
์๋ก ๋ค๋ฅธ ์ฅ์น ์ ํ์ ์ฌ์ฉํ๋ ๋ ๊ฐ์ ๋ค๋ฅธ Auggies์ ๊ฒฝ์ฐ์ ์ฃผ์ํด์ผ ํฉ๋๋ค.
auth_hotp_token ๋ฐ auth_totp_token ํญ๋ชฉ ์ ํ ๋ชจ๋(๋๋ ๊ทธ ์ค ํ๋๋ง ๊ตฌ์ฑ)
๋ฐ auth_token) ๊ณ์ ์ ๋ณ๋๋ก ์ ์งํ๊ณ ๋์ผํ ์ฌ์ฉ์ ์ด๋ฆ์
๋ ๊ฐ์ง ์ ํ์ ์ฅ์น. ๋ฐ๋ผ์ Auggie๋ ๋์ผํ ๊ณ์ ๊ธฐ๋ก์ ๊ฐ์ง ์ ์์ต๋๋ค.
๋ ์ฅ์น ์ ํ์ ๋ํ ์ฌ์ฉ์ ์ด๋ฆ. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ ค๋ฉด ์ฅ์น ๋ชจ๋๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค.
์ฌ๋ฐ๋ฅธ ํญ๋ชฉ ์ ํ์ ์ฌ์ฉํ ์ ์๋๋ก ์์ ์ด ์์ฒญ๋ ๋ ์ด๊ฒ์ ์๋ฏธํฉ๋๋ค
์ฌ์ฉ์๋ ์ฌ์ฉ ์ค์ธ ์ฅ์น ์ ํ์ ์์์ผ ํฉ๋๋ค(์๋ง๋ ๋ ์ด๋ธ์ ๋ถ์ฐฉํ์ฌ).
์ ๊ดํ ์ค์ํ ๋ด์ฉ์ ์ฐธ์กฐํ์ญ์์ค. DACS ์ ์[22].
XNUMXD๋ดํ์ -vfs auth_token ํญ๋ชฉ ์ ํ์ ๊ตฌ์ฑํ๊ฑฐ๋ ์ฌ๊ตฌ์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์ต์ ํค ๊ธธ์ด ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ํค๋ง(16 ๋ฐ์ดํธ)์ ํจ๊ป ์ ์ฅํ ์ ์์ต๋๋ค.
๊ณ์ ์ ๋ณด(์: -์ธํธ or -์์ ). ๋ค๋ฅธ ์ํฉ์์ ์๊ตฌ ์ฌํญ์
์ํ๋์ง ์์.
๋น๋ฐ ํค๋ ๋ค์์ผ๋ก ์ํธํ๋ฉ๋๋ค. ๋ฅ์คํก ๊ณ์ ํ์ผ์ ๊ธฐ๋ก๋ ๋. NS
๊ฐ์ ํ์ผ ์ ์ฅ์ ํญ๋ชฉ ์ ํ auth_token_keys๋ ์ํธํ ํค๋ฅผ ์๋ณํฉ๋๋ค. ๋ฅ์คํก
์ฌ์ฉ; NS -์ํค ๊ณผ - ์์ํค ํ๋๊ทธ๋ ๋์์ ์ง์ ํฉ๋๋ค(์ฐธ์กฐ ๋ฅ์คํค(1)[23]). ๋ง์ฝ
์ํธํ ํค๊ฐ ์์ค๋๋ฉด ๋น๋ฐ ํค๋ ์ค์ ๋ก ๋ณต๊ตฌํ ์ ์์ต๋๋ค.
์ค๋ํ
๊ณต๊ฒฉ์๊ฐ ๋น๋ฐ ํค๋ฅผ ๋ฐ๊ฒฌํ๋ฉด ์์ ํ์ง ์๊ณ ์ฌ์ฉ ๊ฐ๋ฅํ ์ํธ๋ฅผ ์์ฑํฉ๋๋ค.
ํ ํฐ์ ์ด๋ ต์ง ์์ ๊ฒ์ ๋๋ค. ์ต์ํ ์ผ๋ถ ํ๋์จ์ด ํ ํฐ์ ๊ฒฝ์ฐ ํค๊ฐ ์๊ฐ๋ฉ๋๋ค.
์ฅ์น์ ์ ๋ ฅํ๊ณ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ํค๊ฐ ๋์ถ ๋ ๊ฒฝ์ฐ ์ฅ์น
ํ๊ดด๋์ด์ผ ํ๋ค. ํ ํฐ์ ๋ถ์คํ ๊ฒฝ์ฐ ํด๋น ๊ณ์ ์ ๋นํ์ฑํํด์ผ ํฉ๋๋ค.
๊ณต๊ฒฉ์๊ฐ ๋ถ์ค๋ ํ ํฐ์ ์ฐพ๊ฑฐ๋ ๋ณด์ ํค๋ฅผ ๋ฐ๊ฒฌํ ๊ฒฝ์ฐ
๊ณ์ ๊ณผ ์ฐ๊ฒฐ๋ PIN์ ๊ณต๊ฒฉ์๊ฐ ํ๋ํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋ญ๋๋ค.
์ก์ธ์ค ํ ์ ์์ต๋๋ค.
์ค๋ํ
ยท ์ด ์ธ์ฆ ๋ฐฉ๋ฒ์ ๋ค์ OTP ์ ํ์ ๋ํด ํ ์คํธ๋์์ต๋๋ค.
ยท ์คํ ๋ฅ์ค ํค 3600[24] ์ผํ์ฉ ์ํธ(HOTP) ํ๋์จ์ด ํ ํฐ;
ยท ํ์ดํฐ์ ๊ธฐ์ [25] OTP C100 ๋ฐ OTP C200 ์ผํ์ฉ ๋น๋ฐ๋ฒํธ ํ๋์จ์ด
ํ ํฐ, ์ ๊ณต ํ์ดํผ์ํ ์ ๋ณด ์์คํ ์[26]; ๊ทธ๋ฆฌ๊ณ
ยท ๋งน์ธ Token[27] Archie Cobbs์ ์ํํธ์จ์ด ์์ฉ ํ๋ก๊ทธ๋จ, ๋ ๊ฐ์ง ๋ชจ๋ ๊ตฌํ
HOTP ๋ฐ TOTP ์์ดํ ์ ์ด, ์์ดํฐ ๊ณผ iPad[28].
ยท Feitian ๊ธฐ์ ์์ด์คํธ ๋ผ์ดํธ[29] iPod์ฉ HOTP ์ํํธ์จ์ด ์์ฉ ํ๋ก๊ทธ๋จ
ํฐ์น, ์์ดํฐ, ์์ดํจ๋.
์ ํ ์ง์์ ๊ด์ฌ์ด ์๋ ๊ธฐํ ์ ์กฐ์ ์ฒด DACS are
Ds์ ์ฐ๋ฝ์ ํ์ํฉ๋๋ค.
ยท ์ฌ์ง[30]: Feitian OTP C200, OATH ํ ํฐ ์ฑ์ด ํฌํจ๋ iPod Touch, Authenex A-Key
3600(์ผ์ชฝ ์๋จ์์ ์๊ณ ๋ฐฉํฅ)
ยท ์ด ๊ตฌํ์ ์ ์ฌํ๊ณ ํธํ๋๋ ์ ํ์์ ์๋ํด์ผ ํ์ง๋ง
์ด ์ ํ์ ๊ณต์์ ์ผ๋ก ์ง์๋ฉ๋๋ค. DACS.
ยท ํ๋์จ์ด ํ ํฐ์ ๊ณต๊ธ์ ์ฒด์์ ์ง์ ๊ตฌ์ ํ ์ ์์ต๋๋ค.
ยท ํ ํฐ์ ์ฌ์ฉํ์ฌ ์ธ์ฆํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ์ฐ DACS ์๋๋๋ค
ํ ํฐ ๋ฒค๋์ ์ฑ ์.
๊ฐ์ ธ ์ค๊ธฐ ๊ณผ ๋ด๋ณด๋ด๊ธฐ OTP ๊ณ์
๊ณ์ ๋ฐ ํด๋น ํ ํฐ์ ๋ํ ์ค๋ช ์ ๋ก๋ํ๊ฑฐ๋ ๋คํํ ์ ์์ต๋๋ค( -์์
๊ณผ -์์ถ ํ๋๊ทธ). ์ด๋ ๋๋ ํ๋ก๋น์ ๋, ๋ฐฑ์ ๋ฐ ์ด์์ฑ์ ๋จ์ํํฉ๋๋ค. NS
๊ณ์ ์ ๋ณด๋ ๊ฐ๋จํ ์์ฉ ํ๋ก๊ทธ๋จ๋ณ(๊ฑฐ์) XML ํ์์ผ๋ก ์์ฑ๋ฉ๋๋ค.
์ ์ํด ์ดํด๋๋ ํ์ ๋ฅ์คํก ๋ฃจํธ ์์("otp_tokens")๋ก ๊ตฌ์ฑ๋๋ฉฐ
XNUMX๊ฐ ์ด์์ "otp_token" ์์, ํ๋น ํ๋์ฉ, ๊ฐ๊ฐ ํ์ ๋ฐ ์ ํ ์ฌํญ ํฌํจ
์์ฑ(์๋์ ์ค๋ช ๋จ). XML ์ ์ธ์ ์๋ตํด์ผ ํฉ๋๋ค. ์ ํ ๊ณต๋ฐฑ ๋ฐ
ํ ์ค XML ์ฃผ์๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๋น ์ค์ ๋ฌด์๋ฉ๋๋ค. ๋ํ "#"์ด ์๋ ์ค
๊ณต๋ฐฑ์ด ์๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ ๋ฌด์๋ฉ๋๋ค. ๋ค์์ด ์๋ ์ ํ์ ์์ฑ
ํ์ฌ์๋ ๊ธฐ๋ณธ๊ฐ์ด ํ ๋น๋ฉ๋๋ค. ๊ธฐ๋ณธ ๋ค์ด์ ์คํธ ์๊ณ ๋ฆฌ์ฆ์ SHA1์ ๋๋ค. ์งง์ ์์ฑ
์ด๋ฆ์ ๊ณต๊ฐ์ ์ ์ฝํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ธ์ํ ์ ์๋ ์์ฑ ๋ฐ ๊ด๋ จ์ด ์๋ ์์ฑ
์ฅ์น ๋ชจ๋๋ ๋ฌด์๋ฉ๋๋ค. XML ์์ฑ ๋ด์ ์์๋ฐ์ดํ ๋๋ ํฐ๋ฐ์ดํ ๋ฌธ์(๋๋ ๋ ๋ค)
๊ฐ์ ํด๋น ์ํฐํฐ ์ฐธ์กฐ("'" ๋ฐ """,
๊ฐ๊ฐ) "<"(๋ณด๋ค ์์) ๋ฐ "&"(์ฐํผ์๋) ๋ฌธ์๊ฐ ์์ด์ผ ํฉ๋๋ค. A ">"(ํฌ๊ฒ
~๋ณด๋ค) ๋ฌธ์๋ ์ ํ์ ์ผ๋ก ">" ์ํ์ค๋ก ๋์ฒด๋ ์ ์์ง๋ง ๋ค๋ฅธ ์ํฐํฐ๋ ์์ต๋๋ค.
์ฐธ์กฐ๊ฐ ์ธ์๋ฉ๋๋ค.
์ธ์๋๋ ์์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ยท NS:
๊ธฐ์ง
-- OTP ๊ฐ์ ๊ธฐ์
[์ ํ ๊ณผ๋ชฉ:
10 (๊ธฐ๋ณธ๊ฐ),
16๋ฐ 32]
ยท ์จ:
์นด์ดํฐ
-- HOTP์ ๋ํ ํ์ฌ ์นด์ดํฐ ๊ฐ(์์ ์๋ ๊ฒฝ์ฐ XNUMX์ง์)
"0x"(๋๋ "0X")๋ก, ๊ทธ๋ ์ง ์์ผ๋ฉด ์ญ์ง์
[์ ํ ๊ณผ๋ชฉ:
๊ธฐ๋ณธ๊ฐ์ 0]
ยท NS:
OTP ์ฅ์น ๋ชจ๋
-- "c"(HOTP์ฉ)
๋๋ "t"(TOTP์ ๊ฒฝ์ฐ)
[ํ์]
ยท NS:
๋ค์ด์ ์คํธ ์ด๋ฆ
-- ๋ณด์ ํด์ ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋
[์ ํ ๊ณผ๋ชฉ:
SHA1(๊ธฐ๋ณธ๊ฐ),
SHA224, SHA256,
SHA384, SHA512]
ยท ๋ฐ์ฌ:
์๊ณ ๋๋ฆฌํํธ
-- TOTP์ ๋ํ ์ด ๋จ์์ ์๊ณ ์กฐ์
[์ ํ ๊ณผ๋ชฉ]
ยท ์ํฌ:
์ํธํ๋ ํค
-- ์ํธํ๋ ๋น๋ฐ ํค, base-64๋ก ์ธ์ฝ๋ฉ๋จ
[ํ์์:
OTP ๊ณ์ ๊ธฐ๋ก๋ง ํด๋น]
ยท ko:
ํ์ฑํ ์ํ
-- 1 ํ์ฑํ๋ ๊ฒฝ์ฐ
0 ์ฅ์ ์ธ ์ฉ
[ํ์]
ยท ์ผ์ด:
์ผ๋ฐ ํ ์คํธ ํค
-- ์ํธํ๋์ง ์์ ๋น๋ฐ ํค
[ํ์]
ยท ๋ฃจ:
๋ง์ง๋ง ์ ๋ฐ์ดํธ
-- ๋ง์ง๋ง ๋ ์ฝ๋ ์ ๋ฐ์ดํธ์ ์ ๋์ค ์๊ฐ
[์ ํ ์ฌํญ: ๊ธฐ๋ณธ๊ฐ์ ํ์ฌ ์๊ฐ]
ยท NS:
n์๋ฆฟ์
-- OTP ๊ฐ์ ์๋ฆฟ์
[์ ํ ๊ณผ๋ชฉ:
๊ธฐ๋ณธ๊ฐ์ 6 HOTP์ ๊ฒฝ์ฐ,
8 TOTP์ฉ]
ยท NS:
์ผ๋ฐ ํ ์คํธ-PIN
-- ๊ณ์ ์ ์ผ๋ฐ ํ ์คํธ PIN ๊ฐ
[ํ์์:
ph๊ฐ ์กด์ฌํ์ง ์๋ ํ,
์์ ์ ์ฉ]
ยท ์ ํ:
ํด์๋ PIN
-- ๊ณ์ ์ ํด์๋ PIN ๊ฐ
[์ ํ ๊ณผ๋ชฉ:
์ ์ํด ์์ฑ ๋ ๋ฅ์คํก
๋ด๋ณด๋ด๊ธฐ ๋ฐ OTP ๊ณ์ ํ์ผ ์ ์ฉ]
ยท NS:
์ผ๋ จ ๋ฒํธ
-- ์ฅ์น์ ๊ณ ์ ์๋ณ์ ๋ฌธ์์ด
[ํ์]
ยท TS:
์๊ฐ ๋จ๊ณ
-- TOTP์ ๋ํ ์๊ฐ ๋จ๊ณ ๊ฐ(์ด)
[์ ํ ๊ณผ๋ชฉ:
๊ธฐ๋ณธ๊ฐ์ 30]
ยท ์ :
์ฌ์ฉ์ ์ด๋ฆ
-- ์ ํจํ DACS ์ด ๊ณ์ ๊ณผ ์ฐ๊ฒฐ๋ ์ฌ์ฉ์ ์ด๋ฆ
[ํ์]
๋ค์ ์์์๋ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ง๋ค ์ ์๋ ๋ ๊ฐ์ ๊ณ์ ์ ์ค๋ช ํฉ๋๋ค. -์์ ๊น๋ฐ:
๋ณด์
๊ฐ์ ธ์จ ๋ ์ฝ๋์๋ OTP ์ฅ์น์ ๋ํ ์ํธํ๋์ง ์์ ๋น๋ฐ ํค๊ฐ ํฌํจ๋์ด ์๊ธฐ ๋๋ฌธ์
๋ด๋ณด๋ธ ํ์ผ์ ์ํธํ๋ ์ํ๋ก ์ ์ง๋์ด์ผ ํฉ๋๋ค(์: ํ๋ ค๋ฉด openssl) ๋๋ ์ ์ด๋ ๊ฐ์ง๊ณ
์ ์ ํ ํ์ผ ๊ถํ.
์ฃผ์ ์ฌํญ
OTP ์ฅ์น ํ๋ก๋น์ ๋์ ์ํ ํ์ค ํ์์ด ๊ฐ๋ฐ ์ค์ ๋๋ค. ์ด ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ ๋ฏธ๋ ๋ฒ์ ์์ ์ดํด ๋ฅ์คํก, ๋๋ ๋ณํ ์ ํธ๋ฆฌํฐ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
ํ์ค ํ์์ ๊ธฐ์กด ํ์๋ณด๋ค ํจ์ฌ ๋ ๋ณต์กํ ์ ์์ต๋๋ค. DACS ํ์์ ๋๋ค.
์ต์
ํ์ค ์ธ์๋ ๋ฅ์ค์ต์ [1], ๋ช ๋ น์ค ํ๋๊ทธ์ ๊ธด ๋ชฉ๋ก์
์ธ์. ์ธ์ ์ฌ์ฉ์ ์ด๋ฆ ์ฃผ์ด์ง ๊ฒฝ์ฐ ํด๋น ๊ณ์ ๊ณผ ์ฐ๊ฒฐ๋ ๊ธฐ๋ณธ๊ฐ์
์ฌ์ฉ๋์ง ์์ผ๋ฉด ๊ถ์ฅ๋๊ฑฐ๋ ๊ตฌํ๋ณ ๊ธฐ๋ณธ๊ฐ์ด ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ณธ
๊ฐ์ ์ผ๋ฐ์ ์ผ๋ก ๋ช ๋ น์ค์์ ์ฌ์ ์ํ ์ ์์ต๋๋ค. ์ผ๋ถ ํ๋๊ทธ๋
ํน์ ํ ํฐ ๋ชจ๋(์: -์นด์ดํฐ, -ํ์ผ) ๋ฐ ๊ทธ ๋ชจ์์ ํด๋น ๋ชจ๋๋ฅผ ์๋ฏธํฉ๋๋ค.
๋ง๋ค๊ธฐ -์์ ํ๋๊ทธ ๋ถํ์; ๋ค๋ฅธ ํ๋๊ทธ๋ ๋ชจ๋ ๋ ๋ฆฝ์ ์ ๋๋ค(์: -์ง์ฐ๋ค,
-ํ ์์๊ฒํ๋ค). ์๋ก ํธํ๋์ง ์๋ ํ๋๊ทธ ์กฐํฉ์ ์ฌ์ฉํ๋ ๊ฒ์ ์ค๋ฅ์ ๋๋ค. ํ๋๊ทธ
๋ฌด์๋ฏธํ ์์ ์ ์ฌ์ ํ โโ๋ชจ๋๋ฅผ ์์ํ์ง๋ง ๋ฌด์๋ฉ๋๋ค.
XNUMX์ง์ ๊ฐ์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์ต๋๋ค. ์นด์ดํฐ ๊ฐ์ด ํ์ํ์ง๋ง ์ง์ ๋์ง ์์ ๊ฒฝ์ฐ
(์: ๊ณ์ ์์ฑ ์) ์ด๊ธฐ ์นด์ดํฐ ๊ฐ XNUMX์ด ์ฌ์ฉ๋ฉ๋๋ค.
XNUMXD๋ดํ์ ์ฐ์ฐ ์ฌ์ XNUMX๊ฐ ์ด์๊ณผ ํจ๊ป ์ํํ ์์ ์ ์ง์ ํฉ๋๋ค. ๋ณํ
ํ๋๊ทธ. ๋ง์ฝ์ ์ฐ์ฐ ์ฌ์ ๋๋ฝ, -๋ช ๋ถ ์์ ์ด ์ํ๋ฉ๋๋ค. NS ์ฐ์ฐ ์ฌ์ ์ค ํ๋์ ๋๋ค
๋ค์ :
-์ธ์ฆ otp ๊ฐ
์ด ๊น๋ฐ์ ๋ง์น -ํ์ธ[31], ์ ์ธ:
ยท ใ ์ฌ์ฉ์ ์ด๋ฆ ๋ชจ๋ ๋งค๊ฐ๋ณ์(์: ํค)๋ฅผ ๊ฐ์ ธ์ค๋ ํ์ ํญ๋ชฉ์ ๋๋ค.
ยท ๊ณ์ ์ PIN์ด ์๋ ๊ฒฝ์ฐ ์ ๊ณตํด์ผ ํฉ๋๋ค.
ยท ๊ณ์ ์ด HOTP ํ ํฐ์ฉ์ธ ๊ฒฝ์ฐ ์ธ์ฆ์ด ์๋ฃ๋๋ฉด ์นด์ดํฐ๊ฐ ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
์ฑ๊ณตํ์ต๋๋ค.
XNUMX์ ์ข ๋ฃ ์ํ๋ ์ฑ๊ณต์ ์ธ ์ธ์ฆ์ ๋ํ๋ด๊ณ ๋ค๋ฅธ ๊ฐ์
์ธ์ฆ ์คํจ๋ฅผ ์๋ฏธํฉ๋๋ค.
-์ ํํ๋ค ํ์ผ ์ด๋ฆ
์์ ์ด์ ํ์(๋ฆด๋ฆฌ์ค 1.4.25 ์ด์ ) ํ ํฐ ๊ณ์ ํ์ผ์ ๋ก๋ํฉ๋๋ค. ํ์ผ ์ด๋ฆ ("-"
stdin์์ ์ฝ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค), ์ต์ ํ์์ผ๋ก ๋ณํํ๊ณ stdout์ ์๋๋ค.
by -์์ถ). ์ด ํ๋๊ทธ๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ ์ด ๊ธฐ๋ฅ์ ํฅํ ์ ๊ฑฐ๋ ์์ ์ ๋๋ค.
๋ฐฉ์ถ DACS.
-์ฐฝ์กฐํ๋ค
๊ณ์ ๋ง๋ค๊ธฐ ์ฌ์ฉ์ ์ด๋ฆ, ์ด๋ฏธ ์กด์ฌํด์๋ ์ ๋ฉ๋๋ค. ๋ค๋ฅธ ๋ฉด์์๋
์ฒ๋ผ ์๋ -์ธํธ[32]. ์ ๊ณ์ ์ ๋ง๋ค ๋, -์ฐ์๋ฌผ ํ์์ด๋ฉฐ -ํค is
์์. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ -ํ ์์๊ฒํ๋ค ํ๋๊ทธ๋ ๊ณ์ ์์ฑ ์ ์ ๊ณต๋๋ฉฐ, -์ฅ์ ๋ฅผ ์ ํ๋ค ๋ฌต์์ ์ ๋๋ค.
์๋ ๊ฒฝ์ฐ -์นด์ดํฐ ํ๋๊ทธ๊ฐ ์ ๊ณต๋๋ฉด ๊ธฐ๋ณธ๊ฐ XNUMX์ด ์ฌ์ฉ๋ฉ๋๋ค. PIN ํ๋๊ทธ ์ค ํ๋๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ
ํ์ฌ, ์ ๊ณต๋ PIN์ด ๊ณ์ ์ ํ ๋น๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ณ์ ์ด ํ ๋น๋์ง ์์ต๋๋ค.
PIN์ด ์์ด์ผ ํฉ๋๋ค(๋๋ ๊ธฐ์กด PIN์ ๋ณ๊ฒฝ๋์ง ์์).
-ํ์ฌ์
ํ์ฌ ์ด๋ ๊ณ์๋ฅผ ํ์ํฉ๋๋ค(์ฆ, HOTP์ ๋ํ ์นด์ดํฐ ๊ฐ ๋๋ ๊ฐ๊ฒฉ
TOTP ๊ฐ) ๋ฐ ์์ OTP ์ฌ์ฉ์ ์ด๋ฆ. HOTP์ ๊ฒฝ์ฐ ์นด์ดํฐ๊ฐ ๊ณ ๊ธ์ ๋๋ค. ๋ชจ๋
๋งค๊ฐ๋ณ์๋ ๊ณ์ ์์ ๊ฐ์ ธ์ต๋๋ค.
-์ง์ฐ๋ค
์ ๋ํ ๊ณ์ ์ญ์ ์ฌ์ฉ์ ์ด๋ฆ. ์ฅ์น์ ๋น๋ฐ ํค ๋ฐ ๊ธฐํ ์๋
๋งค๊ฐ๋ณ์๊ฐ ์์ค๋ฉ๋๋ค.
-๋ธํ
ํด๋น ๊ณ์ ์์ PIN(์๋ ๊ฒฝ์ฐ)์ ์ญ์ ํฉ๋๋ค. ์ฌ์ฉ์ ์ด๋ฆ, ๊ณ์ ์์ด
PIN
-์์ถ
๋ชจ๋ ๊ณ์ ์ ๋ํ ์ ๋ณด๋ฅผ ์์ฑํ๊ฑฐ๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ํ๋์ ๊ณ์ ๋ง ์์ฑํ์ญ์์ค. ์ฌ์ฉ์ ์ด๋ฆ ์๊ฒ ์ฃผ์ด์ง๋ค
ํ์ค ์ถ๋ ฅ. ๊ทธ๋ฌ๋ ๋ชจ๋๋ฅผ ์ ํํ๋ฉด ํด๋น ๋ชจ๋์ ๊ณ์ ๋ง
์ด. ์ด ์ ๋ณด๋ ๋ค์์ ์ฌ์ฉํ์ฌ ๋ค์ ๋ก๋ํ ์ ์์ต๋๋ค. -์์ or -๊ฐ์ ธ์ค๊ธฐ-๋ฐ๊พธ๊ธฐ. ์ถ๋ ฅ
์ํธํ๋ ํ์์ผ๋ก ์ ์ฅํ๊ฑฐ๋ ์ต์ํ ํ์ผ ๊ถํ์ด ์์ด์ผ ํฉ๋๋ค.
์ ์ ํ๊ฒ ์ค์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด:
% dacstoken -uj ์ -์์ถ | openssl enc -aes-256-cbc > dacstoken-exported.enc
๋์ค์ ๋ค์๊ณผ ๊ฐ์ด ํ ์ ์์ต๋๋ค.
% openssl enc -d -aes-256-cbc < dacstoken-exported.enc | dacstoken -uj ์ -๊ฐ์ ธ์ค๊ธฐ -
-h
-๋์
๋์๋ง ๋ฉ์์ง๋ฅผ ํ์ํ๊ณ ์ข ๋ฃํฉ๋๋ค.
-hotp-์ผ NUM
๋์คํ๋ ์ด NUM ์ฃผ์ด์ง ์นด์ดํฐ ๊ฐ๊ณผ ํค์์ ์ฐ์ HOTP ์ํธ. NS
-์นด์ดํฐ ํ๋๊ทธ๋ ์ด๊ธฐ ์นด์ดํฐ ๊ฐ์ ์ง์ ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด์ ๋
๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ -ํค, -ํค ํ์ผ๋ฐ -ํค ํ๋กฌํํธ. ๋ง์ฝ ์ฌ์ฉ์ ์ด๋ฆ ์ ๊ณต๋๋ฉฐ,
์ด๊ธฐ ์นด์ดํฐ ๊ฐ๊ณผ ํค๋ ์ฌ์ฉ์์ HOTP ๊ณ์ ์์ ๊ฐ์ ธ์ต๋๋ค.
๊ฐ์ ๋ช ๋ น์ค์์ ์ฌ์ ์๋ฉ๋๋ค. ๊ณ์ ์ ์ ์ฅ๋ ์นด์ดํฐ ๊ฐ์ด ์๋๋๋ค.
์์ ๋จ. ์ด๊ฒ์ ์ฃผ๋ก ๋๋ฒ๊น ๋ชฉ์ ์ ์ํ ๊ฒ์ ๋๋ค.
-์์ ํ์ผ ์ด๋ฆ
-๊ฐ์ ธ์ค๊ธฐ-๋ฐ๊พธ๊ธฐ ํ์ผ ์ด๋ฆ
์์ ๊ณ์ ๋ฐ ํ ํฐ ์ ๋ณด ๋ก๋ ํ์ผ ์ด๋ฆ; ๋ง์ฝ ํ์ผ ์ด๋ฆ "-"์ด๋ฉด stdin์ ์ฝ์ต๋๋ค.
๋ชจ๋๋ฅผ ์ ํํ๋ฉด ํด๋น ๋ชจ๋์ ๊ณ์ ๋ง ์ฝ์ต๋๋ค. ์ ํจ๊ป -์์ ๊ทธ๊ฒ์
๊ฐ์ ธ์จ ๊ณ์ ์ด ์ด๋ฏธ ์กด์ฌํ๊ณ ์ฒ๋ฆฌ๊ฐ ์ค์ง๋๋ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. -๊ฐ์ ธ์ค๊ธฐ-๋ฐ๊พธ๊ธฐ
๊ธฐ์กด ๊ณ์ ์ ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ก ๋์ฒดํฉ๋๋ค.
-l
-๋ช ๋ถ
-๊ธด
If ์ฌ์ฉ์ ์ด๋ฆ ํด๋น ๊ณ์ ์ ๋ํ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค. ๋ง์ฝ
-์ฐ์๋ฌผ ํ๋๊ทธ๊ฐ ์ง์ ๋๋ฉด ์ง์ ๋ ์ผ๋ จ ๋ฒํธ๊ฐ ์๋ ๊ณ์ ์ ๋ํ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค.
์ซ์; ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ชจ๋ ๊ณ์ ์ ๋์ดํ์ญ์์ค. ๋ง์ฝ -์์ ํ๋๊ทธ๋ ์ด๋ฌํ ๊ฒฝ์ฐ์ ์ ๊ณต๋๋ฉฐ,
๊ทธ๋ฌ๋ ์๋ ๋ชจ๋๊ฐ ์ง์ ๋ ๊ณ์ ๋ง ๋์ดํ์ญ์์ค. ์ด ๊ฒฝ์ฐ
ํ๋๊ทธ๊ฐ ๋ฐ๋ณต๋๊ฑฐ๋ -๊ธด ํ๋๊ทธ, ๋ ์์ธํ ์ ๋ณด๊ฐ ํ์๋ฉ๋๋ค: ์ฅ์น ์ ํ,
๊ณ์ ์ํ, ์ฅ์น ์ผ๋ จ ๋ฒํธ, ์นด์ดํฐ ๊ฐ(HOTP์ฉ), ํด๋ก ๋๋ฆฌํํธ ๊ฐ(์ฉ
TOTP), ๊ณ์ ์ PIN์ด ์๋์ง ์ฌ๋ถ("+" ๋๋ "-" ๊ธฐํธ๋ก ํ์) ๋ฐ
๊ณ์ ์ ๋ง์ง๋ง ์์ ์๊ฐ๊ณผ ๋ ์ง.
-์ด๋ฆ ๋ฐ๊พธ๊ธฐ ์๋ก์ด ์ด๋ฆ
์ ๋ํ ๊ธฐ์กด ๊ณ์ ์ด๋ฆ ๋ฐ๊พธ๊ธฐ ์ฌ์ฉ์ ์ด๋ฆ ๋ ์๋ก์ด ์ด๋ฆ, ๊ทธ๋ฆฌ๊ณ ์๋ก์ด ์์
๋ช ๋ น์ค ์ธ์๋ฅผ ์ฌ์ฉํ๋ ๊ณ์ ( -์ธํธ[32]). ๋ ๋จ๊ณ๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์
์์์ ์ผ๋ก ์ํ๋์ง ์๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ์ ๊ณ์ ์ด
์์ฑ๋๊ณ ์ด์ ๊ณ์ ์ ์ฌ์ ํ โโ์กด์ฌํฉ๋๋ค.
-์ธํธ
XNUMXD๋ดํ์ -์ธํธ ํ๋๊ทธ๋ ์ ๋ํ ๊ธฐ์กด ๊ณ์ ์ ์์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ฌ์ฉ์ ์ด๋ฆ ํ๋ ์ด์์ ๊ธฐ๋ฐ
์์ ์ ์ธ์(-๋ฒ ์ด์ค, -์นด์ดํฐ, -์ซ์, -์ฅ์ ๋ฅผ ์ ํ๋ค or -ํ ์์๊ฒํ๋ค, -ํค (๋๋ -ํค ํ์ผ
or -ํค ํ๋กฌํํธ), ํ (๋๋ -ํ ํ์ผ or -ํ ํ๋กฌํํธ), ๋๋ -์ฐ์๋ฌผ). ๋ชจ๋๋ ๊ฐ๋ฅ
์ง์ ํ์ฌ ๋ณ๊ฒฝ -์์, ๊ทธ๋ฌ๋ ๊ณ์ ๊ณผ ์ฐ๊ฒฐ๋ ๋ชจ๋๋ณ ๋งค๊ฐ๋ณ์
์์ค๋ฉ๋๋ค(์: HOTP ๊ณ์ ์ด
TOTP ๊ณ์ ์ผ๋ก ๋ณ๊ฒฝ๋จ) ๋ฐ ์ผ๋ฐ ๋งค๊ฐ๋ณ์(์: ์ผ๋ จ ๋ฒํธ)๋
๋ช ๋ น์ค์์ ์ฌ์ ์๋์ง ์๋ ํ ์ ์ง๋ฉ๋๋ค.
-๋์กฐ ๋น๋ฐ๋ฒํธ ๋ชฉ๋ก
HOTP ๋ชจ๋์์ ์ด๊ฒ์ ์๋ฒ๋ฅผ ํ ํฐ๊ณผ ๋๊ธฐํํ๋ ค๊ณ ์๋ํฉ๋๋ค. ์ฌ์ฉ์ ์ด๋ฆ. ๊ทธ๋งํผ
๋น๋ฐ๋ฒํธ ๋ชฉ๋ก ๋ ์ผํ๋ก ๊ตฌ๋ถ๋ ์ผํ๋ก ๊ตฌ๋ถ๋ ์ธ ๊ฐ์ ์ฐ์๋ ์ํธ ๋ชฉ๋ก์ ๋๋ค.
์ฌ์ฉ์ ํ ํฐ(์ด "์๋ ๋๊ธฐํ" ๊ธฐ๋ฅ์
local_token_authenticate[์ผ]). ์ฃผ์ด์ง ์ํ์ค๋ ๊ณ์ฐ๋ ์ํ์ค์ ์ผ์นํด์ผ ํฉ๋๋ค.
์ ํํ๊ฒ, ์ ํจํ ์ด์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ํ ๋; ์๋ฅผ ๋ค์ด ์ ํ XNUMX์
ํ์ ๊ธฐ์์ ์ ํจํ OTP ์๋ฆฟ์์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ค์ํฉ๋๋ค. ๋ง์ฝ์
๋๊ธฐํ๊ฐ ์ฑ๊ณตํ๋ฉด ์ฌ์ฉ์๋ ๋ค์์ ์ฌ์ฉํ์ฌ ์ธ์ฆํ ์ ์์ด์ผ ํฉ๋๋ค.
์ฅ์น์์ ์์ฑํ ์ํธ์ ๋๋ค. ์ฆ๊ฐ๋ฅผ ์ฌ์ฉํ ์ฒ ์ ํ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ
์นด์ดํฐ ๊ฐ์ด ์ฌ์ฉ๋๋ฉฐ ์ต๋ ์ปดํ์ผ ์๊ฐ ์ ํ์ด ์์ต๋๋ค.
๊ณ์ฐ. ๊ฒ์์ ์๋ฒ์ ํ์ฌ ์ ์ฅ๋ ์นด์ดํฐ ๊ฐ์์ ์์๋ฉ๋๋ค.
ํ๋๋ ๋ค์์ ์ฌ์ฉํ์ฌ ์ ๊ณต๋ฉ๋๋ค. -์นด์ดํฐ. ์คํจํ๋ฉด ์ด ์์ ์ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆด ์ ์์ต๋๋ค.
์ข ๋ฃ๋๊ธฐ ์ ์; ์ฌ์ฉ์๋ ๊ด๋ฆฌ์์๊ฒ ๋์์ ์์ฒญํด์ผ ํฉ๋๋ค.
TOTP ๋ชจ๋์์ ์์คํ ์๊ณ๊ฐ
ํ ํฐ์ ์๊ณ์ ๊ฒฐ๊ณผ๋ฅผ ํ์ํฉ๋๋ค. ์ด ์ ๋ณด๋ ์ ๋ฐ์ดํธํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋๊ธฐํ๋์ง ์์ ์๊ณ๋ฅผ ๋ณด์ํ๊ฑฐ๋ ์กฐ์ ํ๊ธฐ ์ํ ์ฌ์ฉ์์ ํ ํฐ ๊ธฐ๋ก
๊ฒ์ฆ ๋งค๊ฐ๋ณ์. ํ ํฐ์ ํค์ ๋ค์ด์ ์คํธ ์๊ณ ๋ฆฌ์ฆ์ ์ด๋ฆ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ ์ํ๋ ํ ํฐ ๋ ์ฝ๋์ ๋ํด ํ๋ ์ฌ์ฉ์ ์ด๋ฆ, ์ฃผ์ด์ง ๊ฒฝ์ฐ; ๊ทธ๋ ์ง ์์ผ๋ฉด ํค
ํ๋กฌํํธ๊ฐ ํ์๋๊ณ ์ฌ์ฉํ ๋ค์ด์ ์คํธ ์๊ณ ๋ฆฌ์ฆ์ ๋ช ๋ น์์ ์ป์ต๋๋ค.
๋ผ์ธ ๋๋ ๊ธฐ๋ณธ๊ฐ. ์ฒซ ๋ฒ์งธ ๋น๋ฐ๋ฒํธ๋ง ๋น๋ฐ๋ฒํธ ๋ชฉ๋ก ์ฌ์ฉ. ๊ทธ๋งํผ
-top-timestep, -์ซ์๋ฐ -ํ๋ฒ ์ด์ค ์ต์ ์ ์ด ์์ ์ค์ ์ ํจํฉ๋๋ค.
-ํ ์คํธ
๋ช ๊ฐ์ง ์์ฒด ํ ์คํธ๋ฅผ ์ํํ ๋ค์ ์ข ๋ฃํฉ๋๋ค. XNUMX์ด ์๋ ์ข ๋ฃ ์ํ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ์์ ์๋ฏธํฉ๋๋ค.
-ํ์ผ NUM
ํ์ฌ ์ ํจํ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ TOTP ์ํธ ์ํ์ค๋ฅผ ํ์ํฉ๋๋ค.
๊ฐ๊ฒฉ ํฌ๊ธฐ(-top-timestep), ์๋ฆฟ์(-์ซ์) ๋ฐ ๊ธฐ๋ณธ(-๋ฒ ์ด์ค).
๊ณ์ ์ ์ ์ฅ๋ ๋งค๊ฐ๋ณ์๋ ์์ ๋์ง ์์ต๋๋ค. ์ด๊ฒ์ ์ฃผ๋ก ๋๋ฒ๊น ์ ์ํ ๊ฒ์ ๋๋ค.
๋ชฉ์ .
๊ฒฝ์ฐ ์ฌ์ฉ์ ์ด๋ฆ ์ ๊ณต๋๊ณ (TOTP ์ฅ์น์ ์ฐ๊ฒฐ๋์ด์ผ ํจ), ํค ๋ฐ
๋ช ๋ น์ค์์ ์ฌ์ ์ํ์ง ์๋ ํ ๊ณ์ ์ ๋ค๋ฅธ ์ ์ฅ๋ ๋งค๊ฐ๋ณ์๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
ํ๋๊ทธ. ๋น๋ฐ๋ฒํธ์ ์์ NUM ํ์ฌ ์๊ฐ ์ ํ์ ๊ฐ๊ฒฉ,
ํ์ฌ ์๊ฐ์ ๋น๋ฐ๋ฒํธ์ ํจ๊ป ์ธ์๋ฉ๋๋ค.
์๋ ๊ฒฝ์ฐ ์ฌ์ฉ์ ์ด๋ฆ ๊ฐ ์ฃผ์ด์ง๋ฉด ํ๋ก๊ทธ๋จ์ ํค(๋ฐํฅ๋จ)๋ฅผ ๋ฌป๊ณ ๋ค์์ ์ฌ์ฉํฉ๋๋ค.
๋งค๊ฐ๋ณ์์ ๋ํ ๋ช ๋ น์ค ํ๋๊ทธ ๋๋ ๊ธฐ๋ณธ๊ฐ. ๊ทธ๋ฐ ๋ค์ TOTP ์ํธ๋ฅผ ๋ด๋ณด๋ ๋๋ค.
Return/Enter๋ฅผ ๋๋ฅผ ๋๋ง๋ค ํ์ฌ ์๊ฐ ๋์. EOF๋ฅผ ์ ๋ ฅํ๋ฉด ์ฆ์ ๋ฐ์ํฉ๋๋ค.
์ข ๋ฃ.
-ํ์ธ otp ๊ฐ
If otp ๊ฐ ๋ค์์ผ๋ก ์์๋๋ ์ผํ์ฉ ๋น๋ฐ๋ฒํธ์ ๋๋ค. ์ข ๋ฃ ์ํ๊ฐ XNUMX์ธ ๊ฒฝ์ฐ
์ฑ๊ณต์ ๋ํ๋ ๋๋ค. ๋ค๋ฅธ ๊ฐ์ ์คํจ๋ฅผ ๋ํ๋ ๋๋ค. ๋ง์ฝ์ ์ฌ์ฉ์ ์ด๋ฆ ๋งค๊ฐ๋ณ์๊ฐ ์ฃผ์ด์ง๋ฉด
ํค๋ฅผ ํฌํจํ์ฌ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ์ํด ์ฌ์ ์๋์ง ์๋ ํ ํด๋น ๊ณ์ ์์ ๊ฐ์ ธ์ต๋๋ค.
๋ช ๋ น์ค. ์๋ฒ์ ์ํ๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ์๋ฅผ ๋ค์ด HOTP ์นด์ดํฐ๋
๊ณ ๊ธ์. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ฌ์ฉ์ ์ด๋ฆ ์ฃผ์ด์ง, -์์ ํ๋๊ทธ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ฉฐ ๋งค๊ฐ๋ณ์
ํค๋ฅผ ํฌํจํ์ฌ ํด๋น ๋ชจ๋์ ํ์ํ ํค๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. HOTP ๋ชจ๋์ ๊ฒฝ์ฐ ์นด์ดํฐ ๊ฐ
์ ๊ณต๋์ด์ผ ํฉ๋๋ค. TOTP ๋ชจ๋์ ๊ฒฝ์ฐ ์ด ๋์ ๋ช ๋ น์ค ๋งค๊ฐ๋ณ์๊ฐ ์ ํจํฉ๋๋ค.
ํ์ธ. ๋ฅ์คํก ์ฌ๋ถ๋ฅผ ํ ์คํธํฉ๋๋ค otp ๊ฐ ์ ๋งค๊ฐ๋ณ์์ ๋ํด ์ ํจ์ฑ์ ๊ฒ์ฌํฉ๋๋ค.
ํจ๊ณผ.
๋ค์ ๋ณํ ํ๋๊ทธ๋ ๋ค์๊ณผ ๊ฐ์ด ์ดํด๋ฉ๋๋ค.
-๋ชจ๋
์ -์ธํธ ์๋์ ์ฌ์ฉ์ ์ด๋ฆ, ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉ ๋ชจ๋ ๊ณ์ . ์ด๊ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค
์๋ฅผ ๋ค์ด ๋ชจ๋ ๊ณ์ ์ ํ์ฑํ ๋๋ ๋นํ์ฑํํฉ๋๋ค. NS -์ํค ๊ณผ - ์์ํค ํ๋๊ทธ๋
๋ช ์๋ก์ด. ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ์ฒ๋ฆฌ๊ฐ ์ฆ์ ์ค์ง๋๋ฉฐ, ์ด ๊ฒฝ์ฐ ์ผ๋ถ๋ง
๊ณ์ ์ด ์์ ๋์์ ์ ์์ต๋๋ค.
-๋ฒ ์ด์ค NUM
NUM OTP๋ฅผ ํ์ํ ๋ ๊ธฐ๋ณธ(๊ธฐ์)์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ ๊ฐ์น NUM ์ ํ๋ฉ๋๋ค
10 (๊ธฐ๋ณธ๊ฐ), 16๋ฐ 32.
-์นด์ดํฐ NUM
์ค์ ํ 8๋ฐ์ดํธ HOTP ์นด์ดํฐ ๊ฐ์ด๋ฉฐ ์์ ์ค๋ ๊ฒฝ์ฐ XNUMX์ง์ ๊ฐ์ผ๋ก ํ์๋ฉ๋๋ค.
"0x"(๋๋ "0X")๋ก, ๊ทธ๋ ์ง ์์ผ๋ฉด ์ญ์ง์. ์ ํ XNUMX์ ์๋ต๋ ์ ์์ต๋๋ค. ์ด๊ฒ์ HOTP๋ฅผ ์๋ฏธํฉ๋๋ค
๋ฐฉ๋ฒ. ํ ํฐ ์ฅ์น์ ๊ฒฝ์ฐ ์นด์ดํฐ๋ฅผ ์ฌ์ค์ ํ ์ ์์ด์ผ ํฉ๋๋ค(๋ชจ๋๋ก ์นด์ดํฐ
์ค๋ฒํ๋ก) ์ํธ ์ํ์ค๊ฐ โโ๋ฐ๋ณต๋๋ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํค๊ฐ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ์ํํธ์จ์ด ๊ตฌํ์๋ ์ด ์ ํ์ด ์์ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ณด์ ์ํฅ์ ์ฃผ์ํ์ญ์์ค.
-์ซ์ NUM
NUM OTP๋ฅผ ํ์ํ ๋ ์ซ์. ์ ๊ฐ์น NUM ์ ํ๋ฉ๋๋ค 6, 7, 8 (
๊ธฐ๋ณธ๊ฐ) ๋๋ 9 ๋ฒ ์ด์ค ํฌํจ 10. ๋ค์์ผ๋ก ์ ํ๋ฉ๋๋ค. 6 ๋ฒ ์ด์ค ํฌํจ 32 ๊ทธ๋ฆฌ๊ณ ๋ฌด์๋๋ค
๊ธฐ์ง 16 (XNUMX์ง ์ถ๋ ฅ).
-์ฅ์ ๋ฅผ ์ ํ๋ค
์ ๋ํ ๊ณ์ ๋นํ์ฑํ ์ฌ์ฉ์ ์ด๋ฆ. ๊ทธ๋งํผ local_token_authenticate ๋ชจ๋, ๊ทธ๋ฆฌ๊ณ -์ธ์ฆ ๊ณผ
-ํ์ธ ํ๋๊ทธ, ๊ณ์ ์ด ์ธ์ฆ๋ ๋๊น์ง ์ฌ์ฉ์ ์ธ์ฆ์ ํ์ฉํ์ง ์์ต๋๋ค.
๊ณ์ ์์ ๋ค๋ฅธ ์์ ์ ๊ณ์ ์ํํ ์ ์์ง๋ง. ๋ง์ฝ์ -ํ ์์๊ฒํ๋ค
์ดํ์ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ ํด๋น ๊ณ์ ์ ์ธ์ฆ์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ฉฐ
๋นํ์ฑํ๋์์ ๋์ ์ํ๋ก ๋ณต์๋์์ต๋๋ค. ๋นํ์ฑํํ๋ ๊ฒ์ ์ค๋ฅ๊ฐ ์๋๋๋ค.
์ด๋ฏธ ๋นํ์ฑํ๋ ๊ณ์ ์ ๋๋ค.
-ํ ์์๊ฒํ๋ค
๊ณ์ ํ์ฑํ ์ฌ์ฉ์ ์ด๋ฆ. ๊ทธ๋งํผ local_token_authenticate ๋ชจ๋์
์ฌ์ฉ์๋ฅผ ์ธ์ฆํฉ๋๋ค. ์ด๋ฏธ ํ์ฑํ๋ ๊ณ์ ์ ํ์ฑํํ๋ ๊ฒ์ ์ค๋ฅ๊ฐ ์๋๋๋ค.
-hotp-์ฐฝ NUM
์์ HOTP ์ํธ๊ฐ ์ฃผ์ด์ง ์ํธ์ ์ผ์นํ์ง ์์ผ๋ฉด ๋ค์๊ณผ ์ผ์นํ๋๋ก ์๋ํ์ญ์์ค.
NUM ์์์์ ์์ ์ํธ ๋ค์ ์ค๋ ์ํธ. ๊ฐ์ด XNUMX์ธ ๊ฒฝ์ฐ NUM
์ด ๊ฒ์์ ๋นํ์ฑํํฉ๋๋ค.
-์ํค ํญ๋ชฉ ํ์
๋น๋ฐ ํค๋ฅผ ํด๋ ํ๋ ค๋ฉด ๋ค์์ผ๋ก ์๋ณ๋๋ ์ ์ฅ์๋ฅผ ์ฌ์ฉํ์ญ์์ค. ํญ๋ชฉ ํ์, ์๋ง๋
dacs.conf์ ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
-ํค ํค๋ฐ
ํค๋ฐ XNUMX์ง์ ๋ฌธ์์ด๋ก ํํ๋๋ ๋น๋ฐ ํค๋ก.
๋ณด์
๋ช ๋ น์ค์ ํค๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋ณด์ผ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ํ์ง ์์ต๋๋ค.
๋ค๋ฅธ ํ๋ก์ธ์ค.
-ํค ํ์ผ ํ์ผ ์ด๋ฆ
XNUMX์ง์ ๋ฌธ์์ด๋ก ํํ๋ ๋น๋ฐ ํค๋ฅผ ๋ค์์์ ์ฝ์ต๋๋ค. ํ์ผ ์ด๋ฆ. ๋ฉด ํ์ผ ์ด๋ฆ is
"-", ํค๋ ํ์ค ์ ๋ ฅ์์ ์ฝ์ต๋๋ค.
-ํค ํ๋กฌํํธ
XNUMX์ง์ ๋ฌธ์์ด๋ก ํํ๋๋ ๋น๋ฐ ํค์ ๋ํ ํ๋กฌํํธ์ ๋๋ค. ์ ๋ ฅ์ ์์ฝ๋์ง ์์ต๋๋ค.
-์์ otp ๋ชจ๋
์ด๊ฒ์ ์ฌ์ฉํ ํ ํฐ ์ ํ(OTP ์ฅ์น ๋ชจ๋)์ ์ง์ ํฉ๋๋ค(๋์๋ฌธ์ ๊ตฌ๋ถ ์ ํจ).
๊ณผ -์ธํธ, -์ฐฝ์กฐํ๋ค, ์ ํจ์ฑ ๊ฒ์ฌ ๋ฐ ๋๊ธฐํ ์์ . NS otp ๋ชจ๋ ์
์นด์ดํฐ ๋ชจ๋์ ๊ฒฝ์ฐ counter ๋๋ hotp, ์๊ฐ ๊ธฐ๋ฐ ๋ชจ๋์ ๊ฒฝ์ฐ time ๋๋ topp์ ๋๋ค. ์ด๊ฒ
์ ๊ณ์ ์ ๋ง๋ค ๋ ํ๋๊ทธ๊ฐ ํ์ํฉ๋๋ค.
- ์์ํค ํญ๋ชฉ ํ์
๋น๋ฐ ํค๋ฅผ ์ํธํํ๋ ค๋ฉด ๋ค์์ผ๋ก ์๋ณ๋๋ ์ ์ฅ์๋ฅผ ์ฌ์ฉํ์ญ์์ค. ํญ๋ชฉ ํ์, ์๋ง๋ ์ ์
dacs.conf์์
ํ ํ๋ฐ
ํ๋ฐ ๊ณ์ ์ ๋น๋ฐ PIN์ผ๋ก.
๋ณด์
๋ช ๋ น์ค์ PIN์ ์ ๊ณตํ๋ ๊ฒ์ ๋ณผ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ํ์ง ์์ต๋๋ค.
๋ค๋ฅธ ํ๋ก์ธ์ค.
-ํ ์ ์ฝ ํ์ ๋ฒ์
์ฌ์ฉํ๋ ๋์ PASSWORD_CONSTRAINTS[14], ์ฌ์ฉ ํ์ ๋ฒ์ (๋์ผํ ๋ฌธ๋ฒ๊ณผ
์๋ฏธ) PIN์ ๋ํ ์๊ตฌ ์ฌํญ์ ์ค๋ช ํฉ๋๋ค.
์ฃผ์ ์ฌํญ
PIN์ ๋ํ ์๊ตฌ ์ฌํญ์ ๋ช ๋ น์ค ํ๋๊ทธ๋ฅผ ํตํด ์ป์ PIN๊ณผ
๊ฐ์ ธ์ค๊ธฐ๋ฅผ ํตํด ์ป์ต๋๋ค("p" ์์ฑ ์ฌ์ฉ). ์๊ตฌ ์ฌํญ์ด ์๋๋๋ค
๊ทธ๋ฌ๋ "์๊ธ"์ด๋ฏ๋ก ์๊ตฌ ์ฌํญ์ ๋ณ๊ฒฝํด๋ PIN์๋ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
๊ธฐ์กด ๊ณ์ ๋๋ ์ด์ ์ ๋ด๋ณด๋ธ ๊ณ์ ๊ฐ์ ธ์ค๊ธฐ(
"ph" ์์ฑ).
-ํ ํ์ผ ํ์ผ ์ด๋ฆ
๋ค์์์ ๋น๋ฐ PIN ์ฝ๊ธฐ ํ์ผ ์ด๋ฆ. ๋ฉด ํ์ผ ์ด๋ฆ "-"์ธ ๊ฒฝ์ฐ PIN์ stdin์์ ์ฝ์ต๋๋ค.
-ํ ํ๋กฌํํธ
๋น๋ฐ PIN์ ๋ฌป๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค. ์ ๋ ฅ์ ์์ฝ๋์ง ์์ต๋๋ค.
-rnd
ํฅํ ์ฌ์ฉ์ ์ํด ์์ฝ๋์ด ์์ต๋๋ค.
-์จ ํ์ ๋ฒ์
ํฅํ ์ฌ์ฉ์ ์ํด ์์ฝ๋์ด ์์ต๋๋ค.
-์ฐ์๋ฌผ ํ์ ๋ฒ์
์ผ๋ จ ๋ฒํธ, ํ์ ๋ฒ์ , ํ ํฐ์ ํ ๋น๋ ๊ณ ์ ์๋ณ์์ ๋๋ค.
์ด ์ต์ ์ ๋ค์๊ณผ ํจ๊ป ์ฌ์ฉ๋ฉ๋๋ค. -์ธํธ, -์ฐฝ์กฐํ๋ค๋ฐ -๋ช ๋ถ ํ๋๊ทธ. ์ผ๋ จ ๋ฒํธ
ํน์ OTP ์ฅ์น๋ฅผ ์๋ณํ๊ณ ๋น๋ฐ๋ก ์ ์งํ ํ์๊ฐ ์์ต๋๋ค. ๊ณ ์ ์ฑ ์์ฑ
ํญ๋ชฉ ์ ํ ์ ์ฅ ์ฅ์น ๋ด์์ ์ํ๋ฉ๋๋ค. ์ฆ, ๋ชจ๋ HOTP์ ์ผ๋ จ ๋ฒํธ
์ฅ์น๋ ๊ณ ์ ํด์ผ ํ๊ณ ๋ชจ๋ TOTP ์ฅ์น์ ์ผ๋ จ ๋ฒํธ๋ ๊ณ ์ ํด์ผ ํ๋ฉฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ
๋ ์ฅ์น ์ ํ์ ๋ํ ๊ณ์ ์ด ๊ฒฐํฉ๋ ๊ฒฝ์ฐ ๋ชจ๋ ์ฅ์น ์ผ๋ จ ๋ฒํธ๋
๊ณ ์ ํ. ์ธ์ ๊ฐ๋ฅํ ๋ชจ๋ ๋ฌธ์์ด์ด ํ์ฉ๋ฉ๋๋ค. ์ํํธ์จ์ด ํด๋ผ์ด์ธํธ๊ฐ ์์ฑ ์ค์ธ ๊ฒฝ์ฐ
์ฅ์น์ ์ผ๋ จ ๋ฒํธ๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ ์ ํ๊ฒ ์ค๋ช ํ๋ ์ํธ๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
์ฅ์น์ ์์ง ํ ๋น๋์ง ์์ ๋ฌธ์์ด์ ๋๋ค.
์ฃผ์ ์ฌํญ
ํ๋์จ์ด ํ ํฐ๊ณผ
์ํํธ์จ์ด ์์ฑ ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์
ํ ํฐ์ ๋ํ ๋ช ๋ช ์ฒด๊ณ. ์๋ฅผ ๋ค์ด ๊ด๋ฆฌ์๋ "-hw"๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
๊ณต๊ธ์ ์ฒด์ ์ผ๋ จ ๋ฒํธ ๋ฅ์คํก ์ผ๋ จ ๋ฒํธ. ์ํํธ์จ์ด์ฉ
ํ ํฐ, ๊ด๋ฆฌ์๋ ๋ฅ์คํก ์ถ๊ฐํ์ฌ ์ผ๋ จ ๋ฒํธ
"-sw"๋ฅผ ์ฅ์น์ ๊ณต๊ธ์ ์ฒด ์ผ๋ จ ๋ฒํธ๋ก ๋ณ๊ฒฝํฉ๋๋ค.
-์๋จ-๋ธํ NUM
๊ธฐ์ค ์๊ฐ์ ๋ค์๊ณผ ๊ฐ์ด ์กฐ์ ํฉ๋๋ค. NUM ๊ฐ๊ฒฉ(์ด ๋จ์์ ๊ฐ ๋จ๊ณ ํฌ๊ธฐ)
TOTP๋ฅผ ๊ณ์ฐํฉ๋๋ค. NS NUM ์์, XNUMX ๋๋ ์์์ผ ์ ์์ต๋๋ค. ์ด๊ฒ์ ์์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๋๊ธฐํ๋์ง ์์ ์๊ณ์ ๊ฒฝ์ฐ.
-ํ ๋๋ฆฌํํธ ์์๋์ฐ
TOTP์ ๊ฒฝ์ฐ ์ฐฝ ํฌ๊ธฐ๋ฅผ ์ฌ์ฉํ์ญ์์ค. ์์๋์ฐ (๊ฐ๊ฒฉ ํฌ๊ธฐ ์ธก๋ฉด์์)
ํ์ธ. ๋ง์ฝ์ ์์๋์ฐ is 0, ๊ณ์ฐ๋ TOTP ๊ฐ์ ์ฃผ์ด์ง ๊ฐ๊ณผ ์ผ์นํด์ผ ํฉ๋๋ค.
๋ฐ๋ก ๊ทธ๊ฑฐ์ฃ . ๋ง์ฝ์ ์์๋์ฐ is 1์๋ฅผ ๋ค๋ฉด, ๋ฅ์คํก ์ฃผ์ด์ง TOTP์ ์ผ์นํ๋ ค๊ณ ์๋ํฉ๋๋ค.
์ด์ , ํ์ฌ ๋ฐ ๋ค์ ๊ฐ๊ฒฉ์ ๊ฐ์ ๋๋ค. ์ด๊ฒ์ ์๊ณ์
์์คํ ์คํ ๋ฅ์คํก (๋๋ local_token_authenticate) ๋ฐ ํ ํฐ ์์ฑ ์ฅ์น
๋ ๋๊ธฐํ๋ฉ๋๋ค.
๋ณด์
๋๊ธฐํ๋์ง ์์ ํด๋ญ์ ๋ณด์ํ์ง๋ง,
์์๋์ฐ ์ผํ์ฉ ์ํธ์ ์๋ช ์ ์ฐ์ฅํ์ฌ ์์คํ ์ ์ฝํ์ํต๋๋ค.
-top-hash ALG
ALG TOTP๋ฅผ ์ฌ์ฉํ ๋ค์ด์ ์คํธ ์๊ณ ๋ฆฌ์ฆ. ์ ๊ฐ์น ALG ๋ก ์ ํ๋ฉ๋๋ค(๊ฒฝ์ฐ
๋๊ฐํ๊ฒ) SHA1(๊ธฐ๋ณธ๊ฐ), SHA256 ๋๋ SHA512.
-top-timestep ์ด
์ด TOTP๋ฅผ ๊ณ์ฐํ ๋ ๊ฐ๊ฒฉ ํฌ๊ธฐ๋ก. XNUMX๋ณด๋ค ์ปค์ผ ํฉ๋๋ค. NS
๊ธฐ๋ณธ๊ฐ์ 30 ์ด.
๋ณด์
๋๊ธฐํ๋์ง ์์ ํด๋ญ์ ๋ณด์ํ์ง๋ง,
์ด ์ผํ์ฉ ์ํธ์ ์๋ช ์ ์ฐ์ฅํ์ฌ ์์คํ ์ ์ฝํ์ํต๋๋ค.
-vfs vfs_uri
vfs_uri ์ฌ์ ์ํ๋ค Vfs[33] ๊ตฌ์ฑ ์ง์นจ์ด ์ ํจํฉ๋๋ค. ์ด๊ฒ์ ๋ ์์๋ค
auth_token, auth_hotp_token ๋๋ auth_totp_token์ ๊ตฌ์ฑํ๊ฑฐ๋ ์ฌ๊ตฌ์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
์์ ์ค์ธ ๊ณ์ ์ ์ ์ฅ ๋ฐฉ๋ฒ์ ์ง์ ํฉ๋๋ค.
ํ์ค ์ค๋ฅ๋ก ์ธ์๋๋ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์ ์ธํ๊ณ ๋ชจ๋ ์ถ๋ ฅ์
ํ์ค ์ถ๋ ฅ.
์ผ๋ฐ์ ์ผ๋ก ๋ฅ์ค์ต์ ๋์ ํ์ฌ ๊ดํ ๊ตฌ์ญ์ ์ ํํ๋๋ก ์ง์ ๋ฉ๋๋ค.
๊ณ์ ์ ๊ด๋ฆฌํ๊ณ ์์ต๋๋ค.
์ฌ์ฉ ์
์ด ์์์๋ ์ฌ์ฉํ ๊ดํ ๊ตฌ์ญ ์ด๋ฆ์ด EXAMPLE์ด๊ณ ํด๋น ์ฐํฉ์ด ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
๋๋ฉ์ธ์ example.com์ ๋๋ค.
์ด ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ค๋ฉด DACS ๊ด๋ฆฌ์๋ ๋ค์ ๋จ๊ณ๋ฅผ ์ํํ ์ ์์ต๋๋ค.
์ฌ์ฉ์์๊ฒ ํ ๋น๋ ๊ฐ OTP ์ฅ์น์ ๋ํด:
1. ์ง์๋๋ ํ ํฐ ํ๋, ์ธ์ฆ ์ฉ๋ ๊ฒํ ๋ฐ ๊ฐ ์ ํ
๋ค์ํ ๋งค๊ฐ๋ณ์์ ๋ํด. ๊ณต๊ธ์ ์ฒด๋ก๋ถํฐ ์ฅ์น์ ๋น๋ฐ ํค๋ฅผ ์ป์ต๋๋ค. ~์์ํ
ํ๋ก๊ทธ๋จ ๊ฐ๋ฅํ ์ฅ์น์ ๊ฒฝ์ฐ ์ ์ ํ ์์ ํค๋ฅผ ์ ํํ๊ณ ์ฅ์น์ ํ๋ก๊ทธ๋๋ฐํฉ๋๋ค.
ํ์ฌ ์นด์ดํฐ ๊ฐ์ ๊ณต๊ธ์ ์ฒด๋ก๋ถํฐ ์ป์ ์๋ ์์ง๋ง
XNUMX์ผ๋ก ์ด๊ธฐํ๋ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค. ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅํ ์ฅ์น์ ๊ฒฝ์ฐ ์นด์ดํฐ ๊ฐ์ ๋ค์์ผ๋ก ์ค์ ํ์ญ์์ค.
์. PIN์ด ํ์ํ์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํฉ๋๋ค(์ฐธ์กฐ TOKEN_REQUIRES_PIN[9]). ์ํํธ์จ์ด์ ๊ฒฝ์ฐ
ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉ ์ค์ธ ๊ฒฝ์ฐ ์ฌ์ฉ์์ ์ฅ์น์ ์ํํธ์จ์ด๋ฅผ ์ค์นํฉ๋๋ค(๋๋ ์ฌ์ฉ์๊ฐ
so), ์ํํธ์จ์ด๋ฅผ ๊ตฌ์ฑํฉ๋๋ค.
2. ๊ณ์ ์ ๋ณด๊ฐ ์ ์ฅ๋ ์์น๋ฅผ ๊ฒฐ์ ํ๊ณ ํ์ํ ๊ฒฝ์ฐ ์ ์ ํ
Vfs[33] dacs.conf์ ๋ํ ์ง์๋ฌธ. ๊ธฐ๋ณธ๊ฐ(site.conf์ ์์)์ ๊ณ์ ์ ์ ์งํฉ๋๋ค.
๊ฐ ๊ดํ ๊ตฌ์ญ์ ๊ธฐ๋ณธ ๋น๊ณต๊ฐ ํ์ผ์ ์๋ auth_tokens๋ผ๋ ํ์ผ์ ์ ๋ณด
์ง์ญ:
VFS "[auth_token]dacs-kwv-fs:${Conf::FEDERATIONS_ROOT}/\
${Conf::FEDERATION_DOMAIN}/${Conf::JURISDICTION_NAME}/auth_tokens"
3. ๊ณ์ ์ ๋ณด๋ฅผ ์ํธํํ๊ธฐ ์ํ ํค ์์ฑ(์ฐธ์กฐ ํ ํฐ ๊ณผ ๋น๋ฐ ํค[34]) ๊ทธ๋ฆฌ๊ณ
์ ์ฅ ์์น๋ฅผ โโ๊ฒฐ์ ํ์ญ์์ค. ์๋ฅผ ๋ค์ด(์ฌ์ฉ์ ID, ๊ทธ๋ฃน ID, ๊ฒฝ๋ก,
๊ดํ ๊ตฌ์ญ ์ด๋ฆ ๋ฐ ํ๋๋ ์ด์ ๋๋ฉ์ธ์ ๋ค๋ฅผ ์ ์์):
% cd /usr/local/dacs/federations_root/example.com/EXAMPLE
% dacskey -uj ์ -q ์ธ์ฆ ํ ํฐ_ํค
% chgrp www auth_token_keys
% chmod 0640 ์ธ์ฆ ํ ํฐ ํค
ํ์ํ ๊ฒฝ์ฐ ์ ์ ํ ์ถ๊ฐ Vfs[33] dacs.conf์ ๋ํ ์ง์๋ฌธ; ๊ธฐ๋ณธ๊ฐ์
์์์ ์ฌ์ฉ๋ auth_token_keys๋ผ๋ ํ์ผ์ ๊ณ์ ์ ๋ณด๋ฅผ ์ ์งํฉ๋๋ค.
๊ฐ ๊ดํ ๊ตฌ์ญ์ ๊ธฐ๋ณธ ๊ฐ์ธ ์์ญ:
VFS "[auth_token_keys]dacs-fs:${Conf::FEDERATIONS_ROOT}/\
${Conf::FEDERATION_DOMAIN}/${Conf::JURISDICTION_NAME}/auth_token_keys"
4. ์ฌ์ฉ์์ ๋ก๊ทธ์ธ์ด ํ์ํ ๊ฒฝ์ฐ dacs_์ธ์ฆ(8)[2], ๊ตฌ์ฑํด์ผ ํฉ๋๋ค
dacs.conf์ ์ ์ ํ Auth ์ , ์:
URL "ํ ํฐ"
STYLE "ํต๊ณผ"
"์ถฉ๋ถํ" ์ ์ด
5. ๊ด๋ฆฌ์๊ฐ ์งํํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
๋ ธ๋ ฅ์ ์ฌ์ฉ์๊ฐ ์ํํ ์ ์์ต๋๋ค(์: ์ ๋ขฐํ ์ ์๋์ง ์ฌ๋ถ, ๊ธฐ์
๋ฅ๋ ฅ), ์ฌ์ฉ์ ์(๋ช ๋ช ๋๋ ์์ฒ ๋ช ), ๋ณด์ ์์ค
์ด ํ์ํฉ๋๋ค.
1. ๋ค์์ด ํฌํจ๋ ํ์ผ์ ์ค๋นํฉ๋๋ค. XML ๊ธฐ๋ก[35] ์์ฑ๋ ๊ฐ ๊ณ์ ์ ๋ํด; ๋ง์ฝ
PIN์ ์ฌ์ฉํด์ผ ํ๋ฉฐ, ๊ฐ ๊ณ์ ์ ์์์ PIN์ ํ ๋นํฉ๋๋ค.
2. ์ฌ์ฉ -์์ [36] ๊ณ์ ์ ์์ฑํ๊ธฐ ์ํ ํ๋๊ทธ;
3. ์ฌ์ฉ์์๊ฒ ํ ํฐ ์ฅ์น, ์ฌ์ฉ์ ์ด๋ฆ ๋ฐ (ํ์ํ ๊ฒฝ์ฐ) ์ด๊ธฐ PIN์ ์ ๊ณตํฉ๋๋ค.
(์๋ง๋ ์ ์ ํ์ธ), ํ์ํ ๋ฐ๋ชจ ์ ๊ณต ๋ฐ
๋ช ๋ น;
4. ์ฌ์ฉ์๊ฐ ๊ณ์ ์ ๋ํ PIN์ ์ค์ ํ๊ฑฐ๋ ์ฌ์ค์ ํ๋๋ก ํ๊ณ ์ฌ์ฉ์์๊ฒ ๋ก๊ทธ์ธํ๋๋ก ์์ฒญํฉ๋๋ค.
ํ ํฐ์ ์ฌ์ฉํ์ฌ ์ฌ๋ฐ๋ฅธ ์๋์ ํ์ธํฉ๋๋ค.
HOTP ์ฅ์น์ ๋ํด ์ฌ์ฉ์ bobo์ ๋ํด ๋นํ์ฑํ๋ ๊ณ์ ์ ๋ง๋ค๋ ค๋ฉด:
% dacstoken -uj ์ -mode hotp -serial 37000752 -key-file bobo.key -bobo ๋ง๋ค๊ธฐ
๊ณ์ ์ ๋น๋ฐ ํค(์ด๋ฏธ ์กด์ฌํด์๋ ์ ๋จ)๋ฅผ ํ์ผ์์ ์ฝ์ต๋๋ค.
๋ณด๋ณด.ํค. ์ ๊ณ์ ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋์ด ์์ต๋๋ค. ์ฌ์ฉํ๋ค -ํ ์์๊ฒํ๋ค ํ์ฑํ๋ ๊ณ์ ์ ์์ฑํฉ๋๋ค.
๊ณ์ ์ด ์์ฑ๋๋ฉด ํ ํฐ๊ณผ ๋๊ธฐํํ ์ ์์ต๋๋ค. ๋๊ธฐํํ๋ ค๋ฉด
์ฌ์ฉ์ bobo์ ๋ํ HOTP ํ ํฐ:
% dacstoken -uj ์ -sync 433268,894121,615120 ๋ณด๋ณด
์ด ์์์ ํน์ ํ ํฐ์ ์ธ ๊ฐ์ ์ฐ์์ ์ธ ์ํธ 433268์ ์์ฑํ์ต๋๋ค.
894121 ๋ฐ 615120. ๋ค์์ ์ค๋ ์ํธ ์ํ์ค ๋ฌธ์์ด์ ์ ์ํ์ญ์์ค. -๋์กฐ ๊น๋ฐ์
๊ณต๋ฐฑ์ ํฌํจํ ์ ์๋ ๋จ์ผ ์ธ์์ ๋๋ค. ์ด ํ ํฐ์ ํค๊ฐ
19c0a3519a89b4a8034c5b9306db, ์ด ํ ํฐ์ ์ํด ์์ฑ๋ ๋ค์ ๋น๋ฐ๋ฒํธ๋ 544323์ด์ด์ผ ํฉ๋๋ค.
(์นด์ดํฐ ๊ฐ์ผ๋ก 13). ์ด๊ฒ์ ๋ค์์ ์ฌ์ฉํ์ฌ ํ์ธํ ์ ์์ต๋๋ค. -hotp-์ผ:
% dacstoken -hotp-show 5 -์นด์ดํฐ 10 -ํค 19c0a3519a89b4a8034c5b9306db
000000000000000a: 433268
000000000000000b: 894121
000000000000000c: 615120
000000000000000d: 544323
000000000000000e : 002442
์ฌ์ฉ์ bobo์ ๋ํ ๊ณ์ ์ ํ์ฑํํ๋ ค๋ฉด:
% dacstoken -uj ์ -enable -set ๋ณด๋ณด
PIN์ ์ค์ ํ๊ณ ์ฌ์ฉ์ bobo์ ๋ํ ๊ณ์ ์ ํ์ฑํํ๋ ค๋ฉด:
% dacstoken -uj EXAMPLE -ํ์ฑํ -ํ "CzAy" -๋ณด๋ณด ์ค์
๋ชจ๋ ๊ณ์ ์ ์์ธํ ๋์ดํ๋ ค๋ฉด:
% dacstoken -uj ์ -long
XNUMXD๋ดํ์ -๋ช ๋ถ ํ๋๊ทธ๋ ๊ธฐ๋ณธ ์์ ์ด๋ฏ๋ก ์ค๋ณต๋ฉ๋๋ค. NS -์์, -์นด์ดํฐ๋ฑ
์์ ์๋ ๋์ดํ ๋ ํจ๊ณผ๊ฐ ์์ต๋๋ค.
bobo์ ๋ํ ๊ณ์ ๋ง ๋์ดํ๋ ค๋ฉด:
% dacstoken -uj EXAMPLE -๋ชฉ๋ก ๋ณด๋ณด
์ด ์ฌ์ฉ์์๊ฒ ๊ณ์ ์ด ์์ผ๋ฉด ์ข ๋ฃ ์ํ๋ XNUMX์ด ์๋๋๋ค.
์ผ๋ จ ๋ฒํธ๊ฐ 37000752์ธ ์ฅ์น์ ๊ณ์ ์ ํ์ํ๋ ค๋ฉด:
% dacstoken -uj ์ - ์ง๋ ฌ 37000752
ํ ํฐ์ ๊ณ ์ ํ๊ฒ ์๋ณํด์ผ ํ๋ ์ผ๋ จ ๋ฒํธ๋ ์ข ์ข ํ ํฐ์ ์ธ์๋ฉ๋๋ค.
๋๋ ํ ํฐ์ผ๋ก ํ์ํ ์ ์์ต๋๋ค.
๊ธฐ์กด bobo ๊ณ์ ์ ๋ํ ์นด์ดํฐ ๊ฐ์ ์ค์ ํ๋ ค๋ฉด:
% dacstoken -uj ์ -์นด์ดํฐ 9 -๋ณด๋ณด ์ธํธ
์ด ์์ ์ ํ ์คํธ ๋๋ ์ํํธ์จ์ด ํ ํฐ๊ณผ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค. NS -๋์กฐ ์์ ์
ํ๋์จ์ด ํ ํฐ์ ๋ ์ ํฉํฉ๋๋ค.
์ฌ์ฉ์ ์ด๋ฆ bobo์ PIN์ ๋ณ๊ฒฝํ๋ ค๋ฉด:
% dacstoken -uj ์ -pin-prompt -set bobo
ํ๋ก๊ทธ๋จ์์ ์ PIN์ ์ ๋ ฅํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค.
๋์ฒด ๊ณ์ ํ์ผ์ ์ฌ์ฉํ๋ ค๋ฉด /secure/auth_tokens:
% dacstoken -uj ์ -vfs "dacs-kwv-fs:/secure/auth_tokens" -๋ชฉ๋ก
์ ํค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด(์ด์ ๊ณผ ๋์ผํ ๊ฐ์ ์ ํจ)
dacs.conf; ๊ธฐ๋ณธ๊ฐ์ ํญ๋ชฉ ์ ํ auth_token_keys_prev๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ ์ํฉ๋๋ค.
VFS "[auth_token_keys_prev]dacs-fs:${Conf::FEDERATIONS_ROOT}/\
${Conf::FEDERATION_DOMAIN}/${Conf::JURISDICTION_NAME}/auth_token_keys.prev"
% cd /usr/local/dacs/federations_root/example.com/EXAMPLE
% mv auth_token_keys auth_token_keys.prev
% dacskey -uj ์ -q ์ธ์ฆ ํ ํฐ_ํค
% chgrp www auth_token_keys
% chmod 0640 ์ธ์ฆ ํ ํฐ ํค
% dacstoken -uj ์ -inkeys auth_token_keys.prev -set
์ง๋จ
ํ๋ก๊ทธ๋จ์ 0์ ์ข ๋ฃํ๊ฑฐ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ 1์ ์ข ๋ฃํฉ๋๋ค.
onworks.net ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ dacstoken ์จ๋ผ์ธ ์ฌ์ฉ