48 lines
2.5 KiB
Go
48 lines
2.5 KiB
Go
package errors
|
|
|
|
import "xdx.jelly/xgcl/gerrors"
|
|
|
|
//go:generate stringer -type=ErrorCode -linecomment -output=errors_string.go errors.go
|
|
type ErrorCode gerrors.ErrorCode
|
|
|
|
func (e ErrorCode) Error() string {
|
|
return gerrors.Format(uint32(e), e.String())
|
|
}
|
|
|
|
// error codes
|
|
const (
|
|
ErrInvalidInput ErrorCode = 0x01009000 + iota //输入不合法
|
|
ErrMarshalFailed //Marshal失败
|
|
ErrUnmarshalFailed //Unmarshal失败
|
|
ErrGenerateRandomFailed //生成随机数失败
|
|
ErrEncodeASN1Failed //ASN.1编码失败
|
|
ErrDecodeASN1Failed //ASN.1解码失败
|
|
ErrInvalidPoint //不是SM9曲线上的点
|
|
ErrInvalidMastPublicKey //SM9主公钥不合法
|
|
ErrInvalidPublicKey //SM9公钥不合法
|
|
ErrSignFailed //SM9签名失败
|
|
ErrVerifyFailed //SM9签名验证失败
|
|
ErrEncFailed //SM9加密失败
|
|
ErrDecFailed //SM9解密失败
|
|
ErrKeyExchangeFailed //SM9密钥交换失败
|
|
ErrKeyEncapsuleFailed //SM9密钥封装失败
|
|
ErrKeyUnencapsuleFailed //SM9密钥解封装失败
|
|
ErrKGCRebuildKey //KGC主密钥需要重新
|
|
ErrEncUnsupportedMode //SM9加密不支持的模式
|
|
)
|
|
|
|
// ERR_SM9_INVALID_MLEN_OF_SM4 //明文长度不合法
|
|
// ERR_SM9_INVALID_CLEN_OF_SM4 //密文长度不合法
|
|
// ERR_SM9_DEC_INVALID_C1 //SM9密文C1不是一个有效点
|
|
// ERR_SM9_DEC_KEY_IS_ZERO //SM9解密中得到K1全0
|
|
// ERR_SM9_DEC_INVALID_MAC //SM
|
|
// 解密MAC校验不通过
|
|
// ERR_SM9_KEYUE_INVALID_C1 //SM9解封装密文C1不是一个有效点
|
|
// ERR_SM9_KEYUE_KEY_IS_ZERO //SM9解封装密文K1全0
|
|
// ERR_SM9_KEYEX_CHECK_HASH_FAIL //SM9密钥交换验证失败
|
|
// ERR_SM9_KEYEX_INVALID_POINT //SM9密钥交换接收到的Ra、Rb不是一个有效的点
|
|
// ERR_SM9_SIGN_VERIFY_FAIL //SM9签名验证失败
|
|
// ERR_SM9_ENC_GET_LEN_INVALID_TYPE //SM9根据密文/明文长度、加密类型获取解密明文/加密密文,输入类型错误
|
|
// ERR_SM9_ENC_GET_LEN_INVALID_LEN //输入长度不正确
|
|
// ERR_SM9_INVALID_CLEN //密文长度不合法
|