identity

package
v0.0.2-alpha Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2018 License: MIT Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// CentIDLength is the length in bytes of the CentrifugeID
	CentIDLength = 6

	// KeyPurposeP2P represents a key used for p2p txns
	KeyPurposeP2P = 1

	// KeyPurposeSigning represents a key used for signing
	KeyPurposeSigning = 2

	// KeyPurposeEthMsgAuth represents a key used for ethereum txns
	KeyPurposeEthMsgAuth = 3
)
View Source
const BootstrappedIDService string = "BootstrappedIDService"

BootstrappedIDService is used as a key to map the configured ID Service through context.

View Source
const EthereumIdentityContractABI = "" /* 3359-byte string literal not displayed */

EthereumIdentityContractABI is the input ABI used to generate the binding from.

View Source
const EthereumIdentityFactoryContractABI = "" /* 552-byte string literal not displayed */

EthereumIdentityFactoryContractABI is the input ABI used to generate the binding from.

View Source
const EthereumIdentityRegistryContractABI = "" /* 1170-byte string literal not displayed */

EthereumIdentityRegistryContractABI is the input ABI used to generate the binding from.

Variables

This section is empty.

Functions

func Sign

func Sign(idConfig *IDConfig, purpose int, payload []byte) *coredocumentpb.Signature

Sign the document with the private key and return the signature along with the public key for the verification assumes that signing root for the document is generated

func ValidateCentrifugeIDBytes

func ValidateCentrifugeIDBytes(givenCentID []byte, centrifugeID CentID) error

ValidateCentrifugeIDBytes validates a centrifuge ID given as bytes

Types

type Bootstrapper

type Bootstrapper struct{}

Bootstrapper implements bootstrap.Bootstrapper.

func (*Bootstrapper) Bootstrap

func (*Bootstrapper) Bootstrap(context map[string]interface{}) error

Bootstrap initializes the IdentityFactoryContract as well as the idRegistrationConfirmationTask that depends on it. the idRegistrationConfirmationTask is added to be registered on the queue at queue.Bootstrapper

type CentID

type CentID [CentIDLength]byte

CentID represents a CentIDLength identity of an entity

func CentIDFromString

func CentIDFromString(id string) (centID CentID, err error)

CentIDFromString takes an hex string and returns a CentID

func CentIDsFromStrings

func CentIDsFromStrings(ids []string) ([]CentID, error)

CentIDsFromStrings converts hex ids to centIDs

func RandomCentID

func RandomCentID() CentID

RandomCentID returns a randomly generated CentID

func ToCentID

func ToCentID(bytes []byte) (centID CentID, err error)

ToCentID takes bytes and return CentID errors out if bytes are empty, nil, or len(bytes) > CentIDLength

func (CentID) BigInt

func (c CentID) BigInt() *big.Int

BigInt returns CentID in bigInt

func (CentID) Equal

func (c CentID) Equal(other CentID) bool

Equal checks if c == other

func (CentID) String

func (c CentID) String() string

String returns the hex format of CentID

type Config

type Config interface {
	GetEthereumDefaultAccountName() string
	GetIdentityID() ([]byte, error)
	GetSigningKeyPair() (pub, priv string)
	GetEthAuthKeyPair() (pub, priv string)
	GetEthereumContextWaitTimeout() time.Duration
	GetContractAddress(address string) common.Address
}

Config defines methods required for the package identity.

type EthereumIdentityContract

type EthereumIdentityContract struct {
	EthereumIdentityContractCaller     // Read-only binding to the contract
	EthereumIdentityContractTransactor // Write-only binding to the contract
	EthereumIdentityContractFilterer   // Log filterer for contract events
}

EthereumIdentityContract is an auto generated Go binding around an Ethereum contract.

func NewEthereumIdentityContract

func NewEthereumIdentityContract(address common.Address, backend bind.ContractBackend) (*EthereumIdentityContract, error)

NewEthereumIdentityContract creates a new instance of EthereumIdentityContract, bound to a specific deployed contract.

type EthereumIdentityContractCaller

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

EthereumIdentityContractCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewEthereumIdentityContractCaller

func NewEthereumIdentityContractCaller(address common.Address, caller bind.ContractCaller) (*EthereumIdentityContractCaller, error)

NewEthereumIdentityContractCaller creates a new read-only instance of EthereumIdentityContract, bound to a specific deployed contract.

func (*EthereumIdentityContractCaller) CentrifugeId

func (_EthereumIdentityContract *EthereumIdentityContractCaller) CentrifugeId(opts *bind.CallOpts) (*big.Int, error)

CentrifugeID is a free data retrieval call binding the contract method 0x41a43c38.

Solidity: function centrifugeId() constant returns(uint48)

func (*EthereumIdentityContractCaller) GetKey

func (_EthereumIdentityContract *EthereumIdentityContractCaller) GetKey(opts *bind.CallOpts, _key [32]byte) (struct {
	Key       [32]byte
	Purposes  []*big.Int
	RevokedAt *big.Int
}, error)

GetKey is a free data retrieval call binding the contract method 0x12aaac70.

Solidity: function getKey(_key bytes32) constant returns(key bytes32, purposes uint256[], revokedAt uint256)

func (*EthereumIdentityContractCaller) GetKeysByPurpose

func (_EthereumIdentityContract *EthereumIdentityContractCaller) GetKeysByPurpose(opts *bind.CallOpts, _purpose *big.Int) ([][32]byte, error)

GetKeysByPurpose is a free data retrieval call binding the contract method 0x9010f726.

Solidity: function getKeysByPurpose(_purpose uint256) constant returns(bytes32[])

func (*EthereumIdentityContractCaller) IsSignatureValid

func (_EthereumIdentityContract *EthereumIdentityContractCaller) IsSignatureValid(opts *bind.CallOpts, _toSign [32]byte, _signature []byte) (bool, error)

IsSignatureValid is a free data retrieval call binding the contract method 0x0892beb7.

Solidity: function isSignatureValid(_toSign bytes32, _signature bytes) constant returns(valid bool)

func (*EthereumIdentityContractCaller) KeyHasPurpose

func (_EthereumIdentityContract *EthereumIdentityContractCaller) KeyHasPurpose(opts *bind.CallOpts, _key [32]byte, _purpose *big.Int) (bool, error)

KeyHasPurpose is a free data retrieval call binding the contract method 0xd202158d.

Solidity: function keyHasPurpose(_key bytes32, _purpose uint256) constant returns(found bool)

func (*EthereumIdentityContractCaller) Owner

func (_EthereumIdentityContract *EthereumIdentityContractCaller) Owner(opts *bind.CallOpts) (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() constant returns(address)

type EthereumIdentityContractCallerRaw

type EthereumIdentityContractCallerRaw struct {
	Contract *EthereumIdentityContractCaller // Generic read-only contract binding to access the raw methods on
}

EthereumIdentityContractCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*EthereumIdentityContractCallerRaw) Call

func (_EthereumIdentityContract *EthereumIdentityContractCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type EthereumIdentityContractCallerSession

type EthereumIdentityContractCallerSession struct {
	Contract *EthereumIdentityContractCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts                   // Call options to use throughout this session
}

EthereumIdentityContractCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*EthereumIdentityContractCallerSession) CentrifugeId

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) CentrifugeId() (*big.Int, error)

CentrifugeID is a free data retrieval call binding the contract method 0x41a43c38.

Solidity: function centrifugeId() constant returns(uint48)

func (*EthereumIdentityContractCallerSession) GetKey

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) GetKey(_key [32]byte) (struct {
	Key       [32]byte
	Purposes  []*big.Int
	RevokedAt *big.Int
}, error)

GetKey is a free data retrieval call binding the contract method 0x12aaac70.

Solidity: function getKey(_key bytes32) constant returns(key bytes32, purposes uint256[], revokedAt uint256)

func (*EthereumIdentityContractCallerSession) GetKeysByPurpose

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) GetKeysByPurpose(_purpose *big.Int) ([][32]byte, error)

GetKeysByPurpose is a free data retrieval call binding the contract method 0x9010f726.

Solidity: function getKeysByPurpose(_purpose uint256) constant returns(bytes32[])

func (*EthereumIdentityContractCallerSession) IsSignatureValid

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) IsSignatureValid(_toSign [32]byte, _signature []byte) (bool, error)

IsSignatureValid is a free data retrieval call binding the contract method 0x0892beb7.

Solidity: function isSignatureValid(_toSign bytes32, _signature bytes) constant returns(valid bool)

func (*EthereumIdentityContractCallerSession) KeyHasPurpose

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) KeyHasPurpose(_key [32]byte, _purpose *big.Int) (bool, error)

KeyHasPurpose is a free data retrieval call binding the contract method 0xd202158d.

Solidity: function keyHasPurpose(_key bytes32, _purpose uint256) constant returns(found bool)

func (*EthereumIdentityContractCallerSession) Owner

func (_EthereumIdentityContract *EthereumIdentityContractCallerSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() constant returns(address)

type EthereumIdentityContractFilterer

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

EthereumIdentityContractFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewEthereumIdentityContractFilterer

func NewEthereumIdentityContractFilterer(address common.Address, filterer bind.ContractFilterer) (*EthereumIdentityContractFilterer, error)

NewEthereumIdentityContractFilterer creates a new log filterer instance of EthereumIdentityContract, bound to a specific deployed contract.

func (*EthereumIdentityContractFilterer) FilterKeyAdded

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) FilterKeyAdded(opts *bind.FilterOpts, key [][32]byte, purpose []*big.Int) (*EthereumIdentityContractKeyAddedIterator, error)

FilterKeyAdded is a free log retrieval operation binding the contract event 0x90cf26894583787fe4a16185f0128c58652d10939f4b0185a951efc8452bcaa8.

Solidity: e KeyAdded(key indexed bytes32, purpose indexed uint256)

func (*EthereumIdentityContractFilterer) FilterKeyRevoked

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) FilterKeyRevoked(opts *bind.FilterOpts, key [][32]byte, revokedAt []*big.Int) (*EthereumIdentityContractKeyRevokedIterator, error)

FilterKeyRevoked is a free log retrieval operation binding the contract event 0x3aa2212f5d3ddf6cf452b1611d7ea62ac572afe7d5e4310c09185edd915c686e.

Solidity: e KeyRevoked(key indexed bytes32, revokedAt indexed uint256)

func (*EthereumIdentityContractFilterer) FilterOwnershipRenounced

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) FilterOwnershipRenounced(opts *bind.FilterOpts, previousOwner []common.Address) (*EthereumIdentityContractOwnershipRenouncedIterator, error)

FilterOwnershipRenounced is a free log retrieval operation binding the contract event 0xf8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c64820.

Solidity: e OwnershipRenounced(previousOwner indexed address)

func (*EthereumIdentityContractFilterer) FilterOwnershipTransferred

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*EthereumIdentityContractOwnershipTransferredIterator, error)

FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: e OwnershipTransferred(previousOwner indexed address, newOwner indexed address)

func (*EthereumIdentityContractFilterer) WatchKeyAdded

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) WatchKeyAdded(opts *bind.WatchOpts, sink chan<- *EthereumIdentityContractKeyAdded, key [][32]byte, purpose []*big.Int) (event.Subscription, error)

WatchKeyAdded is a free log subscription operation binding the contract event 0x90cf26894583787fe4a16185f0128c58652d10939f4b0185a951efc8452bcaa8.

Solidity: e KeyAdded(key indexed bytes32, purpose indexed uint256)

func (*EthereumIdentityContractFilterer) WatchKeyRevoked

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) WatchKeyRevoked(opts *bind.WatchOpts, sink chan<- *EthereumIdentityContractKeyRevoked, key [][32]byte, revokedAt []*big.Int) (event.Subscription, error)

WatchKeyRevoked is a free log subscription operation binding the contract event 0x3aa2212f5d3ddf6cf452b1611d7ea62ac572afe7d5e4310c09185edd915c686e.

Solidity: e KeyRevoked(key indexed bytes32, revokedAt indexed uint256)

func (*EthereumIdentityContractFilterer) WatchOwnershipRenounced

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) WatchOwnershipRenounced(opts *bind.WatchOpts, sink chan<- *EthereumIdentityContractOwnershipRenounced, previousOwner []common.Address) (event.Subscription, error)

