public Transaction ToSignedTransaction(byte[] privateKey, byte[] publicKey)
        {
            _transaction.TimeStamp = DateTime.UtcNow;
            _transaction.Id        = null;
            foreach (var inEntry in Inputs)
            {
                inEntry.PublicKey = null;
                inEntry.Signature = null;
            }
            var hash      = HashUtil.ComputeTransactionSignHash(JsonSerializer.Serialize(_transaction));
            var signature = SignManager.Signature(hash, privateKey, publicKey);

            foreach (var inEntry in Inputs)
            {
                inEntry.PublicKey = publicKey;
                inEntry.Signature = signature;
            }
            var txData = JsonSerializer.Serialize(_transaction);
            var txHash = HashUtil.DoubleSHA256(txData);

            _transaction.Id = new HexString(txHash);
            return(_transaction);
        }