zcrypto

package
v0.0.0-...-ca6a5ed Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AnsiX923 ansiX923
View Source
var Base62 b62
View Source
var Base64 b64
View Source
var Base64Url b64u
View Source
var Iso7816 iso7816
View Source
var MD5 _MD5
View Source
var NoPad noPad
View Source
var PKCS5 pkcs7
View Source
var PKCS7 pkcs7
View Source
var SHA1 _SHA1
View Source
var SHA256 _SHA256
View Source
var SHA512 _SHA512
View Source
var Zero zero

Functions

func AESCBCDecrypt

func AESCBCDecrypt(encrypted, key, iv []byte, pad Pad) ([]byte, error)

AESCBCDecrypt 普通解密

func AESCBCDecryptWithBase64

func AESCBCDecryptWithBase64(baseEncrypted, key, iv []byte, pad Pad) (string, error)

AESCBCDecryptWithBase64 base64编码后的加密串,返回原始数据

func AESCBCDecryptWithSalt

func AESCBCDecryptWithSalt(data, key []byte, iter int, magic string, pad Pad, h func() hash.Hash) ([]byte, error)

func AESCBCEncrypt

func AESCBCEncrypt(origData, key, iv []byte, pad Pad) ([]byte, error)

AESCBCEncrypt 普通加密

func AESCBCEncryptWithBase64

func AESCBCEncryptWithBase64(origData, key, iv []byte, pad Pad) (string, error)

AESCBCEncryptWithBase64 加密 结果返回base64编码后的string

func AESCBCEncryptWithSalt

func AESCBCEncryptWithSalt(origData, key []byte, iter int, magic string, pad Pad, h func() hash.Hash) ([]byte, error)

func AESCFBDecrypt

func AESCFBDecrypt(encrypted, key, iv []byte, pad Pad) ([]byte, error)

func AESCFBEncrypt

func AESCFBEncrypt(origData, key, iv []byte, pad Pad) ([]byte, error)

func AESDecryptWithSalt

func AESDecryptWithSalt(encrypted, key []byte, iterCount int, magic string, h func() hash.Hash, pad Pad, f func(encrypted, key, iv []byte, pad Pad) ([]byte, error)) ([]byte, error)

func AESECBDecrypt

func AESECBDecrypt(encrypted, key []byte, pad Pad) ([]byte, error)

func AESECBEncrypt

func AESECBEncrypt(origData, key []byte, pad Pad) ([]byte, error)

func AESEncryptWithSalt

func AESEncryptWithSalt(origData, key []byte, iter int, magic string, h func() hash.Hash, pad Pad, f func(origData, key, iv []byte, pad Pad) ([]byte, error)) ([]byte, error)

func AESGCMDecrypt

func AESGCMDecrypt(encrypted, key, additional []byte) ([]byte, error)

func AESGCMDecryptWithNonce

func AESGCMDecryptWithNonce(encrypted, key, nonce, additional []byte) ([]byte, error)

func AESGCMEncrypt

func AESGCMEncrypt(origData, key, additional []byte) ([]byte, error)

func AESGCMEncryptWithNonce

func AESGCMEncryptWithNonce(origData, key, nonce, additional []byte) ([]byte, error)

func HMacEx

func HMacEx(h func() hash.Hash, key []byte, bs []byte) string

func HMacMD5

func HMacMD5(key []byte, bs []byte) string

func HMacSHA1

func HMacSHA1(key []byte, bs []byte) string

func HMacSHA256

func HMacSHA256(key []byte, bs []byte) string

Types

type Hash

type Hash interface {
	DoString(string) string
	DoBytes([]byte) string
}

type HashMethod

type HashMethod struct {
	// contains filtered or unexported fields
}

func NewHashMethod

func NewHashMethod(h crypto.Hash) *HashMethod

func (*HashMethod) Sign

func (hm *HashMethod) Sign(data []byte) ([]byte, error)

func (*HashMethod) Verify

func (hm *HashMethod) Verify(data []byte, signature []byte) error

type Pad

type Pad interface {
	// Padding 填充明文
	Padding(origData []byte, blockSize int) []byte
	// UnPadding 去除填充数据
	UnPadding(padded []byte, blockSize int) ([]byte, error)
}

type RSAMethod

type RSAMethod struct {
	// contains filtered or unexported fields
}

func NewRSAMethod

func NewRSAMethod(h crypto.Hash, privateKey *rsa.PrivateKey, publicKey *rsa.PublicKey) *RSAMethod

func (*RSAMethod) Sign

func (method *RSAMethod) Sign(data []byte) ([]byte, error)

func (*RSAMethod) Verify

func (method *RSAMethod) Verify(data []byte, signature []byte) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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