Documentation ¶
Overview ¶
(c) 2021-2022, Dijets, Inc. All rights reserved. See the file LICENSE for licensing terms.
Index ¶
- type BlockchainKeystore
- type Client
- func (c *Client) CreateUser(user api.UserPass) (bool, error)
- func (c *Client) DeleteUser(user api.UserPass) (bool, error)
- func (c *Client) ExportUser(user api.UserPass) ([]byte, error)
- func (c *Client) ImportUser(user api.UserPass, account []byte) (bool, error)
- func (c *Client) ListUsers() ([]string, error)
- type ExportUserArgs
- type ExportUserReply
- type ImportUserArgs
- type Keystore
- type ListUsersReply
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockchainKeystore ¶
type BlockchainKeystore interface { // Get a database that is able to read and write unencrypted values from the // underlying database. GetDatabase(username, password string) (*encdb.Database, error) // Get the underlying database that is able to read and write encrypted // values. This Database will not perform any encrypting or decrypting of // values and is not recommended to be used when implementing a VM. GetRawDatabase(username, password string) (database.Database, error) }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) DeleteUser ¶
DeleteUser removes [user] from the node's keystore users
func (*Client) ExportUser ¶
ExportUser returns the byte representation of the requested [user]
func (*Client) ImportUser ¶
ImportUser imports the keystore user in [account] under [user]
type ExportUserArgs ¶
type ExportUserArgs struct { // The username and password api.UserPass // The encoding for the exported user ("hex" or "cb58") Encoding formatting.Encoding `json:"encoding"` }
type ExportUserReply ¶
type ExportUserReply struct { // String representation of the user User string `json:"user"` // The encoding for the exported user ("hex" or "cb58") Encoding formatting.Encoding `json:"encoding"` }
type ImportUserArgs ¶
type ImportUserArgs struct { // The username and password of the user being imported api.UserPass // The string representation of the user User string `json:"user"` // The encoding of [User] ("hex" or "cb58") Encoding formatting.Encoding `json:"encoding"` }
type Keystore ¶
type Keystore interface { // Create the API endpoint for this keystore. CreateHandler() (http.Handler, error) // NewBlockchainKeyStore returns this keystore limiting the functionality to // a single blockchain database. NewBlockchainKeyStore(blockchainID ids.ID) BlockchainKeystore // Get a database that is able to read and write unencrypted values from the // underlying database. GetDatabase(bID ids.ID, username, password string) (*encdb.Database, error) // Get the underlying database that is able to read and write encrypted // values. This Database will not perform any encrypting or decrypting of // values and is not recommended to be used when implementing a VM. GetRawDatabase(bID ids.ID, username, password string) (database.Database, error) // CreateUser attempts to register this username and password as a new user // of the keystore. CreateUser(username, pw string) error // DeleteUser attempts to remove the provided username and all of its data // from the keystore. DeleteUser(username, pw string) error // ListUsers returns all the users that currently exist in this keystore. ListUsers() ([]string, error) // ImportUser imports a serialized encoding of a user's information complete // with encrypted database values. The password is integrity checked. ImportUser(username, pw string, user []byte) error // ExportUser exports a serialized encoding of a user's information complete // with encrypted database values. ExportUser(username, pw string) ([]byte, error) // contains filtered or unexported methods }
func CreateTestKeystore ¶
CreateTestKeystore returns a new keystore that can be utilized for testing
type ListUsersReply ¶
type ListUsersReply struct {
Users []string `json:"users"`
}
Source Files ¶
Click to show internal directories.
Click to hide internal directories.