did

package
v3.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: May 29, 2019 License: AGPL-3.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ValidatorSetChangePrefix string = "val:"
)

Variables

View Source
var IsCheckOwnerRequestMethod = map[string]bool{
	"CloseRequest":    true,
	"TimeOutRequest":  true,
	"SetDataReceived": true,
}
View Source
var IsMasterKeyMethod = map[string]bool{
	"UpdateNode": true,
}
View Source
var IsMethod = map[string]bool{
	"InitNDID":                         true,
	"RegisterNode":                     true,
	"AddNodeToken":                     true,
	"ReduceNodeToken":                  true,
	"SetNodeToken":                     true,
	"SetPriceFunc":                     true,
	"AddNamespace":                     true,
	"SetValidator":                     true,
	"AddService":                       true,
	"UpdateNodeByNDID":                 true,
	"UpdateService":                    true,
	"RegisterServiceDestinationByNDID": true,
	"DisableNode":                      true,
	"DisableNamespace":                 true,
	"DisableService":                   true,
	"DisableServiceDestinationByNDID":  true,
	"EnableNode":                       true,
	"EnableServiceDestinationByNDID":   true,
	"EnableNamespace":                  true,
	"EnableService":                    true,
	"RegisterIdentity":                 true,
	"AddAccessor":                      true,
	"CreateIdpResponse":                true,
	"RegisterAccessor":                 true,
	"UpdateIdentity":                   true,
	"SignData":                         true,
	"RegisterServiceDestination":       true,
	"UpdateServiceDestination":         true,
	"CreateRequest":                    true,
	"SetMqAddresses":                   true,
	"UpdateNode":                       true,
	"CloseRequest":                     true,
	"TimeOutRequest":                   true,
	"SetDataReceived":                  true,
	"DisableServiceDestination":        true,
	"EnableServiceDestination":         true,
	"ClearRegisterIdentityTimeout":     true,
	"SetTimeOutBlockRegisterIdentity":  true,
	"AddNodeToProxyNode":               true,
	"UpdateNodeProxyNode":              true,
	"RemoveNodeFromProxyNode":          true,
	"RevokeAccessor":                   true,
	"SetInitData":                      true,
	"EndInit":                          true,
	"SetLastBlock":                     true,
	"RevokeIdentityAssociation":        true,
	"UpdateIdentityModeList":           true,
	"AddIdentity":                      true,
	"SetAllowedModeList":               true,
	"UpdateNamespace":                  true,
	"SetAllowedMinIalForRegisterIdentityAtFirstIdp": true,
	"RevokeAndAddAccessor":                          true,
}

Functions

func MaxInt32

func MaxInt32(v []int32) int32

func ReturnCheckTx

func ReturnCheckTx(code uint32, log string) types.ResponseCheckTx

ReturnCheckTx return types.ResponseDeliverTx

Types

type ASNode

type ASNode struct {
	ID        string  `json:"node_id"`
	Name      string  `json:"node_name"`
	MinIal    float64 `json:"min_ial"`
	MinAal    float64 `json:"min_aal"`
	ServiceID string  `json:"service_id"`
	Active    bool    `json:"active"`
}

type ASNodeResult

type ASNodeResult struct {
	ID                     string   `json:"node_id"`
	Name                   string   `json:"node_name"`
	MinIal                 float64  `json:"min_ial"`
	MinAal                 float64  `json:"min_aal"`
	SupportedNamespaceList []string `json:"supported_namespace_list"`
}

type ASWithMqNode added in v0.8.0

type ASWithMqNode struct {
	ID                     string       `json:"node_id"`
	Name                   string       `json:"name"`
	MinIal                 float64      `json:"min_ial"`
	MinAal                 float64      `json:"min_aal"`
	PublicKey              string       `json:"public_key"`
	Mq                     []MsqAddress `json:"mq"`
	SupportedNamespaceList []string     `json:"supported_namespace_list"`
}

type ASWithMqNodeBehindProxy added in v0.8.0

type ASWithMqNodeBehindProxy struct {
	NodeID                 string   `json:"node_id"`
	Name                   string   `json:"name"`
	MinIal                 float64  `json:"min_ial"`
	MinAal                 float64  `json:"min_aal"`
	PublicKey              string   `json:"public_key"`
	SupportedNamespaceList []string `json:"supported_namespace_list"`
	Proxy                  struct {
		NodeID    string       `json:"node_id"`
		PublicKey string       `json:"public_key"`
		Mq        []MsqAddress `json:"mq"`
		Config    string       `json:"config"`
	} `json:"proxy"`
}

type ASorRPBehindProxy added in v0.8.0

type ASorRPBehindProxy struct {
	NodeID          string `json:"node_id"`
	NodeName        string `json:"node_name"`
	Role            string `json:"role"`
	PublicKey       string `json:"public_key"`
	MasterPublicKey string `json:"master_public_key"`
	Config          string `json:"config"`
}

type Accessor

type Accessor struct {
	AccessorType      string `json:"accessor_type"`
	AccessorPublicKey string `json:"accessor_public_key"`
	AccessorGroupID   string `json:"accessor_group_id"`
	Active            bool   `json:"active"`
	Owner             string `json:"owner"`
}

