예제 #1
0
        private async static Task <bool> VerifyTransaction(Transaction tx)
        {
            // Block is just for testing, should be removed, after tests pass
            TransactionBuilder builder = new TransactionBuilder();

            for (int i = 0; i < tx.Inputs.Count; i++)
            {
                var coin = new Coin(new Transaction(await blockchainExplorerHelper.GetTransactionHex(tx.Inputs[i].PrevOut.Hash.ToString())), tx.Inputs[i].PrevOut.N);
                builder.AddCoins(coin);
            }
            return(builder.Verify(tx));
        }
예제 #2
0
        private static async Task <Transaction[]> GetPreviousTransactions(Transaction tx)
        {
            Transaction[] previousTransactions = null;
            {
                previousTransactions = new Transaction[tx.Inputs.Count];
                for (int i = 0; i < previousTransactions.Count(); i++)
                {
                    var txResponse = await blockchainExplorerHelper.GetTransactionHex
                                         (tx.Inputs[i].PrevOut.Hash.ToString());

                    previousTransactions[i] = new Transaction(txResponse);
                }
            }

            return(previousTransactions);
        }