Skip to main content
⚡ CRC Calc

CRC-32/MEF Calculator

CRC-32/MEF uses the Koopman polynomial in Metro Ethernet Forum specifications.

Polynomial
0x741B8CD7
Init
0xFFFFFFFF
Check (123456789)
0xD2C22F51
RefIn / RefOut
true / true

Calculate CRC-32/MEF

Input data and input type are stored in the URL so this calculation can be reopened or shared.

⚡ Online CRC Calculator & CRC Lookup Table Generator

Modbus, CCITT, XMODEM 등 표준 CRC 계산, 룩업 테이블(CRC Table) 배열 추출, 소스 코드 및 역산 툴

Engine Active

1. 입력 데이터 (Input Data / Binary File)

Text는 UTF-8 바이트로 변환됩니다.

Calculated result

CRC-32 / MEF

Calculated automatically from 9 input bytes.

CRC result

0xD2C22F51
Hexadecimal
0xD2C22F51
Decimal
3535941457
Binary
11010010110000100010111101010001

3. 파라미터 상세 분석 및 커스텀 조작

비트 폭 (Width)
폴리넘얼 (Hex)
초기값 (Init)
최종 XOR (XOR Out)
CRC-32 / MEF 결과 (Result)0xD2C22F51

5. CRC 역산 (Force CRC / Patch Finder)

원하는 최종 CRC 값이 나오도록 데이터 뒤에 채워야 할 패치 바이트(2바이트)를 역산합니다.

계산 대기 중...

4. 순수 룩업 테이블 전용 (CRC Lookup Table Generator)

완벽하게 정렬된 순수 CRC 8/16/32 테이블 배열 텍스트입니다.

