當數據傳輸被篡改1位或2位時,接收機能自動糾正它嗎?CRC是否具有以下功能
回答
不,CRC是一個錯誤檢測代碼,而不是一個錯誤糾正碼。
更多here
CRC主要用作一個檢錯碼。但是,如果總比特數(包括CRC中的比特數)小於CRC的週期,則可以通過計算綜合症(xor計算和接收的CRC)來校正單比特錯誤。如果單獨翻轉,每一位都會產生一個獨特的綜合徵。我們可以迭代CRC算法來查找與每個位相關的綜合徵;如果發現與每個位相關的綜合症,可以翻轉它並糾正一位錯誤。
但是,這樣做的一個主要危險是,CRC對於拒絕僞造數據將不太有用。如果對15個字節的數據包使用8位CRC,則256個隨機數據包中只有一個會通過有效性,但所有隨機數據包的一半可以通過翻轉一位來「糾正」。
爲此,CRC必須能夠檢測到所有1位和2位錯誤。 – philcolbourn 2014-04-05 04:57:01
@philcolbourn:如果一個CRC的週期爲N,那麼它將無法檢測到的任意長度輸入的唯一兩位錯誤將是那些錯誤數量爲N位數倍的錯誤。如果輸入流爲N位或更短,則會檢測到所有的兩位錯誤。 – supercat 2014-04-05 23:14:04
是的,這聽起來沒錯。我認爲N非常大 - 比16和32位CRC的大多數數據包或幀大小要大。但對於8位CRC來說,這可能是個問題 - 對嗎? – philcolbourn 2014-04-06 09:27:28
- 1. 現有功能的組合是否具有新功能?
- 2. Acumatica Report Designer是否具有此功能?
- 3. TextMate是否具有untabify功能?
- 4. VBA是否具有ATan2功能?
- 5. LESS是否具有「擴展」功能?
- 6. DataSet是否具有Contain或In功能?
- 7. 是否打印功能具有在python
- 8. vim是否具有Notepad ++功能?
- 9. Doxygen是否具有續行功能?
- 10. JSF1.2是否具有CSRF保護功能?
- 11. Procmail是否具有小寫功能或類似功能?
- 12. 是否有可能具有無狀態定時功能
- 13. 是否有可能直接啓動功能具有定時
- 14. 是否有免費的CRC庫,涵蓋了很多CRC算法?
- 15. 是否有類(功能,方法等或任何功能)像下面的功能?
- 16. Redis是否有decr功能
- 17. 是否有功能大綱?
- 18. OCaml是否有popcnt功能?
- 19. 是否有建設功能?
- 20. 是否有MAKELONGLONG功能?
- 21. 智能是否具有字符串替換功能?
- 22. 是否有任何具有ScaleGestureDetector和GestureDetector功能的類?
- 23. 是否有可能通過Rails(+ Nesta)實現以下功能:myapp.com/blog/1/post/4?
- 24. 是否有可能不顯示對話框在下載功能
- 25. lubridate是否具有與動物園的yearmon功能類似的功能?
- 26. Io是否具有與C的退出(信號)功能等效的功能?
- 27. Mathematica是否具有與Matlab的「獨特」功能等效的功能
- 28. 尋找具有以下功能的PHP腳本
- 29. 製作:Q!具有與以下相同的功能:q!在vim
- 30. 具有以下功能的簡單.NET CMS?
哪種CRC算法?多少位?這個問題真的很含糊。閱讀[維基百科鏈接](http://en.wikipedia.org/wiki/Cyclic_redundancy_check)瞭解更多信息。 – 2011-02-24 01:46:19
夥計有這個真棒網站,我認爲它叫「維基比達」或什麼的。 Idk的人,你應該檢查出來。 – rook 2011-02-24 02:47:37