BIP75 Simplification and Enhancements #385

pull techguy613 wants to merge 16 commits into bitcoin:master from techguy613:master changing 7 files +219 −307
  1. techguy613 commented at 11:50 pm on May 6, 2016: contributor

    This update for BIP75 makes the following changes:

    • Remove duplicate, encrypted versions of each Payment Protocol message
    • Add encapsulating messages that allow for both plaintext and encrypted messaging as well as status messaging within the protocol
    • Change the AES-256 mode to GCM (from CBC), and including status_code || status_message as Additional Authenticated Data in the GCM cipher
    • Update use of ECDH X-point to instead use SHA256(ECDH().x) to match up with the libsecp256k1 implementation of ECDH)

    These changes aim to make the protocol much easier to implement on both the client and store & forward server sides.

  2. - Update HTTPS to be TLS-protected HTTP
    - Add Updated Messages section to describe the status_code and status_message
    - Separated Message and Communication Errors into Payment Protocol Errors and Communication Errors
    - Add first draft Payment Protocol error codes
    - Update InvoiceRequest Message Creation description amount example to return Payment Protocol error in the case of an issue with the amount.
    8bf7d90d20
  3. - Reset bip-0070/extensions.mediawiki to the original BIP70 contents
    - Remove status_code and status_message from individual Payment Protocol messages
    - Remove EncryptedInvoiceRequest, EncryptedPaymentRequest, EncryptedPayment and EncryptedPaymentACK messages from protobuf definition file
    - Add ProtocolMessageType enum and ProtocolMessageType and EncryptedProtocolMesssage messages to bip-0075/paymentrequest.proto definition file
    - Update BIP75 text to remove old individual message encryption paths and include new encapsulating messages for self-contained PaymentProtocol communication (including errors) over various transport layers
    - Add initial list of status codes
    - Update BIP75 to use AES-256-GCM and remove message hash as GCM mode provides authenticated encryption
    - Update ECDH calculation to use SHA256 hash of ECDH's X point instead of the raw X point itself
    8bb63058fd
  4. - Fix formatting + fix/add links
    - Update images
    6c9625e832
  5. - Fix straggling EncryptedPaymentRequest reference c2a73346a3
  6. Adding linebreaks and fixing some bad links 32d9f9d266
  7. Add more linebreaks b5517bab86
  8. - Add information about the use of GCM Authentication tag
    - Add requirement of additional authenticated data in the case that either status_code and/or status_message are in use
    7d9e11dbcb
  9. - Fix spacing 1e6e914ca7
  10. - Fix spacing dcbbc871dc
  11. Fix spacing again and pull IV size down to 12 bytes in accord with NIST 800-38D 057591da8c
  12. - Spacing
    - Recommit mistakently deleted encrypted invoicerequest flow diagram
    a79432ac99
  13. Updated S&F suggestions, some other tweaks and typos. f8f05f0ac9
  14. Merge pull request #17 from jmacwhyte/master
    Updated S&F suggestions, some other tweaks and typos.
    a90bd90c3c
  15. techguy613 renamed this:
    BIP75 Simplication
    BIP75 Simplification and Enhancements
    on May 6, 2016
  16. luke-jr added the label Proposed BIP modification on May 7, 2016
  17. luke-jr commented at 3:34 am on May 7, 2016: member
    Can you merge this with the master branch please?
  18. Merge remote-tracking branch 'upstream/master'
    # Conflicts:
    #	bip-0075.mediawiki
    3cf25a7594
  19. techguy613 commented at 4:32 pm on May 9, 2016: contributor
    Master merged 👍
  20. techguy613 commented at 10:59 pm on May 9, 2016: contributor
    Hey @luke-jr, can you please wait to merge this PR (if you were going to merge it soon?). I need to work on one more thing that I’m realizing needs a little bit of a revamp. Thanks!
  21. techguy613 renamed this:
    BIP75 Simplification and Enhancements
    BIP75 Simplification and Enhancements [WIP]
    on May 10, 2016
  22. luke-jr commented at 4:20 am on May 10, 2016: member
    Next time just close and reopen the PR ;)
  23. - Update ECDH output to use SHA512 instead of SHA256
    - Specify HMAC_DRBG security strength
    e1d74be3b6
  24. - Remove libsecp256k1 reference 40d4246d3d
  25. techguy613 renamed this:
    BIP75 Simplification and Enhancements [WIP]
    BIP75 Simplification and Enhancements
    on May 11, 2016
  26. techguy613 commented at 8:01 pm on May 11, 2016: contributor
    Next time I will definitely close and re-open, but for now we’re ready to go! 👍 Thanks @luke-jr
  27. techguy613 commented at 6:27 pm on May 19, 2016: contributor
    Hey @luke-jr! There hasn’t been much talk about this PR on the list outside of the announcement. What is the current status of (or issues holding up) merging the PR? Thanks sir!
  28. luke-jr commented at 6:51 pm on May 19, 2016: member
    Missed your previous comment. ;)
  29. luke-jr merged this on May 19, 2016
  30. luke-jr closed this on May 19, 2016


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bips. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 05:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me