1
0
mirror of https://github.com/bitcoin/bips.git synced 2025-05-12 12:03:29 +00:00

Updating abstract and motivation with changes made by the Netki team

This commit is contained in:
Matt David 2016-01-11 11:05:26 -08:00
parent 58754bd493
commit 5ec3d52181

View File

@ -12,20 +12,30 @@
==Abstract==
This BIP is an extension to BIP70 that extends the payment protocol to prevent PaymentRequest interception / modification
during transmission using ephemeral key encryption. This also allows permissioned release of a PaymentRequest to a requestor
and allows a requestor to supply a certificate and signature to the PaymentRequest creator.
This BIP is an extension to BIP 70 that provides two enhancements to the existing Payment Protocol.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
# It allows the requestor of a Payment Request to voluntarily sign the original request and provide a certificate to allow the payee to know who they are transacting with.
# It encrypts the Payment Request that is returned, before handing it off to the SSL/TLS layer to prevent man in the middle viewing of the Payment Request details.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in RFC 2119.
==Motivation==
The motivation for defining this extension to the BIP70 Payment Protocol is to allow 2 parties to exchange payment
information in a permissioned and encrypted way such that wallet address communication can become a more automated process.
Additionally, this extension allows for the requestor of a PaymentRequest to supply a certificate and signature in order
to facilitate identification for address release. This also allows for automated creation of off blockchain transaction
logs that are human readable, containing who you transacted with, in addition to the information that it contains today.
The motivation for defining this extension to the BIP70 Payment Protocol is to allow 2 parties to exchange payment information in a permissioned and encrypted way such that wallet address communication can become a more automated process. Additionally, this extension allows for the requestor of a PaymentRequest to supply a certificate and signature in order to facilitate identification for address release. This also allows for automated creation of off blockchain transaction logs that are human readable, containing who you transacted with, in addition to the information that it contains today.
The motivation for this extension to BIP70 is twofold:
# Ensure that the payment details can only be seen by the participants in the transaction, and not any third party. By encrypting at the application layer we protect the payment request from being intercepted by a man in the middle, and allow mobile and desktop wallets to use a server to act as a “store and forward server” or “meet point” for serving Payment Requests without having to worry the server operator can spy on their transactions.
# Allow a sender of funds the option of sharing their identity with the receiver. This information could then be used to:
** Make bitcoin logs more human readable
** Give the user the ability to decide who to release payment details to
** Allow an entity such as a political campaign to ensure donors match regulatory and legal requirements
** Allow for an open standards based way to meet regulatory requirements
In short we wanted to make bitcoin more human, while at the same time improving transaction privacy.
==Definitions==
{| class="wikitable"