CRC32Stream.st
changeset 4873 86aab8ca867c
parent 4871 32729bea327d
child 4875 0ad684e3ac77
equal deleted inserted replaced
4872:002feff60199 4873:86aab8ca867c
    76 "
    76 "
    77 !
    77 !
    78 
    78 
    79 documentation
    79 documentation
    80 "
    80 "
       
    81     Only use CRC to protect against communication errors;
       
    82     DO NOT use CRC for cryptography, authentication, security, etc.
       
    83     - use secure hashes for those instead.
       
    84 
    81     Standard CRC method as defined by ISO 3309 [ISO-3309] or ITU-T V.42 [ITU-T-V42].
    85     Standard CRC method as defined by ISO 3309 [ISO-3309] or ITU-T V.42 [ITU-T-V42].
    82     The default CRC polynomial employed is
    86     The default CRC polynomial employed is
    83 
    87 
    84         x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1
    88         x^32+x^26+x^23+x^22+x^16+x^12+x^11+x^10+x^8+x^7+x^5+x^4+x^2+x+1
    85         (or 16r04C11DB7)
    89         (or 16r04C11DB7)
    89 
    93 
    90         self newCrc32c
    94         self newCrc32c
    91 
    95 
    92         poly: 16r1edc6f41
    96         poly: 16r1edc6f41
    93         = x32 + x28 + x27 + x26 + x25 + x23 + x22 + x20 + x19 + x18 + x14 + x13 + x11 + x10 + x9 + x8 + x6 + 1
    97         = x32 + x28 + x27 + x26 + x25 + x23 + x22 + x20 + x19 + x18 + x14 + x13 + x11 + x10 + x9 + x8 + x6 + 1
    94 
       
    95     Only use CRC to protect against communication errors;
       
    96     do NOT use CRC for cryptography - use SHA1Stream or MD5Stream instead.
       
    97 
    98 
    98     Notice that this CRC is also used with PNG images; 
    99     Notice that this CRC is also used with PNG images; 
    99     therefore, its performance directly affects png image processing (png write speed).
   100     therefore, its performance directly affects png image processing (png write speed).
   100 
   101 
   101     throughput:
   102     throughput: