mock

package
v0.0.0 Latest Latest
Warning

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

Go to latest
Published: May 17, 2024 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type HasherMock

type HasherMock struct {
}

HasherMock that will be used for testing

func (HasherMock) Compute

func (sha HasherMock) Compute(s string) []byte

Compute will output the SHA's equivalent of the input string

func (HasherMock) EmptyHash

func (sha HasherMock) EmptyHash() []byte

EmptyHash will return the equivalent of empty string SHA's

func (HasherMock) Size

func (HasherMock) Size() int

Size returns the required size in bytes

type HasherSpongeMock

type HasherSpongeMock struct {
}

HasherSpongeMock that will be used for testing

func (HasherSpongeMock) Compute

func (sha HasherSpongeMock) Compute(s string) []byte

Compute will output the SHA's equivalent of the input string

func (HasherSpongeMock) EmptyHash

func (sha HasherSpongeMock) EmptyHash() []byte

EmptyHash will return the equivalent of empty string SHA's

func (HasherSpongeMock) Size

func (HasherSpongeMock) Size() int

Size returns the required size in bytes

type PointMock

type PointMock struct {
	X int
	Y int

	MarshalBinaryStub   func(x, y int) ([]byte, error)
	UnmarshalBinaryStub func([]byte) (x, y int, err error)
}

func (*PointMock) Add

func (po *PointMock) Add(p crypto.Point) (crypto.Point, error)

Add returns the result of adding receiver with Point p given as parameter, so that their scalars add homomorphically

func (*PointMock) Base

func (po *PointMock) Base() crypto.Point

Base returns the Group's base point.

func (*PointMock) Clone

func (po *PointMock) Clone() crypto.Point

Clone returns a clone of the receiver.

func (*PointMock) Equal

func (po *PointMock) Equal(p crypto.Point) (bool, error)

Equal tests if receiver is equal with the Point p given as parameter. Both Points need to be derived from the same Group

func (*PointMock) GetUnderlyingObj

func (po *PointMock) GetUnderlyingObj() interface{}

GetUnderlyingObj returns the object the implementation wraps

func (*PointMock) MarshalBinary

func (po *PointMock) MarshalBinary() ([]byte, error)

MarshalBinary transforms the Point into a byte array

func (*PointMock) Mul

func (po *PointMock) Mul(s crypto.Scalar) (crypto.Point, error)

Mul returns the result of multiplying receiver by the scalar s. Mock multiplies the scalar to both X and Y fields

func (*PointMock) Neg

func (po *PointMock) Neg() crypto.Point

Neg returns the negation of receiver

func (*PointMock) Null

func (po *PointMock) Null() crypto.Point

Null returns the neutral identity element.

func (*PointMock) Pick

func (po *PointMock) Pick(rand cipher.Stream) (crypto.Point, error)

Pick returns a fresh random or pseudo-random Point.

func (*PointMock) Set

func (po *PointMock) Set(p crypto.Point) error

Set sets the receiver equal to another Point p.

func (*PointMock) Sub

func (po *PointMock) Sub(p crypto.Point) (crypto.Point, error)

Sub returns the result of subtracting from receiver the Point p given as parameter, so that their scalars subtract homomorphically

func (*PointMock) UnmarshalBinary

func (po *PointMock) UnmarshalBinary(point []byte) error

UnmarshalBinary recreates the Point from a byte array

type PrivateKeyStub

type PrivateKeyStub struct {
	ToByteArrayStub    func() ([]byte, error)
	GeneratePublicStub func() crypto.PublicKey
	ScalarStub         func() crypto.Scalar
	SuiteStub          func() crypto.Suite
}

PrivateKeyStub provides stubs for a PrivateKey implementation

func (*PrivateKeyStub) GeneratePublic

func (privKey *PrivateKeyStub) GeneratePublic() crypto.PublicKey

GeneratePublic builds a public key for the current private key

func (*PrivateKeyStub) Scalar

func (privKey *PrivateKeyStub) Scalar() crypto.Scalar

Scalar returns the Scalar corresponding to this Private Key

func (*PrivateKeyStub) Suite

func (privKey *PrivateKeyStub) Suite() crypto.Suite

Suite returns the Suite (curve data) used for this private key

func (*PrivateKeyStub) ToByteArray

func (privKey *PrivateKeyStub) ToByteArray() ([]byte, error)

ToByteArray returns the byte array representation of the private key

type PublicKeyStub

type PublicKeyStub struct {
	ToByteArrayStub func() ([]byte, error)
	PointStub       func() crypto.Point
	SuiteStub       func() crypto.Suite
}

PublicKeyStub provides stubs for a PublicKey implementation

func (*PublicKeyStub) Point

func (pubKey *PublicKeyStub) Point() crypto.Point

Point returns the Point corresponding to this Public Key

func (*PublicKeyStub) Suite

func (pubKey *PublicKeyStub) Suite() crypto.Suite

Suite returns the Suite (curve data) used for this private key

func (*PublicKeyStub) ToByteArray

func (pubKey *PublicKeyStub) ToByteArray() ([]byte, error)

ToByteArray returns the byte array representation of the public key

type ScalarMock

