crypto

package
v1.22.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 26, 2024 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

パッケージcryptoは一般的な暗号定数を収集します。

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterHash

func RegisterHash(h Hash, f func() hash.Hash)

RegisterHash は与えられたハッシュ関数の新しいインスタンスを返す関数を登録します。 これはハッシュ関数を実装するパッケージの init 関数から呼び出されることを意図しています。

Types

type Decrypter added in v1.5.0

type Decrypter interface {
	Public() PublicKey

	Decrypt(rand io.Reader, msg []byte, opts DecrypterOpts) (plaintext []byte, err error)
}

Decrypterは、非対称復号化操作に使用できる不透明な秘密鍵のインターフェースです。例えば、ハードウェアモジュールに保管されるRSA鍵があります。

type DecrypterOpts added in v1.5.0

type DecrypterOpts any

type Hash

type Hash uint

Hashは別のパッケージで実装されている暗号ハッシュ関数を識別します。

const (
	MD4 Hash = 1 + iota
	MD5
	SHA1
	SHA224
	SHA256
	SHA384
	SHA512
	MD5SHA1
	RIPEMD160
	SHA3_224
	SHA3_256
	SHA3_384
	SHA3_512
	SHA512_224
	SHA512_256
	BLAKE2s_256
	BLAKE2b_256
	BLAKE2b_384
	BLAKE2b_512
)

func (Hash) Available

func (h Hash) Available() bool

Availableは、与えられたハッシュ関数がバイナリにリンクされているかどうかを示します。

func (Hash) HashFunc added in v1.4.0

func (h Hash) HashFunc() Hash

HashFunc は単に h の値を返すだけであり、 HashSignerOpts を実装することを保証します。

func (Hash) New

func (h Hash) New() hash.Hash

Newは指定されたハッシュ関数を計算する新しいhash.Hashを返します。ハッシュ関数がバイナリにリンクされていない場合、Newはパニックを発生させます。

func (Hash) Size

func (h Hash) Size() int

Sizeは与えられたハッシュ関数から生成されるダイジェストの長さ(バイト単位)を返します。 この関数は、対象のハッシュ関数がプログラムにリンクされている必要はありません。

func (Hash) String added in v1.15.0

func (h Hash) String() string

type PrivateKey

type PrivateKey any

PrivateKeyは不特定のアルゴリズムを使用して秘密鍵を表します。

この型は、後方互換性のために空のインターフェースとして定義されていますが、 標準ライブラリのすべての秘密鍵タイプは以下のインターフェースを実装します。

interface{
    Public() crypto.PublicKey
    Equal(x crypto.PrivateKey) bool
}

また、 SignerDecrypter などの特定の目的のインターフェースも実装しており、 アプリケーション内で型の安全性を向上させるために使用できます。

type PublicKey added in v1.2.0

type PublicKey any

PublicKeyは未指定のアルゴリズムを使用して公開鍵を表します。

このタイプは、後方互換性のための空のインターフェースですが、 標準ライブラリのすべての公開鍵タイプは、以下のインターフェースを実装しています。

interface{
    Equal(x crypto.PublicKey) bool
}

アプリケーション内での型安全性向上のために使用することができます。

type Signer added in v1.4.0

type Signer interface {
	Public() PublicKey

	Sign(rand io.Reader, digest []byte, opts SignerOpts) (signature []byte, err error)
}

Signerは、署名操作に使用される不透明な秘密鍵のインターフェースです。たとえば、ハードウェアモジュールに保存されているRSA鍵などがあります。

type SignerOpts added in v1.4.0

type SignerOpts interface {
	HashFunc() Hash
}

SignerOptsは Signer での署名に対するオプションを含んでいます。

Directories

