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
  1. Library
  2. PUT multi-sign program
  3. Usage Guidelines

Create a proposal account

$ ppl-sig create-proposal -m FF7s3KDy5kSP1wzeZCaj4Ns5boP5cb94k
3APvZM2VvHp --summary "a transfer b 10 put"
creating proposal account 6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvp
wHTzkejGDPg

Signature: 2nP3mke5JdzUB1t3fi4Uk5nfzpLLCgZbPQj7W9jnh14CaYkT4PNdC77KkD6WpoYnPB9gVnM1XLopPzp7UVfdfaui

Using the create-proposal instruction will create a proposal account (note: proposal accounts are generally created in custom contracts, so using the instruction line will not work, this is just to show the general process of multi-signature).

To create a proposal, you need to specify a multi-signature account, which will be used for subsequent multi-sig signatures, and define the proposal summary.

The proposal creation step corresponds to step 4 of the multi-signature flowchart, where Alice calls the multi-signature interface for the first time.

After creating a proposal, you can use the account instruction to query its details.

$ ppl-sig proposal-info 6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvpwHT
zkejGDPg

Initiator:3AGrFExFviu6Gg6mUgdf4BUbi178Cg43ysbmYc5gbCYv 
Proposal summary: "a transfer b 10 put" 
----------------Voted account----------------
3AGrFExFviu6Gg6mUgdf4BUbi178Cg43ysbmYc5gbCYv

Proposal account information contains the initiator of the proposal, a list of voted accounts, and a summary of the transaction proposal, which serves as an important reference for other signatories to vote or not.

When a proposal is created, it indicates that the initiator of the proposal agrees to the proposal and the proposal initiator has signed it, so you can see that the signature originator has voted.

Only the signature address specified in a multi-signature account can initiate a proposal.

PreviousCreate a multi-signature accountNextVote proposal

Last updated 2 years ago