Documentation ¶
Index ¶
- func Linkable(signature1, signature2 []*big.Int) bool
- func SM2ParticipantRandInt(rand io.Reader, pub *ecdsa.PublicKey, msg []byte) (*big.Int, error)
- func Sign(rand io.Reader, participantRandInt ParticipantRandInt, priv *sm2.PrivateKey, ...) ([]*big.Int, error)
- func SimpleParticipantRandInt(rand io.Reader, pub *ecdsa.PublicKey, msg []byte) (*big.Int, error)
- func Verify(pubs []*ecdsa.PublicKey, msg []byte, signature []*big.Int) bool
- type BaseLinkableSigner
- type BaseLinkableVerfier
- type LinkableSignerVariant1
- type LinkableSignerVariant2
- type LinkableVerfierVariant1
- type LinkableVerfierVariant2
- type ParticipantRandInt
- type RingSigner
- type RingVerifier
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SM2ParticipantRandInt ¶
https://www.wangan.com/p/7fyg8kdf13655a55 完全采用了sm2签名随机数r的生成方式,只是这里我们使用的默认uid
func Sign ¶
Types ¶
type BaseLinkableSigner ¶
type BaseLinkableSigner struct { BaseLinkableVerfier // contains filtered or unexported fields }
func NewBaseLinkableSigner ¶
func NewBaseLinkableSigner(privateKey *sm2.PrivateKey, pubs []*ecdsa.PublicKey) *BaseLinkableSigner
func (*BaseLinkableSigner) Sign ¶
func (signer *BaseLinkableSigner) Sign(rand io.Reader, participantRandInt ParticipantRandInt, msg []byte) ([]*big.Int, error)
type BaseLinkableVerfier ¶
type BaseLinkableVerfier struct {
// contains filtered or unexported fields
}
func NewBaseLinkableVerfier ¶
func NewBaseLinkableVerfier(pubs []*ecdsa.PublicKey) *BaseLinkableVerfier
type LinkableSignerVariant1 ¶
type LinkableSignerVariant1 struct { LinkableVerfierVariant1 // contains filtered or unexported fields }
func NewLinkableSignerVariant1 ¶
func NewLinkableSignerVariant1(privateKey *sm2.PrivateKey, pubs []*ecdsa.PublicKey) *LinkableSignerVariant1
func NewLinkableSignerVariant2 ¶
func NewLinkableSignerVariant2(privateKey *sm2.PrivateKey, pubs []*ecdsa.PublicKey) *LinkableSignerVariant1
func (*LinkableSignerVariant1) Sign ¶
func (signer *LinkableSignerVariant1) Sign(rand io.Reader, participantRandInt ParticipantRandInt, msg []byte) ([]*big.Int, error)
type LinkableSignerVariant2 ¶
type LinkableSignerVariant2 struct { LinkableVerfierVariant2 // contains filtered or unexported fields }
func (*LinkableSignerVariant2) Sign ¶
func (signer *LinkableSignerVariant2) Sign(rand io.Reader, participantRandInt ParticipantRandInt, msg []byte) ([]*big.Int, error)
type LinkableVerfierVariant1 ¶
type LinkableVerfierVariant1 struct {
// contains filtered or unexported fields
}
func NewLinkableVerfierVariant1 ¶
func NewLinkableVerfierVariant1(pubs []*ecdsa.PublicKey) *LinkableVerfierVariant1
func NewLinkableVerfierVariant2 ¶
func NewLinkableVerfierVariant2(pubs []*ecdsa.PublicKey) *LinkableVerfierVariant1
type LinkableVerfierVariant2 ¶
type LinkableVerfierVariant2 struct {
// contains filtered or unexported fields
}
type ParticipantRandInt ¶
type RingSigner ¶
Click to show internal directories.
Click to hide internal directories.