cryptutil

package
v0.0.0-...-670284f Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2024 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrWrongInputLength = errors.New("helpers/crypt: wrong input length")

	ErrWrongIVSize = errors.New("helpers/crypt: wrong IV length. IV length must equal block size")

	ErrWrongInputParameter = errors.New("helpers/crypt: wrong intput parameter")
)

Functions

func AES256CFBDecrypt

func AES256CFBDecrypt(encrypted []byte, key AES256CFBKey) ([]byte, error)

func AES256CFBEncrypt

func AES256CFBEncrypt(input []byte, key AES256CFBKey) ([]byte, error)

func AESCBCDecrypt

func AESCBCDecrypt(in, key, iv []byte) ([]byte, error)

AESCBCDecrypt AESCBC解密, 并去除PKCS7填充

func AESCBCEncrypt

func AESCBCEncrypt(in, key, iv []byte) ([]byte, error)

AESCBCEncrypt AESCBC加密, 使用PKCS7填充

func CalcMD5

func CalcMD5(input string) string

func DESCBCDecrypt

func DESCBCDecrypt(in, key, iv []byte) ([]byte, error)

DESCBCDecrypt DESCBC解密, 并去除PKCS7填充

func DESCBCEncrypt

func DESCBCEncrypt(in, key, iv []byte) ([]byte, error)

DESCBCEncrypt DESCBC加密, 使用PKCS7填充

func EasyTripleDESECBDecrypt

func EasyTripleDESECBDecrypt(in []byte, passphrase string) ([]byte, error)

3DESECB解密, 并去除PKCS7填充

func EasyTripleDESECBEncrypt

func EasyTripleDESECBEncrypt(in []byte, passphrase string) ([]byte, error)

3DESECB加密, 使用PKCS7填充

func PKCS7Padding

func PKCS7Padding(in []byte, blockSize int) []byte

使用PKCS7填充

func PKCS7Trimming

func PKCS7Trimming(in []byte) ([]byte, error)

去除PKCS7填充

func PublicKeyFromBytes

func PublicKeyFromBytes(n []byte, e int) *rsa.PublicKey

PublicKeyFromBytes 通过字节集生成公钥, e为0时默认使用65537

func PublicKeyFromString

func PublicKeyFromString(n string, e int, base int) (*rsa.PublicKey, error)

PublicKeyFromString 通过字符串生成公钥, e为0时默认使用65537

func RSAEncrypt

func RSAEncrypt(in []byte, key []byte) ([]byte, error)

RSAEncrypt RSA加密

func RSAEncryptNoPadding

func RSAEncryptNoPadding(input []byte, key *rsa.PublicKey) []byte

RSAEncryptNoPadding RSA使用非填充方式加密

func RSAEncryptPKCS1v15

func RSAEncryptPKCS1v15(in []byte, key *rsa.PublicKey) (data []byte, err error)

RSAEncryptPKCS1v15 RSA加密, 并用PKCS1, V1.5填充

func TripleDESCBCDecrypt

func TripleDESCBCDecrypt(in, key, iv []byte) ([]byte, error)

TripleDESCBCDecrypt 3DESCBC解密, 并去除PKCS7填充

func TripleDESCBCEncrypt

func TripleDESCBCEncrypt(in, key, iv []byte) ([]byte, error)

TripleDESCBCEncrypt 3DESCBC加密, 使用PKCS7填充

func TripleDESECBDecrypt

func TripleDESECBDecrypt(in []byte, key TripleDESECBKey) ([]byte, error)

3DESECB解密, 并去除PKCS7填充

func TripleDESECBEncrypt

func TripleDESECBEncrypt(in []byte, key TripleDESECBKey) ([]byte, error)

3DESECB加密, 使用PKCS7填充

Types

type AES256CFBKey

type AES256CFBKey [32]byte

func GenerateAES256CFBKey

func GenerateAES256CFBKey() (ret AES256CFBKey)

type TripleDESECBKey

type TripleDESECBKey [24]byte

func Generate3DESECBKey

func Generate3DESECBKey() (ret TripleDESECBKey)

Jump to

Keyboard shortcuts

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