Пакет crc64
Обзор
Пакет crc64 реализует 64-битный контрольный циклический избыток, или CRC-64, контрольную сумму. См. https://en.wikipedia.org/wiki/Cyclic_redundancy_check для получения информации.
Индекс
Файлы пакета
crc64.go
Константы
Предопределённые многочлены.
const (
// The ISO polynomial, defined in ISO 3309 and used in HDLC.
ISO = 0xD800000000000000
// The ECMA polynomial, defined in ECMA 182.
ECMA = 0xC96C5795D7870F42
) Размер контрольной суммы CRC-64 в байтах.
const Size = 8
func Checksum
func Checksum(data []byte, tab *Table) uint64
Checksum возвращает контрольную сумму CRC-64 данных, используя многочлен, представленный таблицей.
func New
func New(tab *Table) hash.Hash64
New создаёт новый hash.Hash64, вычисляющий контрольную сумму CRC-64, используя многочлен, представленный таблицей. Его метод Sum выведет значение в порядке байтов big-endian. Возвращаемый Hash64 также реализует encoding.BinaryMarshaler и encoding.BinaryUnmarshaler для сериализации и десериализации внутреннего состояния хеширования.
func Update
func Update(crc uint64, tab *Table, p []byte) uint64
Update возвращает результат добавления байтов в p к crc.
тип Table
Table — это таблица из 256 слов, представляющая многочлен для эффективной обработки.
type Table [256]uint64
func MakeTable
func MakeTable(poly uint64) *Table
MakeTable возвращает таблицу, построенную из заданного многочлена. Содержимое этой таблицы изменять нельзя.
© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/hash/crc64/