lnpbp-3 specification states that the committing and verifying parties should agree on a commitment-specific parameter c, which is then used to compute the index of the output containing the commitment. It is unclear to me when and how the agreement on this parameter happens. In particular if Alice agrees with Bob on a specific c parameter, she may also agree at the same time with Carol on an alternative c parameter, resulting in two different output indexes and therefore making it possible for Alice to double spend her tokens showing two different commitments in two different outputs of the same transaction to Bob and Carol, with neither of them being able to notice the other hidden commitment.
If, on the other hand, c is previously defined in the commitment of the parent transaction, this should be described into lnpbp-1 commit procedure.
lnpbp-3 specification states that the committing and verifying parties should agree on a commitment-specific parameter
c
, which is then used to compute the index of the output containing the commitment. It is unclear to me when and how the agreement on this parameter happens. In particular if Alice agrees with Bob on a specificc
parameter, she may also agree at the same time with Carol on an alternativec
parameter, resulting in two different output indexes and therefore making it possible for Alice to double spend her tokens showing two different commitments in two different outputs of the same transaction to Bob and Carol, with neither of them being able to notice the other hidden commitment. If, on the other hand,c
is previously defined in the commitment of the parent transaction, this should be described into lnpbp-1 commit procedure.