[์ด ๊ธฐ๋ฅ์ ๋ผ์ด์ ์ค ๋ฒ์ ๊ธฐ๋ฅ์
๋๋ค]
๋ผ์ด์ ์ค๊ฐ ํ์ํ ๋ถ์ [ํ๋ก๊ทธ๋จ ํค ๋ฐ๊ธ] ํ์ด์ง์์ 30์ผ ๋ผ์ด์ ์ค ๋ฐ๊ธ ๊ฐ๋ฅํฉ๋๋ค
RSA ๊ธฐ์ ์์ ์ํธํ ์ฐ์ฐ์๋ ์์ฃผ ํฐ ์ซ์ ์ฐ์ฐ ๋ฐ ๋ชจ๋๋ผ ์ฐ์ฐ์ด ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
์ด ์ฐ์ฐ์ ํ๊ธฐ ์ํด์ BerEditor ๋ฉ๋ด์์ BN Calculator ๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค.
๊ณ์ฐ๊ธฐ์์ ์ง์ ํ๋ Base Group ์์ ์ฐ์ฐ ๋ฐฉ์์ 3๊ฐ์ง ์ด๋ค.
- Number : ์ผ๋ฐ ์ ์ ์ฐ์ฐ
- Modular : ๋ชจ๋๋ผ๋ฅผ ์ด์ฉํ ์ฐ์ฐ
- GF2m : ๊ฐ๋ฃจ์ ํ๋๋ฅผ ์ด์ฉํ GF(2^m) ์ฐ์ฐ
์ด๋ ๊ฒ 3๊ฐ์ง ๋ฉ๋ด๊ฐ ์๋ค.
์ฌ๊ธฐ์ RSA ํค์์ ๋ง๋๋๊ฒ์ Number์ Modular ๋ฐฉ์์ ์ฌ์ฉํ๋ค.
๊ทธ๋ฆฌ๊ณ ํ
์คํธ๋ก ์ฌ์ฉํ๋ ์ซ์ ๊ฐ์ ํฅ์ฌ ํ๊ธฐ์ด๋ค.
๊ณ์ฐ๊ธฐ์์ ์ ๋ ฅ๊ฐ์ ๊ธธ์ด(์ค๋ฅธ์ชฝ ์ฝ๊ธฐ ํ์)๋ ๋จ์ ๋ฌธ์์ ๊ฐ์์ด๋ค.
๋ณดํต RSA ํค ์์ ๋๊ฐ์ ํฐ ์์ P์ Q ๋ฅผ ๋ง๋ค๊ณ ์ด ๊ฐ์ ๊ฐ์ง๊ณ ๊ฐ์ธํค์ ๊ณต๊ฐํค๋ฅผ ์ป์ ์ ์๋ค.
์ฆ ํฐ ์์ P ์ Q๋ฅผ ๋
ธ์ถ์ ๊ณง ๊ฐ์ธํค๋ฅผ ๋
ธ์ถ๋๋ ๊ฒ์ผ๋ก ๋ณด๋ฉด ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ณต๊ฐ๋ก PublicExponent ๋ e = 010001 ( 10์ง์ 65537) ์ ์ฌ์ฉํ๋ค.
์ฌ๊ธฐ ์์ ์์๋ ์ดํด๋ฅผ ์ํด ์งง์ ํค ๊ธธ์ด P์Q 256 ๋นํธ๋ฅผ ์ฌ์ฉํ๋ค.
์ฆ P์Q๊ฐ 256 ๋นํธ๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ P*Q ์ ๊ฒฐ๊ณผ์ธ N์ด 512๋นํธ๊ฐ ๋์ด์ RSA 512 ๋นํธ ํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.
ํฐ ์์ P์ Q ์์ฑ ๋ฐ ๊ณต๊ฐํค ๊ตฌํ๊ธฐ
- A : P ์์ ์์ฑ ๊ฐ
- B : Q ์์ ์์ฑ ๊ฐ
- A x B ๋ฒํผ : N๊ฐ ๊ตฌํ๊ธฐ
๊ทธ๋ผ N ๊ฐ์ ๋ง๋ค๊ธฐ ์ํด์๋ P * Q ์ด๋ฏ๋ก A * B ๋ฒํผ์ ๋๋ฌ ์ฃผ์
์์ฑ๋ ๊ฐ
P (A ๊ฐ) = D957E9E5E313B9E6EF0A112875037F227015BF81D235C61316E0F1CA10E5DFFD
Q (B ๊ฐ) = C5C989AF683037D7D8D40BD1C47D2DAB5BFBF5B55CC5423E73804AC036C4B65B
N ( Result ๊ฐ ) = A7EBC1E984F70A21D8C3B8298D67B56CF10B796531FDBC8C096A0E97EFB33893FCF08CAFC79A3389B010F68447AC8A86D55BFB211FB5E28A90C827D64AA87CEF
์ฌ๊ธฐ์ ๊ณ์ฐ๋ ( e, N ) ๊ฐ์ด RSA ๊ณต๊ฐํค ๊ฐ์ด ๋๋ค.
๋ง์ฝ ์ด๋ฏธ ๋ง๋ค์ด์ง P์ Q๊ฐ์ ์ด์ฉ์๋ A์ B์์ญ์ ๋ณต์ฌํด์ ๋ฃ์ด ์ฃผ์ด๋ ๋๋ค.
RSA ๊ฐ์ธํค๋ฅผ ๊ตฌํด ๋ณด์
๊ฐ์ธํค๋ฅผ ๊ตฌํ๋ ๊ณต์์ ๋ค์๊ณผ ๊ฐ๋ค
$$ d ≡e^{-1} \, mod \, ๐(n) $$
๋จผ์ ๊ฐ์ธํค๋ฅผ ๊ตฌํ๊ธฐ ์ํด์ ฯ(n)=(p−1)×(q−1) ๊ฐ์ ๊ตฌํ์
์ฐธ๊ณ ๋ก ์ค์ 2048 Bits ์ด์์ ๊ฐ์ธํค๋ฅผ ๊ตฌํ๋ ๊ณต์์ FIPS-186-4 ์์๋ ์๋ ๊ณต์์ ์ฌ์ฉํด์ผ ํ๋ค.
$$ d ≡e^{-1} \, mod \, LCM(p-1, q-1) $$
์ฌ๊ธฐ์๋ ์์ ๋ก ์์ ๋ฐฉ์์ ์ฌ์ฉํ์๋ค.
- A ๊ฐ์์ -1 ๋ฒํผ ์ ๋๋ฅด๋ฉด (p-1) ๊ณ์ฐ
- B ๊ฐ์์ -1 ๋ฒํผ ๋๋ฅธ๋ฉด (q-1) ๊ณ์ฐ
- A x B ํด๋ฆญ : ฯ(n) ๊ฐ์ ๊ตฌํ๊ฒ ๋๋ค.
(P-1) = D957E9E5E313B9E6EF0A112875037F227015BF81D235C61316E0F1CA10E5DFFC
(Q-1) = C5C989AF683037D7D8D40BD1C47D2DAB5BFBF5B55CC5423E73804AC036C4B65A
ฯ(n) ๊ฒฐ๊ณผ๊ฐ = A7EBC1E984F70A21D8C3B8298D67B56CF10B796531FDBC8C096A0E97EFB338925DCF191A7C5641CAE832D98A0E2BDDB9094A45E9F0BADA390666EB4C02FDE698
๊ฐ์ธํค d ๊ฐ์ ๊ตฌํ๊ธฐ
์ ฯ(n) ๊ฐ์ M์ ์ ๋ ฅ ๊ทธ๋ฆฌ๊ณ A ์๋ e๊ฐ์ธ 010001 ์ ๋ ฅํ A^-1 Mod M ๋ฒํผ์ ํด๋ฆญ ํ๋ฉด ๊ฐ์ธํค d ๊ฐ์ด ๋์จ๋ค.
E (A๊ฐ) = 010001 ( 10์ง์ 65537 )
ฯ(n) (M๊ฐ) = A7EBC1E984F70A21D8C3B8298D67B56CF10B796531FDBC8C096A0E97EFB338925DCF191A7C5641CAE832D98A0E2BDDB9094A45E9F0BADA390666EB4C02FDE698
d (๊ฒฐ๊ณผ๊ฐ) = 030E869C22A0809DB71D70F7C8AC2FA0490F0569B32C444764507AED871E83141F030B18F1547CA41DEFF707CD543D18063444EB8A474C7BA7432E5B56DE9A59
RSA ์ํธํ
์ํธํ ๊ณต์์ C = M^e mod N ์ด๋ค.
RSA ์ํธํ๋ ๊ณต๊ฐํค ๊ฐ๋ง์ผ๋ก ๋ง๋๋ ๊ฐ์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ์์ ์์ ๊ณต๊ฐํค๋ฅผ ์ด์ฉํด ์ํธํ ํ๋ค.
์์ ๋ก ์ฌ์ฉํ๋ ๋ฉ์ธ์ง๋ก ํฅ์ฌ ๊ฐ 12345678 ์ ์ฌ์ฉํด์ ์ํธํ ํด ๋ณด์
Message (A๊ฐ) = 12345678
e (B๊ฐ) = 010001
N ๊ฐ (M๊ฐ) = A7EBC1E984F70A21D8C3B8298D67B56CF10B796531FDBC8C096A0E97EFB33893FCF08CAFC79A3389B010F68447AC8A86D55BFB211FB5E28A90C827D64AA87CEF
Cipher๊ฐ (Result๊ฐ) = 50325882778093FD69C8A37D1B1FFCD8D60099D2DCEFBC3A6EADFF0EBD7B27320CAF505E81F8660C9534A49E2ECED3EC2EE928A7AC446FE5AA237CAEA0360F55
RSA ๋ณตํธํ
๋ณตํธํ ๊ณต์์ M = C^d mod N ์ด๋ค.
RSA ๋ณตํธํ๋ ๊ฐ์ธํค๋ฅผ ์ด์ฉํด ๋ณตํธํ ํ๊ฒ ๋๋ค.
๊ทธ๋ผ ์ํธ๋ฌธ์ ๊ฐ์ง๊ณ ์๋ฌธ์ ๊ตฌํด ๋ณด์.
Cipher (A๊ฐ) =50325882778093FD69C8A37D1B1FFCD8D60099D2DCEFBC3A6EADFF0EBD7B27320CAF505E81F8660C9534A49E2ECED3EC2EE928A7AC446FE5AA237CAEA0360F55
d (B๊ฐ) = 030E869C22A0809DB71D70F7C8AC2FA0490F0569B32C444764507AED871E83141F030B18F1547CA41DEFF707CD543D18063444EB8A474C7BA7432E5B56DE9A59
N ( M๊ฐ) = A7EBC1E984F70A21D8C3B8298D67B56CF10B796531FDBC8C096A0E97EFB33893FCF08CAFC79A3389B010F68447AC8A86D55BFB211FB5E28A90C827D64AA87CEF
Plain (๊ฒฐ๊ณผ๊ฐ) = 12345678
์ ๊ณต์๋๋ก ๊ฐ์ ๊ณ์ฐํ๊ฒ ๋๋ฉด ๊ฒฐ๊ณผ์ธ ์๋ฌธ 12345678 ์ ๊ตฌํ ์ ์๋ค.
๋ง๋ฌด๋ฆฌ
๋น
๋ ์ฐ์ฐ๊ธฐ๋ฅผ ์ด์ฉํ์ฌ ๊ฐ๋จํ RSA ํค ์์ ๋ง๋ค์ด ๋ณด์๋ค.
์ด๋ ๊ฒ ํฐ ์์ P ์ Q๋ฅผ ๊ฐ์ ์๊ฒ ๋๋ฉด ๊ฐ์ธํค์ ๊ณต๊ฐํค๋ฅผ ๊ตฌํด์ง๋ฏ๋ก p์ q๊ฐ์ ๊ฐ์ธํค์ ๊ฐ์ ๋
ธ์ถ ๋์ด์๋ ์๋๋ ๊ฐ์ด ๋๋ค.
์ฌ๊ธฐ์๋ ์ค๋ช
์ ์ํด 512 ๋นํธ์ ์งง์ ๊ธธ์ด๋ฅผ ์ฌ์ฉ ํ์์ง๋ง ์ค์ ์์๋ 2048 ๋นํธ๋ฅผ ์ฌ์ฉํ๋ค.
2048 ๋นํธ๋ก ํ
์คํธ ํ ๋ ค๋ฉด ์ ์ค๋ช
์์ ์์๊ฐ P์ Q์์ฑ ์ 1024 ๋นํธ๋ฅผ ์ ํ ํ์ฌ์ ๋๊ฐ์ด ํ๋ฉด๋๋ค.
'Manual > BerEditor' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BerEditor] ํด๋ผ์ด์ธํธ ๊ธฐ๋ฅ์ ๊ดํ์ฌ (0) | 2024.08.27 |
---|---|
[BerEditor] VID ์์ฑ ๋ฐ ๊ฒ์ฆ ํ๊ธฐ (0) | 2024.03.20 |
[BerEditor] ์ธ์ฆ์, CRL ๊ทธ๋ฆฌ๊ณ CSR ํ์ผ ์ ๋ณด ๋ณด๊ธฐ (0) | 2023.12.22 |
[BerEditor] SSL ๋๋ TLS ์๋ฒ ๊ฒ์ฆ ํ๊ธฐ (0) | 2023.12.21 |
[BerEditor] 2์ง์ 10์ง์ 16์ง์ ์ซ์ ๋ณํ (0) | 2023.11.16 |