LogoLogo
  • README
  • Contribute
    • Discuss on Github
  • Example
    • Banana-Powered Bitcoin Wallet Control Protocol
  • Apps
    • The deployment-info.json Specification
  • Wallet
    • Transaction Creation
    • Data Encryption and Decryption
    • Digital Signature Creation and Verification
    • Input Redemption
    • HTTP Wallet Communications Substrate
    • XDM Wallet Communications Substrate
    • Window Wallet Communication Substrate
    • Wallet Transaction Output Tracking (Output Baskets)
    • Submitting Received Payments to a Wallet
    • Certificate Creation and Revelation
    • Unified Abstract Wallet-to-Application Messaging Layer
    • Transaction Labels and List Actions
    • Output Basket Removal and Certificate Deletion
    • Group Permissions for App Access
    • Extensible Proof-Type Format for Specific Key Linkage Claims
    • P Protocols: Allowing future wallet protocol permission schemes
    • P Baskets: Allowing Future Wallet Basket and Digital Asset Permission Schemes
    • Unified, Vendor-Neutral, Unchanging, and Open BSV Blockchain Standard Wallet-to-Application Interface
  • Transactions
    • Everett-style Transaction Envelopes
    • Simplified Payment Verification
    • Merkle proof standardised format
    • TSC Proof Format with Heights
    • Raw Transaction Format
    • TXO Transaction Object Format
    • Transaction Extended Format (EF)
    • Merkle Path JSON format
    • Compound Merkle Path Format
    • Background Evaluation Extended Format (BEEF) Transactions
    • Simplified Payment Verification
    • Merkle Path Binary Format
    • BSV Unified Merkle Path (BUMP) Format
    • Graph Aware Sync Protocol
    • Scalable Transaction Processing in the BSV Network
    • Atomic BEEF Transactions
    • BEEF V2 Txid Only Extension
  • Scripts
    • Bitcoin Script Binary, Hex and ASM Formats
    • Bitcoin Script Assembly Language
    • Pay to Public Key Hash
    • Pay to R Puzzle Hash
    • Pay to False Return
    • Pay to True Return
    • Push TX
    • Bare Multi-Signature
    • Pay to Push Drop
  • Tokens
    • There is no BRC-20
    • Definition of UTXOs as Bitcoin Tokens
    • Token Exchange Protocol for UTXO-based Overlay Networks
    • Mandala Token Protocol
  • Overlays
    • Overlay Network Data Synchronization
    • Confederacy Host Interconnect Protocol (CHIP)
    • Overlay Network Lookup Services
    • Confederacy Lookup Availability Protocol (CLAP)
    • Universal Hash Resolution Protocol
    • Overlay Network Transaction History Tracking
    • Private Overlays with P2PKH Transactions
    • Standardized Naming Conventions for BRC-22 Topic Managers and BRC-24 Lookup Services
    • Overlay Services Synchronization Architecture
    • Diverse Facilitators and URL Protocols for SHIP and SLAP Overlay Advertisements
  • Payments
    • Direct Payment Protocol (DPP)
    • Paymail Payment Destinations
    • Simple Authenticated BSV P2PKH Payment Protocol
    • PacketPay HTTP Payment Mechanism
    • Hybrid Payment Mode for DPP
    • HTTPS Transport Mechanism for DPP
    • Paymail BEEF Transaction
    • HTTP Service Monetization Framework
  • Peer-to-Peer
    • Authrite Mutual Authentication
    • PeerServ Message Relay Interface
    • PeerServ Host Interconnect Protocol
    • Identity Certificates
    • Genealogical Identity Protocol
    • Publishing Trust Anchor Details at an Internet Domain
    • Message Signature Creation and Verification
    • Serialization Format for Portable Encrypted Messages
    • Defining a Scalable IPv6 Multicast Protocol for Blockchain Transaction Broadcast and Update Delivery
    • Proven Identity Key Exchange (PIKE)
    • Peer-to-Peer Mutual Authentication and Certificate Exchange Protocol
    • HTTP Transport for BRC-103 Mutual Authentication
  • Key Derivation
    • BIP32 Key Derivation Scheme
    • BSV Key Derivation Scheme (BKDS)
    • Security Levels, Protocol IDs, Key IDs and Counterparties
    • Admin-reserved and Prohibited Key Derivation Protocols
    • Revealing Key Linkages
    • Protecting BRC-69 Key Linkage Information in Transit
    • Mnemonic For Master Private Key
    • Linked Key Derivation Scheme
    • Bidirectionally Authenticated Derivation of Privacy Restricted Type 42 Keys
    • Limitations of BRC-69 Key Linkage Revelation
    • Verifiable Revelation of Shared Secrets Using Schnorr Protocol
  • Outpoints
    • Format for Bitcoin Outpoints
    • Spending Instructions Extension for UTXO Storage Format
  • Opinions
    • Users should never see an address
    • List of user experiences
    • Legitimate Uses for mAPI
    • Security and Scalability Benefits of UTXO-based Overlay Networks
    • Improving on MLD for BSV Multicast Services
    • Web 3.0 Standard (at a high level)
    • Thoughts on the Mandala Network
    • Outputs, Overlays, and Scripts in the Mandala Network
  • State Machines
    • Simplifying State Machine Event Chains in Bitcoin