type ScalarMock struct {
	X int

	MarshalBinaryStub   func(x int) ([]byte, error)
	UnmarshalBinaryStub func([]byte) (int, error)
}

func (*ScalarMock) Add

func (sm *ScalarMock) Add(s crypto.Scalar) (crypto.Scalar, error)

Add returns the modular sum of receiver with scalar s given as parameter

func (*ScalarMock) Clone

func (sm *ScalarMock) Clone() crypto.Scalar

Clone creates a new Scalar with same value as receiver

func (*ScalarMock) Div

func (sm *ScalarMock) Div(s crypto.Scalar) (crypto.Scalar, error)

Div returns the modular division between receiver and scalar s given as parameter

func (*ScalarMock) Equal

func (sm *ScalarMock) Equal(s crypto.Scalar) (bool, error)

Equal tests if receiver is equal with the scalar s given as parameter. Both scalars need to be derived from the same Group

func (*ScalarMock) GetUnderlyingObj

func (sm *ScalarMock) GetUnderlyingObj() interface{}

GetUnderlyingObj returns the object the implementation wraps

func (*ScalarMock) Inv

func (sm *ScalarMock) Inv(s crypto.Scalar) (crypto.Scalar, error)

Inv returns the modular inverse of scalar s given as parameter

func (*ScalarMock) MarshalBinary

func (sm *ScalarMock) MarshalBinary() ([]byte, error)

MarshalBinary transforms the Scalar into a byte array

func (*ScalarMock) Mul

func (sm *ScalarMock) Mul(s crypto.Scalar) (crypto.Scalar, error)

Mul returns the modular product of receiver with scalar s given as parameter

func (*ScalarMock) Neg

func (sm *ScalarMock) Neg() crypto.Scalar

Neg returns the modular negation of receiver

func (*ScalarMock) One

func (sm *ScalarMock) One() crypto.Scalar

One returns the multiplicative identity (1)

func (*ScalarMock) Pick

func (sm *ScalarMock) Pick(rand cipher.Stream) (crypto.Scalar, error)

Pick returns a fresh random or pseudo-random scalar For the mock set X to the original scalar.X *2

func (*ScalarMock) Set

func (sm *ScalarMock) Set(s crypto.Scalar) error

Set sets the receiver to Scalar s given as parameter

func (*ScalarMock) SetBytes

func (sm *ScalarMock) SetBytes([]byte) (crypto.Scalar, error)

SetBytes sets the scalar from a byte-slice, reducing if necessary to the appropriate modulus.

func (*ScalarMock) SetInt64

func (sm *ScalarMock) SetInt64(v int64)

SetInt64 sets the receiver to a small integer value v given as parameter

func (*ScalarMock) Sub

func (sm *ScalarMock) Sub(s crypto.Scalar) (crypto.Scalar, error)

Sub returns the modular difference between receiver and scalar s given as parameter

func (*ScalarMock) UnmarshalBinary

func (sm *ScalarMock) UnmarshalBinary(val []byte) error

UnmarshalBinary recreates the Scalar from a byte array

func (*ScalarMock) Zero

func (sm *ScalarMock) Zero() crypto.Scalar

Zero returns the the additive identity (0)

type Signer

type Signer struct {
	SignStub   func(suite crypto.Suite, private crypto.Scalar, msg []byte) ([]byte, error)
	VerifyStub func(suite crypto.Suite, public crypto.Point, msg []byte, sig []byte) error
}

func (*Signer) Sign

func (s *Signer) Sign(suite crypto.Suite, private crypto.Scalar, msg []byte) ([]byte, error)

func (*Signer) Verify

func (s *Signer) Verify(suite crypto.Suite, public crypto.Point, msg []byte, sig []byte) error

type Streamer

type Streamer struct {
	// contains filtered or unexported fields
}

func NewStreamer

func NewStreamer() *Streamer

func (*Streamer) XORKeyStream

func (stream *Streamer) XORKeyStream(dst, src []byte)

type SuiteMock

type SuiteMock struct {
	StringStub             func() string
	ScalarLenStub          func() int
	CreateScalarStub       func() crypto.Scalar
	PointLenStub           func() int
	CreatePointStub        func() crypto.Point
	RandomStreamStub       func() cipher.Stream
	CreateKeyPairStub      func(cipher.Stream) (crypto.Scalar, crypto.Point)
	GetUnderlyingSuiteStub func() interface{}
}

func (*SuiteMock) CreateKeyPair

func (s *SuiteMock) CreateKeyPair(c cipher.Stream) (crypto.Scalar, crypto.Point)

func (*SuiteMock) CreatePoint

func (s *SuiteMock) CreatePoint() crypto.Point

func (*SuiteMock) CreateScalar

func (s *SuiteMock) CreateScalar() crypto.Scalar

func (*SuiteMock) GetUnderlyingSuite

func (s *SuiteMock) GetUnderlyingSuite() interface{}

func (*SuiteMock) PointLen

func (s *SuiteMock) PointLen() int

func (*SuiteMock) RandomStream

func (s *SuiteMock) RandomStream() cipher.Stream

func (*SuiteMock) ScalarLen

func (s *SuiteMock) ScalarLen() int

func (*SuiteMock) String

func (s *SuiteMock) String() string

Jump to

Keyboard shortcuts

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