ec

package
v0.0.0-...-c3c44a6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2019 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Copyright (c) 2018 The MATRIX Authors Distributed under the MIT software license, see the accompanying file COPYING or http://www.opensource.org/licenses/mit-license.php

Copyright (c) 2018 The MATRIX Authors Distributed under the MIT software license, see the accompanying file COPYING or http://www.opensource.org/licenses/mit-license.php

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConstructPrivateKey

func ConstructPrivateKey(data []byte, curve elliptic.Curve) *ecdsa.PrivateKey

func DecodePublicKey

func DecodePublicKey(data []byte, curve elliptic.Curve) (*ecdsa.PublicKey, error)

func EncodePublicKey

func EncodePublicKey(key *ecdsa.PublicKey, compressed bool) []byte

func GenerateECKeyPair

func GenerateECKeyPair(c elliptic.Curve, rand io.Reader, alg ECAlgorithm) (*PrivateKey, *PublicKey, error)
func (this *PrivateKey) Public() crypto.PublicKey {
	return &PublicKey{Algorithm: this.Algorithm, PublicKey: &this.PublicKey}
}

Types

type ECAlgorithm

type ECAlgorithm byte
const (
	ECDSA ECAlgorithm = iota
	SM2
)

type PrivateKey

type PrivateKey struct {
	Algorithm ECAlgorithm
	*ecdsa.PrivateKey
}

type PublicKey

type PublicKey struct {
	Algorithm ECAlgorithm
	*ecdsa.PublicKey
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL