summaryrefslogtreecommitdiffstats
path: root/vendor/go.mau.fi/libsignal/ecc/ECKeyPair.go
blob: 111034474fd572f09d196f3c061ee2989345ab51 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package ecc

// NewECKeyPair returns a new elliptic curve keypair given the specified public and private keys.
func NewECKeyPair(publicKey ECPublicKeyable, privateKey ECPrivateKeyable) *ECKeyPair {
	keypair := ECKeyPair{
		publicKey:  publicKey,
		privateKey: privateKey,
	}

	return &keypair
}

// ECKeyPair is a combination of both public and private elliptic curve keys.
type ECKeyPair struct {
	publicKey  ECPublicKeyable
	privateKey ECPrivateKeyable
}

// PublicKey returns the public key from the key pair.
func (e *ECKeyPair) PublicKey() ECPublicKeyable {
	return e.publicKey
}

// PrivateKey returns the private key from the key pair.
func (e *ECKeyPair) PrivateKey() ECPrivateKeyable {
	return e.privateKey
}