 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
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
            deprecated
            
          
  
    
      added in
      v1.0.6
    
  
      
      type Client interface {
	CreateUser(context.Context, api.UserPass, ...rpc.Option) error
	// Returns the usernames of all keystore users
	ListUsers(context.Context, ...rpc.Option) ([]string, error)
	// Returns the byte representation of the given user
	ExportUser(context.Context, api.UserPass, ...rpc.Option) ([]byte, error)
	// Import [exportedUser] to [importTo]
	ImportUser(ctx context.Context, importTo api.UserPass, exportedUser []byte, options ...rpc.Option) error
	// Delete the given user
	DeleteUser(context.Context, api.UserPass, ...rpc.Option) error
}
    Client interface for Avalanche Keystore API Endpoint
Deprecated: The Keystore API is deprecated. Dedicated wallets should be used instead.
type ExportUserArgs ¶
type ExportUserArgs struct {
	// The username and password
	api.UserPass
	// The encoding for the exported user ("hex")
	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")
	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")
	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 ¶ added in v0.8.0
CreateTestKeystore returns a new keystore that can be utilized for testing
type ListUsersReply ¶
type ListUsersReply struct {
	Users []string `json:"users"`
}
     Click to show internal directories. 
   Click to hide internal directories.