РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1229 of 1593 menu

Функция crc64.New

Функция crc64.New создает новый экземпляр хеша CRC-64, который реализует интерфейс hash.Hash64. В единственный параметр функция принимает таблицу полинома crc64.Table, которая определяет алгоритм вычисления. Стандартная библиотека предоставляет две предопределенные таблицы: crc64.ECMA и crc64.ISO. Возвращаемое значение позволяет накапливать данные по частям с помощью метода Write и получать итоговую контрольную сумму методом Sum64.

Синтаксис

func New(tab *crc64.Table) hash.Hash64

Пример

Давайте вычислим контрольную сумму CRC-64 для строки "abcde" с использованием таблицы crc64.ISO:

package main import ( "crypto/crc64" "fmt" ) func main() { h := crc64.New(crc64.ISO) h.Write([]byte("abcde")) res := h.Sum64() fmt.Println(res) }

Результат выполнения кода:

11438860175727340743

Пример

Давайте вычислим контрольную сумму CRC-64 для строки "12345" с использованием таблицы crc64.ECMA:

package main import ( "crypto/crc64" "fmt" ) func main() { h := crc64.New(crc64.ECMA) h.Write([]byte("12345")) res := h.Sum64() fmt.Println(res) }

Результат выполнения кода:

11915655322673439846

Пример

Давайте вычислим контрольную сумму для данных, которые передаются по частям:

package main import ( "crypto/crc64" "fmt" ) func main() { h := crc64.New(crc64.ISO) h.Write([]byte("abc")) h.Write([]byte("de")) res := h.Sum64() fmt.Println(res) }

Результат выполнения кода:

11438860175727340743

Пример

Давайте получим текущее состояние хеша в виде среза байт с помощью метода Sum:

package main import ( "crypto/crc64" "fmt" ) func main() { h := crc64.New(crc64.ISO) h.Write([]byte("abcde")) res := h.Sum(nil) fmt.Printf("%x", res) }

Результат выполнения кода:

"9eba1aa70895d2c7"

Смотрите также

  • функцию crc64.Checksum,
    которая вычисляет контрольную сумму CRC-64 за один вызов
  • интерфейс hash.Hash64,
    который реализует возвращаемое значение
  • функцию crc32.New,
    которая создает хеш CRC-32
  • функцию sha256.New,
    которая создает хеш SHA-256
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить