public static RegistrationSignature Sign(ICryptoLibrary cryptoLibrary, Action <BinaryWriter> writeSignedFields, RegistrationPrivateKey privateKey) { var r = new RegistrationSignature(); var ms = new MemoryStream(); using (var writer = new BinaryWriter(ms)) writeSignedFields(writer); r.ed25519signature = cryptoLibrary.SignEd25519( ms.ToArray(), privateKey.ed25519privateKey); return(r); }