func (k *LoginKeypair) PublicKey() *base64url.Value {
	return base64url.New(k.public)
}
PublicKey returns the base64 value of the public key
package crypto
import (
	"bytes"
	"context"
	"crypto/hmac"
	"crypto/rand"
	"crypto/sha512"
	"encoding/base64"
	"golang.org/x/crypto/ed25519"
	"golang.org/x/crypto/scrypt"
	base64url "github.com/manifoldco/go-base64"
	"github.com/manifoldco/torus-cli/daemon/ctxutil"
	"github.com/manifoldco/torus-cli/primitive"
)
const (
	Triplesec  = "triplesec-v3"
	EdDSA      = "eddsa"
	Curve25519 = "curve25519"
	EasyBox    = "easybox"
	SecretBox  = "secretbox"
	Scrypt     = "scrypt"
)
const (
	n              = 32768  
	r              = 8
	p              = 1
	keyLen         = 256
	saltBytes      = 16
	masterKeyBytes = 256
)
type LoginKeypair struct {
	public  ed25519.PublicKey
	private ed25519.PrivateKey
	salt    *base64url.Value
}