복사 완료!
0x00000000, 0x9695C4CA, 0xFB4839C9, 0x6DDDFD03, 0x20F3C3CF, 0xB6660705, 0xDBBBFA06, 0x4D2E3ECC, 0x41E7879E, 0xD7724354, 0xBAAFBE57, 0x2C3A7A9D, 0x61144451, 0xF781809B, 0x9A5C7D98, 0x0CC9B952, 0x83CF0F3C, 0x155ACBF6, 0x788736F5, 0xEE12F23F, 0xA33CCCF3, 0x35A90839, 0x5874F53A, 0xCEE131F0, 0xC22888A2, 0x54BD4C68, 0x3960B16B, 0xAFF575A1, 0xE2DB4B6D, 0x744E8FA7, 0x199372A4, 0x8F06B66E, 0xD1FDAE25, 0x47686AEF, 0x2AB597EC, 0xBC205326, 0xF10E6DEA, 0x679BA920, 0x0A465423, 0x9CD390E9, 0x901A29BB, 0x068FED71, 0x6B521072, 0xFDC7D4B8, 0xB0E9EA74, 0x267C2EBE, 0x4BA1D3BD, 0xDD341777, 0x5232A119, 0xC4A765D3, 0xA97A98D0, 0x3FEF5C1A, 0x72C162D6, 0xE454A61C, 0x89895B1F, 0x1F1C9FD5, 0x13D52687, 0x8540E24D, 0xE89D1F4E, 0x7E08DB84, 0x3326E548, 0xA5B32182, 0xC86EDC81, 0x5EFB184B, 0x7598EC17, 0xE30D28DD, 0x8ED0D5DE, 0x18451114, 0x556B2FD8, 0xC3FEEB12, 0xAE231611, 0x38B6D2DB, 0x347F6B89, 0xA2EAAF43, 0xCF375240, 0x59A2968A, 0x148CA846, 0x82196C8C, 0xEFC4918F, 0x79515545, 0xF657E32B, 0x60C227E1, 0x0D1FDAE2, 0x9B8A1E28, 0xD6A420E4, 0x4031E42E, 0x2DEC192D, 0xBB79DDE7, 0xB7B064B5, 0x2125A07F, 0x4CF85D7C, 0xDA6D99B6, 0x9743A77A, 0x01D663B0, 0x6C0B9EB3, 0xFA9E5A79, 0xA4654232, 0x32F086F8, 0x5F2D7BFB, 0xC9B8BF31, 0x849681FD, 0x12034537, 0x7FDEB834, 0xE94B7CFE, 0xE582C5AC, 0x73170166, 0x1ECAFC65, 0x885F38AF, 0xC5710663, 0x53E4C2A9, 0x3E393FAA, 0xA8ACFB60, 0x27AA4D0E, 0xB13F89C4, 0xDCE274C7, 0x4A77B00D, 0x07598EC1, 0x91CC4A0B, 0xFC11B708, 0x6A8473C2, 0x664DCA90, 0xF0D80E5A, 0x9D05F359, 0x0B903793, 0x46BE095F, 0xD02BCD95, 0xBDF63096, 0x2B63F45C, 0xEB31D82E, 0x7DA41CE4, 0x1079E1E7, 0x86EC252D, 0xCBC21BE1, 0x5D57DF2B, 0x308A2228, 0xA61FE6E2, 0xAAD65FB0, 0x3C439B7A, 0x519E6679, 0xC70BA2B3, 0x8A259C7F, 0x1CB058B5, 0x716DA5B6, 0xE7F8617C, 0x68FED712, 0xFE6B13D8, 0x93B6EEDB, 0x05232A11, 0x480D14DD, 0xDE98D017, 0xB3452D14, 0x25D0E9DE, 0x2919508C, 0xBF8C9446, 0xD2516945, 0x44C4AD8F, 0x09EA9343, 0x9F7F5789, 0xF2A2AA8A, 0x64376E40, 0x3ACC760B, 0xAC59B2C1, 0xC1844FC2, 0x57118B08, 0x1A3FB5C4, 0x8CAA710E, 0xE1778C0D, 0x77E248C7, 0x7B2BF195, 0xEDBE355F, 0x8063C85C, 0x16F60C96, 0x5BD8325A, 0xCD4DF690, 0xA0900B93, 0x3605CF59, 0xB9037937, 0x2F96BDFD, 0x424B40FE, 0xD4DE8434, 0x99F0BAF8, 0x0F657E32, 0x62B88331, 0xF42D47FB, 0xF8E4FEA9, 0x6E713A63, 0x03ACC760, 0x953903AA, 0xD8173D66, 0x4E82F9AC, 0x235F04AF, 0xB5CAC065, 0x9EA93439, 0x083CF0F3, 0x65E10DF0, 0xF374C93A, 0xBE5AF7F6, 0x28CF333C, 0x4512CE3F, 0xD3870AF5, 0xDF4EB3A7, 0x49DB776D, 0x24068A6E, 0xB2934EA4, 0xFFBD7068, 0x6928B4A2, 0x04F549A1, 0x92608D6B, 0x1D663B05, 0x8BF3FFCF, 0xE62E02CC, 0x70BBC606, 0x3D95F8CA, 0xAB003C00, 0xC6DDC103, 0x504805C9, 0x5C81BC9B, 0xCA147851, 0xA7C98552, 0x315C4198, 0x7C727F54, 0xEAE7BB9E, 0x873A469D, 0x11AF8257, 0x4F549A1C, 0xD9C15ED6, 0xB41CA3D5, 0x2289671F, 0x6FA759D3, 0xF9329D19, 0x94EF601A, 0x027AA4D0, 0x0EB31D82, 0x9826D948, 0xF5FB244B, 0x636EE081, 0x2E40DE4D, 0xB8D51A87, 0xD508E784, 0x439D234E, 0xCC9B9520, 0x5A0E51EA, 0x37D3ACE9, 0xA1466823, 0xEC6856EF, 0x7AFD9225, 0x17206F26, 0x81B5ABEC, 0x8D7C12BE, 0x1BE9D674, 0x76342B77, 0xE0A1EFBD, 0xAD8FD171, 0x3B1A15BB, 0x56C7E8B8, 0xC0522C72
Model: CRC-32 / MEFCRC Table & Lookup Array

6. 언어별 전체 함수 소스 코드 및 CRC Table (C Source)

