opaque

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2023 License: GPL-3.0 Imports: 8 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// RegInit is used to denote that the embedded payload contains data for the OPAQUE protocol Registration Initialization step
	RegInit = 1
	// RegComplete is used to denote that the embedded payload contains data for the OPAQUE protocol Registration Complete step
	RegComplete = 2
	// AuthInit is used to denote that the embedded payload contains data for the OPAQUE protocol Authorization Initialization step
	AuthInit = 3
	// AuthComplete is used to denote that the embedded payload contains data for the OPAQUE protocol Authorization Complete step
	AuthComplete = 4
	// ReRegister is used to instruct the Agent it needs to execute the OPAQUE Registration process with the server
	ReRegister = 5
	// ReAuthenticate is used to instruct the Agent it needs to execute the OPAQUE Authentication process with the server
	ReAuthenticate = 6
)

Variables

This section is empty.

Functions

func ServerAuthenticateComplete

func ServerAuthenticateComplete(o Opaque, server *Server) error

ServerAuthenticateComplete consumes the Agent's authentication messages and finishes the authentication and key exchange

func ServerRegisterInit

func ServerRegisterInit(AgentID uuid.UUID, o Opaque, key kyber.Scalar) (Opaque, *Server, error)

ServerRegisterInit is used to perform the OPAQUE Password Authenticated Key Exchange (PAKE) protocol Registration steps for the server

Types

type Opaque

type Opaque struct {
	Type    int    // The type of OPAQUE message from the constants
	Payload []byte // OPAQUE payload data
}

Opaque is a structure that is embedded into Merlin messages as a payload used to complete OPAQUE registration and authentication

func ServerAuthenticateInit

func ServerAuthenticateInit(o Opaque, server *Server) (Opaque, error)

ServerAuthenticateInit is used to authenticate an agent leveraging the OPAQUE Password Authenticated Key Exchange (PAKE) protocol

func ServerRegisterComplete

func ServerRegisterComplete(AgentID uuid.UUID, o Opaque, server *Server) (Opaque, error)

ServerRegisterComplete consumes the User's response and finishes OPAQUE Registration

type Server

type Server struct {
	Kex *gopaque.KeyExchangeSigma
	// contains filtered or unexported fields
}

Server is the structure that holds information for the various steps of the OPAQUE protocol as the server

Jump to

Keyboard shortcuts

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