Пакет 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 для данных, используя полином, представленный в Table.
func New
func New(tab *Table) hash.Hash64
New создаёт новый hash.Hash64, вычисляющий контрольную сумму CRC-64 с использованием полинома, представленного в Table. Метод Sum размещает значение в порядке байтов от старшего к младшему. Возвращаемый Hash64 также реализует интерфейсы encoding.BinaryMarshaler и encoding.BinaryUnmarshaler для сериализации и десериализации внутреннего состояния хеша.
func Update
func Update(crc uint64, tab *Table, p []byte) uint64
Update возвращает результат добавления байтов из p к crc.
type Table
Table — это таблица из 256 слов, представляющая полином для эффективной обработки.
type Table [256]uint64
func MakeTable
func MakeTable(poly uint64) *Table
MakeTable возвращает Table, созданную на основе указанного полинома. Содержимое этой Table нельзя изменять.
© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/hash/crc64/