Powered by GitBook
On this page
  • Contributing
  • Iterative improvement
  • Structure
  • Standards
  • License

Was this helpful?

Edit on GitHub
Export as PDF

README

NextBanana-Powered Bitcoin Wallet Control Protocol

Last updated 4 months ago

Was this helpful?

A repository for submitting, discussing, sharing, and indexing technical proposals for use across the Bitcoin ecosystem. Data models, user interfaces, script templates, encoding formats, communication protocols, and constructive critique of existing industry practice are all welcome. The goal is to provide a platform for sharing ideas without any bureaucratic overhead.

Contributing

Contributions from all builders are welcome and encouraged. To propose a new BRC, fork the repo and create a new markdown file using the as the template. The common structure is outlined below, which is a guideline to aid you rather than a strict requirement. Once your proposal is ready to share, submit a pull request so that others can review and discuss it.

To participate in discussions about existing proposals, simply open an issue and link back to the BRC file in question.

Iterative improvement

We believe in encouraging discussion and iterative improvement of proposals, resulting in incremental improvement within the bounds of the Bitcoin protocol. We welcome suggestions for improvement and are committed to working with contributors to improve proposals and ensure that they align with our guidelines.

Note that substantial revisions to standards (beyond fixing typos, adding context or wording) should go into a new standard that extends or revises the old one, so as not to disrupt existing implementations.

We look forward to your contributions and helping to create a world where transactions are seamlessly formed, and applications interact with each other with ease.

Read more about areas of interest on

Structure

The BRCs repository is organized into directories, each representing a different category of proposal. Categories may include, but are not limited to:

  • Transaction Templates

  • Bitcoin Script Templates

  • Communication Protocols

Each proposal should be written as a markdown file and should loosely adhere to the following:

  • Title: A descriptive title for the standard being defined.

  • Author(s): Who wrote the standard and where did it come from? How can they be reached?

  • Abstract: A brief description of the proposed standard or template.

  • Motivation: The reasoning behind the proposal and why it is needed.

  • Specification: A detailed technical specification of the proposal.

  • Implementations: Information on how the proposal has been or can be implemented.

  • References: Any relevant literature or external resources related to the proposal.

Note that additional relevant content, identifiers or other information may be added to the document. Documents that already existed before the repository may not follow these requirements.

Things that help depict and understand the document, such as media, may also be added in a media subdirectory where appropriate.

Standards

BRC
Standard

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

(unused, will assign next BRC to this number)

36

37

38

User Wallet Data Format

39

User Wallet Data Format Encryption Extension

40

User Wallet Data Synchronization

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

License

Refer to the for a fun example template you can copy when proposing your own standards.

Everything in this repository is subject to the .

