๐ก ํต์ฌ ์ธ์ฌ์ดํธ
CRC์์ ๋๋์ ์ ํ ๋ ์ฐ์ด๋ '์์ฑ ๋คํญ์(Generator Polynomial)'์ ์๋ฌด ์ซ์๋ ๋์ถฉ ๋ง๋ ๊ฒ์ด ์๋๋๋ค.
์ ์ธ๊ณ์ ์ํ์์ ๊ตญ์ ํ์ค ๊ธฐ๊ตฌ๋ค์ด ์์ต ๋ฒ์ ์๋ฎฌ๋ ์ด์ ์ ํตํด "์ด๋ค ์๋ฌ๋ ๊ฐ์ฅ ๊ธฐ๊ฐ ๋งํ๊ฒ ์ ๊ฑธ๋ฌ๋ด๋ ๋ง๋ฒ์ ๋คํญ์"๋ค์ ์ฐพ์๋ด์ด ์ฉ๋๋ณ๋ก ํ์คํํด ๋ ๊ฒ์ด ๋ฐ๋ก CRC-16, CRC-32 ๋ฑ์ ๋๋ค.
โ . ์์ฑ ๋คํญ์์ ์ ํ ๊ธฐ์ค
๋๋๋ ์(์ ์)๋ฅผ ๋ฌด์์ผ๋ก ํ๋๋์ ๋ฐ๋ผ ์๋ฌ ๊ฒ์ถ ํ๋ฅ ์ด ๊ทน๋ช ํ๊ฒ ๋ฌ๋ผ์ง๋๋ค. ์ข์ ์์ฑ ๋คํญ์์ ๋ค์์ ์ํ์ ์กฐ๊ฑด์ ๋ฐ๋์ ๋ง์กฑํด์ผ ํฉ๋๋ค.
- ๋คํญ์์ ๋์๋ ๋ฐ๋์
+ 1(์์ํญ)์ด ์์ด์ผ ํฉ๋๋ค. ๊ทธ๋์ผ ๋จ์ผ ๋นํธ ์๋ฌ๋ฅผ ๋ฌด์กฐ๊ฑด ๋ค ์ก์ต๋๋ค. - ๋ฒ์คํธ ์๋ฌ(์ฐ์ ์๋ฌ)๋ฅผ ์ก์ผ๋ ค๋ฉด ๋คํญ์์ด ์ถฉ๋ถํ ๊ธธ๊ณ ์ฌ๋ฌ ํญ์ด ์์ฌ ์์ด์ผ ํฉ๋๋ค.
โ ก. ๋ํ์ ์ธ CRC ๊ตญ์ ํ์ค 3๋์ฅ
๋คํธ์ํฌ ์ฅ๋น๋ ํ๋กํ ์ฝ์ ๋ฐ๋ผ ์ฌ์ฉํ๋ ํฑ๋๋ฐํด(๋คํญ์) ๊ท๊ฒฉ์ด ๋ค๋ฆ ๋๋ค.
1. CRC-16 (IBM ํ์ค)
- ๋คํญ์: $x^{16} + x^{15} + x^2 + 1$ (์ด์ง์:
11000000000000101) - FCS ๊ผฌ๋ฆฌ ๊ธธ์ด: 16๋นํธ (2๋ฐ์ดํธ)
- ์ฉ๋: ๊ณผ๊ฑฐ USB๋ ๋ธ๋ฃจํฌ์ค, ์ด๊ธฐ ๋ชจ๋ ํต์ (SDLC ํ๋กํ ์ฝ) ๋ฑ์์ ์งง์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ๋ ์ฐ์์ต๋๋ค.
2. CRC-CCITT (์ ๋ฝ ํต์ ํ์ค)
- ๋คํญ์: $x^{16} + x^{12} + x^5 + 1$
- FCS ๊ผฌ๋ฆฌ ๊ธธ์ด: 16๋นํธ (2๋ฐ์ดํธ)
- ์ฉ๋: ์ CRC-16๊ณผ ๊ธธ์ด๋ ๊ฐ์ง๋ง ํญ์ ์์น๊ฐ ๋ค๋ฆ ๋๋ค. HDLC(๊ณ ์ ๋ฐ์ดํฐ ๋งํฌ ์ ์ด) ํ๋กํ ์ฝ, X.25, ๊ทธ๋ฆฌ๊ณ ํ๋กํผ ๋์คํฌ ์์ ์ ํ์ผ ์ ์ก ์๋ฌ ๊ฒ์ฌ์ ์ฃผ๋ก ์ฐ์์ต๋๋ค.
3. CRC-32 (IEEE 802 ํ์ค / Ethernet์ ์ง๋ฐฐ์) โ
- ๋คํญ์: $x^{32} + x^{26} + x^{23} + x^{22} + x^{16} + x^{12} + x^{11} + x^{10} + x^8 + x^7 + x^5 + x^4 + x^2 + x + 1$
- FCS ๊ผฌ๋ฆฌ ๊ธธ์ด: 32๋นํธ (4๋ฐ์ดํธ)
- ์ฉ๋: ํ์ฌ ์ฐ๋ฆฌ๊ฐ ์ฐ๋ LAN ์ (์ด๋๋ท MAC ํ๋ ์), ์์ดํ์ด(Wi-Fi 802.11), ์์ถ ํ๋ก๊ทธ๋จ(ZIP, RAR), PNG ์ด๋ฏธ์ง ํ์ผ ํฌ๋งท ๋ฑ ๊ฑฐ๋ํ๊ณ ๋ฐฉ๋ํ ๋ฐ์ดํฐ๋ฅผ ์๋ฌ ์์ด ์ง์ผ๋ด๋ ์ ๋์ ์ธ ๊ธ๋ก๋ฒ ํ์ค์ ๋๋ค. ์ด ๋คํญ์์ ๋ซ๊ณ ์๋ฌ๊ฐ ์ ์์ผ๋ก ์์ฅํ ํ๋ฅ ์ ๊ฑฐ์ 0%์ ์๋ ดํฉ๋๋ค.
๐ข ์น์ ์์ฝ ๋น์ : CRC ๋คํญ์์ ์๋ฌผ์ ๋ฅผ ๋ฐ๋ **'๋ง์คํฐํค์ ํฑ๋๋ฐํด ๋ชจ์'**์ ๋๋ค. CRC-16์ด ๋๋ค ์์ ๊ฑฐ ์๋ฌผ์ ๋ฅผ ์งํค๋ ์งง๊ณ ๋ฌ์ฑ๋ฌ์ฑํ 16์นธ์ง๋ฆฌ ์ด์ ๋ผ๋ฉด, CRC-32๋ ์ํ ๊ธ๊ณ ๋ฅผ ์งํค๋ 32์นธ์ง๋ฆฌ ์์ฒญ๋๊ฒ ์ ๋ฐํ๊ณ ๋ณต์กํ ํน์ ์ด์ ์ ๋๋ค. ์ด 32๊ฐ์ ํฑ๋๋ฐํด์ ๋ฑ ๋ค์ด๋ง๊ฒ ์๋ฌ๊ฐ ์ฐ์ฐํ ์๊ธธ ํ๋ฅ ์ ๋ก๋๋ฅผ ์ฐ์ 2๋ฒ ๋ง๋ ๊ฒ๋ณด๋ค ์ด๋ ต์ต๋๋ค.