Class CanonicalJson
Canonical JSON: keys sorted by code point, no whitespace, minimal escaping; the form that Matrix signatures are made over.
Inheritance
CanonicalJson
Namespace: Uniform.Matrix.Protocol.Core
Assembly: Uniform.Matrix.Protocol.Core.dll
public static class CanonicalJson
Methods
|
Edit this page
View Source
AddSignature(JsonObject, string, string, string)
Add signature as signatures[userId][keyId], keeping other signatures.
Declaration
public static void AddSignature(JsonObject value, string userId, string keyId, string signature)
Parameters
|
Edit this page
View Source
GetSignature(JsonObject, string, string)
Return signatures[userId][keyId], or null.
Declaration
public static string? GetSignature(JsonObject value, string userId, string keyId)
Parameters
Returns
|
Edit this page
View Source
Serialize an object with Options, then canonically.
Declaration
public static string Serialize(object value)
Parameters
| Type |
Name |
Description |
| object |
value |
|
Returns
|
Edit this page
View Source
Serialize(JsonElement)
Serialize value canonically.
Declaration
public static string Serialize(JsonElement value)
Parameters
Returns
Examples
CanonicalJson.Serialize(JsonSerializer.SerializeToElement(new { b = 1, a = "x" })); // {"a":"x","b":1}
|
Edit this page
View Source
SigningForm(JsonObject)
Return the canonical form signed by Matrix signatures: without signatures and unsigned.
Declaration
public static string SigningForm(JsonObject value)
Parameters
Returns