/
579.txt
34 lines (26 loc) · 2.03 KB
/
579.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[1] [CITE@en[RFC 4960 - Stream Control Transmission Protocol]]
([TIME[2015-05-17 15:33:08 +09:00]] 版)
<http://tools.ietf.org/html/rfc4960#section-6.8>
[2] [CITE@en[RFC 4960 - Stream Control Transmission Protocol]]
([TIME[2015-05-17 15:33:08 +09:00]] 版)
<http://tools.ietf.org/html/rfc4960#appendix-B>
[FIG(quote)[
[FIGCAPTION[
[3] [CITE[Hypertext Transfer Protocol (HTTP) Digest Algorithm Values]]
([TIME[2015-06-16 03:41:29 +09:00]] 版)
<http://www.iana.org/assignments/http-dig-alg/http-dig-alg.xhtml>
]FIGCAPTION]
> CRC32c The CRC32c algorithm is a 32-bit cyclic redundancy check. It achieves a better hamming distance (for better error-detection performance) than many other 32-bit CRC functions. Other places it is used include iSCSI and SCTP. The 32-bit output is encoded in hexadecimal (using between 1 and 8 ASCII characters from 0-9, A-F, and a-f; leading 0's are allowed). For example, CRC32c=0a72a4df and crc32c=A72A4DF are both valid checksums for the 3-byte message "dog". '''['''RFC4960 appendix B''']'''
]FIG]
[5] [[HTTP]] [[ダイジェストアルゴリズム]]としての値 [CODE[[[CRC32c]]]]
は2015年6月に突然 [[IANA登録簿]]に登録されています。誰が何に使っているのかは謎です。[TIME[2015-06-18T08:34:21.700Z]]
[FIG(quote)[
[FIGCAPTION[
[4] [CITE@en[Hashes and ETags: Best Practices - Cloud Storage — Google Cloud Platform]]
([TIME[2015-05-27 08:55:19 +09:00]] 版)
<https://cloud.google.com/storage/docs/hashes-etags>
]FIGCAPTION]
> All GCS objects have a CRC32c hash. CRC32C is a 32 bit Cyclic Redundancy Check (CRC) based on the Castagnoli polynomial. This CRC is described by the IETF specification for SCTP. Libraries for computing CRC32c include Boost for C++, crcmod for Python, and digest-crc for Ruby. Java users can find an implementation of the algorithm in the GoogleCloudPlatform crc32c Java project.
> Note: The CRC popularly known as CRC32 differs from the CRC32c algorithm used by Google Cloud Storage.
> The Base64 encoded CRC32c is in big-endian byte order.
]FIG]