CRC-32 / MEF
복사 완료!
/* * Model: CRC-32 / MEF (32-bit) * Poly: 0x741B8CD7, Init: 0xFFFFFFFF, XorOut: 0x00000000 * CRC Table C Source Code & Lookup Table Generator */ #include <stdint.h> #include <stddef.h> const uint32_t crc_table[256] = { 0x00000000, 0x9695C4CA, 0xFB4839C9, 0x6DDDFD03, 0x20F3C3CF, 0xB6660705, 0xDBBBFA06, 0x4D2E3ECC, 0x41E7879E, 0xD7724354, 0xBAAFBE57, 0x2C3A7A9D, 0x61144451, 0xF781809B, 0x9A5C7D98, 0x0CC9B952, 0x83CF0F3C, 0x155ACBF6, 0x788736F5, 0xEE12F23F, 0xA33CCCF3, 0x35A90839, 0x5874F53A, 0xCEE131F0, 0xC22888A2, 0x54BD4C68, 0x3960B16B, 0xAFF575A1, 0xE2DB4B6D, 0x744E8FA7, 0x199372A4, 0x8F06B66E, 0xD1FDAE25, 0x47686AEF, 0x2AB597EC, 0xBC205326, 0xF10E6DEA, 0x679BA920, 0x0A465423, 0x9CD390E9, 0x901A29BB, 0x068FED71, 0x6B521072, 0xFDC7D4B8, 0xB0E9EA74, 0x267C2EBE, 0x4BA1D3BD, 0xDD341777, 0x5232A119, 0xC4A765D3, 0xA97A98D0, 0x3FEF5C1A, 0x72C162D6, 0xE454A61C, 0x89895B1F, 0x1F1C9FD5, 0x13D52687, 0x8540E24D, 0xE89D1F4E, 0x7E08DB84, 0x3326E548, 0xA5B32182, 0xC86EDC81, 0x5EFB184B, 0x7598EC17, 0xE30D28DD, 0x8ED0D5DE, 0x18451114, 0x556B2FD8, 0xC3FEEB12, 0xAE231611, 0x38B6D2DB, 0x347F6B89, 0xA2EAAF43, 0xCF375240, 0x59A2968A, 0x148CA846, 0x82196C8C, 0xEFC4918F, 0x79515545, 0xF657E32B, 0x60C227E1, 0x0D1FDAE2, 0x9B8A1E28, 0xD6A420E4, 0x4031E42E, 0x2DEC192D, 0xBB79DDE7, 0xB7B064B5, 0x2125A07F, 0x4CF85D7C, 0xDA6D99B6, 0x9743A77A, 0x01D663B0, 0x6C0B9EB3, 0xFA9E5A79, 0xA4654232, 0x32F086F8, 0x5F2D7BFB, 0xC9B8BF31, 0x849681FD, 0x12034537, 0x7FDEB834, 0xE94B7CFE, 0xE582C5AC, 0x73170166, 0x1ECAFC65, 0x885F38AF, 0xC5710663, 0x53E4C2A9, 0x3E393FAA, 0xA8ACFB60, 0x27AA4D0E, 0xB13F89C4, 0xDCE274C7, 0x4A77B00D, 0x07598EC1, 0x91CC4A0B, 0xFC11B708, 0x6A8473C2, 0x664DCA90, 0xF0D80E5A, 0x9D05F359, 0x0B903793, 0x46BE095F, 0xD02BCD95, 0xBDF63096, 0x2B63F45C, 0xEB31D82E, 0x7DA41CE4, 0x1079E1E7, 0x86EC252D, 0xCBC21BE1, 0x5D57DF2B, 0x308A2228, 0xA61FE6E2, 0xAAD65FB0, 0x3C439B7A, 0x519E6679, 0xC70BA2B3, 0x8A259C7F, 0x1CB058B5, 0x716DA5B6, 0xE7F8617C, 0x68FED712, 0xFE6B13D8, 0x93B6EEDB, 0x05232A11, 0x480D14DD, 0xDE98D017, 0xB3452D14, 0x25D0E9DE, 0x2919508C, 0xBF8C9446, 0xD2516945, 0x44C4AD8F, 0x09EA9343, 0x9F7F5789, 0xF2A2AA8A, 0x64376E40, 0x3ACC760B, 0xAC59B2C1, 0xC1844FC2, 0x57118B08, 0x1A3FB5C4, 0x8CAA710E, 0xE1778C0D, 0x77E248C7, 0x7B2BF195, 0xEDBE355F, 0x8063C85C, 0x16F60C96, 0x5BD8325A, 0xCD4DF690, 0xA0900B93, 0x3605CF59, 0xB9037937, 0x2F96BDFD, 0x424B40FE, 0xD4DE8434, 0x99F0BAF8, 0x0F657E32, 0x62B88331, 0xF42D47FB, 0xF8E4FEA9, 0x6E713A63, 0x03ACC760, 0x953903AA, 0xD8173D66, 0x4E82F9AC, 0x235F04AF, 0xB5CAC065, 0x9EA93439, 0x083CF0F3, 0x65E10DF0, 0xF374C93A, 0xBE5AF7F6, 0x28CF333C, 0x4512CE3F, 0xD3870AF5, 0xDF4EB3A7, 0x49DB776D, 0x24068A6E, 0xB2934EA4, 0xFFBD7068, 0x6928B4A2, 0x04F549A1, 0x92608D6B, 0x1D663B05, 0x8BF3FFCF, 0xE62E02CC, 0x70BBC606, 0x3D95F8CA, 0xAB003C00, 0xC6DDC103, 0x504805C9, 0x5C81BC9B, 0xCA147851, 0xA7C98552, 0x315C4198, 0x7C727F54, 0xEAE7BB9E, 0x873A469D, 0x11AF8257, 0x4F549A1C, 0xD9C15ED6, 0xB41CA3D5, 0x2289671F, 0x6FA759D3, 0xF9329D19, 0x94EF601A, 0x027AA4D0, 0x0EB31D82, 0x9826D948, 0xF5FB244B, 0x636EE081, 0x2E40DE4D, 0xB8D51A87, 0xD508E784, 0x439D234E, 0xCC9B9520, 0x5A0E51EA, 0x37D3ACE9, 0xA1466823, 0xEC6856EF, 0x7AFD9225, 0x17206F26, 0x81B5ABEC, 0x8D7C12BE, 0x1BE9D674, 0x76342B77, 0xE0A1EFBD, 0xAD8FD171, 0x3B1A15BB, 0x56C7E8B8, 0xC0522C72 }; uint32_t calculate_crc(const uint8_t *data, size_t length) { uint32_t crc = 0xFFFFFFFF; for (size_t i = 0; i < length; i++) { #if 1 uint8_t idx = (uint8_t)(crc ^ data[i]); crc = (crc >> 8) ^ crc_table[idx]; #else uint8_t idx = (uint8_t)((crc >> 24) ^ data[i]); crc = (crc << 8) ^ crc_table[idx]; #endif } return crc ^ 0x00000000; }

