Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Argon2Crypto ¶
type Argon2Crypto struct {
// 参数可配置,默认使用推荐值
Memory uint32
Iterations uint32
Parallelism uint8
SaltLength uint32
KeyLength uint32
}
Argon2Crypto 实现 Argon2id 密码哈希算法
type BCryptCrypto ¶
type BCryptCrypto struct{}
func NewBCryptCrypto ¶
func NewBCryptCrypto() *BCryptCrypto
type Crypto ¶
type Crypto interface {
// Encrypt 加密密码,返回加密后的字符串(包含算法标识和盐值)
Encrypt(plainPassword string) (encrypted string, err error)
// Verify 验证密码是否匹配
Verify(plainPassword, encrypted string) (bool, error)
}
Crypto 密码加解密接口
func CreateCrypto ¶
type ECDHCrypto ¶
type ECDHCrypto struct {
// contains filtered or unexported fields
}
ECDHCrypto 实现基于 ECDH 的密钥交换
func (*ECDHCrypto) DeriveSharedSecret ¶
func (e *ECDHCrypto) DeriveSharedSecret(publicKey string) ([]byte, error)
type ECDSACrypto ¶
type ECDSACrypto struct {
// contains filtered or unexported fields
}
ECDSACrypto 实现基于 ECDSA 的加密和验证
func NewECDSACrypto ¶
func NewECDSACrypto() (*ECDSACrypto, error)
NewECDSACrypto 创建一个新的 ECDSACrypto 实例
type HMACCrypto ¶
type HMACCrypto struct {
// contains filtered or unexported fields
}
HMACCrypto 实现基于 HMAC 的加密和验证
func NewHMACCrypto ¶
func NewHMACCrypto(secretKey string) *HMACCrypto
NewHMACCrypto 创建一个新的 HMACCrypto 实例
type PBKDF2Crypto ¶
type PBKDF2Crypto struct {
// 可配置参数,默认使用推荐值
Iterations int
KeyLength int
Hash func() hash.Hash
HashName string
}
PBKDF2Crypto 实现 PBKDF2-HMAC 密码哈希算法
func NewPBKDF2Crypto ¶
func NewPBKDF2Crypto() *PBKDF2Crypto
NewPBKDF2Crypto 创建带默认参数的 PBKDF2 加密器 (SHA256)
func NewPBKDF2WithSHA512 ¶
func NewPBKDF2WithSHA512() *PBKDF2Crypto
NewPBKDF2WithSHA512 创建使用 SHA512 的 PBKDF2 加密器
type RSACrypto ¶
type RSACrypto struct {
// contains filtered or unexported fields
}
RSACrypto 实现 RSA 加密和解密
func NewRSACrypto ¶
NewRSACrypto 创建一个新的 RSACrypto 实例
func (*RSACrypto) ExportPrivateKey ¶
ExportPrivateKey 导出私钥为 PEM 格式
func (*RSACrypto) ExportPublicKey ¶
ExportPublicKey 导出公钥为 PEM 格式
Click to show internal directories.
Click to hide internal directories.