Ejemplo n.º 1
0
 public void SendTransaction(TransactionSigned result)
 {
     if (_chainData.AddPendingTransaction(result))
     {
         _network.BroadcastAsync(new[] { result });
     }
 }
Ejemplo n.º 2
0
 public void ValidateTransaction(TransactionSigned transaction)
 {
     //TODO: Check signature by public key
     if (transaction.Sign == null)
     {
         throw new BlockchainValidationException("Transaction is not valid");
     }
 }
Ejemplo n.º 3
0
        public static byte[] ToBinary(this TransactionSigned value)
        {
            var dataSegments = new[]
            {
                value.Data.ToBinary(),
                value.Sign.ToBinary(),
            };

            return(dataSegments.ToOneDimention());
        }
Ejemplo n.º 4
0
        public bool AddPendingTransaction(TransactionSigned transaction)
        {
            if (PendingTransactions.TryAdd(transaction.Sign, transaction))
            {
                _feedback.NewTransaction(transaction);
                return(true);
            }

            return(false);
        }
Ejemplo n.º 5
0
 public void NewTransaction(TransactionSigned transaction)
 {
 }
Ejemplo n.º 6
0
 public void NewTransaction(TransactionSigned transaction)
 {
     OutLine($"# New transaction accepted, TH:{transaction.Sign}");
 }