2009-12-16 15 views
5

CRC16-CCITT için bazı CRC test vektörlerini bilen var mı?CRC16 (CCITT) için CRC test vektörleri

CRC uygulamasına sahip değilim Güvenebileceğim ve birinin uygulamasını veya kendiminkini test etmem gerekiyor. (. CRC32 için, saygın bir referans uygulaması var gibi ben altın standart olarak PNG code kullanmak)

(this site's CRC calculator kullanışlı görünüyor ama ben bir şekilde doğruluğunu kontrol etmek için ihtiyaç)


GÜNCELLEME: CRC hesap makinesi üzerinde kullanışlı görünüyor ama sadece ascii, hex girmek için bir yol değil. --- hex girişini girmek çok zor. (Onaltılık ASCII 12%31%32 olarak girilebilir, böylece sadece onaltılık bayt uzun dize yapıştırmak kopyalayıp + edemez; ayrıca % karakter bir kaçış var görünmüyor) Ben this online calculator doğruladıktan

, hangi CRC16, CRC16-CCITT ve CRC32 için Boost test vektörlerine karşı hex girişleri alır.

cevap

2

Yükseltme, karşıdan yükleyebileceğiniz güzel bir CRC uygulamasına sahiptir. Bildiğim kadarıyla CRC16 için yapılandırmak mümkün. http://www.boost.org/doc/libs/1_41_0/libs/crc/index.html

bu sayfadaki CCITT simüle etmek için kurmak bir örnek gibi görünüyor: Burada http://www.boost.org/doc/libs/1_41_0/libs/crc/crc.html

+1

+1 ve kabul edilen: http://www.boost.org/doc/libs/1_41_0/libs/crc/test: onların test kodu bir test vektörü olduğundan Bahsettiğiniz nedenle ancak /crc_test.cpp (bkz. std_data ve std_crc_ccitt_result) –

+0

Büyük, hatta kör bir kimi bile bazen bir mısır tanesi bulur :) Cidden, kütüphaneleri olumlu bir şekilde şaşırtma eğilimindedir. – Laserallan

+0

Uygulaması güzel ve doğru olabilir, ancak çoğu soyut şablon kütüphanesinde olduğu gibi bakmak için oldukça opaktır. :-( –

0

polinom olduğu CCITT-16 CRC için iki deney vektörler (olan büyük endian altıgen temsilinde X16 + X12 + X5 + 1 (0x1021 ..

0x12345670 = 0xB1E4 

0x5A261977 = 0x1AAD 
İlgili konular