WatchOwnershipRenounced is a free log subscription operation binding the contract event 0xf8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c64820.

Solidity: e OwnershipRenounced(previousOwner indexed address)

func (*EthereumIdentityContractFilterer) WatchOwnershipTransferred

func (_EthereumIdentityContract *EthereumIdentityContractFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *EthereumIdentityContractOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error)

WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: e OwnershipTransferred(previousOwner indexed address, newOwner indexed address)

type EthereumIdentityContractKeyAdded

type EthereumIdentityContractKeyAdded struct {
	Key     [32]byte
	Purpose *big.Int
	Raw     types.Log // Blockchain specific contextual infos
}

EthereumIdentityContractKeyAdded represents a KeyAdded event raised by the EthereumIdentityContract contract.

type EthereumIdentityContractKeyAddedIterator

type EthereumIdentityContractKeyAddedIterator struct {
	Event *EthereumIdentityContractKeyAdded // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityContractKeyAddedIterator is returned from FilterKeyAdded and is used to iterate over the raw logs and unpacked data for KeyAdded events raised by the EthereumIdentityContract contract.

func (*EthereumIdentityContractKeyAddedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityContractKeyAddedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityContractKeyAddedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityContractKeyRevoked

type EthereumIdentityContractKeyRevoked struct {
	Key       [32]byte
	RevokedAt *big.Int
	Raw       types.Log // Blockchain specific contextual infos
}

EthereumIdentityContractKeyRevoked represents a KeyRevoked event raised by the EthereumIdentityContract contract.

type EthereumIdentityContractKeyRevokedIterator

type EthereumIdentityContractKeyRevokedIterator struct {
	Event *EthereumIdentityContractKeyRevoked // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityContractKeyRevokedIterator is returned from FilterKeyRevoked and is used to iterate over the raw logs and unpacked data for KeyRevoked events raised by the EthereumIdentityContract contract.

func (*EthereumIdentityContractKeyRevokedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityContractKeyRevokedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityContractKeyRevokedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityContractOwnershipRenounced

type EthereumIdentityContractOwnershipRenounced struct {
	PreviousOwner common.Address
	Raw           types.Log // Blockchain specific contextual infos
}

EthereumIdentityContractOwnershipRenounced represents a OwnershipRenounced event raised by the EthereumIdentityContract contract.

type EthereumIdentityContractOwnershipRenouncedIterator

type EthereumIdentityContractOwnershipRenouncedIterator struct {
	Event *EthereumIdentityContractOwnershipRenounced // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityContractOwnershipRenouncedIterator is returned from FilterOwnershipRenounced and is used to iterate over the raw logs and unpacked data for OwnershipRenounced events raised by the EthereumIdentityContract contract.

func (*EthereumIdentityContractOwnershipRenouncedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityContractOwnershipRenouncedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityContractOwnershipRenouncedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityContractOwnershipTransferred

type EthereumIdentityContractOwnershipTransferred struct {
	PreviousOwner common.Address
	NewOwner      common.Address
	Raw           types.Log // Blockchain specific contextual infos
}

EthereumIdentityContractOwnershipTransferred represents a OwnershipTransferred event raised by the EthereumIdentityContract contract.

type EthereumIdentityContractOwnershipTransferredIterator

type EthereumIdentityContractOwnershipTransferredIterator struct {
	Event *EthereumIdentityContractOwnershipTransferred // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityContractOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the EthereumIdentityContract contract.

func (*EthereumIdentityContractOwnershipTransferredIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityContractOwnershipTransferredIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityContractOwnershipTransferredIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityContractRaw

type EthereumIdentityContractRaw struct {
	Contract *EthereumIdentityContract // Generic contract binding to access the raw methods on
}

EthereumIdentityContractRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*EthereumIdentityContractRaw) Call

func (_EthereumIdentityContract *EthereumIdentityContractRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*EthereumIdentityContractRaw) Transact

func (_EthereumIdentityContract *EthereumIdentityContractRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityContractRaw) Transfer

func (_EthereumIdentityContract *EthereumIdentityContractRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityContractSession

type EthereumIdentityContractSession struct {
	Contract     *EthereumIdentityContract // Generic contract binding to set the session for
	CallOpts     bind.CallOpts             // Call options to use throughout this session
	TransactOpts bind.TransactOpts         // Transaction auth options to use throughout this session
}

EthereumIdentityContractSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*EthereumIdentityContractSession) AddKey

func (_EthereumIdentityContract *EthereumIdentityContractSession) AddKey(_key [32]byte, _purpose *big.Int) (*types.Transaction, error)

AddKey is a paid mutator transaction binding the contract method 0x4103ef4c.

Solidity: function addKey(_key bytes32, _purpose uint256) returns()

func (*EthereumIdentityContractSession) AddMultiPurposeKey

func (_EthereumIdentityContract *EthereumIdentityContractSession) AddMultiPurposeKey(_key [32]byte, _purposes []*big.Int) (*types.Transaction, error)

AddMultiPurposeKey is a paid mutator transaction binding the contract method 0xcb757f7f.

Solidity: function addMultiPurposeKey(_key bytes32, _purposes uint256[]) returns()

func (*EthereumIdentityContractSession) CentrifugeId

func (_EthereumIdentityContract *EthereumIdentityContractSession) CentrifugeId() (*big.Int, error)

CentrifugeID is a free data retrieval call binding the contract method 0x41a43c38.

Solidity: function centrifugeId() constant returns(uint48)

func (*EthereumIdentityContractSession) GetKey

func (_EthereumIdentityContract *EthereumIdentityContractSession) GetKey(_key [32]byte) (struct {
	Key       [32]byte
	Purposes  []*big.Int
	RevokedAt *big.Int
}, error)

GetKey is a free data retrieval call binding the contract method 0x12aaac70.

Solidity: function getKey(_key bytes32) constant returns(key bytes32, purposes uint256[], revokedAt uint256)

func (*EthereumIdentityContractSession) GetKeysByPurpose

func (_EthereumIdentityContract *EthereumIdentityContractSession) GetKeysByPurpose(_purpose *big.Int) ([][32]byte, error)

GetKeysByPurpose is a free data retrieval call binding the contract method 0x9010f726.

Solidity: function getKeysByPurpose(_purpose uint256) constant returns(bytes32[])

func (*EthereumIdentityContractSession) IsSignatureValid

func (_EthereumIdentityContract *EthereumIdentityContractSession) IsSignatureValid(_toSign [32]byte, _signature []byte) (bool, error)

IsSignatureValid is a free data retrieval call binding the contract method 0x0892beb7.

Solidity: function isSignatureValid(_toSign bytes32, _signature bytes) constant returns(valid bool)

func (*EthereumIdentityContractSession) KeyHasPurpose

func (_EthereumIdentityContract *EthereumIdentityContractSession) KeyHasPurpose(_key [32]byte, _purpose *big.Int) (bool, error)

KeyHasPurpose is a free data retrieval call binding the contract method 0xd202158d.

Solidity: function keyHasPurpose(_key bytes32, _purpose uint256) constant returns(found bool)

func (*EthereumIdentityContractSession) Owner

func (_EthereumIdentityContract *EthereumIdentityContractSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() constant returns(address)

func (*EthereumIdentityContractSession) RenounceOwnership

func (_EthereumIdentityContract *EthereumIdentityContractSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*EthereumIdentityContractSession) RevokeKey

func (_EthereumIdentityContract *EthereumIdentityContractSession) RevokeKey(_key [32]byte) (*types.Transaction, error)

RevokeKey is a paid mutator transaction binding the contract method 0x572f2210.

Solidity: function revokeKey(_key bytes32) returns()

func (*EthereumIdentityContractSession) TransferOwnership

func (_EthereumIdentityContract *EthereumIdentityContractSession) TransferOwnership(_newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(_newOwner address) returns()

type EthereumIdentityContractTransactor

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

EthereumIdentityContractTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewEthereumIdentityContractTransactor

func NewEthereumIdentityContractTransactor(address common.Address, transactor bind.ContractTransactor) (*EthereumIdentityContractTransactor, error)

NewEthereumIdentityContractTransactor creates a new write-only instance of EthereumIdentityContract, bound to a specific deployed contract.

func (*EthereumIdentityContractTransactor) AddKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactor) AddKey(opts *bind.TransactOpts, _key [32]byte, _purpose *big.Int) (*types.Transaction, error)

AddKey is a paid mutator transaction binding the contract method 0x4103ef4c.

Solidity: function addKey(_key bytes32, _purpose uint256) returns()

func (*EthereumIdentityContractTransactor) AddMultiPurposeKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactor) AddMultiPurposeKey(opts *bind.TransactOpts, _key [32]byte, _purposes []*big.Int) (*types.Transaction, error)

AddMultiPurposeKey is a paid mutator transaction binding the contract method 0xcb757f7f.

Solidity: function addMultiPurposeKey(_key bytes32, _purposes uint256[]) returns()

func (*EthereumIdentityContractTransactor) RenounceOwnership

func (_EthereumIdentityContract *EthereumIdentityContractTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*EthereumIdentityContractTransactor) RevokeKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactor) RevokeKey(opts *bind.TransactOpts, _key [32]byte) (*types.Transaction, error)

RevokeKey is a paid mutator transaction binding the contract method 0x572f2210.

Solidity: function revokeKey(_key bytes32) returns()

func (*EthereumIdentityContractTransactor) TransferOwnership

func (_EthereumIdentityContract *EthereumIdentityContractTransactor) TransferOwnership(opts *bind.TransactOpts, _newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(_newOwner address) returns()

type EthereumIdentityContractTransactorRaw

type EthereumIdentityContractTransactorRaw struct {
	Contract *EthereumIdentityContractTransactor // Generic write-only contract binding to access the raw methods on
}

EthereumIdentityContractTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*EthereumIdentityContractTransactorRaw) Transact

func (_EthereumIdentityContract *EthereumIdentityContractTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityContractTransactorRaw) Transfer

func (_EthereumIdentityContract *EthereumIdentityContractTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityContractTransactorSession

type EthereumIdentityContractTransactorSession struct {
	Contract     *EthereumIdentityContractTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts                   // Transaction auth options to use throughout this session
}

EthereumIdentityContractTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*EthereumIdentityContractTransactorSession) AddKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactorSession) AddKey(_key [32]byte, _purpose *big.Int) (*types.Transaction, error)

AddKey is a paid mutator transaction binding the contract method 0x4103ef4c.

Solidity: function addKey(_key bytes32, _purpose uint256) returns()

func (*EthereumIdentityContractTransactorSession) AddMultiPurposeKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactorSession) AddMultiPurposeKey(_key [32]byte, _purposes []*big.Int) (*types.Transaction, error)

AddMultiPurposeKey is a paid mutator transaction binding the contract method 0xcb757f7f.

Solidity: function addMultiPurposeKey(_key bytes32, _purposes uint256[]) returns()

func (*EthereumIdentityContractTransactorSession) RenounceOwnership

func (_EthereumIdentityContract *EthereumIdentityContractTransactorSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*EthereumIdentityContractTransactorSession) RevokeKey

func (_EthereumIdentityContract *EthereumIdentityContractTransactorSession) RevokeKey(_key [32]byte) (*types.Transaction, error)

RevokeKey is a paid mutator transaction binding the contract method 0x572f2210.

Solidity: function revokeKey(_key bytes32) returns()

func (*EthereumIdentityContractTransactorSession) TransferOwnership

func (_EthereumIdentityContract *EthereumIdentityContractTransactorSession) TransferOwnership(_newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(_newOwner address) returns()

type EthereumIdentityFactoryContract

type EthereumIdentityFactoryContract struct {
	EthereumIdentityFactoryContractCaller     // Read-only binding to the contract
	EthereumIdentityFactoryContractTransactor // Write-only binding to the contract
	EthereumIdentityFactoryContractFilterer   // Log filterer for contract events
}

EthereumIdentityFactoryContract is an auto generated Go binding around an Ethereum contract.

func NewEthereumIdentityFactoryContract

func NewEthereumIdentityFactoryContract(address common.Address, backend bind.ContractBackend) (*EthereumIdentityFactoryContract, error)

NewEthereumIdentityFactoryContract creates a new instance of EthereumIdentityFactoryContract, bound to a specific deployed contract.

type EthereumIdentityFactoryContractCaller

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

EthereumIdentityFactoryContractCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewEthereumIdentityFactoryContractCaller

func NewEthereumIdentityFactoryContractCaller(address common.Address, caller bind.ContractCaller) (*EthereumIdentityFactoryContractCaller, error)

NewEthereumIdentityFactoryContractCaller creates a new read-only instance of EthereumIdentityFactoryContract, bound to a specific deployed contract.

type EthereumIdentityFactoryContractCallerRaw

type EthereumIdentityFactoryContractCallerRaw struct {
	Contract *EthereumIdentityFactoryContractCaller // Generic read-only contract binding to access the raw methods on
}

EthereumIdentityFactoryContractCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*EthereumIdentityFactoryContractCallerRaw) Call

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type EthereumIdentityFactoryContractCallerSession

type EthereumIdentityFactoryContractCallerSession struct {
	Contract *EthereumIdentityFactoryContractCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts                          // Call options to use throughout this session
}

EthereumIdentityFactoryContractCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

type EthereumIdentityFactoryContractFilterer

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

EthereumIdentityFactoryContractFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewEthereumIdentityFactoryContractFilterer

func NewEthereumIdentityFactoryContractFilterer(address common.Address, filterer bind.ContractFilterer) (*EthereumIdentityFactoryContractFilterer, error)

NewEthereumIdentityFactoryContractFilterer creates a new log filterer instance of EthereumIdentityFactoryContract, bound to a specific deployed contract.

func (*EthereumIdentityFactoryContractFilterer) FilterIdentityCreated

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractFilterer) FilterIdentityCreated(opts *bind.FilterOpts, centrifugeId []*big.Int) (*EthereumIdentityFactoryContractIdentityCreatedIterator, error)

FilterIdentityCreated is a free log retrieval operation binding the contract event 0x66c4bdc16b835463ee3a16003a3d42b54e9ead21ac72ebc421bb07afd19d4a68.

Solidity: e IdentityCreated(centrifugeId indexed uint48, identity address)

func (*EthereumIdentityFactoryContractFilterer) WatchIdentityCreated

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractFilterer) WatchIdentityCreated(opts *bind.WatchOpts, sink chan<- *EthereumIdentityFactoryContractIdentityCreated, centrifugeId []*big.Int) (event.Subscription, error)

WatchIdentityCreated is a free log subscription operation binding the contract event 0x66c4bdc16b835463ee3a16003a3d42b54e9ead21ac72ebc421bb07afd19d4a68.

Solidity: e IdentityCreated(centrifugeId indexed uint48, identity address)

type EthereumIdentityFactoryContractIdentityCreated

type EthereumIdentityFactoryContractIdentityCreated struct {
	CentrifugeId *big.Int
	Identity     common.Address
	Raw          types.Log // Blockchain specific contextual infos
}

EthereumIdentityFactoryContractIdentityCreated represents a IdentityCreated event raised by the EthereumIdentityFactoryContract contract.

type EthereumIdentityFactoryContractIdentityCreatedIterator

type EthereumIdentityFactoryContractIdentityCreatedIterator struct {
	Event *EthereumIdentityFactoryContractIdentityCreated // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityFactoryContractIdentityCreatedIterator is returned from FilterIdentityCreated and is used to iterate over the raw logs and unpacked data for IdentityCreated events raised by the EthereumIdentityFactoryContract contract.

func (*EthereumIdentityFactoryContractIdentityCreatedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityFactoryContractIdentityCreatedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityFactoryContractIdentityCreatedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityFactoryContractRaw

type EthereumIdentityFactoryContractRaw struct {
	Contract *EthereumIdentityFactoryContract // Generic contract binding to access the raw methods on
}

EthereumIdentityFactoryContractRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*EthereumIdentityFactoryContractRaw) Call

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*EthereumIdentityFactoryContractRaw) Transact

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityFactoryContractRaw) Transfer

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityFactoryContractSession

type EthereumIdentityFactoryContractSession struct {
	Contract     *EthereumIdentityFactoryContract // Generic contract binding to set the session for
	CallOpts     bind.CallOpts                    // Call options to use throughout this session
	TransactOpts bind.TransactOpts                // Transaction auth options to use throughout this session
}

EthereumIdentityFactoryContractSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*EthereumIdentityFactoryContractSession) CreateIdentity

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractSession) CreateIdentity(_centrifugeId *big.Int) (*types.Transaction, error)

