Parallel Universe
  • Learn
    • Introduction to PUT
    • Getting started with PUT
  • Architecture
    • What is a PUT Cluster?
    • Clusters
      • PUT Clusters
      • RPC Endpoints
      • Benchmark a Cluster
      • Performance Metrics
    • Consensus
      • Synchronization
      • Leader Rotation
      • Fork Generation
      • Managing Forks
      • Turbine Block Propagation
      • Commitment Status
      • Secure Vote Signing
      • Stake Delegation and Rewards
    • Validators
      • Overview
      • TPU
      • TVU
      • Blockstore
      • Gossip Service
      • The Runtime
  • CLI
    • Command-line Guide
    • Install the PUT Tool Suite
    • Command-line Wallets
      • Command Line Wallets
      • Paper Wallet
      • File System Wallet
      • Support / Troubleshooting
    • Using PUT CLI
    • Connecting to a Cluster
    • Send and Receive Tokens
    • Staking
    • Deploy a Program
    • Offline Transaction Signing
    • Durable Transaction Nonces
    • CLI Usage Reference
  • Developers
    • Get Started
      • Hello World
      • Local development
      • Rust program
    • Core Concepts
      • Accounts
      • Transactions
        • Overview
        • Versioned Transactions
        • Address Lookup Tables
      • Programs
      • Rent
      • Calling between programs
      • Runtime
    • Clients
      • JSON RPC API -1
      • JSON RPC API -2
      • JSON RPC API -3
      • Web3 JavaScript API
      • Web3 API Reference
      • Rust API
    • Writing Programs
      • Overview
      • Developing with Rust
      • Deploying
      • Debugging
      • Program Examples
      • FAQ
    • Native Programs
      • Overview
      • Sysvar Cluster Data
    • Local Development
      • PUT Test Validator
    • Backward Compatibility Policy
  • Validators
    • Running a Validator
    • Getting Started
      • Validator Requirements
    • Voting Setup
      • Starting a Validator
      • Vote Account Management
      • Staking
      • Monitoring a Validator
      • Publishing Validator Info
      • Failover Setup
      • Troubleshooting
    • Geyser
      • Geyser Plugins
  • Staking
    • Staking on PUT
    • Stake Account Structure
  • Integrations
    • Add PUT to Your Exchange
    • Retrying Transactions
  • Library
    • Introduction
    • Token Program
    • Associated Token Account Program
    • Memo Program
    • Name Service
    • Feature Proposal Program
    • NFT Program
      • Overview
      • Interface
      • Usage Guidelines
        • Create a new NFT-Mint
        • Cast NFT
        • Transfer an NFT
        • Change account status
        • Permission settings
        • Query Interface
        • Continuous casting
        • Change the Mint attribute
      • Operation Overview
        • Create a new NFT-Mint
        • Transfer NFT
        • Destroy
        • Freeze NFT accounts
        • Update
    • PUT multi-sign program
      • Overview
      • Interface
      • Usage Guidelines
        • Create a multi-signature account
        • Create a proposal account
        • Vote proposal
        • Verify Proposal
        • Add-singer
        • Remove-signer
      • Operation Overview
        • Create a multi-signature account
        • Create a proposal account
        • Vote
        • Verify
        • Add-singer
        • Remove-signer
  • PUT Privacy Policy
Powered by GitBook
On this page
  • File System Wallet
  • Before you Begin
  • Generate a File System Wallet Keypair
  • Verify your Address against your Keypair file
  • Creating Multiple File System Wallet Addresses
  1. CLI
  2. Command-line Wallets

File System Wallet

File System Wallet

This document describes how to create and use a file system wallet with the PUT CLI tools.

A file system wallet exists as an unencrypted keypair file on your computer system's filesystem.

File system wallets are the least secure method of storing PUT tokens.

Storing large amounts of tokens in a file system wallet is not recommended.

Before you Begin

Make sure you have installed the PUT Command Line Tools

Generate a File System Wallet Keypair

Use PUT's command-line tool put-keygen to generate keypair files.

For example, run the following from a command-line shell:

mkdir ~/my-put-wallet
put-keygen new --outfile ~/my-put-wallet/my-keypair.json

This file contains your unencrypted keypair. In fact, even if you specify a password, that password applies to the recovery seed phrase, not the file.

Do not share this file with others. Anyone with access to this file will have access to all tokens sent to its public key.

Instead, you should share only its public key. To display its public key, run:

put-keygen pubkey ~/my-put-wallet/my-keypair.json

It will output a string of characters, such as:

ErRr1caKzK8L8nn4xmEWtimYRiTCAZXjBtVphuZ5vMKy

This is the public key corresponding to the keypair in ~/my-put-wallet/my-keypair.json.

The public key of the keypair file is your wallet address.

Verify your Address against your Keypair file

To verify you hold the private key for a given address, use put-keygen verify:

put-keygen verify <PUBKEY> ~/my-put-wallet/my-keypair.json

where is replaced with your wallet address.

The command will output "Success" if the given address matches the one in your keypair file, and "Failed" otherwise.

Creating Multiple File System Wallet Addresses

You can create as many wallet addresses as you like.

Simply re-run the steps in Generate a File System Wallet and make sure to use a new filename or path with the --outfile argument.

Multiple wallet addresses can be useful if you want to transfer tokens between your own accounts for different purposes.

PreviousPaper WalletNextSupport / Troubleshooting

Last updated 2 years ago