Documentation
¶
Index ¶
- Constants
- Variables
- func CreatePkcs1Keys(keyLength int) (privateKey, publicKey string)
- func CreatePkcs8Keys(keyLength int) (privateKey, publicKey string)
- func MarshalPkcs8PrivateKey(key *rsa.PrivateKey) []byte
- type Aes
- type Base62
- type Chain
- type Context
- func (c *Context) Abort()
- func (c *Context) Close()
- func (c *Context) Deadline() (deadline time.Time, ok bool)
- func (c *Context) Done() <-chan struct{}
- func (c *Context) Err() error
- func (c *Context) Event() *Event
- func (c *Context) Get(key string, defaultVal any) (value any)
- func (c *Context) GetBool(key string, defaultVal bool) (value bool)
- func (c *Context) GetInt(key string, defaultVal int64) (value int64)
- func (c *Context) GetString(key, defaultVal string) (value string)
- func (c *Context) GetUint(key string, defaultVal uint64) (value uint64)
- func (c *Context) IsAborted() bool
- func (c *Context) Next()
- func (c *Context) Set(key string, value any)
- func (c *Context) SetEvent(event *Event)
- func (c *Context) Value(key any) any
- type Event
- type EventManager
- type GetMachineId
- type Handler
- type HashRing
- type I18n
- type IdCode
- type Node
- type NodeList
- type Package
- type Rsa
- func NewRsa(publicKey, privateKey string) (r *Rsa, err error)
- func NewRsaBytes(public, private []byte) (r *Rsa, err error)
- func NewRsaWithPkcs1(publicKey, privateKey string) (r *Rsa, err error)
- func NewRsaWithPkcs1Bytes(public, private []byte) (r *Rsa, err error)
- func NewRsaWithPkcs8(publicKey, privateKey string) (r *Rsa, err error)
- func NewRsaWithPkcs8Bytes(public, private []byte) (r *Rsa, err error)
- func (r *Rsa) Decrypt(secretData []byte) ([]byte, error)
- func (r *Rsa) DecryptOAEP(secretData []byte, hash hash.Hash, label []byte) ([]byte, error)
- func (r *Rsa) Encrypt(data []byte) ([]byte, error)
- func (r *Rsa) EncryptOAEP(data []byte, hash hash.Hash, label []byte) ([]byte, error)
- func (r *Rsa) Sign(data []byte, algorithmSign crypto.Hash) ([]byte, error)
- func (r *Rsa) Verify(data []byte, sign []byte, algorithmSign crypto.Hash) bool
- type SnowFlake
Constants ¶
View Source
const ( ZhCn = `zh_CN` En = `en` )
View Source
const ( ModeWait = 1 ModeMaxTime = 2 ModeError = 3 )
Variables ¶
View Source
var ( ErrInvalidPaddingChar = errors.New(`invalid padding char`) ErrAesDecrypt = errors.New(`aes decrypt error`) )
View Source
var ( DefaultBase62Charset = []byte("M01EK4aFzPcHNwZeUgAfXi3SjTkYmnGpqrJsuR8VohW2LvQ9xy7bB5CtD6dI") DefaultBase62, _ = NewBase62(DefaultBase62Charset) )
View Source
var ( ErrDataEmpty = errors.New("data is empty") ErrDataFormat = errors.New("invalid data format") ErrOutOfRange = errors.New("out of range") ErrAlphanumeric = errors.New("alphanumeric must be [a-zA-Z0-9] and not repeat") ErrAlphanumericLength = errors.New("alphanumeric length must be [50, 62]") ErrTimeBack = errors.New("time go back") ErrMachineId = errors.New("illegal machine id") )
View Source
var ( ErrMsgMapEmpty = errors.New("msgMap can not empty") ErrNoYamlFiles = errors.New("there are no `.yml` or `.yaml` files in this directory") ErrNoJsonFiles = errors.New("there are no `.json` files in this directory") )
View Source
var (
DefaultIdCode, _ = NewIdCode(DefaultBase62, defaultSalt)
)
View Source
var (
DefaultLang = ZhCn
)
View Source
var (
DefaultSF, _ = NewSFByIp(ModeWait, defaultSFBegin.Unix())
)
View Source
var ErrNoServer = errors.New("no server")
Functions ¶
func CreatePkcs1Keys ¶
CreatePkcs1Keys 生成pkcs1格式公钥私钥
func CreatePkcs8Keys ¶
CreatePkcs8Keys 生成pkcs8格式公钥私钥
func MarshalPkcs8PrivateKey ¶
func MarshalPkcs8PrivateKey(key *rsa.PrivateKey) []byte
Types ¶
type Aes ¶
type Aes struct {
// contains filtered or unexported fields
}
Aes Aes加密
func NewAesWithBytes ¶
NewAesWithBytes 实例化Aes
func (*Aes) CbcDecrypt ¶
CbcDecrypt cbc解密
func (*Aes) CbcEncrypt ¶
CbcEncrypt cbc加密
type Base62 ¶ added in v3.0.8
type Chain ¶
type Chain struct {
// contains filtered or unexported fields
}
func (*Chain) RunWithCtx ¶
type Context ¶
type Context struct {
// contains filtered or unexported fields
}
Context 上下文
type EventManager ¶
type EventManager struct {
// contains filtered or unexported fields
}
func (*EventManager) Has ¶
func (em *EventManager) Has(name string) bool
func (*EventManager) On ¶
func (em *EventManager) On(name string, handlers ...Handler)
func (*EventManager) Trigger ¶
func (em *EventManager) Trigger(name string, data any)
func (*EventManager) TriggerWithCtx ¶ added in v3.0.9
func (em *EventManager) TriggerWithCtx(name string, ctx *Context)
type GetMachineId ¶
GetMachineId 获取机器Id
func GetMachineIdByEnv ¶
func GetMachineIdByEnv(key string) GetMachineId
GetMachineIdByEnv 根据环境变量获取机器Id
type HashRing ¶
type HashRing interface { // Store 存储servers Store(servers ...kind.CanHash) // Get 获取server Get(key any) (server kind.CanHash, err error) // Index 根据index获取server Index(index int) (server kind.CanHash, err error) // Add 添加server Add(server kind.CanHash) // Remove 移除server Remove(server kind.CanHash) // Length 获取servers长度 Length() int // Range 遍历servers Range(handler func(index int, server kind.CanHash, hitCount uint64) (handled bool)) }
HashRing Hash环
func NewHashRing ¶
type I18n ¶
I18n 多语言接口
func NewI18nFromJson ¶
NewI18nFromJson 从Json文件配置实例化多语言
func NewI18nFromYaml ¶
NewI18nFromYaml 从Yaml文件配置实例化多语言
type IdCode ¶
type IdCode struct {
// contains filtered or unexported fields
}
func NewIdCodeWithCharset ¶ added in v3.0.8
type Package ¶
type Rsa ¶
type Rsa struct {
// contains filtered or unexported fields
}
Rsa Rsa
func NewRsaWithPkcs1 ¶
NewRsaWithPkcs1 pkcs1实例化Rsa
func NewRsaWithPkcs1Bytes ¶
NewRsaWithPkcs1Bytes pkc1实例化Rsa
func NewRsaWithPkcs8 ¶
NewRsaWithPkcs8 pkcs8实例化Rsa
func NewRsaWithPkcs8Bytes ¶
func (*Rsa) DecryptOAEP ¶ added in v3.0.7
DecryptOAEP 解密
func (*Rsa) EncryptOAEP ¶ added in v3.0.7
EncryptOAEP 加密
type SnowFlake ¶
type SnowFlake interface { // Id 生成id Id() (int64, error) // Info 根据id获取信息 Info(id int64) (timestamp int64, machineId uint8, index int16) // TimeBegin 时间戳起点 TimeBegin() time.Time }
SnowFlake 雪花算法接口,1位0,41位毫秒时间戳,8位机器码,14位递增值
func NewSFByMachineFunc ¶
func NewSFByMachineFunc(mode uint8, machindFunc GetMachineId, beginSeconds int64) (sfl SnowFlake, err error)
NewSFByMachineFunc GetMachineId方式实例化雪花算法
Click to show internal directories.
Click to hide internal directories.