Spec-Zone.ru › Go

Пакет sha256

  • import "crypto/sha256"
  • Обзор
  • Индекс
  • Примеры

Обзор

Пакет sha256 реализует алгоритмы хеширования SHA224 и SHA256, как определено в FIPS 180-4.

Индекс

  • Константы
  • func New() hash.Hash
  • func New224() hash.Hash
  • func Sum224(data []byte) [Size224]byte
  • func Sum256(data []byte) [Size]byte

Примеры

New
New (Файл)
Sum256

Файлы пакета

sha256.go sha256block.go sha256block_amd64.go sha256block_decl.go

Константы

Размер блока SHA256 и SHA224 в байтах.

const BlockSize = 64

Размер SHA256 контрольной суммы в байтах.

const Size = 32

Размер SHA224 контрольной суммы в байтах.

const Size224 = 28

func New

func New() hash.Hash

New возвращает новый hash.Hash, вычисляющий контрольную сумму SHA256. Hash также реализует encoding.BinaryMarshaler и encoding.BinaryUnmarshaler для сериализации и десериализации внутреннего состояния хеша.

Пример

Код:

h := sha256.New()
h.Write([]byte("hello world\n"))
fmt.Printf("%x", h.Sum(nil))

Вывод:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447

Пример (Файл)

Код:

f, err := os.Open("file.txt")
if err != nil {
    log.Fatal(err)
}
defer f.Close()

h := sha256.New()
if _, err := io.Copy(h, f); err != nil {
    log.Fatal(err)
}

fmt.Printf("%x", h.Sum(nil))

func New224

func New224() hash.Hash

New224 возвращает новый hash.Hash, вычисляющий контрольную сумму SHA224.

func Sum224 1.2

func Sum224(data []byte) [Size224]byte

Sum224 возвращает контрольную сумму SHA224 данных.

func Sum256 1.2

func Sum256(data []byte) [Size]byte

Sum256 возвращает контрольную сумму SHA256 данных.

Пример

Код:

sum := sha256.Sum256([]byte("hello world\n"))
fmt.Printf("%x", sum)

Вывод:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447

© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/crypto/sha256/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API