CreateIdentity is a paid mutator transaction binding the contract method 0x340e963a.

Solidity: function createIdentity(_centrifugeId uint48) returns()

type EthereumIdentityFactoryContractTransactor

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

EthereumIdentityFactoryContractTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewEthereumIdentityFactoryContractTransactor

func NewEthereumIdentityFactoryContractTransactor(address common.Address, transactor bind.ContractTransactor) (*EthereumIdentityFactoryContractTransactor, error)

NewEthereumIdentityFactoryContractTransactor creates a new write-only instance of EthereumIdentityFactoryContract, bound to a specific deployed contract.

func (*EthereumIdentityFactoryContractTransactor) CreateIdentity

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractTransactor) CreateIdentity(opts *bind.TransactOpts, _centrifugeId *big.Int) (*types.Transaction, error)

CreateIdentity is a paid mutator transaction binding the contract method 0x340e963a.

Solidity: function createIdentity(_centrifugeId uint48) returns()

type EthereumIdentityFactoryContractTransactorRaw

type EthereumIdentityFactoryContractTransactorRaw struct {
	Contract *EthereumIdentityFactoryContractTransactor // Generic write-only contract binding to access the raw methods on
}

EthereumIdentityFactoryContractTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*EthereumIdentityFactoryContractTransactorRaw) Transact

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityFactoryContractTransactorRaw) Transfer

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityFactoryContractTransactorSession

type EthereumIdentityFactoryContractTransactorSession struct {
	Contract     *EthereumIdentityFactoryContractTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts                          // Transaction auth options to use throughout this session
}

EthereumIdentityFactoryContractTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*EthereumIdentityFactoryContractTransactorSession) CreateIdentity

func (_EthereumIdentityFactoryContract *EthereumIdentityFactoryContractTransactorSession) CreateIdentity(_centrifugeId *big.Int) (*types.Transaction, error)

CreateIdentity is a paid mutator transaction binding the contract method 0x340e963a.

Solidity: function createIdentity(_centrifugeId uint48) returns()

type EthereumIdentityKey

type EthereumIdentityKey struct {
	Key       [32]byte
	Purposes  []*big.Int
	RevokedAt *big.Int
}

EthereumIdentityKey holds the identity related details

func (*EthereumIdentityKey) GetKey

func (idk *EthereumIdentityKey) GetKey() [32]byte

GetKey returns the public key

func (*EthereumIdentityKey) GetPurposes

func (idk *EthereumIdentityKey) GetPurposes() []*big.Int

GetPurposes returns the purposes intended for the key

func (*EthereumIdentityKey) GetRevokedAt

func (idk *EthereumIdentityKey) GetRevokedAt() *big.Int

GetRevokedAt returns the block at which the identity is revoked

