app

package
v9.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 1, 2024 License: AGPL-3.0 Imports: 41 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

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,
	"AddErrorCode":                     true,
	"RemoveErrorCode":                  true,
	"RegisterIdentity":                 true,
	"AddAccessor":                      true,
	"CreateIdpResponse":                true,
	"UpdateIdentity":                   true,
	"CreateAsResponse":                 true,
	"RegisterServiceDestination":       true,
	"UpdateServiceDestination":         true,
	"CreateRequest":                    true,
	"SetMqAddresses":                   true,
	"UpdateNode":                       true,
	"CloseRequest":                     true,
	"TimeOutRequest":                   true,
	"SetDataReceived":                  true,
	"DisableServiceDestination":        true,
	"EnableServiceDestination":         true,
	"SetTimeOutBlockRegisterIdentity":  true,
	"AddNodeToProxyNode":               true,
	"UpdateNodeProxyNode":              true,
	"RemoveNodeFromProxyNode":          true,
	"RevokeAccessor":                   true,
	"SetInitData":                      true,
	"SetInitData_pb":                   true,
	"EndInit":                          true,
	"SetLastBlock":                     true,
	"RevokeIdentityAssociation":        true,
	"UpdateIdentityModeList":           true,
	"AddIdentity":                      true,
	"SetSupportedIALList":              true,
	"SetSupportedAALList":              true,
	"SetAllowedModeList":               true,
	"UpdateNamespace":                  true,
	"SetAllowedMinIalForRegisterIdentityAtFirstIdp":        true,
	"RevokeAndAddAccessor":                                 true,
	"SetServicePriceCeiling":                               true,
	"SetServicePriceMinEffectiveDatetimeDelay":             true,
	"SetServicePrice":                                      true,
	"CreateMessage":                                        true,
	"AddRequestType":                                       true,
	"RemoveRequestType":                                    true,
	"AddSuppressedIdentityModificationNotificationNode":    true,
	"RemoveSuppressedIdentityModificationNotificationNode": true,
	"AddAllowedNodeSupportedFeature":                       true,
	"RemoveAllowedNodeSupportedFeature":                    true,
}

Functions

func MaxInt32

func MaxInt32(v []int32) int32

func NewResponseCheckTx

func NewResponseCheckTx(code uint32, log string) *abcitypes.ResponseCheckTx

NewResponseCheckTx return *abcitypes.ResponseCheckTx

Types

type ABCIApplication

type ABCIApplication struct {
	abcitypes.BaseApplication
	AppProtocolVersion uint64
	CurrentChain       string
	Version            string
	// contains filtered or unexported fields
}

func NewABCIApplication

func NewABCIApplication(logger *logrus.Entry, db dbm.DB, initialStateDir string, retainBlockCount int64) *ABCIApplication

func (*ABCIApplication) CheckTx

func (app *ABCIApplication) CheckTx(check *abcitypes.RequestCheckTx) (res *abcitypes.ResponseCheckTx, err error)

func (*ABCIApplication) CheckTxRouter

func (app *ABCIApplication) CheckTxRouter(method string, param []byte, nonce []byte, signature []byte, nodeID string, committedState bool) *abcitypes.ResponseCheckTx

CheckTxRouter check if Tx is valid CheckTx must get committed state while DeliverTx must get uncommitted state

func (*ABCIApplication) Commit

func (*ABCIApplication) DeliverTxRouter

func (app *ABCIApplication) DeliverTxRouter(method string, param []byte, nonce []byte, signature []byte, nodeID string) *abcitypes.ExecTxResult

DeliverTxRouter is Pointer to function

func (*ABCIApplication) FinalizeBlock

