Nie rozumiem idei CRC32.

0

Nie wiem jak dokładnie obliczana jest suma kontrolna. Dajmy dla przykładu wyraz "Ala". Skorzystałem z kalkulatorów dostępnych w internecie i każdy podaje inny wynik. Próbowałem sprzętowo generować CRC32 i mi wyszło 1449053287 dziesiętnie, 565ECC67 szesnastkowo. Czy to jest poprawny wynik?

0

Są różne wersje CRC32, różniące się użytym wielomianem: https://en.wikipedia.org/wiki/Cyclic_redundancy_check#Standards_and_common_use

0

Już poprawiłem błąd. Teraz sprzętowe CRC liczy sumę tak jak należy. Chciałbym wykorzystać CRC do zabezpieczenia komunikacji UART pomiędzy PC a mikrokontrolerem. Przed wysłaniem jakiegoś stringa aplikacja na PC obliczyła by crc, następnie wysłała string i crc. Mikrokontroler po debraniu stringa obliczyłby swoje crc i porównał z odebranym crc. Jeśli by się zgadzały została by wykonana pewna akcja.
Czy to jest dobry pomysł do zabezpieczenia komunikacji?

0

Przy mikrokontrolerach używa się zazwyczaj się CRC16... Aczkolwiek tu też jest kilka różnych standardów. Może użyj tetgo opisanego w modbusie - może się przydać do kilku rzeczy :)

0

Co to znaczy 'zabezpieczenie komunikacji'? CRC32 nie jest od zabezpieczenia tylko do sprawdzenia czy nie nastąpiły błędy przy transferze czy odczycie danych.

0

@kaczus Mikrokontroler generuje sprzętowo CRC32, i takie chciałbym wykorzystać.
@Wibowit Miałem na myśli sprawdzenie poprawności transmisji. Czy CRC32 się do tego nadaje?

0

Miałem na myśli sprawdzenie poprawności transmisji. Czy CRC32 się do tego nadaje?

Do tego między innymi służy...

1 użytkowników online, w tym zalogowanych: 0, gości: 1