func (*EthereumIdentityKey) String

func (idk *EthereumIdentityKey) String() string

String prints the peerID extracted from the key

type EthereumIdentityRegistryContract

type EthereumIdentityRegistryContract struct {
	EthereumIdentityRegistryContractCaller     // Read-only binding to the contract
	EthereumIdentityRegistryContractTransactor // Write-only binding to the contract
	EthereumIdentityRegistryContractFilterer   // Log filterer for contract events
}

EthereumIdentityRegistryContract is an auto generated Go binding around an Ethereum contract.

func NewEthereumIdentityRegistryContract

func NewEthereumIdentityRegistryContract(address common.Address, backend bind.ContractBackend) (*EthereumIdentityRegistryContract, error)

NewEthereumIdentityRegistryContract creates a new instance of EthereumIdentityRegistryContract, bound to a specific deployed contract.

type EthereumIdentityRegistryContractCaller

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

EthereumIdentityRegistryContractCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewEthereumIdentityRegistryContractCaller

func NewEthereumIdentityRegistryContractCaller(address common.Address, caller bind.ContractCaller) (*EthereumIdentityRegistryContractCaller, error)

NewEthereumIdentityRegistryContractCaller creates a new read-only instance of EthereumIdentityRegistryContract, bound to a specific deployed contract.

func (*EthereumIdentityRegistryContractCaller) GetIdentityByCentrifugeId

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractCaller) GetIdentityByCentrifugeId(opts *bind.CallOpts, _centrifugeId *big.Int) (common.Address, error)

GetIdentityByCentrifugeId is a free data retrieval call binding the contract method 0x5c7bf661.

Solidity: function getIdentityByCentrifugeId(_centrifugeId uint48) constant returns(address)

type EthereumIdentityRegistryContractCallerRaw

type EthereumIdentityRegistryContractCallerRaw struct {
	Contract *EthereumIdentityRegistryContractCaller // Generic read-only contract binding to access the raw methods on
}

EthereumIdentityRegistryContractCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*EthereumIdentityRegistryContractCallerRaw) Call

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type EthereumIdentityRegistryContractCallerSession

type EthereumIdentityRegistryContractCallerSession struct {
	Contract *EthereumIdentityRegistryContractCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts                           // Call options to use throughout this session
}

EthereumIdentityRegistryContractCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*EthereumIdentityRegistryContractCallerSession) GetIdentityByCentrifugeId

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractCallerSession) GetIdentityByCentrifugeId(_centrifugeId *big.Int) (common.Address, error)

GetIdentityByCentrifugeId is a free data retrieval call binding the contract method 0x5c7bf661.

Solidity: function getIdentityByCentrifugeId(_centrifugeId uint48) constant returns(address)

type EthereumIdentityRegistryContractFilterer

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

EthereumIdentityRegistryContractFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewEthereumIdentityRegistryContractFilterer

func NewEthereumIdentityRegistryContractFilterer(address common.Address, filterer bind.ContractFilterer) (*EthereumIdentityRegistryContractFilterer, error)

NewEthereumIdentityRegistryContractFilterer creates a new log filterer instance of EthereumIdentityRegistryContract, bound to a specific deployed contract.

func (*EthereumIdentityRegistryContractFilterer) FilterIdentityRegistered

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractFilterer) FilterIdentityRegistered(opts *bind.FilterOpts, centrifugeId []*big.Int) (*EthereumIdentityRegistryContractIdentityRegisteredIterator, error)

FilterIdentityRegistered is a free log retrieval operation binding the contract event 0xdce3b1d0a5d5575f7d94c88f0300b0af4cbe28c211f11c315cbac957b32ddb49.

Solidity: e IdentityRegistered(centrifugeId indexed uint48, identity address)

func (*EthereumIdentityRegistryContractFilterer) FilterIdentityUpdated

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractFilterer) FilterIdentityUpdated(opts *bind.FilterOpts, centrifugeId []*big.Int) (*EthereumIdentityRegistryContractIdentityUpdatedIterator, error)

FilterIdentityUpdated is a free log retrieval operation binding the contract event 0xb0eb267eb8047ce01327cdd07db5733b07c2d488cb922b20b723a596b53b659c.

Solidity: e IdentityUpdated(centrifugeId indexed uint48, identity address)

func (*EthereumIdentityRegistryContractFilterer) WatchIdentityRegistered

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractFilterer) WatchIdentityRegistered(opts *bind.WatchOpts, sink chan<- *EthereumIdentityRegistryContractIdentityRegistered, centrifugeId []*big.Int) (event.Subscription, error)

WatchIdentityRegistered is a free log subscription operation binding the contract event 0xdce3b1d0a5d5575f7d94c88f0300b0af4cbe28c211f11c315cbac957b32ddb49.

Solidity: e IdentityRegistered(centrifugeId indexed uint48, identity address)

func (*EthereumIdentityRegistryContractFilterer) WatchIdentityUpdated

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractFilterer) WatchIdentityUpdated(opts *bind.WatchOpts, sink chan<- *EthereumIdentityRegistryContractIdentityUpdated, centrifugeId []*big.Int) (event.Subscription, error)

