pkcs

package
v1.12.0 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AES128CBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  16,
		newBlock: aes.NewCipher,
		oid:      oidAES128CBC,
	},
	ivSize: aes.BlockSize,
}
View Source
var AES128GCM = &gcmBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  16,
		newBlock: aes.NewCipher,
		oid:      oidAES128GCM,
	},
	nonceSize: 12,
}
View Source
var AES192CBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  24,
		newBlock: aes.NewCipher,
		oid:      oidAES192CBC,
	},
	ivSize: aes.BlockSize,
}
View Source
var AES192GCM = &gcmBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  24,
		newBlock: aes.NewCipher,
		oid:      oidAES192GCM,
	},
	nonceSize: 12,
}
View Source
var AES256CBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  32,
		newBlock: aes.NewCipher,
		oid:      oidAES256CBC,
	},
	ivSize: aes.BlockSize,
}
View Source
var AES256GCM = &gcmBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  32,
		newBlock: aes.NewCipher,
		oid:      oidAES256GCM,
	},
	nonceSize: 12,
}
View Source
var DESCBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  8,
		newBlock: des.NewCipher,
		oid:      oidDESCBC,
	},
	ivSize: des.BlockSize,
}
View Source
var SM4CBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  16,
		newBlock: sm4.NewCipher,
		oid:      oidSM4CBC,
	},
	ivSize: sm4.BlockSize,
}
View Source
var SM4ECB = &ecbBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  16,
		newBlock: sm4.NewCipher,
		oid:      oidSM4ECB,
	},
}
View Source
var SM4GCM = &gcmBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  16,
		newBlock: sm4.NewCipher,
		oid:      oidSM4GCM,
	},
	nonceSize: 12,
}
View Source
var TripleDESCBC = &cbcBlockCipher{
	baseBlockCipher: baseBlockCipher{
		keySize:  24,
		newBlock: des.NewTripleDESCipher,
		oid:      oidDESEDE3CBC,
	},
	ivSize: des.BlockSize,
}

Functions

func RegisterCipher

func RegisterCipher(oid asn1.ObjectIdentifier, cipher func() Cipher)

Types

type Cipher

type Cipher interface {
	KeySize() int
	Encrypt(key, plaintext []byte) (*pkix.AlgorithmIdentifier, []byte, error)
	Decrypt(key []byte, parameters *asn1.RawValue, encryptedKey []byte) ([]byte, error)
	OID() asn1.ObjectIdentifier
}

func GetCipher

func GetCipher(alg pkix.AlgorithmIdentifier) (Cipher, error)

Jump to

Keyboard shortcuts

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