2

I went through the original paper by Satoshi, which outlines the Bitcoin protocol. However, the paper is a high level overview of Bitcoin, and does not specify important parts of the protocol.

Who specified the details of the Bitcoin protocol? Which person or group is in charge of defining the standard of the protocol as of now?

7

However, the paper is a high level overview of Bitcoin, and does not specify important parts of the protocol.

That's true, and Hal Finney noted this when the bitcoin paper was published to the metzdowd cryptography mailing list. (The Bitcoin paper was published before the Bitcoin source code.)

Unfortunately I am having trouble fully understanding the system. The paper describes key concepts and some data structures, but does not clearly specify the various rules and verifications that the participants in the system would have to follow.


Who specified the details of the Bitcoin protocol?

I'd say that Satoshi specified 95% of the Bitcoin protocol in the source code that was initially published. There have been changes made since then, but the majority of Bitcoin is unchanged.


Which person or group is in charge of defining the standard of the protocol as of now?

Essentially, you make a Bitcoin Improvement Proposal. Here's a summary of the process:

  1. Debate the issue in the community

    The BIP champion (a.k.a. Author) should first attempt to ascertain whether the idea is BIP-able. Posting to the bitcoin-development@lists.sourceforge.net mailing list (and maybe the Development&Technical Discussion forum) is the best way to go about this.

  2. Write a draft of the BIP

    Once the champion has asked the Bitcoin community as to whether an idea has any chance of acceptance, a draft BIP should be presented to bitcoin-development@lists.sourceforge.net. This gives the author a chance to flesh out the draft BIP to make properly formatted, of high quality, and to address initial concerns about the proposal.

  3. The BIP editor (Currently Gregory Maxwell) reviews it

    If the BIP editor approves, he will assign the BIP a number, label it as Standards Track, Informational, or Process, give it status "Draft", and add it to the git repository. The BIP editor will not unreasonably deny a BIP. Reasons for denying BIP status include duplication of effort, being technically unsound, not providing proper motivation or addressing backwards compatibility, or not in keeping with the Bitcoin philosophy.

    ...

    For a BIP to be accepted it must meet certain minimum criteria. It must be a clear and complete description of the proposed enhancement. The enhancement must represent a net improvement. The proposed implementation, if applicable, must be solid and must not complicate the protocol unduly.

  4. Complete the reference implementation

    Once a BIP has been accepted, the reference implementation must be completed. When the reference implementation is complete and accepted by the community, the status will be changed to "Final".

  • Excellent answer, thanks a lot! Exactly what I was looking for. – Holmes.Sherlock Oct 22 '14 at 18:33
  • Any reason why they don't call them RFCs (request for comment) like revision proposals for all other internet protocols? – Tyler Oct 23 '14 at 3:39
  • I guess bitcoin just wants to be special? – Tyler Oct 23 '14 at 3:40
  • 1
    @Tyler They don't go through the RFC process, and they're not written by the IETF. Calling them RFC's would be confusing. – Nick ODell Oct 23 '14 at 3:45
  • When you say in bullet 3 "BIP to be accepted", you mean the proposal accepted as a BIP, and not accepted to be included in the protocol? – croraf Oct 22 '17 at 8:17
-3

We are, the Bitcoin community as a whole.

  • 3
    This is technically true, but so vague as to be useless. – Nick ODell Oct 22 '14 at 17:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.