๐ Spring/Spring Security
4. JWT๋ฅผ ์ดํดํ๊ธฐ ์ RSA์ ๋ํด์
iseunghan
2021. 10. 27. 10:33
๋ฐ์ํ
์ด ํฌ์คํธ๋ ๋ฐ์ด ํ๋ก๊ทธ๋๋ฐ๋์ ์ ํ๋ธ ๊ฐ์๋ฅผ ๋ฃ๊ณ ๋์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค.
2021.10.26 - [๐ Spring/Spring Security] - 3. JWT๋ฅผ ์ดํดํ๊ธฐ ์ CIA ๋ํด ์ดํดํ๊ธฐ
์ ๋ฒ ์๊ฐ์ ๋ ๊ฐ์ง ๋ฌธ์ ๊ฐ ์์์ต๋๋ค.
- ์ด์ ์ ๋ฌ ๋ฌธ์
- ๋๊ฐ ๋ณด๋๋์ง? ์ ๋ํ ๋ฌธ์ , ์ธ์ฆ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํ ๊ฒ์ธ๊ฐ
RSA(์ํธํ)
- Public Key : ๊ณต๊ฐ ํค
- ์์ ์ ๋ธ๋ก๊ทธ๋ ์คํ๋ ๊ณต๊ฐ์ ๊ณต๊ฐํด๋ ๋ฌธ์ ๋์ง ์์
- Private Key : ๊ฐ์ธ ํค
- ์ค์ง ์์ ๋ง ์๊ณ ์์ด์ผ ํจ
๊ณต๊ฐํค๋ก ์ํธํ๋ฅผ ํ๋ค๋ฉด, ๊ฐ์ธํค๋ก๋ง ์ด ์ ์์ต๋๋ค.
๋ง์ฝ ๊ฐ์ธํค๋ก ์ํธํ๋ฅผ ํ๋ค๋ฉด, ๊ณต๊ฐํค๋ก๋ง ์ด ์ ์์ต๋๋ค.
์ด์ ๋ฌธ์ ์ RSA๋ฅผ ์ ์ฉํ์ฌ ํด๊ฒฐํด๋ณด์
- A๊ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณด๋ผ ๋, B์ ๊ณต๊ฐํค๋ก ์ํธํ๋ฅผ ํ ๋ค ๋ณด๋๋ค.
- ํ์ง๋ง, ์ค๊ฐ์ C๊ฐ ์ค๊ฐ์ ๊ฐ๋ก์ฑ๋ค. ํ์ง๋ง C๋ ๋ด์ฉ์ ๋ณผ ์๊ฐ ์๋ค. ์? B์ ๊ณต๊ฐํค๋ ๋ฐ๋์ B์ ๊ฐ์ธํค๋ก๋ง ์ด ์ ์์ผ๋ฏ๋ก
์ด์ ์ ๋ฌ ๋ฌธ์ ํด๊ฒฐ
๊ทธ๋ ๋ค๋ฉด ๋๊ฐ ๋ณด๋๋์ง๋ ์ด๋ป๊ฒ ์ธ์ฆํ ๊น?
- ์์์ B์ ๊ณต๊ฐํค๋ ๋ฐ๋์ B์ ๊ฐ์ธํค๋ก๋ง ์ด ์ ์๋ค๊ณ ํ๋ค.
- ๊ทธ๋ ๋ค๋ ๊ฑด? ๋ฐ๋๋ก ์ ์ฉํ๋ฉด ์ด๋จ๊น?
- A๊ฐ ๋ณด๋๋ค๋ ์๋ฏธ๋ก ์์ ์ ๊ฐ์ธํค๋ก ํ๋ฒ ๋ ์ ๊ทธ๋ ๊ฒ์ด๋ค.
- ๋ง์ฝ A๊ฐ ๋ณด๋ธ๊ฒ ๋ง๋ค๋ฉด ๋ฌด์กฐ๊ฑด A์ ๊ณต๊ฐํค๋ก ์ด๋ ค์ผ๋ง ํ๋ค๋ ๊ฒ์ด๋ค!
B๋ ์ด์ ๋ฌธ์๋ฅผ ๋ฐ์์ ๋, ์๋์ ๊ฐ์ด ์ฒ๋ฆฌํ๋ค.
์ธ์ฆ
- A์ ๊ณต๊ฐํค๋ก ๋ฌธ์๋ฅผ ์ด์ด๋ณธ๋ค.
- ์ด๋ฆฐ๋ค? A๊ฐ ๋ณด๋ธ ๊ฒ์ด ํ์คํ๋ค. (์ธ์ฆ ์๋ฃ)
- ์์ด๋ฆฐ๋ค? A๊ฐ ๋ณด๋ธ ๊ฒ์ด ์๋๋ฏ๋ก ์ด์ง ์๋๋ค.
์ํธํ
- B์ ๊ฐ์ธํค๋ก ์ด์ด๋ณธ๋ค.
- ์ด๋ฆฐ๋ค? ์ํธํ๊ฐ ์ ๋์๋ค. (์ํธํ ์๋ฃ)
- ์์ด๋ฆฐ๋ค? ์ํธํ๊ฐ ๋์ง ์์๋ค.
RSA
๊ณต๊ฐํค -> ๊ฐ์ธํค (์ํธํ์ ์์ฃผ ์ฌ์ฉ)
๊ฐ์ธํค -> ๊ณต๊ฐํค (์ ์ ์๋ช ์ ์์ฃผ ์ฌ์ฉ)
๊ฐ์ฌํฉ๋๋ค.
๋ฐ์ํ