ํจ์จ์ ์ธ ์ํคํ ์ฒ, API, ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ๊ฐ์ถ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ก ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ์ ๊ฐ์ํํ์ธ์. ๊ฐ๋ ฅํ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ตฌ์ถ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์์๋ด ๋๋ค.
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ: ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ ์ธํ๋ผ
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์น ๋ธ๋ผ์ฐ์ ์ ๊ธฐ๋ฅ์ ๋ง์ถค ์ค์ ํ๊ณ ํฅ์์ํค๋ ์์ ์ํํธ์จ์ด ํ๋ก๊ทธ๋จ์ ๋๋ค. ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ , ์น์ฌ์ดํธ ์ฝํ ์ธ ๋ฅผ ์์ ํ๋ฉฐ, ๋ค๋ฅธ ์๋น์ค์ ํตํฉํ๊ณ , ์ ๋ฐ์ ์ธ ๋ธ๋ผ์ฐ์ง ๊ฒฝํ์ ๊ฐ์ ํ ์ ์์ต๋๋ค. ์ฒ์๋ถํฐ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ ๊ฒ์ ๋ณต์กํ๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์์ ์ผ ์ ์์ผ๋ฉฐ, ํนํ ์ฌ๋ฌ ๋ธ๋ผ์ฐ์ ๋ฅผ ๋์์ผ๋ก ํ ๋๋ ๋์ฑ ๊ทธ๋ ์ต๋๋ค. ๋ฐ๋ก ์ด ์ง์ ์์ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๊ฐ ํ์ํฉ๋๋ค. ์ด๋ฌํ ํ๋ ์์ํฌ๋ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํ๊ณ ์ฝ๋ ์ค๋ณต์ ์ค์ด๋ฉฐ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ๋ณด์ฅํ๋ ๊ตฌ์กฐํ๋ ํ๊ฒฝ๊ณผ ๋๊ตฌ ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ๋ฌด์์ธ๊ฐ?
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ฑ์ ๊ฐ์ํํ๊ธฐ ์ํด ์ค๊ณ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, API ๋ฐ ๋๊ตฌ ๋ชจ์์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ ์ ๊ณตํฉ๋๋ค:
- ๊ฐ์ํ๋ ๊ฐ๋ฐ: ๋ธ๋ผ์ฐ์ ์ ํ์ฅ API์ ๋ ์ฝ๊ฒ ์ํธ ์์ฉํ ์ ์๋๋ก ํ๋ ์์ ์์ค์ ์ถ์ํ ๋ฐ API๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ: ๋ค์ํ ๋ธ๋ผ์ฐ์ ํ์ฅ API ๊ฐ์ ์ฐจ์ด์ ์ ์ฒ๋ฆฌํ์ฌ ๊ฐ๋ฐ์๊ฐ ์ต์ํ์ ์์ ์ผ๋ก ์ฌ๋ฌ ๋ธ๋ผ์ฐ์ ์์ ์๋ํ๋ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋๋ก ํฉ๋๋ค.
- ์ฝ๋ ์ฌ์ฌ์ฉ์ฑ: ๋ชจ๋์ ๊ตฌ์ฑ ์์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ํจ์๋ฅผ ์ ๊ณตํ์ฌ ์ฝ๋ ์ฌ์ฌ์ฉ์ ์ฅ๋ คํฉ๋๋ค.
- ํฅ์๋ ์ ์ง๋ณด์์ฑ: ๊ตฌ์กฐํ๋ ์ฝ๋ ์ํคํ ์ฒ๋ฅผ ์ฅ๋ คํ์ฌ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ ์ฝ๊ฒ ์ ์ง๋ณด์ํ๊ณ ์ ๋ฐ์ดํธํ ์ ์๋๋ก ํฉ๋๋ค.
- ๊ฐํ๋ ๋ณด์: ์ข ์ข ๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ํตํฉํ๊ณ ์ผ๋ฐ์ ์ธ ํ์ฅ ํ๋ก๊ทธ๋จ ์ทจ์ฝ์ ์ ์ํํ๋ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ณธ์ง์ ์ผ๋ก ํ๋ ์์ํฌ๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ ํจ์จ์ ์ผ๋ก ๊ตฌ์ถํ๊ธฐ ์ํ ๊ฐ๋ฐ ์ธํ๋ผ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ ์ด์
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ์ ํํ๋ฉด ๊ฐ๋ฐ ์๋, ์ฝ๋ ํ์ง ๋ฐ ์ ์ง๋ณด์์ฑ ์ธก๋ฉด์์ ์๋นํ ์ด์ ์ ์ป์ ์ ์์ต๋๋ค. ์ฃผ์ ์ด์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
๊ฐ๋ฐ ์๊ฐ ๋จ์ถ
ํ๋ ์์ํฌ๋ ์ผ๋ฐ์ ์ธ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ ์์ ์ ์ฒ๋ฆฌํ๋ ์ฌ์ ๋น๋๋ ๊ตฌ์ฑ ์์, ์ ํธ๋ฆฌํฐ ๋ฐ ์ถ์ํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ์์ฉ๊ตฌ ์ฝ๋๋ ๋ธ๋ผ์ฐ์ ๋ณ ๊ตฌํ์ ์๊ฐ์ ๋ญ๋นํ๋ ๋์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ณ ์ ํ ๊ธฐ๋ฅ์ ์ง์คํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ํ๋ ์์ํฌ๋ ์คํ ๋ฆฌ์ง ๊ด๋ฆฌ, ์ฌ์ฉ์ ์ค์ ์ฒ๋ฆฌ, ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํฌ๋ฆฝํธ์์ ํต์ ๊ณผ ๊ฐ์ ์์ ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
์์: ํฌ๋กฌ, ํ์ด์ดํญ์ค, ์ฌํ๋ฆฌ ๊ฐ๊ฐ์ ๋ํด ํ์ฅ ํ๋ก๊ทธ๋จ ์ต์ ๊ณผ ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋ฅผ ๊ด๋ฆฌํ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋์ , ํ๋ ์์ํฌ๋ ๋ชจ๋ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ํตํฉ API๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ ๊ฐ๋ฐ ์๊ฐ์ ํฌ๊ฒ ์ค์ด๊ณ ์ผ๊ด์ฑ์ ๋ณด์ฅํฉ๋๋ค.
ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์์ ๊ฐ์ฅ ํฐ ๊ณผ์ ์ค ํ๋๋ ๋ค์ํ ๋ธ๋ผ์ฐ์ (ํฌ๋กฌ, ํ์ด์ดํญ์ค, ์ฌํ๋ฆฌ, ์ฃ์ง ๋ฑ) ๊ฐ์ API ๋ฐ ๊ธฐ๋ฅ ์ฐจ์ด์ ๋๋ค. ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ์ด๋ฌํ ์ฐจ์ด์ ์ ์ถ์ํํ์ฌ ์ฌ๋ฌ ๋ธ๋ผ์ฐ์ ์์ ์๋ํ๋ ์ผ๊ด๋ API๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ธ๋ผ์ฐ์ ๋ณ ์ฝ๋๋ฅผ ์์ฑํ ํ์๊ฐ ์์ผ๋ฉฐ, ์ง์๋๋ ๋ชจ๋ ํ๋ซํผ์์ ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
์์: ์ฝํ ์ธ ์คํฌ๋ฆฝํธ์ ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํฌ๋ฆฝํธ ๊ฐ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ ๊ฒ์ ํฌ๋กฌ๊ณผ ํ์ด์ดํญ์ค์์ ์๋ก ๋ค๋ฅธ API๋ฅผ ์ฌ์ฉํฉ๋๋ค. ํ๋ ์์ํฌ๋ ์ด๋ฌํ ์ฐจ์ด์ ์ ๋ด๋ถ์ ์ผ๋ก ์ฒ๋ฆฌํ์ฌ ๋ ๋ธ๋ผ์ฐ์ ๋ชจ๋์ ๋ํด ๋จ์ผ API ํธ์ถ์ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค.
์ฝ๋ ํ์ง ๋ฐ ์ ์ง๋ณด์์ฑ ํฅ์
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ์ผ๋ฐ์ ์ผ๋ก ๊ตฌ์กฐํ๋ ์ฝ๋ ์ํคํ ์ฒ๋ฅผ ๊ฐ์ ํ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ฅ๋ คํฉ๋๋ค. ์ด๋ ๋ ๊นจ๋ํ๊ณ , ๋ ์ฒด๊ณ์ ์ด๋ฉฐ, ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์ด ์ฝ๋๋ก ์ด์ด์ง๋๋ค. ํ๋ ์์ํฌ์๋ ์ข ์ข ๋ชจ๋์ ๊ตฌ์ฑ ์์, ์์กด์ฑ ์ฃผ์ , ์๋ํ๋ ํ ์คํธ์ ๊ฐ์ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์ฝ๋ ํ์ง์ ๋์ฑ ํฅ์์ํต๋๋ค.
์์: ์์กด์ฑ ์ฃผ์ ์ ์ง์ํ๋ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ฑ ์์๋ฅผ ์ฝ๊ฒ ํ ์คํธํ๊ณ ๊ต์ฒดํ ์ ์์ด ๋์ฑ ๊ฒฌ๊ณ ํ๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์์ง๋๋ค. ์ด๋ ํนํ ์์ง์ด๋ ๋ถ๋ถ์ด ๋ง์ ๋ณต์กํ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ค์ํฉ๋๋ค.
๊ฐํ๋ ๋ณด์
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ ์คํ๊ฒ ๊ฐ๋ฐ๋์ง ์์ผ๋ฉด ๋ณด์ ์ํ์ ์ด๋ํ ์ ์์ต๋๋ค. ํ๋ ์์ํฌ๋ ์ข ์ข ๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ํตํฉํ๊ณ ๊ต์ฐจ ์ฌ์ดํธ ์คํฌ๋ฆฝํ (XSS) ๋ฐ ์ฝํ ์ธ ๋ณด์ ์ ์ฑ (CSP) ์๋ฐ๊ณผ ๊ฐ์ ์ผ๋ฐ์ ์ธ ํ์ฅ ํ๋ก๊ทธ๋จ ์ทจ์ฝ์ ์ ์ํํ๋ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ ์ ์ฑ ์ฝ๋๊ฐ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฃผ์ ๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ ๋ ฅ ์ ํจ์ฑ ๊ฒ์ฌ ๋ฐ ์ถ๋ ฅ ์๋ํ์ด์ ์ด์ ๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ํฌํจํ ์ ์์ต๋๋ค.
์์: ํ๋ ์์ํฌ๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ UI์ ํ์ํ๊ธฐ ์ ์ ์ฌ์ฉ์ ์ ๋ ฅ์ ์๋์ผ๋ก ์๋ํ์ด์ฆํ์ฌ XSS ๊ณต๊ฒฉ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค. ๋ํ ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ก์ธ์คํ ์ ์๋ ๋ฆฌ์์ค๋ฅผ ์ ํํ๊ธฐ ์ํด ์๊ฒฉํ CSP ๊ท์น์ ์ ์ฉํ์ฌ ์ ์ฑ ์ฝ๋ ์คํ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค.
๋จ์ํ๋ API ์ ๊ทผ
ํ๋ ์์ํฌ๋ ๋ธ๋ผ์ฐ์ API์ ์ ๊ทผํ๊ณ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํฉ๋๋ค. ์ข ์ข ํญ, ๊ธฐ๋ก, ๋ถ๋งํฌ, ์๋ฆผ๊ณผ ๊ฐ์ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฅ๊ณผ ๋ ์ฝ๊ฒ ์ํธ ์์ฉํ ์ ์๋๋ก ํ๋ ์์ ์์ค์ ์ถ์ํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ๊ธฐ๋ณธ ๋ธ๋ผ์ฐ์ API์ ๋ณต์ก์ฑ์ ๋ค๋ฃจ๋ ๋์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ํต์ฌ ๊ธฐ๋ฅ์ ์ง์คํ ์ ์์ต๋๋ค.
์์: ๋ธ๋ผ์ฐ์ ์ ๋ค์ดํฐ๋ธ API๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ํญ์ ์๋์ผ๋ก ์์ฑํ๊ณ ๊ด๋ฆฌํ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋์ , ํ๋ ์์ํฌ๋ ์ฝ๋ ํ ์ค๋ก ํญ์ ์์ฑ, ์ ๋ฐ์ดํธ, ์ ๊ฑฐํ ์ ์๋ ๊ฐ๋จํ API๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ธ๊ธฐ ์๋ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ
์ฌ๋ฌ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๊ฐ ์์ผ๋ฉฐ, ๊ฐ๊ฐ ๊ณ ์ ํ ์ฅ๋จ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ๋ช ๊ฐ์ง ์ต์ ์ ๋ํ ๊ฐ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
WebExtension Polyfill
WebExtension Polyfill์ ์์ ํ ํ๋ ์์ํฌ๋ ์๋์ง๋ง ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ์ํ ์ค์ํ ๋๊ตฌ์ ๋๋ค. ์ด๋ WebExtensions API(ํ๋ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ํ์ค)๋ฅผ ์์ ํ ์ง์ํ์ง ์๋ ๊ตฌํ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฅผ ์๋ฎฌ๋ ์ดํธํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด WebExtensions API๋ฅผ ์ฌ์ฉํ๋ ์ฝ๋๋ฅผ ์์ฑํ ๋ค์ ํด๋ฆฌํ์ ์ฌ์ฉํ์ฌ ํฌ๋กฌ ๋ฐ ํ์ด์ดํญ์ค์ ๊ฐ์ ๋ธ๋ผ์ฐ์ ์์ ์๋ํ๋๋ก ํ ์ ์์ต๋๋ค.
์ฅ์ :
- ๊ธฐ์กด ํ๋ก์ ํธ์ ์ฌ์ฉํ๊ณ ํตํฉํ๊ธฐ ๊ฐ๋จํฉ๋๋ค.
- WebExtensions API์ ๋ํ ๋ฐ์ด๋ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ์ ๊ณตํฉ๋๋ค.
- ๊ฒฝ๋์ด๋ฉฐ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์๋นํ ์ค๋ฒํค๋๋ฅผ ์ถ๊ฐํ์ง ์์ต๋๋ค.
๋จ์ :
- ํ์ฅ ํ๋ก๊ทธ๋จ ๊ตฌ์ถ์ ์ํ ์์ ํ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํ์ง ์์ต๋๋ค.
- ๋ค๋ฅธ ๊ฐ๋ฐ ์ธก๋ฉด์ด ์๋ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ API ํธํ์ฑ์๋ง ์ค์ ์ ๋ก๋๋ค.
Browserify์ Webpack
์๋ฐํ ๋งํด ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ์๋์ง๋ง, Browserify์ Webpack์ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์ ํฌ๊ฒ ๋จ์ํํ ์ ์๋ ์ธ๊ธฐ ์๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ชจ๋ ๋ฒ๋ค๋ฌ์ ๋๋ค. ์ฝ๋๋ฅผ ๋ชจ๋๋ก ๊ตฌ์ฑํ๊ณ , ์์กด์ฑ์ ๊ด๋ฆฌํ๋ฉฐ, ๋ฐฐํฌ๋ฅผ ์ํด ์ฝ๋๋ฅผ ๋จ์ผ ํ์ผ๋ก ๋ฒ๋ค๋งํ ์ ์์ต๋๋ค. ์ด๋ ์ฝ๋ ๊ตฌ์ฑ์ ๊ฐ์ ํ๊ณ , ์ฝ๋ ์ค๋ณต์ ์ค์ด๋ฉฐ, ๋ณต์กํ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ ์ฝ๊ฒ ๊ด๋ฆฌํ ์ ์๊ฒ ํด์ค๋๋ค.
์ฅ์ :
- ์์กด์ฑ ๊ด๋ฆฌ ๋ฐ ์ฝ๋ ๋ชจ๋ํ์ ํ์ํฉ๋๋ค.
- ๊ด๋ฒ์ํ ์๋ฐ์คํฌ๋ฆฝํธ ๋ชจ๋๊ณผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ง์ํฉ๋๋ค.
- ํ์ผ ํฌ๊ธฐ๋ฅผ ์ต์ํํ๊ณ ์ฑ๋ฅ์ ํฅ์์์ผ ํ๋ก๋์ ์ฉ ์ฝ๋๋ฅผ ์ต์ ํํฉ๋๋ค.
๋จ์ :
- ์ฝ๊ฐ์ ๊ตฌ์ฑ ๋ฐ ์ค์ ์ด ํ์ํฉ๋๋ค.
- ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์ ์ํด ํน๋ณํ ์ค๊ณ๋์ง ์์์ต๋๋ค.
React์ Vue.js
React์ Vue.js๋ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ ์ธ๊ธฐ ์๋ ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ ์์ํฌ์ ๋๋ค. ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ UI ๊ตฌ์ฑ ์์๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณต์กํ UI ๊ฐ๋ฐ์ ๋จ์ํํ๊ณ ์ฝ๋ ์ฌ์ฌ์ฉ์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
์ฅ์ :
- UI ๊ตฌ์ถ์ ์ํ ์ปดํฌ๋ํธ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ๋ฐ์ด๋ ์ฑ๋ฅ๊ณผ ํ์ฅ์ฑ์ ์ ๊ณตํฉ๋๋ค.
- ํฌ๊ณ ํ๋์ ์ธ ์ปค๋ฎค๋ํฐ๊ฐ ๊ด๋ฒ์ํ ์ง์๊ณผ ๋ฆฌ์์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋จ์ :
- React ๋๋ Vue.js์ ๋ํ ๊น์ ์ดํด๊ฐ ํ์ํฉ๋๋ค.
- ํนํ ๊ฐ๋จํ UI์ ๊ฒฝ์ฐ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฝ๊ฐ์ ์ค๋ฒํค๋๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
Stencil
Stencil์ ์น ์ปดํฌ๋ํธ๋ฅผ ์์ฑํ๋ ์ปดํ์ผ๋ฌ์ ๋๋ค. ์ข ์ข ๋ง์ ํ๋ก ํธ์๋ ํ๋ก์ ํธ์์ ์ฌ์ฉ๋๋ ๋์์ธ ์์คํ ์ ๊ตฌ์ถํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. Stencil์ ์ฌ์ฉํ๋ฉด ์ด๋ฌํ ์น ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ๋์์ธ ์์คํ ์ ์ฌ์ฌ์ฉํ๋ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
์ฅ์ :
- ํ์ค์ ์ค์ํ๋ ์น ์ปดํฌ๋ํธ ์์ฑ
- ํ์ ์คํฌ๋ฆฝํธ๋ก ๋น๋
- ์ปดํฌ๋ํธ ๊ธฐ๋ฐ
๋จ์ :
- StencilJS์ ๋ํ ์ง์ ํ์
- ๋น๋ ๋จ๊ณ ์ถ๊ฐ
์ฌ๋ฐ๋ฅธ ํ๋ ์์ํฌ ์ ํ
์ต๊ณ ์ ํ๋ ์์ํฌ๋ ํ๋ก์ ํธ์ ํน์ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์ฃผ๋ก ๋ธ๋ผ์ฐ์ ์ API์ ์ํธ ์์ฉํ๋ ๊ฐ๋จํ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ฒฝ์ฐ WebExtension Polyfill๋ก ์ถฉ๋ถํ ์ ์์ต๋๋ค. UI๊ฐ ์๋ ๋ ๋ณต์กํ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ฒฝ์ฐ React ๋๋ Vue.js๊ฐ ๋ ๋์ ์ ํ์ผ ์ ์์ต๋๋ค. ํจ์จ์ ์ธ ์ฝ๋ ๊ตฌ์ฑ ๋ฐ ์์กด์ฑ ๊ด๋ฆฌ๊ฐ ํ์ํ ๊ฒฝ์ฐ Browserify ๋๋ Webpack์ด ํ๋ฅญํ ์ต์ ์ ๋๋ค.
ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ ๋ชจ๋ฒ ์ฌ๋ก
์ ํํ ํ๋ ์์ํฌ์ ๊ด๊ณ์์ด, ๊ณ ํ์ง์ ์์ ํ๊ณ ์ ์ง๋ณด์ ๊ฐ๋ฅํ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ๋ ค๋ฉด ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ค์์ ๋ช ๊ฐ์ง ์ฃผ์ ๊ถ์ฅ ์ฌํญ์ ๋๋ค:
ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ํคํ ์ฒ ๊ณํ
์ฝ๋ฉ์ ์์ํ๊ธฐ ์ ์ ์๊ฐ์ ๋ด์ด ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ํคํ ์ฒ๋ฅผ ๊ณํํ์ธ์. ๋ค์ํ ๊ตฌ์ฑ ์์, ๊ฐ์์ ์ฑ ์, ๊ทธ๋ฆฌ๊ณ ์๋ก ์ด๋ป๊ฒ ์ํธ ์์ฉํ ๊ฒ์ธ์ง๋ฅผ ์๋ณํ์ธ์. ์ด๋ ์ฌ๋ฐ๋ฅธ ํ๋ ์์ํฌ๋ฅผ ์ ํํ๊ณ ์ฝ๋๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ตฌ์ฑํ๋ ๋ฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค.
์์: ์น์ฌ์ดํธ ์ฝํ ์ธ ๋ฅผ ์์ ํ๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ฒฝ์ฐ, ์น ํ์ด์ง์ ์ฝ๋๋ฅผ ์ฃผ์ ํ๋ ์ฝํ ์ธ ์คํฌ๋ฆฝํธ, ์ธ๋ถ ์๋น์ค์์ ํต์ ์ ์ฒ๋ฆฌํ๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํฌ๋ฆฝํธ, ํ์ฅ ํ๋ก๊ทธ๋จ์ UI๋ฅผ ํ์ํ๋ ํ์ ์คํฌ๋ฆฝํธ๊ฐ ์์ ์ ์์ต๋๋ค.
๋ชจ๋์ ์ ๊ทผ ๋ฐฉ์ ์ฌ์ฉ
ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฝ๊ฒ ์ฌ์ฌ์ฉํ๊ณ ํ ์คํธํ ์ ์๋ ์๊ณ ๋ ๋ฆฝ์ ์ธ ๋ชจ๋๋ก ๋๋์ธ์. ์ด๋ ์ฝ๋ ๊ตฌ์ฑ์ ๊ฐ์ ํ๊ณ , ์ฝ๋ ์ค๋ณต์ ์ค์ด๋ฉฐ, ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ ์ฝ๊ฒ ์ ์ง๋ณด์ํ๊ณ ์ ๋ฐ์ดํธํ ์ ์๊ฒ ํฉ๋๋ค.
์์: ์ฌ์ฉ์ ์ค์ ๊ด๋ฆฌ, API ์ํธ ์์ฉ, DOM ์์ ์กฐ์๊ณผ ๊ฐ์ ๋ค์ํ ์์ ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋ณ๋์ ๋ชจ๋์ ๋ง๋์ธ์.
๊ฒฌ๊ณ ํ ์ค๋ฅ ์ฒ๋ฆฌ ๊ตฌํ
์ ์ฌ์ ์ธ ์ค๋ฅ๋ฅผ ์์ํ๊ณ ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ถฉ๋ํ๊ฑฐ๋ ์ค์๋ํ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ฒฌ๊ณ ํ ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ์ธ์. try-catch ๋ธ๋ก์ ์ฌ์ฉํ์ฌ ์์ธ๋ฅผ ์ก๊ณ ์ฝ์์ ์ค๋ฅ๋ฅผ ๊ธฐ๋กํ์ธ์. ์ฌ์ฉ์์๊ฒ ์ ๋ณด ์ ๊ณต์ ์ธ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์ ๊ณตํ์ฌ ๋ฌด์์ด ์๋ชป๋์๋์ง ์ดํดํ๋๋ก ๋์ต๋๋ค.
์์: API ์์ฒญ ์, ์ ์ฌ์ ์ธ ๋คํธ์ํฌ ์ค๋ฅ๋ ์๋ชป๋ ์๋ต์ ์ ์์ ์ผ๋ก ์ฒ๋ฆฌํ์ธ์. ์์ฒญ์ด ์คํจํ๋ฉด ์ฌ์ฉ์์๊ฒ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ํ์ํ์ธ์.
๋ณด์ ์ฐ์ ์
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ ๋ ๋ณด์์ ๊ฐ์ฅ ์ค์ํฉ๋๋ค. ์ฌ์ฉ์๋ฅผ ์ ์ฑ ์ฝ๋์ ์ทจ์ฝ์ ์ผ๋ก๋ถํฐ ๋ณดํธํ๊ธฐ ์ํด ๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด์ธ์. ์ฌ์ฉ์ ์ ๋ ฅ์ ์ ํจ์ฑ ๊ฒ์ฌํ๊ณ , ์ถ๋ ฅ์ ์๋ํ์ด์ฆํ๋ฉฐ, ์๊ฒฉํ ์ฝํ ์ธ ๋ณด์ ์ ์ฑ ์ ์ ์ฉํ์ธ์.
์์: ํ์ฅ ํ๋ก๊ทธ๋จ์ UI์ ํ์ํ๊ธฐ ์ ์ ํญ์ ์ฌ์ฉ์ ์ ๋ ฅ์ ์๋ํ์ด์ฆํ์ฌ XSS ๊ณต๊ฒฉ์ ๋ฐฉ์งํ์ธ์. ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ก์ธ์คํ ์ ์๋ ๋ฆฌ์์ค๋ฅผ ์ ํํ๊ธฐ ์ํด CSP๋ฅผ ์ฌ์ฉํ์ธ์.
์ฑ๋ฅ ์ต์ ํ
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ํนํ ์ต์ ํ๊ฐ ์ ๋๋ก ๋์ง ์์ ๊ฒฝ์ฐ ๋ธ๋ผ์ฐ์ ์ฑ๋ฅ์ ์ํฅ์ ์ค ์ ์์ต๋๋ค. ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์คํํ๋ ์ฝ๋์ ์์ ์ต์ํํ๊ณ , ๋ฉ์ธ ์ค๋ ๋๋ฅผ ์ฐจ๋จํ์ง ์์ผ๋ฉฐ, ํจ์จ์ ์ธ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ธ์.
์์: ์ฅ์๊ฐ ์คํ๋๋ ์์ ์ ์ํํ ๋ ๋ฉ์ธ ์ค๋ ๋๋ฅผ ์ฐจ๋จํ์ง ์๋๋ก ๋น๋๊ธฐ ์์ ์ ์ฌ์ฉํ์ธ์. ์์ฃผ ์ก์ธ์คํ๋ ๋ฐ์ดํฐ๋ฅผ ์บ์ํ์ฌ API ์์ฒญ ํ์๋ฅผ ์ค์ด์ธ์.
์ฒ ์ ํ ํ ์คํธ
ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๊ณ ๋ฒ๊ทธ๋ ํธํ์ฑ ๋ฌธ์ ๋ฅผ ์ผ์ผํค์ง ์๋์ง ํ์ธํ๊ธฐ ์ํด ๋ค์ํ ๋ธ๋ผ์ฐ์ ์ ํ๋ซํผ์์ ์ฒ ์ ํ๊ฒ ํ ์คํธํ์ธ์. ์๋ํ๋ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ ์คํธ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ์ธ์.
์์: Mocha ๋๋ Jest์ ๊ฐ์ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ฅ ํ๋ก๊ทธ๋จ ๋ชจ๋์ ๋ํ ๋จ์ ํ ์คํธ๋ฅผ ์์ฑํ์ธ์. ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ค์ํ ๊ตฌ์ฑ ์์๊ฐ ํจ๊ป ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋์ง ํ์ธํ๊ธฐ ์ํด ํตํฉ ํ ์คํธ๋ฅผ ์คํํ์ธ์.
์ฌ์ฉ์ ๊ฐ์ธ์ ๋ณด ๋ณดํธ ์กด์ค
ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์์งํ๋ ๋ฐ์ดํฐ์ ์ฌ์ฉ ๋ฐฉ์์ ๋ํด ํฌ๋ช ํ๊ฒ ๊ณต๊ฐํ์ธ์. ๊ฐ์ธ ์ ๋ณด๋ฅผ ์์งํ๊ธฐ ์ ์ ์ฌ์ฉ์ ๋์๋ฅผ ์ป์ผ์ธ์. ์ ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๊ฐ์ธ์ ๋ณด ๋ณดํธ ๊ท์ ์ ์ค์ํ์ธ์.
์์: ํ์ฅ ํ๋ก๊ทธ๋จ ์ค๋ช ์ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ๋ช ํํ๊ฒ ๋ช ์ํ์ธ์. ์ฌ์ฉ์์๊ฒ ๋ฐ์ดํฐ ์์ง์ ๊ฑฐ๋ถํ ์ ์๋ ์ต์ ์ ์ ๊ณตํ์ธ์.
๊ณ ๊ธ ๊ธฐ์
๊ธฐ๋ณธ ์ฌํญ์ ํ์คํ ์ดํดํ๋ค๋ฉด, ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ ๋ฅ๋ ฅ์ ๋์ฑ ํฅ์์ํค๊ธฐ ์ํด ๋ ๊ณ ๊ธ ๊ธฐ์ ์ ํ์ํ ์ ์์ต๋๋ค.
ํจ๊ณผ์ ์ธ ๋ฉ์์ง ์ ๋ฌ ์ฌ์ฉ
๋ฉ์์ง ์ ๋ฌ์ ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์ ์ค์ํ ์ธก๋ฉด์ผ๋ก, ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ค๋ฅธ ๋ถ๋ถ(์ฝํ ์ธ ์คํฌ๋ฆฝํธ, ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํฌ๋ฆฝํธ, ํ์ ์คํฌ๋ฆฝํธ) ๊ฐ์ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ๋ฉ์์ง ์ ๋ฌ์ ๋ง์คํฐํ๋ ๊ฒ์ ๋ณต์กํ๊ณ ์ํธ ์์ฉ์ ์ธ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ๋ ๋ฐ ํต์ฌ์ ๋๋ค.
์์: ์ปจํ ์คํธ ๋ฉ๋ด ์์ ์ ๊ตฌํํ์ฌ ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํฌ๋ฆฝํธ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ด ํน์ ์์ (์: ์ฝ๊ธฐ ๋ชฉ๋ก์ ๋งํฌ ์ ์ฅ ๋๋ ์ ํํ ํ ์คํธ ๋ฒ์ญ)์ ์ํํ๋๋ก ํฉ๋๋ค.
OAuth ์ธ์ฆ ๊ตฌํ
ํ์ฅ ํ๋ก๊ทธ๋จ์ด ํ์ฌ ์๋น์ค์ ์ฌ์ฉ์ ๋ฐ์ดํฐ์ ์ก์ธ์คํด์ผ ํ๋ ๊ฒฝ์ฐ, OAuth ์ธ์ฆ์ ๊ตฌํํด์ผ ํ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ด๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋์ ํ์ฌ ์ฌ์ฉ์์ ๋ฐ์ดํฐ์ ์ก์ธ์คํ๊ธฐ ์ํ ์ฌ์ฉ์ ์น์ธ์ ์ป๋ ๊ฒ์ ํฌํจํฉ๋๋ค.
์์: ์ฌ์ฉ์๊ฐ Google Drive ๊ณ์ ์ ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฐ๊ฒฐํ์ฌ ๋ธ๋ผ์ฐ์ ์์ ์ง์ ํ์ผ์ ์ ์ฅํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ฅผ ์ํด์๋ Google OAuth 2.0 ํ๋ฆ์ ๊ตฌํํด์ผ ํฉ๋๋ค.
๋ค์ดํฐ๋ธ ๋ฉ์์ง ํ์ฉ
๋ค์ดํฐ๋ธ ๋ฉ์์ง์ ์ฌ์ฉํ๋ฉด ํ์ฅ ํ๋ก๊ทธ๋จ์ด ์ฌ์ฉ์์ ์ปดํจํฐ์ ์ค์น๋ ๋ค์ดํฐ๋ธ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ํต์ ํ ์ ์์ต๋๋ค. ์ด๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ธฐ์กด ๋ฐ์คํฌํฑ ์ํํธ์จ์ด๋ ํ๋์จ์ด์ ํตํฉํ๋ ๋ฐ ์ ์ฉํ ์ ์์ต๋๋ค.
์์: ๋น๋ฐ๋ฒํธ ๊ด๋ฆฌ์์ ํตํฉํ์ฌ ์น ํ์ด์ง์์ ๋ก๊ทธ์ธ ์๊ฒฉ ์ฆ๋ช ์ ์๋์ผ๋ก ์ฑ์ฐ๋ ํ์ฅ ํ๋ก๊ทธ๋จ. ์ด๋ฅผ ์ํด์๋ ํ์ฅ ํ๋ก๊ทธ๋จ๊ณผ ๋น๋ฐ๋ฒํธ ๊ด๋ฆฌ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ๋ค์ดํฐ๋ธ ๋ฉ์์ง ์ค์ ์ด ํ์ํฉ๋๋ค.
์ฝํ ์ธ ๋ณด์ ์ ์ฑ (CSP) ๋ฐ ๋ณด์ ๊ณ ๋ ค์ฌํญ
๊ฐ๋ ฅํ ์ฝํ ์ธ ๋ณด์ ์ ์ฑ (CSP)์ ์ดํดํ๊ณ ๊ตฌํํ๋ ๊ฒ์ ๊ต์ฐจ ์ฌ์ดํธ ์คํฌ๋ฆฝํ (XSS) ๊ณต๊ฒฉ๊ณผ ๊ฐ์ ๋ค์ํ ๋ณด์ ์ํ์ผ๋ก๋ถํฐ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๋ณดํธํ๋ ๋ฐ ํ์์ ์ ๋๋ค. CSP๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ด ๋ฆฌ์์ค๋ฅผ ๋ก๋ํ ์ ์๋ ์์ค๋ฅผ ์ ์ํ์ฌ ์ ๋ขฐํ ์ ์๋ ์์ค๋ก๋ถํฐ์ ์ ์ฑ ์ฝ๋ ์คํ์ ๋ฐฉ์งํฉ๋๋ค.
๊ฒฐ๋ก
๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ์ ์ํ ๊ท์คํ ์ธํ๋ผ๋ฅผ ์ ๊ณตํ์ฌ ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ์์ฑ์ ๋จ์ํํ๊ณ ์ฝ๋ ํ์ง์ ํฅ์์ํต๋๋ค. ์ฌ๋ฐ๋ฅธ ํ๋ ์์ํฌ๋ฅผ ์ ํํ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๋ฉด ์ ์ธ๊ณ ์ฌ์ฉ์์ ๋ธ๋ผ์ฐ์ง ๊ฒฝํ์ ํฅ์์ํค๋ ๊ฐ๋ ฅํ๊ณ ์์ ํ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ๊ฐ๋จํ ์ ํธ๋ฆฌํฐ ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ๋ ๋ณต์กํ ์์ฐ์ฑ ๋๊ตฌ๋ฅผ ๊ตฌ์ถํ๋ , ๋ธ๋ผ์ฐ์ ํ์ฅ ํ๋ก๊ทธ๋จ ํ๋ ์์ํฌ๋ ๋ชฉํ๋ฅผ ๋ ํจ์จ์ ์ด๊ณ ํจ๊ณผ์ ์ผ๋ก ๋ฌ์ฑํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.