~EXAMPLE.md
OpenStandards.cash
Banana-Powered Bitcoin Wallet Control Protocol
Open BSV License
Banana-Powered Bitcoin Wallet Control Protocol
Transaction Creation
Data Encryption and Decryption
Digital Signature Creation and Verification
Input Redemption
HTTP Wallet Communications Substrate
XDM Wallet Communications Substrate
Window Wallet Communication Substrate
Everett-style Transaction Envelopes
Simplified Payment Verification
Merkle proof standardised format
TSC Proof Format with Heights
Raw Transaction Format
TXO Transaction Object Format
Bitcoin Script Binary, Hex and ASM Formats
Bitcoin Script Assembly Language
Pay to Public Key Hash
Pay to R Puzzle Hash
Pay to False Return
Pay to True Return
There is no BRC-20
Push TX
Overlay Network Data Synchronization
Confederacy Host Interconnect Protocol (CHIP)
Overlay Network Lookup Services
Confederacy Lookup Availability Protocol (CLAP)
Universal Hash Resolution Protocol
Direct Payment Protocol (DPP)
Paymail Payment Destinations
Simple Authenticated BSV P2PKH Payment Protocol
Transaction Extended Format (EF)
Authrite Mutual Authentication
BIP32 Key Derivation Scheme
PeerServ Message Relay Interface
PeerServ Host Interconnect Protocol
Format for Bitcoin Outpoints
Spending Instructions Extension for UTXO Storage Format
PacketPay HTTP Payment Mechanism
BSV Key Derivation Scheme (BKDS)
Security Levels, Protocol IDs, Key IDs and Counterparties
Admin-reserved and Prohibited Key Derivation Protocols
Definition of UTXOs as Bitcoin Tokens
Wallet Transaction Output Tracking (Output Baskets)
Bare Multi-Signature
Pay to Push Drop
Users should never see an address
Submitting Received Payments to a Wallet
List of user experiences
Identity Certificates
Certificate Creation and Revelation
Hybrid Payment Mode for DPP
HTTPS Transport Mechanism for DPP
Unified Abstract Wallet-to-Application Messaging Layer
Legitimate Uses for mAPI
Merkle Path JSON format
Security and Scalability Benefits of UTXO-based Overlay Networks
Simplifying State Machine Event Chains in Bitcoin
Compound Merkle Path Format
Background Evaluation Extended Format (BEEF) Transactions
Genealogical Identity Protocol
Overlay Network Transaction History Tracking
Transaction Labels and List Actions
Output Basket Removal and Certificate Deletion
Simplified Payment Verification
Publishing Trust Anchor Details at an Internet Domain
Revealing Key Linkages
Paymail BEEF Transaction
Merkle Path Binary Format
Protecting BRC-69 Key Linkage Information in Transit
Group Permissions for App Access
BSV Unified Merkle Path (BUMP) Format
Mnemonic For Master Private Key
Graph Aware Sync Protocol
Message Signature Creation and Verification
Serialization Format for Portable Encrypted Messages
Token Exchange Protocol for UTXO-based Overlay Networks
Improving on MLD for BSV Multicast Services
Private Overlays with P2PKH Transactions
Defining a Scalable IPv6 Multicast Protocol for Blockchain Transaction Broadcast and Update Delivery
Scalable Transaction Processing in the BSV Network
Linked Key Derivation Scheme
Proven Identity Key Exchange (PIKE)
Bidirectionally Authenticated Derivation of Privacy Restricted Type 42 Keys
Standardized Naming Conventions for BRC-22 Topic Managers and BRC-24 Lookup Services
Overlay Services Synchronization Architecture
Web 3.0 Standard (at a high level)
Thoughts on the Mandala Network
Outputs, Overlays, and Scripts in the Mandala Network
Mandala Token Protocol
Limitations of BRC-69 Key Linkage Revelation
Verifiable Revelation of Shared Secrets Using Schnorr Protocol
Atomic BEEF Transactions
BEEF V2 Txid Only Extension
Extensible Proof-Type Format for Specific Key Linkage Claims
P Protocols: Allowing future wallet protocol permission schemes
P Baskets: Allowing Future Wallet Basket and Digital Asset Permission Schemes
Unified, Vendor-Neutral, Unchanging, and Open BSV Blockchain Standard Wallet-to-Application Interface
Diverse Facilitators and URL Protocols for SHIP and SLAP Overlay Advertisements
The deployment-info.json Specification
Peer-to-Peer Mutual Authentication and Certificate Exchange Protocol
HTTP Transport for BRC-103 Mutual Authentication
HTTP Service Monetization Framework