feat: add ed25519 package
This commit is contained in:
parent
aa48eb8ac4
commit
93e0ce02f5
|
@ -0,0 +1,27 @@
|
|||
package ed25519
|
||||
|
||||
import (
|
||||
"crypto/ed25519"
|
||||
"git.lumeweb.com/LumeWeb/libs5-go/types"
|
||||
"git.lumeweb.com/LumeWeb/libs5-go/utils"
|
||||
)
|
||||
|
||||
type KeyPairEd25519 struct {
|
||||
Bytes []byte
|
||||
}
|
||||
|
||||
func New(bytes []byte) *KeyPairEd25519 {
|
||||
return &KeyPairEd25519{Bytes: bytes}
|
||||
}
|
||||
|
||||
func (kp *KeyPairEd25519) PublicKey() []byte {
|
||||
return utils.ConcatBytes([]byte{byte(types.HashTypeEd25519)}, kp.PublicKeyRaw())
|
||||
}
|
||||
|
||||
func (kp *KeyPairEd25519) PublicKeyRaw() []byte {
|
||||
return (ed25519.PrivateKey(kp.Bytes).Public()).([]byte)
|
||||
}
|
||||
|
||||
func (kp *KeyPairEd25519) ExtractBytes() []byte {
|
||||
return kp.Bytes
|
||||
}
|
Loading…
Reference in New Issue