Path Synopsis
パッケージaesは、U.S.連邦情報処理標準出版物197で定義されているAES暗号(以前はRijndaelとして知られていた)を実装しています。
パッケージaesは、U.S.連邦情報処理標準出版物197で定義されているAES暗号(以前はRijndaelとして知られていた)を実装しています。
Package cipherは、低レベルのブロック暗号実装を包み込むことができる標準のブロック暗号モードを実装しています。
Package cipherは、低レベルのブロック暗号実装を包み込むことができる標準のブロック暗号モードを実装しています。
Package desは米国連邦情報処理標準パブリケーション46-3で定義された、 データ暗号化標準(DES)とトリプルデータ暗号化アルゴリズム(TDEA)を実装しています。
Package desは米国連邦情報処理標準パブリケーション46-3で定義された、 データ暗号化標準(DES)とトリプルデータ暗号化アルゴリズム(TDEA)を実装しています。
パッケージdsaは、FIPS 186-3で定義されたデジタル署名アルゴリズムを実装します。
パッケージdsaは、FIPS 186-3で定義されたデジタル署名アルゴリズムを実装します。
パッケージecdhはNIST曲線とCurve25519上での楕円曲線ディフィー・ヘルマンを実装します。
パッケージecdhはNIST曲線とCurve25519上での楕円曲線ディフィー・ヘルマンを実装します。
パッケージecdsaは、FIPS 186-4およびSEC 1、バージョン2.0で定義されている楕円曲線デジタル署名アルゴリズムを実装しています。
パッケージecdsaは、FIPS 186-4およびSEC 1、バージョン2.0で定義されている楕円曲線デジタル署名アルゴリズムを実装しています。
Package ed25519はEd25519署名アルゴリズムを実装しています。
Package ed25519はEd25519署名アルゴリズムを実装しています。
パッケージellipticは、素数体上の標準的なNIST P-224、P-256、P-384、およびP-521楕円曲線を実装しています。
パッケージellipticは、素数体上の標準的なNIST P-224、P-256、P-384、およびP-521楕円曲線を実装しています。
internal
alias
Package alias implements memory aliasing tests.
Package alias implements memory aliasing tests.
boring
Package boring provides access to BoringCrypto implementation functions.
Package boring provides access to BoringCrypto implementation functions.
boring/bcache
Package bcache implements a GC-friendly cache (see [Cache]) for BoringCrypto.
Package bcache implements a GC-friendly cache (see [Cache]) for BoringCrypto.
boring/sig
Package sig holds “code signatures” that can be called and will result in certain code sequences being linked into the final binary.
Package sig holds “code signatures” that can be called and will result in certain code sequences being linked into the final binary.
edwards25519
Package edwards25519 implements group logic for the twisted Edwards curve
Package edwards25519 implements group logic for the twisted Edwards curve
edwards25519/field
Package field implements fast arithmetic modulo 2^255-19.
Package field implements fast arithmetic modulo 2^255-19.
nistec
Package nistec implements the NIST P elliptic curves from FIPS 186-4.
Package nistec implements the NIST P elliptic curves from FIPS 186-4.
randutil
Package randutil contains internal randomness utilities for various crypto packages.
Package randutil contains internal randomness utilities for various crypto packages.
Package md5 は、RFC 1321で定義されたMD5ハッシュアルゴリズムを実装します。
Package md5 は、RFC 1321で定義されたMD5ハッシュアルゴリズムを実装します。
Package randは、暗号学的に安全な乱数生成器を実装しています。
Package randは、暗号学的に安全な乱数生成器を実装しています。
パッケージrc4はBruce Schneierの「応用暗号化」で定義されている RC4暗号を実装しています。
パッケージrc4はBruce Schneierの「応用暗号化」で定義されている RC4暗号を実装しています。
Package rsaは、PKCS #1およびRFC 8017で指定されたRSA暗号化を実装します。
Package rsaは、PKCS #1およびRFC 8017で指定されたRSA暗号化を実装します。
パッケージsha1は、RFC 3174で定義されているSHA-1ハッシュアルゴリズムを実装しています。
パッケージsha1は、RFC 3174で定義されているSHA-1ハッシュアルゴリズムを実装しています。
パッケージsha256は、FIPS 180-4で定義されたSHA224およびSHA256ハッシュアルゴリズムを実装しています。
パッケージsha256は、FIPS 180-4で定義されたSHA224およびSHA256ハッシュアルゴリズムを実装しています。
Package sha512は、FIPS 180-4で定義されているSHA-384、SHA-512、SHA-512/224、およびSHA-512/256のハッシュアルゴリズムを実装しています。
Package sha512は、FIPS 180-4で定義されているSHA-384、SHA-512、SHA-512/224、およびSHA-512/256のハッシュアルゴリズムを実装しています。
Package subtleは、暗号化コードでよく使用される関数を実装しますが、正しく使用するために注意深い考慮が必要です。
Package subtleは、暗号化コードでよく使用される関数を実装しますが、正しく使用するために注意深い考慮が必要です。
パッケージtlsは、RFC 5246で指定されているTLS 1.2と、RFC 8446で指定されているTLS 1.3を部分的に実装しています。
パッケージtlsは、RFC 5246で指定されているTLS 1.2と、RFC 8446で指定されているTLS 1.3を部分的に実装しています。
パッケージx509はX.509規格の一部を実装しています。
パッケージx509はX.509規格の一部を実装しています。
internal/macos
Package macOS provides cgo-less wrappers for Core Foundation and Security.framework, similarly to how package syscall provides access to libSystem.dylib.
Package macOS provides cgo-less wrappers for Core Foundation and Security.framework, similarly to how package syscall provides access to libSystem.dylib.
pkix
パッケージ pkix には、ASN.1 パースおよび X.509 証明書、CRL、OCSP のシリアル化に使用される共有の低レベルの構造体が含まれています。
パッケージ pkix には、ASN.1 パースおよび X.509 証明書、CRL、OCSP のシリアル化に使用される共有の低レベルの構造体が含まれています。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL