Documentation ¶
Overview ¶
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/21 13:25
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/20 17:52
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 21:23
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/20 09:47
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/21 14:07
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 22:39
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 22:39
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 22:01
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 22:01
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/20 09:50
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/20 09:50
- @version 1.0
*
- @copyright www.ruomm.com
- @author 牛牛-wanruome@126.com
- @create 2024/6/20 17:52
- @version 1.0
*
- @copyright 像衍科技-idr.ai
- @author 牛牛-研发部-www.ruomm.com
- @create 2024/1/17 22:01
- @version 1.0
Index ¶
- Constants
- func DecodingToByte(encodeMode MODE_ENCODE, dataStr string) ([]byte, error)
- func EncodingToString(encodeMode MODE_ENCODE, data []byte) (string, error)
- func FormatBigInt(bi *big.Int) []byte
- func FormatKeyByData(keyData []byte, tag string) (string, error)
- func FormatKeyByString(keyStr string, tag string) (string, error)
- func GenKeyData(keyLen int) []byte
- func GenKeyString(keyMode MODE_KEY, keyLen int, tag string) (string, error)
- func KeyIVByteToString(keyMode MODE_KEY, keyData []byte, tag string) (string, error)
- func KeyIVStringToByte(keyMode MODE_KEY, keyStr string) ([]byte, error)
- func ParseBigInt(iBytes []byte) (*big.Int, error)
- func Pkcs5Padding(data []byte, blockSize int) []byte
- func Pkcs5UnPadding(decrypted []byte) []byte
- func Pkcs7Byte(a int) byte
- func Pkcs7Padding(data []byte, blockSize int) []byte
- func Pkcs7UnPadding(decrypted []byte) []byte
- func ReadFormatKey(str string) ([]byte, error)
- func RsaKeyByteToString(keyMode MODE_KEY, keyData []byte, public bool) (string, error)
- func RsaKeyStringToByte(keyMode MODE_KEY, keyStr string) ([]byte, error)
- func Sm2KeyByteToString(keyMode MODE_KEY, keyData []byte, public bool) (string, error)
- func Sm2KeyStringToByte(keyMode MODE_KEY, keyStr string) ([]byte, error)
- func Sm3Sum(sha []byte) ([]byte, error)
- func Sm3SumByString(encodeMode MODE_ENCODE, str string) (string, error)
- func Sm3SumFile(origFile string) ([]byte, error)
- func Sm3SumFileByString(encodeMode MODE_ENCODE, origFile string) (string, error)
- func Sum(hash crypto.Hash, sha []byte) ([]byte, error)
- func SumByString(encodeMode MODE_ENCODE, hash crypto.Hash, str string) (string, error)
- func SumFile(hash crypto.Hash, origFile string) ([]byte, error)
- func SumFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string) (string, error)
- type EncryptHelper
- type MODE_ENCODE
- type MODE_KEY
- type MODE_PADDING
- type RsaHelper
- type SIGN_MARSHAL_MODE
- type SM2_MODE
- type Sm2Helper
- type XAes
- func (x *XAes) DecDataCBC(dataEnc []byte) ([]byte, error)
- func (x *XAes) DecDataECB(dataEnc []byte) ([]byte, error)
- func (x *XAes) DecFileCBC(pathEnc string, pathDest string) error
- func (x *XAes) DecFileECB(pathEnc string, pathDest string) error
- func (x *XAes) DecStringCBC(strEnc string) (string, error)
- func (x *XAes) DecStringECB(strEnc string) (string, error)
- func (x *XAes) EncDataCBC(data []byte) ([]byte, error)
- func (x *XAes) EncDataECB(data []byte) ([]byte, error)
- func (x *XAes) EncFileCBC(pathSrc string, pathEnc string) error
- func (x *XAes) EncFileECB(pathSrc string, pathEnc string) error
- func (x *XAes) EncStringCBC(str string) (string, error)
- func (x *XAes) EncStringECB(str string) (string, error)
- func (x *XAes) GenIVString() (string, error)
- func (x *XAes) GenKeyIvData(len int) ([]byte, error)
- func (x *XAes) GenKeyIvString(len int) (string, error)
- func (x *XAes) GetBlockSize() (int, error)
- func (x *XAes) GetIVData() []byte
- func (x *XAes) GetIVString() (string, error)
- func (x *XAes) GetKeyData() []byte
- func (x *XAes) GetKeyString() (string, error)
- func (x *XAes) ModeOfEncode() MODE_ENCODE
- func (x *XAes) ModeOfKey() MODE_KEY
- func (x *XAes) ModeOfPadding() MODE_PADDING
- func (x *XAes) Padding(data []byte, blockSize int) []byte
- func (x *XAes) RestoreKeyIV(keyStr string) ([]byte, error)
- func (x *XAes) SetAutoFillKey(autoFillKey bool)
- func (x *XAes) SetBlockSize(blockSize int)
- func (x *XAes) SetIVData(iv []byte)
- func (x *XAes) SetIVString(ivStr string) error
- func (x *XAes) SetKeyData(key []byte)
- func (x *XAes) SetKeyString(keyStr string) error
- func (x *XAes) UnPadding(data []byte, blockSize int) []byte
- type XDes
- func (x *XDes) DecDataCBC(dataEnc []byte) ([]byte, error)
- func (x *XDes) DecDataECB(dataEnc []byte) ([]byte, error)
- func (x *XDes) DecFileCBC(pathEnc string, pathDest string) error
- func (x *XDes) DecFileECB(pathEnc string, pathDest string) error
- func (x *XDes) DecStringCBC(strEnc string) (string, error)
- func (x *XDes) DecStringECB(strEnc string) (string, error)
- func (x *XDes) EncDataCBC(data []byte) ([]byte, error)
- func (x *XDes) EncDataECB(data []byte) ([]byte, error)
- func (x *XDes) EncFileCBC(pathSrc string, pathEnc string) error
- func (x *XDes) EncFileECB(pathSrc string, pathEnc string) error
- func (x *XDes) EncStringCBC(str string) (string, error)
- func (x *XDes) EncStringECB(str string) (string, error)
- func (x *XDes) GenIVString() (string, error)
- func (x *XDes) GenKeyIvData(len int) ([]byte, error)
- func (x *XDes) GenKeyIvString(len int) (string, error)
- func (x *XDes) GetBlockSize() (int, error)
- func (x *XDes) GetIVData() []byte
- func (x *XDes) GetIVString() (string, error)
- func (x *XDes) GetKeyData() []byte
- func (x *XDes) GetKeyString() (string, error)
- func (x *XDes) ModeOfEncode() MODE_ENCODE
- func (x *XDes) ModeOfKey() MODE_KEY
- func (x *XDes) ModeOfPadding() MODE_PADDING
- func (x *XDes) Padding(data []byte, blockSize int) []byte
- func (x *XDes) RestoreKeyIV(keyStr string) ([]byte, error)
- func (x *XDes) SetAutoFillKey(autoFillKey bool)
- func (x *XDes) SetBlockSize(blockSize int)
- func (x *XDes) SetIVData(iv []byte)
- func (x *XDes) SetIVString(ivStr string) error
- func (x *XDes) SetKeyData(key []byte)
- func (x *XDes) SetKeyString(keyStr string) error
- func (x *XDes) UnPadding(data []byte, blockSize int) []byte
- type XRsa
- func (x *XRsa) DecryptPKCS1v15(encMsg []byte) ([]byte, error)
- func (x *XRsa) DecryptPKCS1v15Big(encMsg []byte) ([]byte, error)
- func (x *XRsa) DecryptPKCS1v15File(encFile string, decFile string) error
- func (x *XRsa) DecryptPKCS1v15String(encodeMode MODE_ENCODE, encStr string) (string, error)
- func (x *XRsa) DecryptPKCS1v15StringBig(encodeMode MODE_ENCODE, encStr string) (string, error)
- func (x *XRsa) EncryptPKCS1v15(origMsg []byte) ([]byte, error)
- func (x *XRsa) EncryptPKCS1v15Big(origMsg []byte) ([]byte, error)
- func (x *XRsa) EncryptPKCS1v15File(origFile string, encFile string, emptyEncrypt bool) error
- func (x *XRsa) EncryptPKCS1v15String(encodeMode MODE_ENCODE, origStr string) (string, error)
- func (x *XRsa) EncryptPKCS1v15StringBig(encodeMode MODE_ENCODE, origStr string) (string, error)
- func (x *XRsa) FormatPrivateKey(modeOfKey MODE_KEY) (string, error)
- func (x *XRsa) FormatPublicKey(modeOfKey MODE_KEY) (string, error)
- func (x *XRsa) GenrateKeyPair(bits int) error
- func (x *XRsa) GetSizeOfKey() int
- func (x *XRsa) KeyPair() (*rsa.PrivateKey, *rsa.PublicKey)
- func (x *XRsa) LoadPrivateKey(modeOfKey MODE_KEY, priKeyStr string) error
- func (x *XRsa) LoadPulicKey(modeOfKey MODE_KEY, pubKeyStr string) error
- func (x *XRsa) ModeOfPadding() MODE_PADDING
- func (x *XRsa) SetPrivateKey(priKey []byte) error
- func (x *XRsa) SetPubicKey(pubKey []byte) error
- func (x *XRsa) SetSizeOfKey(sizeOfKey int)
- func (x *XRsa) SignPSS(hash crypto.Hash, origData []byte, opts *rsa.PSSOptions) ([]byte, error)
- func (x *XRsa) SignPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, opts *rsa.PSSOptions) (string, error)
- func (x *XRsa) SignPSSFile(hash crypto.Hash, origFile string, opts *rsa.PSSOptions) ([]byte, error)
- func (x *XRsa) SignPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, ...) (string, error)
- func (x *XRsa) SizeOfPrivateKey() int
- func (x *XRsa) SizeOfPublicKey() int
- func (x *XRsa) VerifyPSS(hash crypto.Hash, origData []byte, sig []byte, opts *rsa.PSSOptions) error
- func (x *XRsa) VerifyPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, sigStr string, ...) error
- func (x *XRsa) VerifyPSSFile(hash crypto.Hash, origFile string, sig []byte, opts *rsa.PSSOptions) error
- func (x *XRsa) VerifyPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, sigStr string, ...) error
- type XSm2
- func (x *XSm2) Decrypt(encMsg []byte, c1c2c3Mode bool) ([]byte, error)
- func (x *XSm2) DecryptAsn1(encMsg []byte) ([]byte, error)
- func (x *XSm2) DecryptAsn1String(encodeMode MODE_ENCODE, encStr string) (string, error)
- func (x *XSm2) DecryptString(encodeMode MODE_ENCODE, encStr string, c1c2c3Mode bool) (string, error)
- func (x *XSm2) Encrypt(origMsg []byte, c1c2c3Mode bool) ([]byte, error)
- func (x *XSm2) EncryptAsn1(origMsg []byte) ([]byte, error)
- func (x *XSm2) EncryptAsn1String(encodeMode MODE_ENCODE, origStr string) (string, error)
- func (x *XSm2) EncryptString(encodeMode MODE_ENCODE, origStr string, c1c2c3Mode bool) (string, error)
- func (x *XSm2) FormatPrivateKey(modeOfKey MODE_KEY, pwd []byte) (string, error)
- func (x *XSm2) FormatPublicKey(modeOfKey MODE_KEY) (string, error)
- func (x *XSm2) GenrateKeyPair() error
- func (x *XSm2) GetSizeOfKey() int
- func (x *XSm2) KeyPair() (*sm2.PrivateKey, *sm2.PublicKey)
- func (x *XSm2) LoadPrivateKey(modeOfKey MODE_KEY, priKeyStr string, pwd []byte) error
- func (x *XSm2) LoadPulicKey(modeOfKey MODE_KEY, pubKeyStr string) error
- func (x *XSm2) ModeOfPadding() MODE_PADDING
- func (x *XSm2) SetPrivateKey(priKey []byte) error
- func (x *XSm2) SetPubicKey(pubKey []byte) error
- func (x *XSm2) SetSignMarshalMode(signMarshalMode SIGN_MARSHAL_MODE)
- func (x *XSm2) SetSizeOfKey(sizeOfKey int)
- func (x *XSm2) SizeOfPrivateKey() int
- func (x *XSm2) SizeOfPublicKey() int
- func (x *XSm2) Sm2Sign(origMsg []byte, uid []byte) ([]byte, error)
- func (x *XSm2) Sm2SignString(encodeMode MODE_ENCODE, origMsg string, uid []byte) (string, error)
- func (x *XSm2) Sm2Verify(origMsg []byte, uid []byte, sign []byte) (bool, error)
- func (x *XSm2) Sm2VerifyString(encodeMode MODE_ENCODE, origMsg string, uid []byte, sigStr string) (bool, error)
- type XSm4
- func (x *XSm4) DecDataCBC(dataEnc []byte) ([]byte, error)
- func (x *XSm4) DecDataECB(dataEnc []byte) ([]byte, error)
- func (x *XSm4) DecFileCBC(pathEnc string, pathDest string) error
- func (x *XSm4) DecFileECB(pathEnc string, pathDest string) error
- func (x *XSm4) DecStringCBC(strEnc string) (string, error)
- func (x *XSm4) DecStringECB(strEnc string) (string, error)
- func (x *XSm4) EncDataCBC(data []byte) ([]byte, error)
- func (x *XSm4) EncDataECB(data []byte) ([]byte, error)
- func (x *XSm4) EncFileCBC(pathSrc string, pathEnc string) error
- func (x *XSm4) EncFileECB(pathSrc string, pathEnc string) error
- func (x *XSm4) EncStringCBC(str string) (string, error)
- func (x *XSm4) EncStringECB(str string) (string, error)
- func (x *XSm4) GenIVString() (string, error)
- func (x *XSm4) GenKeyIvData(len int) ([]byte, error)
- func (x *XSm4) GenKeyIvString(len int) (string, error)
- func (x *XSm4) GetBlockSize() (int, error)
- func (x *XSm4) GetIVData() []byte
- func (x *XSm4) GetIVString() (string, error)
- func (x *XSm4) GetKeyData() []byte
- func (x *XSm4) GetKeyString() (string, error)
- func (x *XSm4) ModeOfEncode() MODE_ENCODE
- func (x *XSm4) ModeOfKey() MODE_KEY
- func (x *XSm4) ModeOfPadding() MODE_PADDING
- func (x *XSm4) Padding(data []byte, blockSize int) []byte
- func (x *XSm4) RestoreKeyIV(keyStr string) ([]byte, error)
- func (x *XSm4) SetAutoFillKey(autoFillKey bool)
- func (x *XSm4) SetBlockSize(blockSize int)
- func (x *XSm4) SetIVData(iv []byte)
- func (x *XSm4) SetIVString(ivStr string) error
- func (x *XSm4) SetKeyData(key []byte)
- func (x *XSm4) SetKeyString(keyStr string) error
- func (x *XSm4) UnPadding(data []byte, blockSize int) []byte
Constants ¶
const ( MODE_KEY_BASE64 MODE_KEY = 1 MODE_KEY_HEX_LOWER MODE_KEY = 2 MODE_KEY_HEX_UPPER MODE_KEY = 3 MODE_KEY_STRING MODE_KEY = 4 MODE_KEY_PEM MODE_KEY = 5 MODE_ENCODE_BASE64 MODE_ENCODE = 1 MODE_ENCODE_HEX_LOWER MODE_ENCODE = 2 MODE_ENCODE_HEX_UPPER MODE_ENCODE = 3 MODE_PADDING_PKCS7 MODE_PADDING = "pkcs7" MODE_PADDING_PKCS5 MODE_PADDING = "pkcs5" FILE_BUFFER_SIZE = 1024 )
Variables ¶
This section is empty.
Functions ¶
func DecodingToByte ¶
func DecodingToByte(encodeMode MODE_ENCODE, dataStr string) ([]byte, error)
func EncodingToString ¶
func EncodingToString(encodeMode MODE_ENCODE, data []byte) (string, error)
func FormatBigInt ¶
func GenKeyData ¶
func KeyIVByteToString ¶
func Pkcs5Padding ¶
func Pkcs7Padding ¶
func RsaKeyByteToString ¶
func Sm2KeyByteToString ¶
func Sm3SumByString ¶
func Sm3SumByString(encodeMode MODE_ENCODE, str string) (string, error)
func Sm3SumFile ¶
func Sm3SumFileByString ¶
func Sm3SumFileByString(encodeMode MODE_ENCODE, origFile string) (string, error)
func SumByString ¶
func SumFileByString ¶
Types ¶
type EncryptHelper ¶
type EncryptHelper interface { // key模式 ModeOfKey() MODE_KEY // 字节转字符串编码方案 ModeOfEncode() MODE_ENCODE // Padding的模式 ModeOfPadding() MODE_PADDING // 设置key字节数组 SetKeyData(key []byte) // 设置iv字节数组 SetIVData(iv []byte) // 设置key字符串 SetKeyString(keyStr string) error // 设置iv字符串 SetIVString(ivStr string) error // 获取key字节数组 GetKeyData() []byte // 设置iv字节数组 GetIVData() []byte // 获取key字符串 GetKeyString() (string, error) // 获取iv字符串 GetIVString() (string, error) // 设置Blocksize SetBlockSize(blockSize int) // 获取Blocksize GetBlockSize() (int, error) // 生成key或iv字节数组 GenKeyIvData(len int) ([]byte, error) // 生成key或iv字符串 GenKeyIvString(len int) (string, error) // 生成iv字符串 GenIVString() (string, error) //// 生成iv字节数组 //GenIVData() ([]byte, error) //// 生成iv字符串 //GenIVString() (string, error) // 还原key或iv字符串为key或iv字节数组 RestoreKeyIV(keyStr string) ([]byte, error) // 设置秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24 SetAutoFillKey(autoFillKey bool) // ECB加密字节数组 EncDataECB(data []byte) ([]byte, error) // CBC加密字节数组 EncDataCBC(data []byte) ([]byte, error) // ECB解密字节数组 DecDataECB(dataEnc []byte) ([]byte, error) // CBC解密字节数组 DecDataCBC(dataEnc []byte) ([]byte, error) // ECB加密字符串 EncStringECB(str string) (string, error) // CBC加密字符串 EncStringCBC(str string) (string, error) // ECB解密字符串 DecStringECB(strEnc string) (string, error) // CBC解密字符串 DecStringCBC(strEnc string) (string, error) // ECB加密字符串 EncFileECB(fileSrc string, fileEnc string) error // CBC加密字符串 EncFileCBC(fileSrc string, fileEnc string) error // ECB解密字符串 DecFileECB(fileEnc string, fileDest string) error // CBC解密字符串 DecFileCBC(fileEnc string, fileDest string) error // Padding&UnPadding Padding(data []byte, blockSize int) []byte UnPadding(data []byte, blockSize int) []byte }
type MODE_ENCODE ¶
type MODE_ENCODE int
func ParseEncodeMode ¶
func ParseEncodeMode(encodeMode MODE_ENCODE) MODE_ENCODE
type MODE_PADDING ¶
type MODE_PADDING string
func ParsePaddingMode ¶
func ParsePaddingMode(paddingMode MODE_PADDING) MODE_PADDING
type RsaHelper ¶
type RsaHelper interface { // 生成秘钥对 GenrateKeyPair(bits int) error // 获取RSA秘钥对 KeyPair() (*rsa.PrivateKey, *rsa.PublicKey) // 设置秘钥长度 SetSizeOfKey(sizeOfKey int) // 获取秘钥长度 GetSizeOfKey() int // 公钥长度 SizeOfPublicKey() int // 秘钥长度 SizeOfPrivateKey() int // 字节转字符串编码方案 //ModeOfEncode() MODE_ENCODE // Padding的模式 ModeOfPadding() MODE_PADDING // 设置公钥 SetPubicKey(pubKey []byte) error // 设置私钥 SetPrivateKey(priKey []byte) error // 加载公钥 LoadPulicKey(modeOfKey MODE_KEY, pubKeyStr string) error // 加载私钥 LoadPrivateKey(modeOfKey MODE_KEY, priKeyStr string) error // 格式化公钥 FormatPublicKey(modeOfKey MODE_KEY) (string, error) // 格式化私钥 FormatPrivateKey(modeOfKey MODE_KEY) (string, error) // 使用公钥进行PKCS1v15加密,待加密信息长度不能超过秘钥模长-11 EncryptPKCS1v15(origMsg []byte) ([]byte, error) // 使用私钥进行PKCS1v15解密,解密后信息长度不超过秘钥模长-11 DecryptPKCS1v15(encMsg []byte) ([]byte, error) // 使用公钥进行PKCS1v15加密,待加密信息长度超过秘钥模长-11则使用分段加密 EncryptPKCS1v15Big(origMsg []byte) ([]byte, error) // 使用私钥进行PKCS1v15解密,待解密后信息长度超过秘钥模长则使用分段解密 DecryptPKCS1v15Big(encMsg []byte) ([]byte, error) // 使用公钥进行PKCS1v15加密,待加密信息长度不能超过秘钥模长-11 EncryptPKCS1v15String(encodeMode MODE_ENCODE, origStr string) (string, error) // 使用私钥进行PKCS1v15解密,解密后信息长度不超过秘钥模长-11 DecryptPKCS1v15String(encodeMode MODE_ENCODE, encStr string) (string, error) // 使用公钥进行PKCS1v15加密,待加密信息长度超过秘钥模长-11则使用分段加密 EncryptPKCS1v15StringBig(encodeMode MODE_ENCODE, origStr string) (string, error) // 使用私钥进行PKCS1v15解密,待解密后信息长度超过秘钥模长则使用分段解密 DecryptPKCS1v15StringBig(encodeMode MODE_ENCODE, encStr string) (string, error) // 使用私钥进行签名-字节数组模式 SignPSS(hash crypto.Hash, origData []byte, opts *rsa.PSSOptions) ([]byte, error) // 使用公钥验证签名-字节数组模式 VerifyPSS(hash crypto.Hash, origData []byte, sig []byte, opts *rsa.PSSOptions) error // 使用私钥进行签名-字符串模式 SignPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, opts *rsa.PSSOptions) (string, error) // 使用公钥验证签名-字符串模式 VerifyPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, sigStr string, opts *rsa.PSSOptions) error // 使用公钥进行PKCS1v15文件加密 EncryptPKCS1v15File(origFile string, encFile string, emptyEncrypt bool) error // 使用私钥进行PKCS1v15文件解密 DecryptPKCS1v15File(encFile string, decFile string) error // 使用私钥进行签名-文件字节模式 SignPSSFile(hash crypto.Hash, origFile string, opts *rsa.PSSOptions) ([]byte, error) // 使用公钥验证签名-文件字节模式 VerifyPSSFile(hash crypto.Hash, origFile string, sig []byte, opts *rsa.PSSOptions) error // 使用私钥进行签名-文件字符串模式 SignPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, opts *rsa.PSSOptions) (string, error) // 使用公钥验证签名-文件字符串模式 VerifyPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, sigStr string, opts *rsa.PSSOptions) error }
type SIGN_MARSHAL_MODE ¶
type SIGN_MARSHAL_MODE int
const ( SIGN_MARSHAL_ASN1 SIGN_MARSHAL_MODE = 0 SIGN_MARSHAL_RS SIGN_MARSHAL_MODE = 1 SIGN_MARSHAL_SR SIGN_MARSHAL_MODE = 2 )
type Sm2Helper ¶
type Sm2Helper interface { // 生成秘钥对 GenrateKeyPair() error // 获取SM2秘钥对 KeyPair() (*sm2.PrivateKey, *sm2.PublicKey) // 设置秘钥长度 SetSizeOfKey(sizeOfKey int) // 获取秘钥长度 GetSizeOfKey() int // 公钥长度 SizeOfPublicKey() int // 秘钥长度 SizeOfPrivateKey() int // Padding的模式 ModeOfPadding() MODE_PADDING // 设置公钥 SetPubicKey(pubKey []byte) error // 设置私钥 SetPrivateKey(priKey []byte) error // 加载公钥 LoadPulicKey(modeOfKey MODE_KEY, pubKeyStr string) error // 加载私钥 LoadPrivateKey(modeOfKey MODE_KEY, priKeyStr string, pwd []byte) error // 格式化公钥 FormatPublicKey(modeOfKey MODE_KEY) (string, error) // 格式化私钥 FormatPrivateKey(modeOfKey MODE_KEY, pwd []byte) (string, error) // 设置签名数据格式化方式,ASN1、RS、SR SetSignMarshalMode(signMarshalMode SIGN_MARSHAL_MODE) // 使用公钥进行SM2加密-字节模式 Encrypt(origMsg []byte, c1c2c3Mode bool) ([]byte, error) // 使用私钥进行SM2解密-字节模式 Decrypt(encMsg []byte, c1c2c3Mode bool) ([]byte, error) // 使用公钥进行SM2加密-字符串模式 EncryptString(encodeMode MODE_ENCODE, origStr string, c1c2c3Mode bool) (string, error) // 使用私钥进行SM2解密-字符串模式 DecryptString(encodeMode MODE_ENCODE, encStr string, c1c2c3Mode bool) (string, error) // 使用公钥进行SM2加密-字节模式 EncryptAsn1(origMsg []byte) ([]byte, error) // 使用私钥进行SM2解密-字节模式 DecryptAsn1(encMsg []byte) ([]byte, error) // 使用公钥进行SM2加密-字符串模式 EncryptAsn1String(encodeMode MODE_ENCODE, origStr string) (string, error) // 使用私钥进行SM2解密-字符串模式 DecryptAsn1String(encodeMode MODE_ENCODE, encStr string) (string, error) // 使用私钥进行签名-字节数组模式 Sm2Sign(origMsg []byte, uid []byte) ([]byte, error) // 使用公钥验证签名-字节数组模式 Sm2Verify(origMsg []byte, uid []byte, sign []byte) (bool, error) // 使用私钥进行签名-字节串模式 Sm2SignString(encodeMode MODE_ENCODE, origMsg string, uid []byte) (string, error) // 使用公钥验证签名-字节串模式 Sm2VerifyString(encodeMode MODE_ENCODE, origMsg string, uid []byte, sigStr string) (bool, error) }
type XAes ¶
type XAes struct { ModeKey MODE_KEY ModeEncode MODE_ENCODE ModePadding MODE_PADDING Key []byte Iv []byte AutoFillKey bool // 秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24 //KeyLen int //IvLen int BlockSize int //BlockSizeByKey bool PaddingHelper func(data []byte, blockSize int) []byte UnPaddingHelper func(data []byte, blockSize int) []byte }
func (*XAes) RestoreKeyIV ¶
还原key或iv字符串为key或iv字节数组
func (*XAes) SetAutoFillKey ¶
设置秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24
type XDes ¶
type XDes struct { ModeKey MODE_KEY ModeEncode MODE_ENCODE ModePadding MODE_PADDING Key []byte Iv []byte AutoFillKey bool // 秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24 //KeyLen int //IvLen int BlockSize int //BlockSizeByKey bool PaddingHelper func(data []byte, blockSize int) []byte UnPaddingHelper func(data []byte, blockSize int) []byte }
func (*XDes) RestoreKeyIV ¶
还原key或iv字符串为key或iv字节数组
func (*XDes) SetAutoFillKey ¶
设置秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24
type XRsa ¶
type XRsa struct { //ModeKey MODE_KEY //ModeEncode MODE_ENCODE ModePadding MODE_PADDING SizeOfKey int SizeAuto bool PublicKey *rsa.PublicKey PrivateKey *rsa.PrivateKey PaddingHelper func(data []byte, blockSize int) []byte UnPaddingHelper func(data []byte, blockSize int) []byte }
func (*XRsa) DecryptPKCS1v15 ¶
使用私钥进行PKCS1v15解密,解密后信息长度不超过秘钥模长-11
func (*XRsa) DecryptPKCS1v15Big ¶
使用私钥进行PKCS1v15解密,待解密后信息长度超过秘钥模长则使用分段解密
func (*XRsa) DecryptPKCS1v15File ¶
使用私钥进行PKCS1v15文件解密
func (*XRsa) DecryptPKCS1v15String ¶
func (x *XRsa) DecryptPKCS1v15String(encodeMode MODE_ENCODE, encStr string) (string, error)
使用私钥进行PKCS1v15解密,解密后信息长度不超过秘钥模长-11
func (*XRsa) DecryptPKCS1v15StringBig ¶
func (x *XRsa) DecryptPKCS1v15StringBig(encodeMode MODE_ENCODE, encStr string) (string, error)
使用私钥进行PKCS1v15解密,待解密后信息长度超过秘钥模长则使用分段解密
func (*XRsa) EncryptPKCS1v15 ¶
使用公钥进行PKCS1v15加密,待加密信息长度不能超过秘钥模长-11
func (*XRsa) EncryptPKCS1v15Big ¶
使用公钥进行PKCS1v15加密,待加密信息长度超过秘钥模长-11则使用分段加密
func (*XRsa) EncryptPKCS1v15File ¶
使用公钥进行PKCS1v15文件加密
func (*XRsa) EncryptPKCS1v15String ¶
func (x *XRsa) EncryptPKCS1v15String(encodeMode MODE_ENCODE, origStr string) (string, error)
使用公钥进行PKCS1v15加密,待加密信息长度不能超过秘钥模长-11
func (*XRsa) EncryptPKCS1v15StringBig ¶
func (x *XRsa) EncryptPKCS1v15StringBig(encodeMode MODE_ENCODE, origStr string) (string, error)
使用公钥进行PKCS1v15加密,待加密信息长度超过秘钥模长-11则使用分段加密
func (*XRsa) FormatPrivateKey ¶
格式化私钥
func (*XRsa) FormatPublicKey ¶
格式化公钥
func (*XRsa) LoadPrivateKey ¶
加载私钥
func (*XRsa) LoadPulicKey ¶
加载公钥
func (*XRsa) SignPSSByString ¶
func (x *XRsa) SignPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, opts *rsa.PSSOptions) (string, error)
使用私钥进行签名-字符串模式
func (*XRsa) SignPSSFile ¶
使用私钥进行签名-文件字节模式
func (*XRsa) SignPSSFileByString ¶
func (x *XRsa) SignPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, opts *rsa.PSSOptions) (string, error)
使用私钥进行签名-文件字符串模式
func (*XRsa) VerifyPSSByString ¶
func (x *XRsa) VerifyPSSByString(encodeMode MODE_ENCODE, hash crypto.Hash, origStr string, sigStr string, opts *rsa.PSSOptions) error
使用公钥验证签名-字符串模式
func (*XRsa) VerifyPSSFile ¶
func (x *XRsa) VerifyPSSFile(hash crypto.Hash, origFile string, sig []byte, opts *rsa.PSSOptions) error
使用公钥验证签名-文件字节模式
func (*XRsa) VerifyPSSFileByString ¶
func (x *XRsa) VerifyPSSFileByString(encodeMode MODE_ENCODE, hash crypto.Hash, origFile string, sigStr string, opts *rsa.PSSOptions) error
使用公钥验证签名-文件字符串模式
type XSm2 ¶
type XSm2 struct { ModePadding MODE_PADDING SizeOfKey int SizeAuto bool PublicKey *sm2.PublicKey PrivateKey *sm2.PrivateKey SignMarshalMode SIGN_MARSHAL_MODE PaddingHelper func(data []byte, blockSize int) []byte UnPaddingHelper func(data []byte, blockSize int) []byte }
func (*XSm2) DecryptAsn1 ¶
使用私钥进行SM2解密-字节模式
func (*XSm2) DecryptAsn1String ¶
func (x *XSm2) DecryptAsn1String(encodeMode MODE_ENCODE, encStr string) (string, error)
使用私钥进行SM2解密-字符串模式
func (*XSm2) DecryptString ¶
func (x *XSm2) DecryptString(encodeMode MODE_ENCODE, encStr string, c1c2c3Mode bool) (string, error)
使用私钥进行SM2解密-字符串模式
func (*XSm2) EncryptAsn1 ¶
使用公钥进行SM2加密-字节模式
func (*XSm2) EncryptAsn1String ¶
func (x *XSm2) EncryptAsn1String(encodeMode MODE_ENCODE, origStr string) (string, error)
使用公钥进行SM2加密-字符串模式
func (*XSm2) EncryptString ¶
func (x *XSm2) EncryptString(encodeMode MODE_ENCODE, origStr string, c1c2c3Mode bool) (string, error)
使用公钥进行SM2加密-字符串模式
func (*XSm2) FormatPrivateKey ¶
格式化私钥
func (*XSm2) FormatPublicKey ¶
格式化公钥
func (*XSm2) LoadPrivateKey ¶
加载私钥
func (*XSm2) LoadPulicKey ¶
加载公钥
func (*XSm2) SetSignMarshalMode ¶
func (x *XSm2) SetSignMarshalMode(signMarshalMode SIGN_MARSHAL_MODE)
设置签名数据格式化方式,ASN1、RS、SR
func (*XSm2) Sm2SignString ¶
使用私钥进行签名-字节串模式
func (*XSm2) Sm2VerifyString ¶
func (x *XSm2) Sm2VerifyString(encodeMode MODE_ENCODE, origMsg string, uid []byte, sigStr string) (bool, error)
使用公钥验证签名-字节串模式
type XSm4 ¶
type XSm4 struct { ModeKey MODE_KEY ModeEncode MODE_ENCODE ModePadding MODE_PADDING Key []byte Iv []byte AutoFillKey bool // 秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24 //KeyLen int //IvLen int BlockSize int //BlockSizeByKey bool PaddingHelper func(data []byte, blockSize int) []byte UnPaddingHelper func(data []byte, blockSize int) []byte }
func (*XSm4) RestoreKeyIV ¶
还原key或iv字符串为key或iv字节数组
func (*XSm4) SetAutoFillKey ¶
设置秘钥自动补充长度,AES自动补充为16、24、32,des自动补充为8、24