About CRC-32/MEF

Standard test vector

CRC implementations are commonly verified with the ASCII input 123456789. For CRC-32/MEF, the expected result is 0xD2C22F51.

Input format
ASCII
Input
123456789
Expected CRC
0xD2C22F51
Residue
0x00000000

How this model differs

A CRC name identifies the complete parameter set, not only its polynomial. Implementations must match width, Init, RefIn, RefOut, and XorOut to reproduce the published check value.

Bit order
Reflected
Register start
0xFFFFFFFF
Final XOR
0x00000000
Published check
0xD2C22F51

Parameter reference

Complete CRC-32/MEF parameters

CRC parameter guide →
ParameterValueMeaningLearn
Width32 bitsCRC register and result widthRead guide →
Poly0x741B8CD7Generator polynomial without the leading termRead guide →
Init0xFFFFFFFFInitial CRC register valueRead guide →
RefIntrueReflect each input byte before processingRead guide →
RefOuttrueReflect the register before XOR OutRead guide →
XorOut0x00000000Final value XORed with the CRC registerRead guide →
Check0xD2C22F51CRC of ASCII “123456789”Read guide →
Residue0x00000000Expected residue after appending a valid CRCRead guide →
Also known as:MEF CRC-32

Where CRC-32/MEF is used

  • Metro Ethernet
  • MEF
  • Network protocols