type AddAccessorParam

type AddAccessorParam struct {
	ReferenceGroupCode     string `json:"reference_group_code"`
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
	AccessorID             string `json:"accessor_id"`
	AccessorPublicKey      string `json:"accessor_public_key"`
	AccessorType           string `json:"accessor_type"`
	RequestID              string `json:"request_id"`
}

type AddIdentityParam

type AddIdentityParam struct {
	ReferenceGroupCode string     `json:"reference_group_code"`
	NewIdentityList    []Identity `json:"new_identity_list"`
	RequestID          string     `json:"request_id"`
}

type AddNodeToProxyNodeParam added in v0.8.0

type AddNodeToProxyNodeParam struct {
	NodeID      string `json:"node_id"`
	ProxyNodeID string `json:"proxy_node_id"`
	Config      string `json:"config"`
}

type AddNodeTokenParam

type AddNodeTokenParam struct {
	NodeID string  `json:"node_id"`
	Amount float64 `json:"amount"`
}

type AddServiceParam

type AddServiceParam struct {
	ServiceID         string `json:"service_id"`
	ServiceName       string `json:"service_name"`
	DataSchema        string `json:"data_schema"`
	DataSchemaVersion string `json:"data_schema_version"`
}

type ApproveService

type ApproveService struct {
	Active bool `json:"active"`
}

type CheckExistingAccessorGroupIDParam

type CheckExistingAccessorGroupIDParam struct {
	AccessorGroupID string `json:"accessor_group_id"`
}

type CheckExistingAccessorIDParam

type CheckExistingAccessorIDParam struct {
	AccessorID string `json:"accessor_id"`
}

type CheckExistingIdentityParam

type CheckExistingIdentityParam struct {
	ReferenceGroupCode     string `json:"reference_group_code"`
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
}

type CheckExistingIdentityResult

type CheckExistingIdentityResult struct {
	Exist bool `json:"exist"`
}

type CheckExistingResult

type CheckExistingResult struct {
	Exist bool `json:"exist"`
}

type ClearRegisterIdentityTimeoutParam added in v0.8.0

type ClearRegisterIdentityTimeoutParam struct {
	HashID string `json:"hash_id"`
}

type CloseRequestParam

type CloseRequestParam struct {
	RequestID         string          `json:"request_id"`
	ResponseValidList []ResponseValid `json:"response_valid_list"`
}

type CreateIdpResponseParam

type CreateIdpResponseParam struct {
	Aal       float64 `json:"aal"`
	Ial       float64 `json:"ial"`
	RequestID string  `json:"request_id"`
	Signature string  `json:"signature"`
	Status    string  `json:"status"`
}

type CreateRequestParam

type CreateRequestParam struct {
	RequestID       string        `json:"request_id"`
	MinIdp          int           `json:"min_idp"`
	MinAal          float64       `json:"min_aal"`
	MinIal          float64       `json:"min_ial"`
	Timeout         int           `json:"request_timeout"`
	IdPIDList       []string      `json:"idp_id_list"`
	DataRequestList []DataRequest `json:"data_request_list"`
	MessageHash     string        `json:"request_message_hash"`
	Purpose         string        `json:"purpose"`
	Mode            int32         `json:"mode"`
}

type DIDApplication

type DIDApplication struct {
	types.BaseApplication

	ValUpdates map[string]types.ValidatorUpdate

	Version                  string
	AppProtocolVersion       uint64
	CurrentBlock             int64
	CurrentChain             string
	HashData                 []byte
	UncommittedState         map[string][]byte
	UncommittedVersionsState map[string][]int64
	// contains filtered or unexported fields
}

func NewDIDApplication

func NewDIDApplication(logger *logrus.Entry, db dbm.DB) *DIDApplication

func (*DIDApplication) AddAccessor

func (app *DIDApplication) AddAccessor(param string, nodeID string) types.ResponseDeliverTx

func (*DIDApplication) BeginBlock

Track the block hash and header information

func (*DIDApplication) CheckTx

func (app *DIDApplication) CheckTx(tx []byte) (res types.ResponseCheckTx)

func (*DIDApplication) CheckTxRouter added in v0.9.0

func (app *DIDApplication) CheckTxRouter(method string, param string, nonce []byte, signature []byte, nodeID string) types.ResponseCheckTx

CheckTxRouter is Pointer to function

func (*DIDApplication) Commit

func (app *DIDApplication) Commit() types.ResponseCommit

func (*DIDApplication) DeleteStateDB

func (app *DIDApplication) DeleteStateDB(key []byte)

func (*DIDApplication) DeleteVersionedStateDB

func (app *DIDApplication) DeleteVersionedStateDB(key []byte)

func (*DIDApplication) DeliverTx

func (app *DIDApplication) DeliverTx(tx []byte) (res types.ResponseDeliverTx)

func (*DIDApplication) DeliverTxRouter added in v0.9.0

func (app *DIDApplication) DeliverTxRouter(method string, param string, nonce []byte, signature []byte, nodeID string) types.ResponseDeliverTx

