Esempio n. 1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            string   pub     = "C:\\Users\\User\\.db1\\.KEYS\\public.key";
            string   priv    = "C:\\Users\\User\\.db1\\.KEYS\\private.key";
            string   ipaddr  = "10.0.0.61";
            KeyType  pubkey  = new KeyType();
            HashType privkey = new HashType();
            int      ipport  = 38100;

            if (File.Exists(pub))
            {
                pubkey.Apply(File.ReadAllBytes(pub));
            }
            if (File.Exists(priv))
            {
                privkey.Apply(File.ReadAllBytes(priv));
            }
            //}
            //ConfigManager.init(pub, priv);
            ConfigManager.init(pubkey, privkey, ipaddr, ipport);

            Connector node;
            string    result = "";
            KeyType   key    = new KeyType();

            try
            {
                using (node = new Connector())
                {
                    ConfigManager.my_pubkey.CopyTo(key.data, 0);
                    if (node.lasterrcode == 0)
                    {
                        key = node.cmdGetInfo(key);
                    }
                }
                ulong bl  = 0;
                ulong trn = 0;
                ulong bin = 0;
                using (node = new Connector())
                {
                    if (node.lasterrcode == 0)
                    {
                        node.cmdGetCounters(ref bl, ref trn, ref bin);
                    }
                }
                if (node.lasterrcode == 0)
                {
                    result = string.Format("pub key: {0}\r\nnode: {1}:{2}; Counters: {3} | {4} | {5}", key.ToString(), ConfigManager.node_addr,
                                           ConfigManager.node_port.ToString(), bl.ToString(), trn, bin);
                }
                else
                {
                    result = string.Format("error width connect to node {0}:{1}\r\n {2}: {3}", ConfigManager.node_addr,
                                           ConfigManager.node_port, node.lasterrcode, node.lasterrmsg);
                }
            }
            catch (System.Exception ex)
            {
                result = String.Format("Sys error: {0}", ex.Message);
                MessageBox.Show(ex.Message, "ERROR!");
            }
            textBox1.Text = result;
        }
Esempio n. 2
0
        private void button7_Click(object sender, EventArgs e)
        {
            //string pub = "C:\\Users\\User\\.bigdb\\.KEYS\\public.key";
            //string priv = "C:\\Users\\User\\.bigdb\\.KEYS\\private.key";
            //string spubstr = "53C0AECECE0A3D9E2E69230C977E874C8DDA4A2FE1F162AF98979E69BC27F859";
            //string rpubstr = "7CFC0A75AEA16D99E09F5F9FF05C5A698BA27C52A02782BDB7A4687953BBE154";
            KeyType  send_pub  = new KeyType();
            HashType send_priv = new HashType();
            KeyType  recv_pub  = new KeyType();
            HashType recv_priv = new HashType();
            UInt32   startsumm = 1000000000;
            UInt32   degree    = 5000;

            while (MessageBox.Show("append new transaction?", "Q", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                ConfigManager.noconnectflg = true;
                if (recv_pub.empty())
                {
                    using (Connector node = new Connector())
                    {
                        if (!(node.GenKeyPair(ref send_pub, ref send_priv)))
                        {
                            MessageBox.Show("Do not generated key pair 1 ! ABORT KORABLYA");
                            break;
                        }
                        if (!node.GenKeyPair(ref recv_pub, ref recv_priv))
                        {
                            MessageBox.Show("Do not generated key pair3 ! ABORT KORABLYA");
                            break;
                        }
                    }
                }
                else
                {
                    send_pub.Apply(recv_pub);
                    send_priv.Apply(recv_priv);
                    using (Connector node = new Connector())
                    {
                        if (!node.GenKeyPair(ref recv_pub, ref recv_priv))
                        {
                            MessageBox.Show("Do not genegated receiver key pair! ABORT KORABLYA");
                            break;
                        }
                    }
                }
                ConfigManager.init(send_pub, send_priv);
                using (Connector node = new Connector())
                {
                    //TODO: смоделировать ошибочную посылку транзакции
                    node.cmdCommitTransaction(send_pub, recv_pub, send_priv, startsumm, 0);
                    MessageBox.Show(string.Format("trnsaction Amount ({0}\\{1} applied\r\nsender:{2}\r\nrecever:{3}",
                                                  startsumm, 0, send_pub.ToString(), recv_pub.ToString()));
                    //node.cmdCommitTransaction(send_pub, recv_pub, send_priv, startsumm, 0); // errorr!!!
                    startsumm -= degree;
                }
                if (MessageBox.Show("get receiver balance?", "Q", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    ConfigManager.init(recv_pub, recv_priv);
                    using (Connector node = new Connector())
                    {
                        Amount res = node.cmdGetBalance();
                        MessageBox.Show(String.Format("wallet {0}\r\n balance returned:\r\nhigh: {1}, low: {2}", recv_pub.ToString(), res.hight, res.low), "BALANCE");
                    }
                }
            }
            //    ConfigManager.init(pub, priv);
            //if (MessageBox.Show("insert new transaction?","Q",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes)
            //{
            //    using (Connector node = new Connector())
            //    {
            //        KeyType send_pub = new KeyType();
            //        send_pub.FromString(spubstr.Substring(0, 64));
            //        KeyType recv_pub = new KeyType();
            //        recv_pub.FromString(rpubstr.Substring(0, 64));
            //        recv_pub.data.CopyTo(ConfigManager.my_pubkey, 0);
            //        node.cmdCommitTransaction( recv_pub, send_pub, 5000, 0);
            //        //List<Transaction> lst = node.cmdGetTransactionsByKey(0, 10);
            //        //MessageBox.Show(string.Format("returned {0} transactions", lst.Count));

            //    }
            //}
            //if (MessageBox.Show("get receiver balance?", "Q", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            //{
            //    using (Connector node = new Connector())
            //    {
            //        //string newkey = "7CFC0A75AEA16D99E09F5F9FF05C5A698BA27C52A02782BDB7A4687953BBE154";
            //        KeyType me = new KeyType();
            //        me.FromString(rpubstr);
            //        me.data.CopyTo(ConfigManager.my_pubkey, 0);
            //        Amount res = node.cmdGetBalance();
            //        MessageBox.Show(String.Format("wallet {0}\r\n balance returned:\r\nhigh: {1}, low: {2}", me.ToString(), res.hight, res.low), "BALANCE");
            //    }
            //}
        }