import "hash/crc64"

このパッケージは、64ビット巡回冗長検査(cyclic redundancy check)、すなわちCRC-64チェックサムを実装しています。詳細については、 http://en.wikipedia.org/wiki/Cyclic_redundancy_checkを参照ください。

パッケージファイル

crc64.go

定数

あらかじめ定義されている多項式。

const (
    // ISO多項式、ISO 3309で定義され、HDLCで使用される。
    ISO = 0xD800000000000000

    // ECMA多項式、ECMA 182で定義されている。
    ECMA = 0xC96C5795D7870F42
)

CRC-64 チェックサムのバイト長。

const Size = 8

Checksum関数

func Checksum(data []byte, tab *Table) uint64

Checksumは、dataに対して指定したテーブルの多項式で計算したCRC-64チェックサムを返します。

New関数

func New(tab *Table) hash.Hash64

Newは、指定したテーブルの多項式でCRC-64チェックサムを計算する、新しいhash.Hash64を作成します。

Update関数

func Update(crc uint64, tab *Table, p []byte) uint64

Updateは、p内のバイトをcrcに加算した結果を返します。

Table型

Tableは、効率的に処理を行うための多項式を表す256個のワードテーブルです。

type Table [256]uint64

MakeTable関数

func MakeTable(poly uint64) *Table

MakeTableは、規定された多項式で構築されたTableを返します。