Documentation ¶
Overview ¶
Package mkem provides multiparty KEM construction.
Package mkem provides multiparty KEM construction.
Index ¶
- type Ciphertext
- type IntermediaryCiphertext
- type Scheme
- func (s *Scheme) Decapsulate(privkey nike.PrivateKey, ciphertext []byte) ([]byte, error)
- func (s *Scheme) DecryptEnvelope(privkey nike.PrivateKey, pubkey nike.PublicKey, ciphertext []byte) ([]byte, error)
- func (s *Scheme) Encapsulate(keys []nike.PublicKey, payload []byte) (nike.PrivateKey, []byte)
- func (s *Scheme) EnvelopeReply(privkey nike.PrivateKey, pubkey nike.PublicKey, plaintext []byte) []byte
- func (s *Scheme) GenerateKeyPair() (nike.PublicKey, nike.PrivateKey, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Ciphertext ¶
type Ciphertext struct { EphemeralPublicKey nike.PublicKey DEKCiphertexts [][]byte Envelope []byte }
func CiphertextFromBytes ¶
func CiphertextFromBytes(scheme *Scheme, b []byte) (*Ciphertext, error)
func (*Ciphertext) Marshal ¶
func (m *Ciphertext) Marshal() []byte
type IntermediaryCiphertext ¶
type IntermediaryCiphertext struct { EphemeralPublicKey []byte DEKCiphertexts [][]byte Envelope []byte }
func (*IntermediaryCiphertext) Bytes ¶
func (i *IntermediaryCiphertext) Bytes() []byte
func (*IntermediaryCiphertext) FromBytes ¶
func (i *IntermediaryCiphertext) FromBytes(b []byte) error
type Scheme ¶
type Scheme struct {
// contains filtered or unexported fields
}
Scheme is an MKEM scheme.
func (*Scheme) Decapsulate ¶
func (*Scheme) DecryptEnvelope ¶
func (*Scheme) Encapsulate ¶
func (*Scheme) EnvelopeReply ¶
func (*Scheme) GenerateKeyPair ¶
Click to show internal directories.
Click to hide internal directories.