๐ PassGenerate.com ์ํฐํ๋ผ์ด์ฆ๊ธ ๋ณด์ ์์คํ
PassGenerate์ ๋จ์ํ ๋น๋ฐ๋ฒํธ ์์ฑ๊ธฐ๊ฐ ์๋๋ผ ์ํฐํ๋ผ์ด์ฆ๊ธ ๋ณด์ ์ํคํ ์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ๋๊ตฌ์ ๋๋ค.
๐
๐
๐ ์ํธํ ๋ณด์ ๋์ ์์ฑ
ํต์ฌ ๊ธฐ์ : crypto.getRandomValues()
๋ธ๋ผ์ฐ์ ๋ด์ฅ ์ํธํ์ ์ผ๋ก ์์ ํ ๋์ ์์ฑ๊ธฐ ์ฌ์ฉ, FIPS 140-2 ํ์ค ์ค์.
๋ธ๋ผ์ฐ์ ๋ด์ฅ ์ํธํ์ ์ผ๋ก ์์ ํ ๋์ ์์ฑ๊ธฐ ์ฌ์ฉ, FIPS 140-2 ํ์ค ์ค์.
- โ์ํธํ ์์ค ๋ณด์ (Math.random() ์๋)
- โFIPS 140-2 ์ํธํ ๋ชจ๋ ํ์ค ์ค์
- โ์์ธก ๊ณต๊ฒฉ์ ์ ํญ์ฑ, ์ง์ ํ ์ํธ๋กํผ ์์ค
๐ก๏ธ
๐ก๏ธ ์ฝํ ์ธ ๋ณด์ ์ ์ฑ (CSP)
์๊ฒฉํ HTTP ๋ณด์ ํค๋ ๊ตฌ์ฑ์ ํตํด ์
์ฑ ์ธ์ ์
์ ์ฐจ๋จํฉ๋๋ค.
- โXSS ๊ณต๊ฒฉ ๋ฐฉ์ด
- โ์ฝ๋ ์ฃผ์ ๋ฐ ์ธ๋ถ ๋ฆฌ์์ค ๋จ์ฉ ์ฐจ๋จ
- โ์์ ํ ์ ์ก์ ์ํ HTTPS ๊ฐ์
๐
๐ GDPR ๊ฐ์ธ์ ๋ณด๋ณดํธ ๊ด๋ฆฌ
์์ ํ ๊ฐ์ธ์ ๋ณด๋ณดํธ ์ค์ ์์คํ
๋ด์ฅ, ์ฌ์ฉ์ ๋ฐ์ดํฐ ๋ฒ์ ๋ณดํธ.
- โGDPR ์ 6/7/13์กฐ ์๊ตฌ์ฌํญ ์ค์
- โ์ฌ์ฉ์ ๊ถ๋ฆฌ: ๋์ ์ฒ ํ, ๋ฐ์ดํฐ ์ญ์ ๋ฑ
- โ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ํฌ๋ช ํ ์ค๋ช
๐ข
๐ข ๋ฐ์ดํฐ ๋ณด์ ์ํคํ ์ฒ
์ ๋ก ๋ฐ์ดํฐ ์ ์ฅ ์ ๋ต์ ์ฑํํฉ๋๋ค.
- โ๋ก์ปฌ ๊ณ์ฐ, ๋น๋ฐ๋ฒํธ๊ฐ ๊ธฐ๊ธฐ๋ฅผ ๋ ๋์ง ์์
- โ์๋ฒ์ ๋ฐ์ดํฐ ์ ์ฅ ์์
- โํ์ด์ง ๋ซ์ผ๋ฉด ๋ฐ์ดํฐ ์๋ฉธ
๐ง ๊ธฐ์ ๊ตฌํ ์ธ๋ถ์ฌํญ
์ํธํ ๋ณด์ ๋์ ์์ฑ
// // ์ํธํ ๋ณด์ ๋์ ์์ฑ๊ธฐ ์ฌ์ฉ
const array = new Uint8Array(length);
crypto.getRandomValues(array);
const array = new Uint8Array(length);
crypto.getRandomValues(array);
์ฝํ ์ธ ๋ณด์ ์ ์ฑ
<!-- // ํ์ํ ์ฟ ํค -->
<meta http-equiv="Content-Security-Policy" ... >
<meta http-equiv="Content-Security-Policy" ... >
๐ ๊ธฐ์ ๊ธ ์ธ์ฆ ๋น๊ต (PassGenerate๊ณผ ์ ๊ณ ํ์ค์ ์ข ํฉ ๋น๊ต)
| ๋ณด์ ๊ธฐ๋ฅ | PassGenerate | ์ผ๋ฐ ์ ๊ณ |
|---|---|---|
| ๋์ ์์ฑ | ์ํธํ ์์ค โ | Math.random() โ ๏ธ |
| ๋ฐ์ดํฐ ์ ์ฅ | ๋ก์ปฌ ์ ๋ก ์ ์ฅ โ | ์๋ฒ ์ ์ฅ โ ๏ธ |
| ๊ฐ์ธ์ ๋ณด ์ค์ | ์์ GDPR โ | ๊ธฐ๋ณธ ์ฟ ํค โ ๏ธ |
| ๋ณด์ ํค๋ | ์์ CSP โ | ๋ถ๋ถ ๊ตฌ์ฑ โ ๏ธ |
๐ ์ปดํ๋ผ์ด์ธ์ค ์ธ์ฆ
GDPR ์ค์
EU ์ผ๋ฐ ๋ฐ์ดํฐ ๋ณดํธ ๊ท์
FIPS 140-2
์ฐ๋ฐฉ ์ ๋ณด ์ฒ๋ฆฌ ํ์ค
OWASP
์น ์ ํ๋ฆฌ์ผ์ด์
๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก
CSP ๋ ๋ฒจ 3
์ฝํ
์ธ ๋ณด์ ์ ์ฑ
๐ฏ ์์ฝ
PassGenerate์ ์ํฐํ๋ผ์ด์ฆ๊ธ ๋ณด์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
๐
์ํธํ ์์ค ๋ณด์
์ํธํ ๋์
๐ก๏ธ
๋ค์ธต ๋ณดํธ
CSP + HTTPS + ์ ๋ก ์คํ ๋ฆฌ์ง
๐
์์ ํ GDPR ์ค์
๋ฒ์ ๋ณดํธ
๐
๊ฐ์ฌ ๊ฐ๋ฅํ๊ณ ํฌ๋ช
์คํ ์์ค
๐ข
์ํ/๊ธ์ต ์
๊ณ ํ์ค
์ํฐํ๋ผ์ด์ฆ๊ธ ์ ๋ขฐ์ฑ