DeliverTxRouter is Pointer to function

func (*DIDApplication) EndBlock

Update the validator set

func (*DIDApplication) EndInit added in v0.11.0

func (app *DIDApplication) EndInit(param string, nodeID string) types.ResponseDeliverTx

func (*DIDApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdp

func (app *DIDApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdp(param string) types.ResponseQuery

func (*DIDApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdpFromStateDB

func (app *DIDApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdpFromStateDB(getFromCommitedState bool) float64

func (*DIDApplication) GetAllowedModeFromStateDB

func (app *DIDApplication) GetAllowedModeFromStateDB(purpose string, getFromCommitedState bool) (result []int32)

func (*DIDApplication) GetAllowedModeList

func (app *DIDApplication) GetAllowedModeList(param string) types.ResponseQuery

func (*DIDApplication) GetCommittedStateDB

func (app *DIDApplication) GetCommittedStateDB(key []byte) (err error, value []byte)

func (*DIDApplication) GetCommittedVersionedStateDB

func (app *DIDApplication) GetCommittedVersionedStateDB(key []byte, height int64) (err error, value []byte)

func (*DIDApplication) GetNamespaceAllowedIdentifierCountMap

func (app *DIDApplication) GetNamespaceAllowedIdentifierCountMap(getFromCommitedState bool) (result map[string]int)

func (*DIDApplication) GetNamespaceMap

func (app *DIDApplication) GetNamespaceMap(getFromCommitedState bool) (result map[string]bool)

func (*DIDApplication) GetReferenceGroupCode

func (app *DIDApplication) GetReferenceGroupCode(param string) types.ResponseQuery

func (*DIDApplication) GetReferenceGroupCodeByAccessorID

func (app *DIDApplication) GetReferenceGroupCodeByAccessorID(param string) types.ResponseQuery

func (*DIDApplication) GetStateDB

func (app *DIDApplication) GetStateDB(key []byte) (err error, value []byte)

func (*DIDApplication) GetVersionedStateDB

func (app *DIDApplication) GetVersionedStateDB(key []byte, height int64) (err error, value []byte)

func (*DIDApplication) HasStateDB

func (app *DIDApplication) HasStateDB(key []byte) bool

func (*DIDApplication) HasVersionedStateDB

func (app *DIDApplication) HasVersionedStateDB(key []byte) bool

func (*DIDApplication) Info

func (app *DIDApplication) Info(req types.RequestInfo) (resInfo types.ResponseInfo)

func (*DIDApplication) InitChain

Save the validators in the merkle tree

func (*DIDApplication) Query

func (app *DIDApplication) Query(reqQuery types.RequestQuery) (res types.ResponseQuery)

func (*DIDApplication) QueryRouter added in v0.9.0

func (app *DIDApplication) QueryRouter(method string, param string, height int64) types.ResponseQuery

QueryRouter is Pointer to function

func (*DIDApplication) ReturnDeliverTxLog added in v0.9.0

func (app *DIDApplication) ReturnDeliverTxLog(code uint32, log string, extraData string) types.ResponseDeliverTx

app.ReturnDeliverTxLog return types.ResponseDeliverTx

func (*DIDApplication) ReturnDeliverTxLogWitgTag

func (app *DIDApplication) ReturnDeliverTxLogWitgTag(code uint32, log string, specialTag []cmn.KVPair) types.ResponseDeliverTx

func (*DIDApplication) ReturnQuery added in v0.9.0

func (app *DIDApplication) ReturnQuery(value []byte, log string, height int64) types.ResponseQuery

ReturnQuery return types.ResponseQuery

func (*DIDApplication) SaveDBState

func (app *DIDApplication) SaveDBState()

func (*DIDApplication) SetAllowedMinIalForRegisterIdentityAtFirstIdp

func (app *DIDApplication) SetAllowedMinIalForRegisterIdentityAtFirstIdp(param string, nodeID string) types.ResponseDeliverTx

func (*DIDApplication) SetAllowedModeList

func (app *DIDApplication) SetAllowedModeList(param string, nodeID string) types.ResponseDeliverTx

func (*DIDApplication) SetInitData added in v0.11.0

func (app *DIDApplication) SetInitData(param string, nodeID string) types.ResponseDeliverTx

func (*DIDApplication) SetStateDB

func (app *DIDApplication) SetStateDB(key, value []byte)

func (*DIDApplication) SetVersionedStateDB

func (app *DIDApplication) SetVersionedStateDB(key, value []byte)

func (*DIDApplication) Validators

func (app *DIDApplication) Validators() (validators []types.Validator)

type DataRequest

type DataRequest struct {
	ServiceID            string   `json:"service_id"`
	As                   []string `json:"as_id_list"`
	Count                int      `json:"min_as"`
	RequestParamsHash    string   `json:"request_params_hash"`
	AnsweredAsIdList     []string `json:"answered_as_id_list"`
	ReceivedDataFromList []string `json:"received_data_from_list"`
}

type DisableAccessorMethodParam

type DisableAccessorMethodParam struct {
	AccessorID string `json:"accessor_id"`
}

type DisableMsqDestinationParam

type DisableMsqDestinationParam struct {
	HashID string `json:"hash_id"`
}

type DisableNamespaceParam

type DisableNamespaceParam struct {
	Namespace string `json:"namespace"`
}

type DisableNodeParam

type DisableNodeParam struct {
	NodeID string `json:"node_id"`
}

type DisableServiceDestinationByNDIDParam

type DisableServiceDestinationByNDIDParam struct {
	ServiceID string `json:"service_id"`
	NodeID    string `json:"node_id"`
}

type DisableServiceDestinationParam

type DisableServiceDestinationParam struct {
	ServiceID string `json:"service_id"`
}

type DisableServiceParam

type DisableServiceParam struct {
	ServiceID string `json:"service_id"`
}

type EndInitParam added in v0.11.0

type EndInitParam struct{}

type GetAccessorGroupIDParam

type GetAccessorGroupIDParam struct {
	AccessorID string `json:"accessor_id"`
}

type GetAccessorGroupIDResult

type GetAccessorGroupIDResult struct {
	AccessorGroupID string `json:"accessor_group_id"`
}

type GetAccessorKeyParam

type GetAccessorKeyParam struct {
	AccessorID string `json:"accessor_id"`
}

type GetAccessorKeyResult

type GetAccessorKeyResult struct {
	AccessorPublicKey string `json:"accessor_public_key"`
	Active            bool   `json:"active"`
}

type GetAccessorMethodParam

type GetAccessorMethodParam struct {
	AccessorID string `json:"accessor_id"`
}

type GetAccessorMethodResult

type GetAccessorMethodResult struct {
	AccessorType string `json:"accessor_type"`
	AccessorKey  string `json:"accessor_key"`
	Commitment   string `json:"commitment"`
}

type GetAccessorOwnerParam added in v0.11.0

type GetAccessorOwnerParam struct {
	AccessorID string `json:"accessor_id"`
}

type GetAccessorOwnerResult added in v0.11.0

type GetAccessorOwnerResult struct {
	NodeID string `json:"node_id"`
}

type GetAccessorsInAccessorGroupParam added in v0.9.0

type GetAccessorsInAccessorGroupParam struct {
	AccessorGroupID string `json:"accessor_group_id"`
	IdpID           string `json:"idp_id"`
}

type GetAccessorsInAccessorGroupResult added in v0.9.0

type GetAccessorsInAccessorGroupResult struct {
	AccessorList []string `json:"accessor_list"`
}

type GetAllowedMinIalForRegisterIdentityAtFirstIdpResult

type GetAllowedMinIalForRegisterIdentityAtFirstIdpResult struct {
	MinIal float64 `json:"min_ial"`
}

type GetAllowedModeListParam

type GetAllowedModeListParam struct {
	Purpose string `json:"purpose"`
}

type GetAllowedModeListResult

type GetAllowedModeListResult struct {
	AllowedModeList []int32 `json:"allowed_mode_list"`
}

type GetAsNodesByServiceIdParam

type GetAsNodesByServiceIdParam struct {
	ServiceID  string   `json:"service_id"`
	NodeIDList []string `json:"node_id_list"`
}

type GetAsNodesByServiceIdResult

type GetAsNodesByServiceIdResult struct {
	Node []ASNode `json:"node"`
}

type GetAsNodesByServiceIdWithNameResult

type GetAsNodesByServiceIdWithNameResult struct {
	Node []ASNodeResult `json:"node"`
}

type GetAsNodesInfoByServiceIdResult added in v0.8.0

type GetAsNodesInfoByServiceIdResult struct {
	Node []interface{} `json:"node"`
}

type GetDataSignatureParam

type GetDataSignatureParam struct {
	NodeID    string `json:"node_id"`
	ServiceID string `json:"service_id"`
	RequestID string `json:"request_id"`
}

type GetDataSignatureResult

type GetDataSignatureResult struct {
	Signature string `json:"signature"`
}

type GetIdentityInfoParam

type GetIdentityInfoParam struct {
	ReferenceGroupCode     string `json:"reference_group_code"`
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
	NodeID                 string `json:"node_id"`
}

type GetIdentityInfoResult

type GetIdentityInfoResult struct {
	Ial      float64 `json:"ial"`
	ModeList []int32 `json:"mode_list"`
}

type GetIdpNodesInfoResult added in v0.8.0

type GetIdpNodesInfoResult struct {
	Node []interface{} `json:"node"`
}

type GetIdpNodesParam

type GetIdpNodesParam struct {
	ReferenceGroupCode                     string   `json:"reference_group_code"`
	IdentityNamespace                      string   `json:"identity_namespace"`
	IdentityIdentifierHash                 string   `json:"identity_identifier_hash"`
	MinAal                                 float64  `json:"min_aal"`
	MinIal                                 float64  `json:"min_ial"`
	NodeIDList                             []string `json:"node_id_list"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
	ModeList                               []int32  `json:"mode_list"`
}

type GetIdpNodesResult

type GetIdpNodesResult struct {
	Node []interface{} `json:"node"`
}

type GetMqAddressesParam added in v0.8.0

type GetMqAddressesParam struct {
	NodeID string `json:"node_id"`
}

type GetMqAddressesResult added in v0.8.0

type GetMqAddressesResult []MsqAddress

type GetNodeIDListParam added in v0.8.0

type GetNodeIDListParam struct {
	Role string `json:"role"`
}

type GetNodeIDListResult added in v0.8.0

type GetNodeIDListResult struct {
	NodeIDList []string `json:"node_id_list"`
}

type GetNodeInfoIdPResult

type GetNodeInfoIdPResult struct {
	PublicKey                              string       `json:"public_key"`
	MasterPublicKey                        string       `json:"master_public_key"`
	NodeName                               string       `json:"node_name"`
	Role                                   string       `json:"role"`
	MaxIal                                 float64      `json:"max_ial"`
	MaxAal                                 float64      `json:"max_aal"`
	SupportedRequestMessageDataUrlTypeList []string     `json:"supported_request_message_data_url_type_list"`
	Mq                                     []MsqAddress `json:"mq"`
}

type GetNodeInfoParam

type GetNodeInfoParam struct {
	NodeID string `json:"node_id"`
}

type GetNodeInfoResult

type GetNodeInfoResult struct {
	PublicKey       string       `json:"public_key"`
	MasterPublicKey string       `json:"master_public_key"`
	NodeName        string       `json:"node_name"`
	Role            string       `json:"role"`
	Mq              []MsqAddress `json:"mq"`
}

type GetNodeInfoResultIdPandASBehindProxy added in v0.8.0

type GetNodeInfoResultIdPandASBehindProxy struct {
	PublicKey                              string   `json:"public_key"`
	MasterPublicKey                        string   `json:"master_public_key"`
	NodeName                               string   `json:"node_name"`
	Role                                   string   `json:"role"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
	Proxy                                  struct {
		NodeID          string       `json:"node_id"`
		NodeName        string       `json:"node_name"`
		PublicKey       string       `json:"public_key"`
		MasterPublicKey string       `json:"master_public_key"`
		Mq              []MsqAddress `json:"mq"`
		Config          string       `json:"config"`
	} `json:"proxy"`
}

type GetNodeInfoResultRPandASBehindProxy added in v0.8.0

type GetNodeInfoResultRPandASBehindProxy struct {
	PublicKey       string `json:"public_key"`
	MasterPublicKey string `json:"master_public_key"`
	NodeName        string `json:"node_name"`
	Role            string `json:"role"`
	Proxy           struct {
		NodeID          string       `json:"node_id"`
		NodeName        string       `json:"node_name"`
		PublicKey       string       `json:"public_key"`
		MasterPublicKey string       `json:"master_public_key"`
		Mq              []MsqAddress `json:"mq"`
		Config          string       `json:"config"`
	} `json:"proxy"`
}

type GetNodeMasterPublicKeyParam

type GetNodeMasterPublicKeyParam struct {
	NodeID string `json:"node_id"`
}

type GetNodeMasterPublicKeyResult

type GetNodeMasterPublicKeyResult struct {
	MasterPublicKey string `json:"master_public_key"`
}

type GetNodePublicKeyParam

type GetNodePublicKeyParam struct {
	NodeID string `json:"node_id"`
}

type GetNodePublicKeyResult

type GetNodePublicKeyResult struct {
	PublicKey string `json:"public_key"`
}

type GetNodeTokenParam

type GetNodeTokenParam struct {
	NodeID string `json:"node_id"`
}

type GetNodeTokenResult

type GetNodeTokenResult struct {
	Amount float64 `json:"amount"`
}

type GetNodesBehindProxyNodeParam added in v0.8.0

type GetNodesBehindProxyNodeParam struct {
	ProxyNodeID string `json:"proxy_node_id"`
}

type GetNodesBehindProxyNodeResult added in v0.8.0

type GetNodesBehindProxyNodeResult struct {
	Nodes []interface{} `json:"nodes"`
}

type GetPriceFuncParam

type GetPriceFuncParam struct {
	Func string `json:"func"`
}

type GetPriceFuncResult

type GetPriceFuncResult struct {
	Price float64 `json:"price"`
}

type GetReferenceGroupCodeByAccessorIDParam

type GetReferenceGroupCodeByAccessorIDParam struct {
	AccessorID string `json:"accessor_id"`
}

type GetReferenceGroupCodeParam

type GetReferenceGroupCodeParam struct {
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
}

type GetReferenceGroupCodeResult

type GetReferenceGroupCodeResult struct {
	ReferenceGroupCode string `json:"reference_group_code"`
}

type GetRequestDetailResult

type GetRequestDetailResult struct {
	RequestID           string        `json:"request_id"`
	MinIdp              int           `json:"min_idp"`
	MinAal              float64       `json:"min_aal"`
	MinIal              float64       `json:"min_ial"`
	Timeout             int           `json:"request_timeout"`
	IdPIDList           []string      `json:"idp_id_list"`
	DataRequestList     []DataRequest `json:"data_request_list"`
	MessageHash         string        `json:"request_message_hash"`
	Responses           []Response    `json:"response_list"`
	IsClosed            bool          `json:"closed"`
	IsTimedOut          bool          `json:"timed_out"`
	Purpose             string        `json:"purpose"`
	Mode                int32         `json:"mode"`
	RequesterNodeID     string        `json:"requester_node_id"`
	CreationBlockHeight int64         `json:"creation_block_height"`
	CreationChainID     string        `json:"creation_chain_id"`
}

type GetRequestParam

type GetRequestParam struct {
	RequestID string `json:"request_id"`
}

type GetRequestResult

type GetRequestResult struct {
	IsClosed    bool   `json:"closed"`
	IsTimedOut  bool   `json:"timed_out"`
	MessageHash string `json:"request_message_hash"`
	Mode        int32  `json:"mode"`
}

type GetServiceDetailParam

type GetServiceDetailParam struct {
	ServiceID string `json:"service_id"`
}

type GetServicesByAsIDParam

type GetServicesByAsIDParam struct {
	AsID string `json:"as_id"`
}

type GetServicesByAsIDResult

type GetServicesByAsIDResult struct {
	Services []Service `json:"services"`
}

type IdPBehindProxy added in v0.8.0

type IdPBehindProxy struct {
	NodeID                                 string   `json:"node_id"`
	NodeName                               string   `json:"node_name"`
	Role                                   string   `json:"role"`
	PublicKey                              string   `json:"public_key"`
	MasterPublicKey                        string   `json:"master_public_key"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	Config                                 string   `json:"config"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type Identity

type Identity struct {
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
}

type IdpNode added in v0.8.0

type IdpNode struct {
	NodeID                                 string       `json:"node_id"`
	Name                                   string       `json:"name"`
	MaxIal                                 float64      `json:"max_ial"`
	MaxAal                                 float64      `json:"max_aal"`
	PublicKey                              string       `json:"public_key"`
	Mq                                     []MsqAddress `json:"mq"`
	SupportedRequestMessageDataUrlTypeList []string     `json:"supported_request_message_data_url_type_list"`
}

type IdpNodeBehindProxy added in v0.8.0

type IdpNodeBehindProxy struct {
	NodeID                                 string   `json:"node_id"`
	Name                                   string   `json:"name"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	PublicKey                              string   `json:"public_key"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
	Proxy                                  struct {
		NodeID    string       `json:"node_id"`
		PublicKey string       `json:"public_key"`
		Mq        []MsqAddress `json:"mq"`
		Config    string       `json:"config"`
	} `json:"proxy"`
}

type IdpNodeBehindProxyWithModeList

type IdpNodeBehindProxyWithModeList struct {
	NodeID                                 string   `json:"node_id"`
	Name                                   string   `json:"name"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	PublicKey                              string   `json:"public_key"`
	ModeList                               []int32  `json:"mode_list"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
	Proxy                                  struct {
		NodeID    string       `json:"node_id"`
		PublicKey string       `json:"public_key"`
		Mq        []MsqAddress `json:"mq"`
		Config    string       `json:"config"`
	} `json:"proxy"`
}

type IdpNodeWithModeList

type IdpNodeWithModeList struct {
	NodeID                                 string       `json:"node_id"`
	Name                                   string       `json:"name"`
	MaxIal                                 float64      `json:"max_ial"`
	MaxAal                                 float64      `json:"max_aal"`
	PublicKey                              string       `json:"public_key"`
	Mq                                     []MsqAddress `json:"mq"`
	ModeList                               []int32      `json:"mode_list"`
	SupportedRequestMessageDataUrlTypeList []string     `json:"supported_request_message_data_url_type_list"`
}

type InitNDIDParam

type InitNDIDParam struct {
	NodeID           string `json:"node_id"`
	PublicKey        string `json:"public_key"`
	MasterPublicKey  string `json:"master_public_key"`
	ChainHistoryInfo string `json:"chain_history_info"`
}

type IsInitEndedParam added in v0.11.0

type IsInitEndedParam struct{}

type IsInitEndedResult added in v0.11.0

type IsInitEndedResult struct {
	InitEnded bool `json:"init_ended"`
}

type KeyValue added in v0.11.0

type KeyValue struct {
	Key   []byte `json:"key"`
	Value []byte `json:"value"`
}

type MaxIalAal

type MaxIalAal struct {
	MaxIal float64 `json:"max_ial"`
	MaxAal float64 `json:"max_aal"`
}

type MsqAddress

type MsqAddress struct {
	IP   string `json:"ip"`
	Port int64  `json:"port"`
}

type MsqDestination

type MsqDestination struct {
	Nodes []Node `json:"nodes"`
}

type MsqDestinationNode

type MsqDestinationNode struct {
	ID                                     string   `json:"node_id"`
	Name                                   string   `json:"node_name"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type MsqDestinationNodeWithModeList

type MsqDestinationNodeWithModeList struct {
	ID                                     string   `json:"node_id"`
	Name                                   string   `json:"node_name"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	ModeList                               []int32  `json:"mode_list"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type Namespace

type Namespace struct {
	Namespace                                    string `json:"namespace"`
	Description                                  string `json:"description"`
	Active                                       bool   `json:"active"`
	AllowedIdentifierCountInReferenceGroup       int32  `json:"allowed_identifier_count_in_reference_group"`
	AllowedActiveIdentifierCountInReferenceGroup int32  `json:"allowed_active_identifier_count_in_reference_group"`
}

type Node

type Node struct {
	Ial          float64 `json:"ial"`
	NodeID       string  `json:"node_id"`
	Active       bool    `json:"active"`
	First        bool    `json:"first"`
	TimeoutBlock int64   `json:"timeout_block"`
}

type NodeDetail

type NodeDetail struct {
	PublicKey       string `json:"public_key"`
	MasterPublicKey string `json:"master_public_key"`
	NodeName        string `json:"node_name"`
	Role            string `json:"role"`
	Active          bool   `json:"active"`
}

type NodePublicKey

type NodePublicKey struct {
	NodeID    string `json:"node_id"`
	PublicKey string `json:"public_key"`
}

type Proxy added in v0.8.0

type Proxy struct {
	ProxyNodeID string `json:"proxy_node_id"`
	Config      string `json:"config"`
}

type ReduceNodeTokenParam

type ReduceNodeTokenParam struct {
	NodeID string  `json:"node_id"`
	Amount float64 `json:"amount"`
}

type RegisterAccessorParam added in v0.8.0

type RegisterAccessorParam struct {
	AccessorID        string `json:"accessor_id"`
	AccessorType      string `json:"accessor_type"`
	AccessorPublicKey string `json:"accessor_public_key"`
	AccessorGroupID   string `json:"accessor_group_id"`
}

type RegisterIdentityParam added in v0.8.0

type RegisterIdentityParam struct {
	ReferenceGroupCode string     `json:"reference_group_code"`
	NewIdentityList    []Identity `json:"new_identity_list"`
	Ial                float64    `json:"ial"`
	ModeList           []int32    `json:"mode_list"`
	AccessorID         string     `json:"accessor_id"`
	AccessorPublicKey  string     `json:"accessor_public_key"`
	AccessorType       string     `json:"accessor_type"`
	RequestID          string     `json:"request_id"`
}

type RegisterNode

type RegisterNode struct {
	NodeID          string  `json:"node_id"`
	PublicKey       string  `json:"public_key"`
	MasterPublicKey string  `json:"master_public_key"`
	NodeName        string  `json:"node_name"`
	Role            string  `json:"role"`
	MaxIal          float64 `json:"max_ial"`
	MaxAal          float64 `json:"max_aal"`
}

type RegisterServiceDestinationByNDIDParam

type RegisterServiceDestinationByNDIDParam struct {
	ServiceID string `json:"service_id"`
	NodeID    string `json:"node_id"`
}

type RegisterServiceDestinationParam

type RegisterServiceDestinationParam struct {
	MinAal                 float64  `json:"min_aal"`
	MinIal                 float64  `json:"min_ial"`
	ServiceID              string   `json:"service_id"`
	SupportedNamespaceList []string `json:"supported_namespace_list"`
}

type RemoveNodeFromProxyNode added in v0.8.0

type RemoveNodeFromProxyNode struct {
	NodeID string `json:"node_id"`
}

type Report

type Report struct {
	Method string  `json:"method"`
	Price  float64 `json:"price"`
	Data   string  `json:"data"`
}

type RequestIDParam

type RequestIDParam struct {
	RequestID string `json:"request_id"`
}

type Response

type Response struct {
	Ial            float64 `json:"ial"`
	Aal            float64 `json:"aal"`
	Status         string  `json:"status"`
	Signature      string  `json:"signature"`
	IdpID          string  `json:"idp_id"`
	ValidIal       *bool   `json:"valid_ial"`
	ValidSignature *bool   `json:"valid_signature"`
}

type ResponseValid

type ResponseValid struct {
	IdpID          string `json:"idp_id"`
	ValidIal       *bool  `json:"valid_ial"`
	ValidSignature *bool  `json:"valid_signature"`
}

type RevokeAccessorParam

type RevokeAccessorParam struct {
	AccessorIDList []string `json:"accessor_id_list"`
	RequestID      string   `json:"request_id"`
}

type RevokeAndAddAccessorParam

type RevokeAndAddAccessorParam struct {
	RevokingAccessorID string `json:"revoking_accessor_id"`
	AccessorID         string `json:"accessor_id"`
	AccessorPublicKey  string `json:"accessor_public_key"`
	AccessorType       string `json:"accessor_type"`
	RequestID          string `json:"request_id"`
}

type RevokeIdentityAssociationParam

type RevokeIdentityAssociationParam struct {
	ReferenceGroupCode     string `json:"reference_group_code"`
	IdentityNamespace      string `json:"identity_namespace"`
	IdentityIdentifierHash string `json:"identity_identifier_hash"`
	RequestID              string `json:"request_id"`
}

type Service

type Service struct {
	ServiceID              string   `json:"service_id"`
	MinIal                 float64  `json:"min_ial"`
	MinAal                 float64  `json:"min_aal"`
	Active                 bool     `json:"active"`
	Suspended              bool     `json:"suspended"`
	SupportedNamespaceList []string `json:"supported_namespace_list"`
}

type ServiceDetail

type ServiceDetail struct {
	ServiceID         string `json:"service_id"`
	ServiceName       string `json:"service_name"`
	DataSchema        string `json:"data_schema"`
	DataSchemaVersion string `json:"data_schema_version"`
	Active            bool   `json:"active"`
}

type SetAllowedMinIalForRegisterIdentityAtFirstIdpParam

type SetAllowedMinIalForRegisterIdentityAtFirstIdpParam struct {
	MinIal float64 `json:"min_ial"`
}

type SetAllowedModeListParam

type SetAllowedModeListParam struct {
	Purpose         string  `json:"purpose"`
	AllowedModeList []int32 `json:"allowed_mode_list"`
}

type SetDataReceivedParam

type SetDataReceivedParam struct {
	RequestID string `json:"request_id"`
	ServiceID string `json:"service_id"`
	AsID      string `json:"as_id"`
}

type SetInitDataParam added in v0.11.0

type SetInitDataParam struct {
	KVList []KeyValue `json:"kv_list"`
}

type SetLastBlockParam added in v0.11.0

type SetLastBlockParam struct {
	BlockHeight int64 `json:"block_height"`
}

type SetMqAddressesParam added in v0.8.0

type SetMqAddressesParam struct {
	Addresses []MsqAddress `json:"addresses"`
}

type SetNodeTokenParam

type SetNodeTokenParam struct {
	NodeID string  `json:"node_id"`
	Amount float64 `json:"amount"`
}

type SetPriceFuncParam

type SetPriceFuncParam struct {
	Func  string  `json:"func"`
	Price float64 `json:"price"`
}

type SetValidatorParam

type SetValidatorParam struct {
	PublicKey string `json:"public_key"`
	Power     int64  `json:"power"`
}

type SignDataParam

type SignDataParam struct {
	ServiceID string `json:"service_id"`
	RequestID string `json:"request_id"`
	Signature string `json:"signature"`
}

type State

type State struct {
	Height  int64  `json:"height"`
	AppHash []byte `json:"app_hash"`
	// contains filtered or unexported fields
}

type TimeOutBlockRegisterIdentity added in v0.8.0

type TimeOutBlockRegisterIdentity struct {
	TimeOutBlock int64 `json:"time_out_block"`
}

type TimeOutRequestParam

type TimeOutRequestParam struct {
	RequestID         string          `json:"request_id"`
	ResponseValidList []ResponseValid `json:"response_valid_list"`
}

type TransferNDIDParam

type TransferNDIDParam struct {
	PublicKey string `json:"public_key"`
}

type UpdateIdentityModeListParam

type UpdateIdentityModeListParam struct {
	ReferenceGroupCode     string  `json:"reference_group_code"`
	IdentityNamespace      string  `json:"identity_namespace"`
	IdentityIdentifierHash string  `json:"identity_identifier_hash"`
	ModeList               []int32 `json:"mode_list"`
	RequestID              string  `json:"request_id"`
}

type UpdateIdentityParam

type UpdateIdentityParam struct {
	ReferenceGroupCode     string  `json:"reference_group_code"`
	IdentityNamespace      string  `json:"identity_namespace"`
	IdentityIdentifierHash string  `json:"identity_identifier_hash"`
	Ial                    float64 `json:"ial"`
}

type UpdateNamespaceParam

type UpdateNamespaceParam struct {
	Namespace                                    string `json:"namespace"`
	Description                                  string `json:"description"`
	AllowedIdentifierCountInReferenceGroup       int32  `json:"allowed_identifier_count_in_reference_group"`
	AllowedActiveIdentifierCountInReferenceGroup int32  `json:"allowed_active_identifier_count_in_reference_group"`
}

type UpdateNodeByNDIDParam

type UpdateNodeByNDIDParam struct {
	NodeID   string  `json:"node_id"`
	MaxIal   float64 `json:"max_ial"`
	MaxAal   float64 `json:"max_aal"`
	NodeName string  `json:"node_name"`
}

type UpdateNodeParam

type UpdateNodeParam struct {
	PublicKey                              string   `json:"public_key"`
	MasterPublicKey                        string   `json:"master_public_key"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type UpdateNodeProxyNodeParam added in v0.8.0

type UpdateNodeProxyNodeParam struct {
	NodeID      string `json:"node_id"`
	ProxyNodeID string `json:"proxy_node_id"`
	Config      string `json:"config"`
}

type UpdateServiceDestinationParam

type UpdateServiceDestinationParam struct {
	ServiceID              string   `json:"service_id"`
	MinIal                 float64  `json:"min_ial"`
	MinAal                 float64  `json:"min_aal"`
	SupportedNamespaceList []string `json:"supported_namespace_list"`
}

type UpdateServiceParam

type UpdateServiceParam struct {
	ServiceID         string `json:"service_id"`
	ServiceName       string `json:"service_name"`
	DataSchema        string `json:"data_schema"`
	DataSchemaVersion string `json:"data_schema_version"`
}

Jump to

Keyboard shortcuts

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