diff --git a/index.html b/index.html
index 4edd385..b53bc5a 100644
--- a/index.html
+++ b/index.html
@@ -634,10 +634,13 @@
@@ -720,9 +723,10 @@ createDisclosureData
-
Set `bbsProof` to the value computed by the `ProofGen` procedure from
-[[CFRG-BBS-SIGNATURE]], i.e. `ProofGen(PK, signature, header, ph, messages, disclosed_indexes)`,
-where `PK` is the original issuer's public key `publicKey`, `signature` is the
-`bbsSignature`, `header` is the `bbsHeader`, `ph` is an empty byte array,
+[[CFRG-BBS-SIGNATURE]], i.e.,
+`ProofGen(PK, signature, header, ph, messages, disclosed_indexes)`,
+where `PK` is the original issuers public key, `signature` is the
+`bbsSignature`, `header` is the `bbsHeader`, `ph` is the `presentationHeader`
`messages` is `bbsMessages`, and `disclosed_indexes` is `selectiveIndexes`.
@@ -823,9 +827,10 @@ serializeDerivedProofValue
The following algorithm serializes a derived proof value. The required inputs
-are a BBS proof (bbsProof), a label map (labelMap), an
-array of mandatory indexes (mandatoryIndexes), and an array of
-selective indexes (selectiveIndexes). A single derived proof
+are a BBS proof (bbsProof), a label map (labelMap), an
+array of mandatory indexes (mandatoryIndexes), an array of
+selective indexes (selectiveIndexes), and a BBS presentation header
+(presentationHeader). A single derived proof
value, serialized as a byte string, is produced as output.
@@ -839,8 +844,9 @@ serializeDerivedProofValue
proof header bytes `0xd9`, `0x5d`, and `0x03`.
-
-Initialize `components` to an array with four elements containing the values of
-`bbsProof`, `compressedLabelMap`, `mandatoryIndexes`, and `selectiveIndexes`.
+Initialize `components` to an array with five elements containing the values of
+`bbsProof`, `compressedLabelMap`, `mandatoryIndexes`, `selectiveIndexes`, and
+`presentationHeader`.
-
CBOR-encode `components` and append it to `proofValue`.
@@ -861,9 +867,9 @@
parseDerivedProofValue
The following algorithm parses the components of the derived proof value.
The required input is a derived proof value (proofValue). A
-A single derived proof value value object is produced as output, which
-contains a set of four elements, using the names "`bbsProof`", "`labelMap`",
-"`mandatoryIndexes`", and "`selectiveIndexes`".
+single derived proof value object is produced as output, which
+contains a set of five elements, using the names `bbsProof`, `labelMap`,
+`mandatoryIndexes`, `selectiveIndexes`, and `presentationHeader`.
@@ -884,13 +890,13 @@ parseDerivedProofValue
Ensure that the `decodedProofValue` starts with the BBS disclosure proof
header bytes `0xd9`, `0x5d`, and `0x03`, and throw an error if it does not.
-
-
Initialize `components` to an array that is the result of CBOR-decoding the
bytes that follow the three-byte BBS disclosure proof header. Ensure the result
-is an array of four elements —
+is an array of five elements —
a byte array, a map of integers to integers, an
-array of integers, and another array of integers; otherwise, throw an error.
+array of integers, another array of integers, and a byte array; otherwise, throw
+an error.
-
Replace the second element in `components` using the result of calling the
@@ -898,9 +904,9 @@
parseDerivedProofValue
second element of `components` as `compressedLabelMap`.
-
-Return derived proof value as an object with properties set to the four
-elements, using the names "`bbsProof`", "`labelMap`", "`mandatoryIndexes`", and
-"`selectiveIndexes`" respectively.
+Return derived proof value as an object with properties set to the five
+elements, using the names `bbsProof`, `labelMap`, `mandatoryIndexes`,
+`selectiveIndexes`, and `presentationHeader`, respectively.
@@ -915,8 +921,8 @@