Podobno funkcja PHP hash()
może być wywołana z algorytmami crc32
i crc32b
? Jaka jest różnica między nimi?Jaka jest różnica między crc32 i crc32b?
Odpowiedz
Jak na odpowiedź apm na php.net: "Sprawdziłem, że wyjściem" crc32 "jest algorytm IT.3 I.333,5 (znany również jako AAL5 CRC - spopularyzowany przez BZIP2, ale również używany w transmisjach ATM - algorytm jest taki sam, jak w POSIX 1003.2-1992 w Cksum, ale to dodaje rozmiar do CRC na końcu dla dodatkowego pomiaru) - Crc32b jest 32-bitową sekwencją sprawdzania ramki ITU V.42 (używaną w sieci Ethernet i spopularyzowany przez PKZip) .Produkt z tego CRC jest spopularyzowany w małym endianowskim formacie Intela i produkuje cbf43926 na tym samym pliku. "
Pełen komentarz: http://www.php.net/manual/en/function.hash-file.php#104836
Dwie zupełnie różne algorytmy. CRC32b jest implementacją algorytmu spójności zdefiniowanego jako here, natomiast CRC32 jest sekwencją sprawdzania ramki zdefiniowaną jako here. To dwie zupełnie różne rzeczy, choć różnice nie są często duże.
Jednym ze sposobów, aby to sprawdzić:
<?php
echo hash("crc32", __FILE__)."<br/>";
echo hash("crc32b", __FILE__); ?>
Ze względu na ich podobieństwo, wyjściowe wartości hex będzie stosunkowo podobne.
Czy istnieje powód, aby wybrać jeden z drugiego? – user2045006
@ user2045006: Nie. Różnią się one jedynie szczegółami realizacji i historycznymi zastosowaniami. Jeden działa z strumieniami, drugi z ramkami. W znacznej większości przypadków można założyć, że jest równoważny pod względem wydajności. –
- 1. Jaka jest różnica między? : i ||
- 2. Jaka jest różnica między $ i $$?
- 3. Jaka jest różnica między Subtotal i BaseSubtotal?
- 4. Jaka jest różnica między DetachedCriteria i ICriteria
- 5. Jaka jest różnica między & # x00A0; i ?
- 6. Jaka jest różnica między lex i yacc
- 7. jaka jest różnica między dijit i dojo
- 8. Jaka jest różnica między Control.Select() i Control.Focus()?
- 9. Jaka jest różnica między System.Windows.Controls.Control i System.Windows.Forms.Control?
- 10. Jaka jest różnica między apletami i SWING?
- 11. Jaka jest różnica między session.commit() i session.flush()?
- 12. Jaka jest różnica między ImageView.setBackgroundResource i ImageView.setImageResource?
- 13. Jaka jest różnica między Konwertuj i parsuj?
- 14. Jaka jest różnica między JSP i JSTL?
- 15. Jaka jest różnica między Lazarus i CodeTyphon
- 16. Jaka jest różnica między TypedArray.getInteger() i TypedArray.getInt()?
- 17. jaka jest różnica między ARM7 i ARM7s
- 18. Jaka jest różnica między http_build_str() i http_build_query()?
- 19. Jaka jest różnica między "CompletionStage" i "CompletableFuture"?
- 20. Jaka jest różnica między mock.patch.object (... i mock.patch (
- 21. Jaka jest różnica między GetBlobReference i GetBlobReferenceFromServer?
- 22. Jaka jest różnica między NSLayoutAttributeBaseline i NSLayoutAttributeBottom?
- 23. Jaka jest różnica między handlebar.js i handlebar.runtime.js?
- 24. Jaka jest różnica między innerText i outerText?
- 25. Jaka jest różnica między Json i Jsonp?
- 26. Jaka jest różnica między WCF i WPF?
- 27. Jaka jest różnica między runghc i runhaskell?
- 28. Jaka jest różnica między -hivevar i -hiveconf?
- 29. Jaka jest różnica między writeUTF i writeChars?
- 30. Jaka jest różnica między RSpec i Cucumber?
Istnieje kilku użytkowników wyjaśniających to tutaj: http://www.php.net/manual/en/function.hash-file.php#104836 – Uby
google mi to - shld pomóc http: // www .pal-blog.de/entwicklung/perl/2012/crc32-vs-crc32b.html – Dinesh