Goedel.Mesh.SignedDeviceProfile.UnpackAndVerify C# (CSharp) Method

UnpackAndVerify() public method

Unpack the signed device profile data and verify it for consistency. Check the signature.
public UnpackAndVerify ( ) : DeviceProfile
return DeviceProfile
        public virtual DeviceProfile UnpackAndVerify() {
            var Text = Encoding.UTF8.GetString(SignedData.Payload);
            //Goedel.Debug.Trace.WriteLine("Data as signed {0}", Text);

            var Unpacked = DeviceProfile.FromTagged (Text);

            Unpacked.Unpack();

            var SigningKey = Unpacked.DeviceSignatureKey.KeyPair;
            var Verify = SignedData.Verify(Unpacked.UDF, SigningKey);
            Throw.IfNot(Verify, "Device signature does not verify");


            _Signed = Unpacked;
            return Unpacked;
            }