CRC-32/MEF FAQ

What is the check value for CRC-32/MEF?

For the standard ASCII test input 123456789, the check value is 0xD2C22F51.

What polynomial does CRC-32/MEF use?

It uses the 32-bit polynomial 0x741B8CD7.

Does CRC-32/MEF use reflected input and output?

RefIn=true and RefOut=true.

Online CRC Calculator and CRC Lookup Table Generator

This free online CRC calculator computes CRC-8, CRC-16, and CRC-32 checksums from UTF-8 text, hexadecimal, decimal-byte, binary-bit, Base64 input, or binary files. You can select common preset algorithms such as CRC-16/MODBUS, CRC-16/CCITT-FALSE, CRC-16/XMODEM, CRC-16/KERMIT, and CRC-32/ISO-HDLC, or define custom CRC parameters for your own protocol.

The calculator also generates CRC lookup tables and complete source code for C, Python, and JavaScript. All calculations are performed locally in your browser, so uploaded files and input data are not sent to a server.

Supported CRC parameters

Custom CRC calculations can be configured using width, polynomial, initial value, input reflection, output reflection, and final XOR value. These parameters allow the calculator to reproduce many standard and proprietary CRC implementations used in embedded systems, serial communication, industrial protocols, file formats, and network applications.

Width
Defines the CRC register size, such as 8, 16, or 32 bits.
Polynomial
Specifies the generator polynomial used by the CRC algorithm.
Initial value
Sets the value loaded into the CRC register before processing data.
RefIn and RefOut
Control whether input bytes and the final CRC result are reflected.
Final XOR value
Applies a final XOR operation to the CRC register before displaying the checksum.

CRC-8, CRC-16, and CRC-32

CRC-8 produces an 8-bit checksum and is commonly used in compact embedded and sensor protocols. CRC-16 produces a 16-bit checksum and is widely used by protocols such as Modbus, XMODEM, and CCITT-based communication systems. CRC-32 produces a 32-bit checksum and provides stronger error detection for larger files, archives, Ethernet frames, and storage formats.

CRC lookup table and source code generator

A CRC lookup table replaces repeated bit-by-bit polynomial operations with precomputed values. This can significantly improve checksum performance in firmware, embedded software, and high-throughput applications. The generated table and function code can be copied directly into C, Python, or JavaScript projects and adapted as needed.

Frequently asked questions

What is a CRC checksum?

A cyclic redundancy check, or CRC, is an error-detection method used to identify accidental changes in transmitted or stored data. The sender calculates a CRC value, and the receiver calculates it again to verify that the data has not been corrupted.

Which CRC algorithm should I use?

Use the algorithm required by your protocol or file format. For example, Modbus commonly uses CRC-16/MODBUS, while other systems may require CCITT-FALSE, XMODEM, KERMIT, CRC-32, or a custom parameter set.

Why do CRC calculators sometimes return different results?

CRC results depend on more than the polynomial. Width, initial value, input reflection, output reflection, final XOR value, input encoding, and byte order must all match. A difference in any one of these settings can produce a different checksum.

Can I calculate the CRC of a binary file?

Yes. Select the file input option and choose a binary file. The calculator reads the file as bytes and computes the selected CRC directly in your browser.

Are uploaded files sent to a server?

No. CRC calculations and file processing are performed locally in the browser. Your files and input data are not uploaded to the website server.

What is the standard CRC check value for 123456789?

The ASCII string 123456789 is commonly used as a standard CRC test input. The expected result depends on the selected algorithm. For example, CRC-32/ISO-HDLC produces 0xCBF43926, while CRC-16/MODBUS produces 0x4B37.