Пример #1
0
        public WalletAddress GetAddress(
            CurrencyConfig currency,
            uint account,
            uint chain,
            uint index,
            int keyType)
        {
            using var securePublicKey = KeyStorage.GetPublicKey(
                      currency: currency,
                      account: account,
                      chain: chain,
                      index: index,
                      keyType: keyType);

            if (securePublicKey == null)
            {
                return(null);
            }

            using var publicKey = securePublicKey.ToUnsecuredBytes();

            var address = currency.AddressFromKey(publicKey);

            return(new WalletAddress
            {
                Currency = currency.Name,
                Address = address,
                PublicKey = Convert.ToBase64String(publicKey),
                KeyIndex = new KeyIndex {
                    Account = account, Chain = chain, Index = index
                },
                KeyType = keyType
            });
        }
Пример #2
0
        public WalletAddress GetAddress(Currency currency, int chain, uint index)
        {
            var publicKeyBytes = KeyStorage.GetPublicKey(currency, chain, index);

            if (publicKeyBytes == null)
            {
                return(null);
            }

            var address = currency.AddressFromKey(publicKeyBytes);

            return(new WalletAddress
            {
                Currency = currency,
                Address = address,
                PublicKey = Convert.ToBase64String(publicKeyBytes),
                KeyIndex = new KeyIndex {
                    Chain = chain, Index = index
                }
            });
        }
Пример #3
0
        public WalletAddress GetAddress(Currency currency, int chain, uint index)
        {
            using var securePublicKey = KeyStorage.GetPublicKey(currency, chain, index);

            if (securePublicKey == null)
            {
                return(null);
            }

            using var publicKey = securePublicKey.ToUnsecuredBytes();

            var address = currency.AddressFromKey(publicKey);

            return(new WalletAddress
            {
                Currency = currency.Name,
                Address = address,
                PublicKey = Convert.ToBase64String(publicKey),
                KeyIndex = new KeyIndex {
                    Chain = chain, Index = index
                }
            });
        }
Пример #4
0
 public SecureBytes GetPublicKey(
     CurrencyConfig currency,
     KeyIndex keyIndex,
     int keyType) =>
 KeyStorage.GetPublicKey(currency, keyIndex, keyType);