func (*ABCIApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdp

func (app *ABCIApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdp(param []byte) *abcitypes.ResponseQuery

func (*ABCIApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdpFromStateDB

func (app *ABCIApplication) GetAllowedMinIalForRegisterIdentityAtFirstIdpFromStateDB(committedState bool) float64

func (*ABCIApplication) GetAllowedModeFromStateDB

func (app *ABCIApplication) GetAllowedModeFromStateDB(purpose string, committedState bool) (result []int32)

func (*ABCIApplication) GetAllowedModeList

func (app *ABCIApplication) GetAllowedModeList(param []byte) *abcitypes.ResponseQuery

func (*ABCIApplication) GetNamespaceAllowedIdentifierCountMap

func (app *ABCIApplication) GetNamespaceAllowedIdentifierCountMap(committedState bool) (result map[string]int)

func (*ABCIApplication) GetNamespaceMap

func (app *ABCIApplication) GetNamespaceMap(committedState bool) (result map[string]bool)

func (*ABCIApplication) GetReferenceGroupCode

func (app *ABCIApplication) GetReferenceGroupCode(param []byte) *abcitypes.ResponseQuery

func (*ABCIApplication) GetReferenceGroupCodeByAccessorID

func (app *ABCIApplication) GetReferenceGroupCodeByAccessorID(param []byte) *abcitypes.ResponseQuery

func (*ABCIApplication) GetSupportedAALList

func (app *ABCIApplication) GetSupportedAALList(param []byte, committedState bool) *abcitypes.ResponseQuery

func (*ABCIApplication) GetSupportedIALList

func (app *ABCIApplication) GetSupportedIALList(param []byte, committedState bool) *abcitypes.ResponseQuery

func (*ABCIApplication) Info

func (*ABCIApplication) InitChain

Save the validators in the merkle tree

func (*ABCIApplication) NewExecTxResult

func (app *ABCIApplication) NewExecTxResult(code uint32, log string, extraData string) *abcitypes.ExecTxResult

app.NewExecTxResult return *abcitypes.ExecTxResult

func (*ABCIApplication) NewExecTxResultWithAttributes

func (app *ABCIApplication) NewExecTxResultWithAttributes(code uint32, log string, additionalAttributes []abcitypes.EventAttribute) *abcitypes.ExecTxResult

func (*ABCIApplication) NewResponseQuery

func (app *ABCIApplication) NewResponseQuery(value []byte, log string, height int64) *abcitypes.ResponseQuery

NewResponseQuery returns *abcitypes.ResponseQuery

func (*ABCIApplication) Query

func (app *ABCIApplication) Query(req *abcitypes.RequestQuery) (res *abcitypes.ResponseQuery, err error)

func (*ABCIApplication) QueryRouter

func (app *ABCIApplication) QueryRouter(method string, param []byte, height int64) *abcitypes.ResponseQuery

QueryRouter is Pointer to function

func (*ABCIApplication) Validators

func (app *ABCIApplication) Validators() (validators []abcitypes.Validator)

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 ASResponse

type ASResponse struct {
	AsID         string `json:"as_id"`
	Signed       *bool  `json:"signed,omitempty"`
	ReceivedData *bool  `json:"received_data,omitempty"`
	ErrorCode    *int32 `json:"error_code,omitempty"`
}

type ASWithMqNode

type ASWithMqNode struct {
	ID                     string       `json:"node_id"`
	Name                   string       `json:"name"`
	MinIal                 float64      `json:"min_ial"`
	MinAal                 float64      `json:"min_aal"`
	SigningPublicKey       NodeKey      `json:"signing_public_key"`
	EncryptionPublicKey    NodeKey      `json:"encryption_public_key"`
	Mq                     []MsqAddress `json:"mq"`
	SupportedNamespaceList []string     `json:"supported_namespace_list"`
}

type ASWithMqNodeBehindProxy

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

type ASorRPBehindProxy

type ASorRPBehindProxy struct {
	NodeID                 string   `json:"node_id"`
	NodeName               string   `json:"node_name"`
	Role                   string   `json:"role"`
	SigningPublicKey       NodeKey  `json:"signing_public_key"`
	SigningMasterPublicKey NodeKey  `json:"signing_master_public_key"`
	EncryptionPublicKey    NodeKey  `json:"encryption_public_key"`
	SupportedFeatureList   []string `json:"supported_feature_list"`
	Config                 string   `json:"config"`
}

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 AddAllowedNodeSupportedFeatureParam

type AddAllowedNodeSupportedFeatureParam struct {
	Name string `json:"name"`
}

type AddErrorCodeParam

type AddErrorCodeParam struct {
	ErrorCode   int32  `json:"error_code"`
	Description string `json:"description"`
	Type        string `json:"type"`
}

type AddIdentityParam

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

type AddNamespaceParam

type AddNamespaceParam 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 AddNodeToProxyNodeParam

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 AddRequestTypeParam

type AddRequestTypeParam struct {
	Name string `json:"name"`
}

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 AddSuppressedIdentityModificationNotificationNodeParam

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

type AppState

type AppState struct {
	AppStateMetadata

	CurrentBlockHeight int64
	HasHashData        bool
	HashDigest         hash.Hash
	// contains filtered or unexported fields
}

func NewAppState

func NewAppState(db dbm.DB) (appState *AppState, err error)

func (*AppState) Delete

func (appState *AppState) Delete(key []byte) error

func (*AppState) DeleteVersioned

func (appState *AppState) DeleteVersioned(key []byte) error

func (*AppState) Get

func (appState *AppState) Get(key []byte, committed bool) (value []byte, err error)

func (*AppState) GetVersioned

func (appState *AppState) GetVersioned(key []byte, height int64, committed bool) (value []byte, err error)

func (*AppState) Has

func (appState *AppState) Has(key []byte, committed bool) (bool, error)

func (*AppState) HasVersioned

func (appState *AppState) HasVersioned(key []byte, committed bool) (bool, error)

func (*AppState) LoadInitialState

func (appState *AppState) LoadInitialState(logger *logrus.Entry, initialStateDir string) (hash []byte, err error)

func (*AppState) Save

func (appState *AppState) Save() error

func (*AppState) Set

func (appState *AppState) Set(key, value []byte)

Set value `nil` equals Delete

func (*AppState) SetVersioned

func (appState *AppState) SetVersioned(key, value []byte) error

type AppStateMetadata

type AppStateMetadata struct {
	InitialStateDataLoaded bool   `json:"initial_state_data_loaded"`
	ChainID                string `json:"chain_id"`
	Height                 int64  `json:"height"`
	AppHash                []byte `json:"app_hash"`
}

type ApplicationError

type ApplicationError struct {
	Code    uint32
	Message string
}

func (*ApplicationError) Error

func (e *ApplicationError) Error() string

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 CloseRequestParam

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

type CreateAsResponseParam

type CreateAsResponseParam struct {
	ServiceID string `json:"service_id"`
	RequestID string `json:"request_id"`
	Signature string `json:"signature"`
	ErrorCode *int32 `json:"error_code"`
}

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"`
	ErrorCode *int32  `json:"error_code"`
}

type CreateMessageParam

type CreateMessageParam struct {
	MessageID string `json:"message_id"`
	Message   string `json:"message"`
	Purpose   string `json:"purpose"`
}

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"`
	RequestType     *string       `json:"request_type"`
}

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"`
	ResponseList      []ASResponse `json:"response_list"`
}

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 EnableNamespaceParam

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

