The documentation of the meta.security.integrityProtection{publicKey,signature} fields doesn't specify the representation/encoding of the values. Are they expected to be hex strings? Or Base64? A complete PEM file? The schema itself doesn't give any guidance; the fields are just plain strings without any restrictions.
Data like this is typically expressed in Base64 and that's probably what the original spec author intended. It's also what the .NET SDK implementation has chosen.
The documentation is the important part, but we could also amend the schemas themselves to only allow the characters permitted in Base64 encoding, plus probably horizontal whitespace.
Motivation
Clarity for people implementing support for event signing in applications and SDKs.
Description
The documentation of the meta.security.integrityProtection{publicKey,signature} fields doesn't specify the representation/encoding of the values. Are they expected to be hex strings? Or Base64? A complete PEM file? The schema itself doesn't give any guidance; the fields are just plain strings without any restrictions.
Data like this is typically expressed in Base64 and that's probably what the original spec author intended. It's also what the .NET SDK implementation has chosen.
The documentation is the important part, but we could also amend the schemas themselves to only allow the characters permitted in Base64 encoding, plus probably horizontal whitespace.
Motivation
Clarity for people implementing support for event signing in applications and SDKs.
Exemplification
N/A
Benefits
Clarity and unambiguity.
Possible Drawbacks
None.