From 9691d0ebef048e939d3fdf810f5517d3d2465edb Mon Sep 17 00:00:00 2001 From: Jason Elie Bou Kheir <5115126+jasonboukheir@users.noreply.github.com> Date: Fri, 25 Nov 2022 11:38:55 -0800 Subject: [PATCH] feat(dotnet): add conversion from `Algorand.Unity.Account` to `Algorand.Algod.Model.Account` --- .docfx/resources/favicon.ico | Bin 120350 -> 94589 bytes Runtime/Algorand.Unity.Crypto/Ed25519.cs | 43 ++++++++++++--------- Runtime/Algorand.Unity/Accounts/Account.cs | 6 +++ 3 files changed, 31 insertions(+), 18 deletions(-) diff --git a/.docfx/resources/favicon.ico b/.docfx/resources/favicon.ico index 1116a936e3096afc1accf68d20991d1432560b54..e29b214c61b06f6c7d649a5f30c25d231af12c80 100644 GIT binary patch literal 94589 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 MBfVX0Ipyf@f2(=AmjD0& literal 120350 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 z!p(TMessage message) + public unsafe Signature Sign(TMessage message) where TMessage : IByteArray { var signature = new Signature(); @@ -138,18 +138,22 @@ public KeyPair ToKeyPair() { var pk = new PublicKey(); var sk = SecretKeyHandle.Create(); - fixed (Seed* seedPtr = &this) + unsafe { - int error = crypto_sign_ed25519_seed_keypair( - &pk, - sk.Ptr, - seedPtr - ); - if (error > 0) + fixed (Seed* seedPtr = &this) { - throw new System.Exception($"error code {error} when converting to KeyPair"); + int error = crypto_sign_ed25519_seed_keypair( + &pk, + sk.Ptr, + seedPtr + ); + if (error > 0) + { + throw new System.Exception($"error code {error} when converting to KeyPair"); + } } } + return new KeyPair(sk, pk); } } @@ -233,14 +237,17 @@ public byte this[int index] public bool Verify(TMessage message, PublicKey pk) where TMessage : IByteArray { - fixed (Signature* s = &this) + unsafe { - var error = crypto_sign_ed25519_verify_detached( - s, - message.GetUnsafePtr(), - (UIntPtr)message.Length, - &pk); - return error == 0; + fixed (Signature* s = &this) + { + var error = crypto_sign_ed25519_verify_detached( + s, + message.GetUnsafePtr(), + (UIntPtr)message.Length, + &pk); + return error == 0; + } } } diff --git a/Runtime/Algorand.Unity/Accounts/Account.cs b/Runtime/Algorand.Unity/Accounts/Account.cs index cd773ee88..d86f3ad1d 100644 --- a/Runtime/Algorand.Unity/Accounts/Account.cs +++ b/Runtime/Algorand.Unity/Accounts/Account.cs @@ -1,5 +1,6 @@ using System; using System.Threading; +using Algorand.Unity.LowLevel; using Cysharp.Threading.Tasks; using Unity.Collections; @@ -109,5 +110,10 @@ public UniTask[]> SignTxnsAsync(T[] txns, TxnIndices progress.Report(1f); return SignTxnsAsync(txns, txnsToSign); } + + public static explicit operator Algorand.Algod.Model.Account(Account from) + { + return new Algorand.Algod.Model.Account(from.privateKey.ToArray()); + } } }