type EnableNodeParam

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

type EnableServiceDestinationByNDIDParam

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

type EnableServiceDestinationParam

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

type EnableServiceParam

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

type EndInitParam

type EndInitParam struct{}

type GetAccessorKeyParam

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

type GetAccessorKeyResult

type GetAccessorKeyResult struct {
	AccessorPublicKey   string `json:"accessor_public_key"`
	AccessorType        string `json:"accessor_type"`
	Active              bool   `json:"active"`
	OwnerNodeID         string `json:"owner_node_id"`
	CreationBlockHeight int64  `json:"creation_block_height"`
	CreationChainID     string `json:"creation_chain_id"`
}

type GetAccessorOwnerParam

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

type GetAccessorOwnerResult

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

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 GetAllowedNodeSupportedFeatureListParam

type GetAllowedNodeSupportedFeatureListParam struct {
	Prefix string `json:"prefix"`
}

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

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 GetErrorCodeListParam

type GetErrorCodeListParam struct {
	Type string `json:"type"`
}

type GetErrorCodeListResult

type GetErrorCodeListResult struct {
	ErrorCode   int32  `json:"error_code"`
	Description string `json:"description"`
}

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"`
	Lial     *bool   `json:"lial"`
	Laal     *bool   `json:"laal"`
	ModeList []int32 `json:"mode_list"`
}

