in UProveCrypto/PresentationProof.cs [940:974]
internal void OnDeserialized(StreamingContext context)
{
if (_disclosedAttributes == null)
{
throw new UProveSerializationException("D");
}
if (_a == null)
{
throw new UProveSerializationException("a");
}
if (_r == null)
{
throw new UProveSerializationException("r");
}
if ((_ap == null && _ps != null) || (_ap != null && _ps == null))
{
throw new UProveSerializationException("Ps and ap must either both be set or both be empty");
}
this.DisclosedAttributes = new byte[_disclosedAttributes.Length][];
for (int i = 0; i < _disclosedAttributes.Length; i++)
{
this.DisclosedAttributes[i] = _disclosedAttributes[i].ToByteArray();
}
this.A = _a.ToByteArray();
if (_ap != null)
{
this.Ap = _ap.ToByteArray();
}
this.deserializationStarted = true;
}