From b2c0b87a9c5eac3fe7af3c7eb1655004fde19817 Mon Sep 17 00:00:00 2001
From: Gavin Andresen <gavinandresen@gmail.com>
Date: Wed, 4 Jun 2014 19:11:04 -0400
Subject: Clarify handling of default fields for signing.

---
 bip-0070.mediawiki | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

(limited to 'bip-0070.mediawiki')

diff --git a/bip-0070.mediawiki b/bip-0070.mediawiki
index a23ef7e..433eb13 100644
--- a/bip-0070.mediawiki
+++ b/bip-0070.mediawiki
@@ -124,7 +124,11 @@ A PaymentRequest is PaymentDetails optionally tied to a merchant's identity:
 |-
 | serialized_payment_details || A protocol-buffer serialized PaymentDetails message.
 |-
-| signature || digital signature over a hash of the protocol buffer serialized variation of the PaymentRequest message, with all fields serialized in numerical order (all current protocol buffer implementations serialize fields in numerical order) and signed using the public key in pki_data.  Before serialization, the signature field must be set to an empty value so that the field is included in the signed PaymentRequest hash but contains no data.
+| signature || digital signature over a hash of the protocol buffer serialized variation of the PaymentRequest message,
+with all serialized fields serialized in numerical order (all current protocol buffer implementations serialize
+fields in numerical order) and signed using the public key in pki_data. Optional fields that are not set
+are not serialized (however, setting a field to its default value will cause it to be serialized and will affect
+the signature). Before serialization, the signature field must be set to an empty value so that the field is included in the signed PaymentRequest hash but contains no data.
 |}
 When a Bitcoin wallet application receives a PaymentRequest, it must authorize payment by doing the following:
 
-- 
cgit v1.2.3