type GetIdpNodesInfoResult

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

type GetIdpNodesParam

type GetIdpNodesParam struct {
	ReferenceGroupCode                     string   `json:"reference_group_code"`
	IdentityNamespace                      string   `json:"identity_namespace"`
	IdentityIdentifierHash                 string   `json:"identity_identifier_hash"`
	FilterForNodeID                        *string  `json:"filter_for_node_id"`
	IsIdpAgent                             *bool    `json:"agent"`
	MinAal                                 float64  `json:"min_aal"`
	MinIal                                 float64  `json:"min_ial"`
	SupportedFeatureList                   []string `json:"supported_feature_list"`
	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 []MsqDestinationNode `json:"node"`
}

type GetMessageDetailResult

type GetMessageDetailResult struct {
	MessageID           string `json:"message_id"`
	Message             string `json:"message"`
	Purpose             string `json:"purpose"`
	RequesterNodeID     string `json:"requester_node_id"`
	CreationBlockHeight int64  `json:"creation_block_height"`
	CreationChainID     string `json:"creation_chain_id"`
}

type GetMessageParam

type GetMessageParam struct {
	MessageID string `json:"message_id"`
}

type GetMessageResult

type GetMessageResult struct {
	Message string `json:"message"`
}

type GetMqAddressesParam

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

type GetMqAddressesResult

type GetMqAddressesResult []MsqAddress

type GetNodeEncryptionPublicKeyParam

type GetNodeEncryptionPublicKeyParam struct {
	NodeID  string `json:"node_id"`
	Version int64  `json:"version"` // TODO
}

type GetNodeEncryptionPublicKeyResult

type GetNodeEncryptionPublicKeyResult NodeKey

type GetNodeIDListParam

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

type GetNodeIDListResult

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

type GetNodeInfoParam

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

type GetNodeInfoResult

type GetNodeInfoResult struct {
	SigningPublicKey       NodeKey `json:"signing_public_key"`
	SigningMasterPublicKey NodeKey `json:"signing_master_public_key"`
	EncryptionPublicKey    NodeKey `json:"encryption_public_key"`
	NodeName               string  `json:"node_name"`
	Role                   string  `json:"role"`
	// for IdP
	MaxIal                                 *float64  `json:"max_ial,omitempty"`
	MaxAal                                 *float64  `json:"max_aal,omitempty"`
	SupportedFeatureList                   []string  `json:"supported_feature_list"`
	SupportedRequestMessageDataUrlTypeList *[]string `json:"supported_request_message_data_url_type_list,omitempty"`
	IsIdpAgent                             *bool     `json:"agent,omitempty"`
	// for IdP and RP
	UseWhitelist *bool     `json:"node_id_whitelist_active,omitempty"`
	Whitelist    *[]string `json:"node_id_whitelist,omitempty"`
	// for node behind proxy
	Proxy *ProxyNodeInfo `json:"proxy,omitempty"`
	// for all
	Mq     []MsqAddress `json:"mq"`
	Active bool         `json:"active"`
}

type GetNodeSigningMasterPublicKeyParam

type GetNodeSigningMasterPublicKeyParam struct {
	NodeID  string `json:"node_id"`
	Version int64  `json:"version"` // TODO
}

type GetNodeSigningMasterPublicKeyResult

type GetNodeSigningMasterPublicKeyResult NodeKey

type GetNodeSigningPublicKeyParam

type GetNodeSigningPublicKeyParam struct {
	NodeID  string `json:"node_id"`
	Version int64  `json:"version"` // TODO
}

type GetNodeSigningPublicKeyResult

type GetNodeSigningPublicKeyResult NodeKey

type GetNodeTokenParam

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

type GetNodeTokenResult

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

type GetNodesBehindProxyNodeParam

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

