github.com/shogo82148/std@v1.22.1-0.20240327122250-4e474527810c/crypto/sha512/sha512.go (about)

     1  // Copyright 2009 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Package sha512は、FIPS 180-4で定義されているSHA-384、SHA-512、SHA-512/224、およびSHA-512/256のハッシュアルゴリズムを実装しています。
     6  //
     7  // このパッケージによって返されるすべてのhash.Hash実装は、
     8  // encoding.BinaryMarshalerとencoding.BinaryUnmarshalerも実装しており、
     9  // ハッシュの内部状態をマーシャリングおよびアンマーシャリングすることができます。
    10  package sha512
    11  
    12  import (
    13  	"github.com/shogo82148/std/hash"
    14  )
    15  
    16  const (
    17  	// SizeはSHA-512のチェックサムのバイト単位のサイズです。
    18  	Size = 64
    19  
    20  	// Size224はSHA-512/224のチェックサムのサイズ(バイト単位)です。
    21  	Size224 = 28
    22  
    23  	// Size256はSHA-512/256チェックサムのバイト単位でのサイズです。
    24  	Size256 = 32
    25  
    26  	// Size384はSHA-384のチェックサムのバイト数です。
    27  	Size384 = 48
    28  
    29  	// BlockSizeは、SHA-512/224、SHA-512/256、SHA-384、およびSHA-512ハッシュ関数のブロックサイズ(バイト単位)です。
    30  	BlockSize = 128
    31  )
    32  
    33  // NewはSHA-512チェックサムを計算する新しいhash.Hashを返します。
    34  func New() hash.Hash
    35  
    36  // New512_224は、SHA-512/224のチェックサムを計算する新しいhash.Hashを返します。
    37  func New512_224() hash.Hash
    38  
    39  // New512_256は、SHA-512/256のチェックサムを計算する新しいhash.Hashを返します。
    40  func New512_256() hash.Hash
    41  
    42  // New384は、SHA-384チェックサムを計算する新しいhash.Hashを返します。
    43  func New384() hash.Hash
    44  
    45  // Sum512は、データのSHA512ハッシュ値を返します。
    46  func Sum512(data []byte) [Size]byte
    47  
    48  // Sum384はデータのSHA384チェックサムを返します。
    49  func Sum384(data []byte) [Size384]byte
    50  
    51  // Sum512_224は、データのSum512/224チェックサムを返します。
    52  func Sum512_224(data []byte) [Size224]byte
    53  
    54  // Sum512_256はデータのSum512/256チェックサムを返します。
    55  func Sum512_256(data []byte) [Size256]byte