WatchIdentityUpdated is a free log subscription operation binding the contract event 0xb0eb267eb8047ce01327cdd07db5733b07c2d488cb922b20b723a596b53b659c.

Solidity: e IdentityUpdated(centrifugeId indexed uint48, identity address)

type EthereumIdentityRegistryContractIdentityRegistered

type EthereumIdentityRegistryContractIdentityRegistered struct {
	CentrifugeId *big.Int
	Identity     common.Address
	Raw          types.Log // Blockchain specific contextual infos
}

EthereumIdentityRegistryContractIdentityRegistered represents a IdentityRegistered event raised by the EthereumIdentityRegistryContract contract.

type EthereumIdentityRegistryContractIdentityRegisteredIterator

type EthereumIdentityRegistryContractIdentityRegisteredIterator struct {
	Event *EthereumIdentityRegistryContractIdentityRegistered // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityRegistryContractIdentityRegisteredIterator is returned from FilterIdentityRegistered and is used to iterate over the raw logs and unpacked data for IdentityRegistered events raised by the EthereumIdentityRegistryContract contract.

func (*EthereumIdentityRegistryContractIdentityRegisteredIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityRegistryContractIdentityRegisteredIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityRegistryContractIdentityRegisteredIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityRegistryContractIdentityUpdated

type EthereumIdentityRegistryContractIdentityUpdated struct {
	CentrifugeId *big.Int
	Identity     common.Address
	Raw          types.Log // Blockchain specific contextual infos
}

EthereumIdentityRegistryContractIdentityUpdated represents a IdentityUpdated event raised by the EthereumIdentityRegistryContract contract.

type EthereumIdentityRegistryContractIdentityUpdatedIterator

type EthereumIdentityRegistryContractIdentityUpdatedIterator struct {
	Event *EthereumIdentityRegistryContractIdentityUpdated // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

EthereumIdentityRegistryContractIdentityUpdatedIterator is returned from FilterIdentityUpdated and is used to iterate over the raw logs and unpacked data for IdentityUpdated events raised by the EthereumIdentityRegistryContract contract.

func (*EthereumIdentityRegistryContractIdentityUpdatedIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*EthereumIdentityRegistryContractIdentityUpdatedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*EthereumIdentityRegistryContractIdentityUpdatedIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type EthereumIdentityRegistryContractRaw

type EthereumIdentityRegistryContractRaw struct {
	Contract *EthereumIdentityRegistryContract // Generic contract binding to access the raw methods on
}

EthereumIdentityRegistryContractRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*EthereumIdentityRegistryContractRaw) Call

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*EthereumIdentityRegistryContractRaw) Transact

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityRegistryContractRaw) Transfer

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityRegistryContractSession

type EthereumIdentityRegistryContractSession struct {
	Contract     *EthereumIdentityRegistryContract // Generic contract binding to set the session for
	CallOpts     bind.CallOpts                     // Call options to use throughout this session
	TransactOpts bind.TransactOpts                 // Transaction auth options to use throughout this session
}

EthereumIdentityRegistryContractSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*EthereumIdentityRegistryContractSession) GetIdentityByCentrifugeId

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractSession) GetIdentityByCentrifugeId(_centrifugeId *big.Int) (common.Address, error)

GetIdentityByCentrifugeId is a free data retrieval call binding the contract method 0x5c7bf661.

Solidity: function getIdentityByCentrifugeId(_centrifugeId uint48) constant returns(address)

func (*EthereumIdentityRegistryContractSession) RegisterIdentity

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractSession) RegisterIdentity(_centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

RegisterIdentity is a paid mutator transaction binding the contract method 0xfa3a3106.

Solidity: function registerIdentity(_centrifugeId uint48, _identity address) returns()

func (*EthereumIdentityRegistryContractSession) UpdateIdentityAddress

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractSession) UpdateIdentityAddress(_centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

UpdateIdentityAddress is a paid mutator transaction binding the contract method 0xc3e82b06.

Solidity: function updateIdentityAddress(_centrifugeId uint48, _identity address) returns()

type EthereumIdentityRegistryContractTransactor

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

EthereumIdentityRegistryContractTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewEthereumIdentityRegistryContractTransactor

func NewEthereumIdentityRegistryContractTransactor(address common.Address, transactor bind.ContractTransactor) (*EthereumIdentityRegistryContractTransactor, error)

NewEthereumIdentityRegistryContractTransactor creates a new write-only instance of EthereumIdentityRegistryContract, bound to a specific deployed contract.

func (*EthereumIdentityRegistryContractTransactor) RegisterIdentity

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactor) RegisterIdentity(opts *bind.TransactOpts, _centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

RegisterIdentity is a paid mutator transaction binding the contract method 0xfa3a3106.

Solidity: function registerIdentity(_centrifugeId uint48, _identity address) returns()

func (*EthereumIdentityRegistryContractTransactor) UpdateIdentityAddress

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactor) UpdateIdentityAddress(opts *bind.TransactOpts, _centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

UpdateIdentityAddress is a paid mutator transaction binding the contract method 0xc3e82b06.

Solidity: function updateIdentityAddress(_centrifugeId uint48, _identity address) returns()

type EthereumIdentityRegistryContractTransactorRaw

type EthereumIdentityRegistryContractTransactorRaw struct {
	Contract *EthereumIdentityRegistryContractTransactor // Generic write-only contract binding to access the raw methods on
}

EthereumIdentityRegistryContractTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*EthereumIdentityRegistryContractTransactorRaw) Transact

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*EthereumIdentityRegistryContractTransactorRaw) Transfer

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type EthereumIdentityRegistryContractTransactorSession

type EthereumIdentityRegistryContractTransactorSession struct {
	Contract     *EthereumIdentityRegistryContractTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts                           // Transaction auth options to use throughout this session
}

EthereumIdentityRegistryContractTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*EthereumIdentityRegistryContractTransactorSession) RegisterIdentity

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactorSession) RegisterIdentity(_centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

RegisterIdentity is a paid mutator transaction binding the contract method 0xfa3a3106.

Solidity: function registerIdentity(_centrifugeId uint48, _identity address) returns()

func (*EthereumIdentityRegistryContractTransactorSession) UpdateIdentityAddress

func (_EthereumIdentityRegistryContract *EthereumIdentityRegistryContractTransactorSession) UpdateIdentityAddress(_centrifugeId *big.Int, _identity common.Address) (*types.Transaction, error)

UpdateIdentityAddress is a paid mutator transaction binding the contract method 0xc3e82b06.

Solidity: function updateIdentityAddress(_centrifugeId uint48, _identity address) returns()

type EthereumIdentityService

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

EthereumIdentityService implements `Service`

func (*EthereumIdentityService) AddKeyFromConfig

func (ids *EthereumIdentityService) AddKeyFromConfig(purpose int) error

AddKeyFromConfig adds a key previously generated and indexed in the configuration file to the identity specified in such config file

func (*EthereumIdentityService) CheckIdentityExists

func (ids *EthereumIdentityService) CheckIdentityExists(centrifugeID CentID) (exists bool, err error)

CheckIdentityExists checks if the identity represented by id actually exists on ethereum

func (*EthereumIdentityService) CreateIdentity

func (ids *EthereumIdentityService) CreateIdentity(centrifugeID CentID) (id Identity, confirmations chan *WatchIdentity, err error)

CreateIdentity creates an identity representing the id on ethereum

func (*EthereumIdentityService) GetClientP2PURL

func (ids *EthereumIdentityService) GetClientP2PURL(centID CentID) (url string, err error)

GetClientP2PURL returns the p2p url associated with the centID

func (*EthereumIdentityService) GetClientsP2PURLs

func (ids *EthereumIdentityService) GetClientsP2PURLs(centIDs []CentID) ([]string, error)

GetClientsP2PURLs returns p2p urls associated with each centIDs will error out at first failure

func (*EthereumIdentityService) GetIdentityAddress

func (ids *EthereumIdentityService) GetIdentityAddress(centID CentID) (common.Address, error)

GetIdentityAddress gets the address of the ethereum identity contract for the given CentID

func (*EthereumIdentityService) GetIdentityKey

func (ids *EthereumIdentityService) GetIdentityKey(identity CentID, pubKey []byte) (keyInfo Key, err error)

GetIdentityKey returns the key for provided identity

func (*EthereumIdentityService) LookupIdentityForID

func (ids *EthereumIdentityService) LookupIdentityForID(centrifugeID CentID) (Identity, error)

LookupIdentityForID looks up if the identity for given CentID exists on ethereum

func (*EthereumIdentityService) ValidateKey

func (ids *EthereumIdentityService) ValidateKey(centID CentID, key []byte, purpose int) error

ValidateKey checks if a given key is valid for the given centrifugeID.

func (*EthereumIdentityService) ValidateSignature

func (ids *EthereumIdentityService) ValidateSignature(signature *coredocumentpb.Signature, message []byte) error

ValidateSignature validates a signature on a message based on identity data

type IDConfig

type IDConfig struct {
	ID   CentID
	Keys map[int]IDKey
}

IDConfig holds information about the identity

func GetIdentityConfig

func GetIdentityConfig(config Config) (*IDConfig, error)

GetIdentityConfig returns the identity and keys associated with the node.

type IDKey

type IDKey struct {
	PublicKey  []byte
	PrivateKey []byte
}

IDKey represents a key pair

type Identity

type Identity interface {
	fmt.Stringer
	CentID() CentID
	SetCentrifugeID(centID CentID)
	CurrentP2PKey() (ret string, err error)
	LastKeyForPurpose(keyPurpose int) (key []byte, err error)
	AddKeyToIdentity(ctx context.Context, keyPurpose int, key []byte) (confirmations chan *WatchIdentity, err error)
	FetchKey(key []byte) (Key, error)
}

Identity defines an Identity on chain

type Key added in v1.0.0

type Key interface {
	GetKey() [32]byte
	GetPurposes() []*big.Int
	GetRevokedAt() *big.Int
}

Key defines a single ERC725 identity key

type Service added in v1.0.0

type Service interface {

	// LookupIdentityForID looks up if the identity for given CentID exists on ethereum
	LookupIdentityForID(centrifugeID CentID) (id Identity, err error)

	// CreateIdentity creates an identity representing the id on ethereum
	CreateIdentity(centrifugeID CentID) (id Identity, confirmations chan *WatchIdentity, err error)

	// CheckIdentityExists checks if the identity represented by id actually exists on ethereum
	CheckIdentityExists(centrifugeID CentID) (exists bool, err error)

	// GetIdentityAddress gets the address of the ethereum identity contract for the given CentID
	GetIdentityAddress(centID CentID) (common.Address, error)

	// GetClientP2PURL returns the p2p url associated with the centID
	GetClientP2PURL(centID CentID) (url string, err error)

	// GetClientsP2PURLs returns p2p urls associated with each centIDs
	// will error out at first failure
	GetClientsP2PURLs(centIDs []CentID) ([]string, error)

	// GetIdentityKey returns the key for provided identity
	GetIdentityKey(identity CentID, pubKey []byte) (keyInfo Key, err error)

	// ValidateKey checks if a given key is valid for the given centrifugeID.
	ValidateKey(centID CentID, key []byte, purpose int) error

	// AddKeyFromConfig adds a key previously generated and indexed in the configuration file to the identity specified in such config file
	AddKeyFromConfig(purpose int) error

	// ValidateSignature validates a signature on a message based on identity data
	ValidateSignature(signature *coredocumentpb.Signature, message []byte) error
}

Service is used to interact with centrifuge identities

func NewEthereumIdentityService

func NewEthereumIdentityService(config Config, factoryContract factory, registryContract registry,
	queue *queue.Server,
	gethClientFinder func() ethereum.Client,
	contractProvider func(address common.Address, backend bind.ContractBackend) (contract, error)) Service

NewEthereumIdentityService creates a new NewEthereumIdentityService given the config and the smart contracts

type WatchIdentity

type WatchIdentity struct {
	Identity Identity
	Error    error
}

WatchIdentity holds the identity received form chain event

Jump to

Keyboard shortcuts

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