type GetNodesBehindProxyNodeResult

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           []IdPResponse `json:"response_list"`
	IsClosed            bool          `json:"closed"`
	IsTimedOut          bool          `json:"timed_out"`
	Purpose             string        `json:"purpose"`
	Mode                int32         `json:"mode"`
	RequestType         *string       `json:"request_type"`
	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 GetRequestTypeListParam

type GetRequestTypeListParam struct {
	Prefix string `json:"prefix"`
}

type GetServiceDetailParam

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

type GetServicePriceCeilingParam

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

type GetServicePriceCeilingResult

type GetServicePriceCeilingResult struct {
	PriceCeilingByCurrencyList []PriceCeilingByCurrency `json:"price_ceiling_by_currency_list"`
}

type GetServicePriceListParam

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

type GetServicePriceListResult

type GetServicePriceListResult struct {
	ServicePriceListByNode []ServicePriceListByNode `json:"price_list_by_node"`
}

type GetServicePriceMinEffectiveDatetimeDelayParam

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

type GetServicePriceMinEffectiveDatetimeDelayResult

type GetServicePriceMinEffectiveDatetimeDelayResult struct {
	DurationSecond uint32 `json:"duration_second"`
}

type GetServicesByAsIDParam

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

type GetServicesByAsIDResult

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

type GetSupportedAALListResult

type GetSupportedAALListResult struct {
	SupportedAALList []float64 `json:"supported_aal_list"`
}

type GetSupportedIALListResult

type GetSupportedIALListResult struct {
	SupportedIALList []float64 `json:"supported_ial_list"`
}

type GetSuppressedIdentityModificationNotificationNodeListParam

type GetSuppressedIdentityModificationNotificationNodeListParam struct {
	Prefix string `json:"prefix"`
}

type IdPBehindProxy

type IdPBehindProxy struct {
	NodeID                                 string   `json:"node_id"`
	NodeName                               string   `json:"node_name"`
	Role                                   string   `json:"role"`
	SigningPublicKey                       NodeKey  `json:"signing_public_key"`
	SigningMasterPublicKey                 NodeKey  `json:"signing_master_public_key"`
	EncryptionPublicKey                    NodeKey  `json:"encryption_public_key"`
	MaxIal                                 float64  `json:"max_ial"`
	MaxAal                                 float64  `json:"max_aal"`
	SupportedFeatureList                   []string `json:"supported_feature_list"`
	IsIdpAgent                             bool     `json:"agent"`
	Config                                 string   `json:"config"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type IdPResponse

type IdPResponse struct {
	Ial            *float64 `json:"ial,omitempty"`
	Aal            *float64 `json:"aal,omitempty"`
	Status         *string  `json:"status,omitempty"`
	Signature      *string  `json:"signature,omitempty"`
	IdpID          string   `json:"idp_id"`
	ValidIal       *bool    `json:"valid_ial"`
	ValidSignature *bool    `json:"valid_signature"`
	ErrorCode      *int32   `json:"error_code,omitempty"`
}

type Identity

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

type IdpNode

type IdpNode struct {
	NodeID                                 string        `json:"node_id"`
	Name                                   string        `json:"name"`
	MaxIal                                 float64       `json:"max_ial"`
	MaxAal                                 float64       `json:"max_aal"`
	SupportedFeatureList                   []string      `json:"supported_feature_list"`
	SigningPublicKey                       NodeKey       `json:"signing_public_key"`
	EncryptionPublicKey                    NodeKey       `json:"encryption_public_key"`
	Mq                                     []MsqAddress  `json:"mq"`
	IsIdpAgent                             bool          `json:"agent"`
	UseWhitelist                           *bool         `json:"node_id_whitelist_active,omitempty"`
	Whitelist                              *[]string     `json:"node_id_whitelist,omitempty"`
	Ial                                    *float64      `json:"ial,omitempty"`
	ModeList                               *[]int32      `json:"mode_list,omitempty"`
	SupportedRequestMessageDataUrlTypeList []string      `json:"supported_request_message_data_url_type_list"`
	Proxy                                  *IdpNodeProxy `json:"proxy,omitempty"`
}

type IdpNodeProxy

type IdpNodeProxy struct {
	NodeID              string       `json:"node_id"`
	SigningPublicKey    NodeKey      `json:"signing_public_key"`
	EncryptionPublicKey NodeKey      `json:"encryption_public_key"`
	Mq                  []MsqAddress `json:"mq"`
	Config              string       `json:"config"`
}

type InfoData

type InfoData struct {
	InitialStateDataLoaded bool `json:"initial_state_data_loaded"`
}

type InitNDIDParam

type InitNDIDParam struct {
	NodeID                 string `json:"node_id"`
	SigningPublicKey       string `json:"signing_public_key"`
	SigningAlgorithm       string `json:"signing_algorithm"`
	SigningMasterPublicKey string `json:"signing_master_public_key"`
	SigningMasterAlgorithm string `json:"signing_master_algorithm"`
	EncryptionPublicKey    string `json:"encryption_public_key"`
	EncryptionAlgorithm    string `json:"encryption_algorithm"`
	ChainHistoryInfo       string `json:"chain_history_info"`
}

type InitialStateMetadata

type InitialStateMetadata struct {
	TotalKeyCount int64 `json:"total_key_count"`
}

type IsInitEndedResult

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

type IsSuppressedIdentityModificationNotificationNodeParams

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

type IsSuppressedIdentityModificationNotificationNodeResult

type IsSuppressedIdentityModificationNotificationNodeResult struct {
	Suppressed bool `json:"suppressed"`
}

type KeyValue

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

type MsqAddress

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

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"`
	SupportedFeatureList                   []string `json:"supported_feature_list"`
	Ial                                    *float64 `json:"ial,omitempty"`
	Lial                                   *bool    `json:"lial"`
	Laal                                   *bool    `json:"laal"`
	ModeList                               *[]int32 `json:"mode_list,omitempty"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
	IsIdpAgent                             bool     `json:"agent"`
}

type NodeKey

type NodeKey struct {
	PublicKey           string `json:"public_key"`
	Algorithm           string `json:"algorithm"`
	Version             int64  `json:"version"`
	CreationBlockHeight int64  `json:"creation_block_height"`
	CreationChainID     string `json:"creation_chain_id"`
	Active              bool   `json:"active"`
}

type PriceCeilingByCurrency

type PriceCeilingByCurrency struct {
	Currency string  `json:"currency"`
	Price    float64 `json:"price"`
}

type ProxyNodeInfo

type ProxyNodeInfo struct {
	NodeID                 string       `json:"node_id"`
	NodeName               string       `json:"node_name"`
	SigningPublicKey       NodeKey      `json:"signing_public_key"`
	SigningMasterPublicKey NodeKey      `json:"signing_master_public_key"`
	EncryptionPublicKey    NodeKey      `json:"encryption_public_key"`
	Mq                     []MsqAddress `json:"mq"`
	Config                 string       `json:"config"`
}

type ReduceNodeTokenParam

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

type RegisterIdentityParam

type RegisterIdentityParam struct {
	ReferenceGroupCode string     `json:"reference_group_code"`
	NewIdentityList    []Identity `json:"new_identity_list"`
	Ial                float64    `json:"ial"`
	Lial               *bool      `json:"lial"`
	Laal               *bool      `json:"laal"`
	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 RegisterNodeParam

type RegisterNodeParam struct {
	NodeID                 string   `json:"node_id"`
	SigningPublicKey       string   `json:"signing_public_key"`
	SigningAlgorithm       string   `json:"signing_algorithm"`
	SigningMasterPublicKey string   `json:"signing_master_public_key"`
	SigningMasterAlgorithm string   `json:"signing_master_algorithm"`
	EncryptionPublicKey    string   `json:"encryption_public_key"`
	EncryptionAlgorithm    string   `json:"encryption_algorithm"`
	NodeName               string   `json:"node_name"`
	Role                   string   `json:"role"`
	MaxIal                 float64  `json:"max_ial"` // IdP only attribute
	MaxAal                 float64  `json:"max_aal"` // IdP only attribute
	SupportedFeatureList   []string `json:"supported_feature_list"`
	IsIdPAgent             *bool    `json:"agent"` // IdP only attribute
	UseWhitelist           *bool    `json:"node_id_whitelist_active"`
	Whitelist              []string `json:"node_id_whitelist"`
}

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 RemoveAllowedNodeSupportedFeatureParam

type RemoveAllowedNodeSupportedFeatureParam struct {
	Name string `json:"name"`
}

type RemoveErrorCodeParam

type RemoveErrorCodeParam struct {
	ErrorCode int32  `json:"error_code"`
	Type      string `json:"type"`
}

type RemoveNodeFromProxyNode

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

type RemoveRequestTypeParam

type RemoveRequestTypeParam struct {
	Name string `json:"name"`
}

type RemoveSuppressedIdentityModificationNotificationNodeParam

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

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 ServicePrice

type ServicePrice struct {
	PriceByCurrencyList []ServicePriceByCurrency `json:"price_by_currency_list"`
	EffectiveDatetime   time.Time                `json:"effective_datetime"`
	MoreInfoURL         string                   `json:"more_info_url"`
	Detail              string                   `json:"detail"`
	CreationBlockHeight int64                    `json:"creation_block_height"`
	CreationChainID     string                   `json:"creation_chain_id"`
}

type ServicePriceByCurrency

type ServicePriceByCurrency struct {
	Currency string  `json:"currency"`
	MinPrice float64 `json:"min_price"`
	MaxPrice float64 `json:"max_price"`
}

type ServicePriceListByNode

type ServicePriceListByNode struct {
	NodeID           string         `json:"node_id"`
	ServicePriceList []ServicePrice `json:"price_list"`
}

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

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

type SetLastBlockParam

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

type SetMqAddressesParam

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 SetServicePriceCeilingParam

type SetServicePriceCeilingParam struct {
	ServiceID                  string                   `json:"service_id"`
	PriceCeilingByCurrencyList []PriceCeilingByCurrency `json:"price_ceiling_by_currency_list"`
}

type SetServicePriceMinEffectiveDatetimeDelayParam

type SetServicePriceMinEffectiveDatetimeDelayParam struct {
	ServiceID      string `json:"service_id"`
	DurationSecond uint32 `json:"duration_second"`
}

type SetServicePriceParam

type SetServicePriceParam struct {
	ServiceID           string                   `json:"service_id"`
	PriceByCurrencyList []ServicePriceByCurrency `json:"price_by_currency_list"`
	EffectiveDatetime   time.Time                `json:"effective_datetime"`
	MoreInfoURL         string                   `json:"more_info_url"`
	Detail              string                   `json:"detail"`
}

type SetSupportedAALListParam

type SetSupportedAALListParam struct {
	SupportedAALList []float64 `json:"supported_aal_list"`
}

type SetSupportedIALListParam

type SetSupportedIALListParam struct {
	SupportedIALList []float64 `json:"supported_ial_list"`
}

type SetValidatorParam

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

type TimeOutBlockRegisterIdentity

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 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"`
	Lial                   *bool    `json:"lial"`
	Laal                   *bool    `json:"laal"`
}

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"`
	SupportedFeatureList []string `json:"supported_feature_list"`
	NodeName             string   `json:"node_name"`
	IsIdPAgent           *bool    `json:"agent"`
	UseWhitelist         *bool    `json:"node_id_whitelist_active"`
	Whitelist            []string `json:"node_id_whitelist"`
}

type UpdateNodeParam

type UpdateNodeParam struct {
	SigningPublicKey                       string   `json:"signing_public_key"`
	SigningAlgorithm                       string   `json:"signing_algorithm"`
	SigningMasterPublicKey                 string   `json:"signing_master_public_key"`
	SigningMasterAlgorithm                 string   `json:"signing_master_algorithm"`
	EncryptionPublicKey                    string   `json:"encryption_public_key"`
	EncryptionAlgorithm                    string   `json:"encryption_algorithm"`
	SupportedRequestMessageDataUrlTypeList []string `json:"supported_request_message_data_url_type_list"`
}

type UpdateNodeProxyNodeParam

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"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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