public void ParseFromBlockain_GenesisBlockchain_TrueParseAmount()
        {
            //Arrange
            EccService.GenerateKey(out var privateKey, out var publicKey);

            var keyPair = new KeyPair()
            {
                PrivateKey = privateKey,
                PublicKey  = publicKey
            };

            var genesisBlock =
                Genesis.GenerateGenesisBlock(keyPair);

            var blockchain = new SmartShares.Blockchain()
            {
                blocks = new Dictionary <byte[], Block>()
                {
                    { genesisBlock.Hash, genesisBlock }
                }
            };

            //Act
            var amount        = CoinPocketManager.ParseFromBlockain(blockchain, keyPair.PublicKey);
            var recipientHash = BlockchainUtil.ToAddress(keyPair.PublicKey);


            //Assert
            Assert.IsTrue(genesisBlock.Transaction.OutEntries[0].RecipientHash.SequenceEqual(recipientHash));
            Assert.AreEqual(amount, 10);
        }
Пример #2
0
 public QuickStart(ILogger <QuickStart> logger,
                   ChainConstants chainConstants,
                   IOptionsMonitor <MiscellaneousParameters> miscellaneousParameterOptions,
                   IOptionsMonitor <GweiValues> gweiValueOptions,
                   IOptionsMonitor <InitialValues> initialValueOptions,
                   IOptionsMonitor <TimeParameters> timeParameterOptions,
                   IOptionsMonitor <StateListLengths> stateListLengthOptions,
                   IOptionsMonitor <MaxOperationsPerBlock> maxOperationsPerBlockOptions,
                   IOptionsMonitor <SignatureDomains> signatureDomainOptions,
                   IOptionsMonitor <QuickStartParameters> quickStartParameterOptions,
                   ICryptographyService cryptographyService,
                   BeaconChainUtility beaconChainUtility,
                   Genesis beaconChain,
                   ForkChoice forkChoice)
 {
     _logger         = logger;
     _chainConstants = chainConstants;
     _miscellaneousParameterOptions = miscellaneousParameterOptions;
     _gweiValueOptions             = gweiValueOptions;
     _initialValueOptions          = initialValueOptions;
     _timeParameterOptions         = timeParameterOptions;
     _stateListLengthOptions       = stateListLengthOptions;
     _maxOperationsPerBlockOptions = maxOperationsPerBlockOptions;
     _signatureDomainOptions       = signatureDomainOptions;
     _quickStartParameterOptions   = quickStartParameterOptions;
     _cryptographyService          = cryptographyService;
     _beaconChainUtility           = beaconChainUtility;
     _beaconChain = beaconChain;
     _forkChoice  = forkChoice;
 }
Пример #3
0
 private void PutSettings(GPGX.GPGXSettings settings)
 {
     if (Genesis != null)
     {
         Genesis.PutSettings(settings);
     }
 }
Пример #4
0
 private void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.tag == "Player")
     {
         Genesis.CheckAndGenerateNear(xPos, zPos);
     }
 }
Пример #5
0
        public async Task GenerateBlock_GenesisBlock_Invalidate_Hash()
        {
            var genesisBlock = await GenerateGenesisBlock();

            var newGenesisSignedBlock = Genesis.GetBlockData(_cryptography, DateTime.UtcNow.Ticks);

            _chainData.ValidateGenesisBlock(new BlockHashed(newGenesisSignedBlock, genesisBlock.HashTarget), out var _);
        }
Пример #6
0
        private async Task <BlockHashed> GenerateGenesisBlock()
        {
            var feedback     = new NullFeedBack();
            var genesisMiner = _minerFactory.Create(Genesis.GetBlockData(_cryptography, DateTime.UtcNow.Ticks), feedback);

            genesisMiner.Start(1);
            return(await genesisMiner.GetBlock());
        }
Пример #7
0
        public async Task <BlockHashed> MineGenesisAsync(int?numberOfThreads)
        {
            var genesisMiner = MinerFactory.Create(Genesis.GetBlockData(Cryptography, DateTime.UtcNow.Ticks), _feedback);

            return(await _feedback.Execute("MineGenesis",
                                           () => MineAsync(genesisMiner, numberOfThreads),
                                           () => $"{nameof(numberOfThreads)}: {numberOfThreads}"));
        }
Пример #8
0
        public void Test_GAS_hash()
        {
            var expected = new UInt256(Neo.Ledger.Blockchain.UtilityToken.Hash.ToArray());

            var gasTx  = Genesis.CreateUtilityTokenTx();
            var actual = gasTx.CalculateHash();

            actual.Should().Be(expected);
        }
Пример #9
0
        private GPGX.GPGXSettings GetSettings()
        {
            if (Genesis != null)
            {
                return(Genesis.GetSettings());
            }

            return(new GPGX.GPGXSettings());
        }
Пример #10
0
        public void Test_NEO_hash()
        {
            var expected = new UInt256(Neo.Ledger.Blockchain.GoverningToken.Hash.ToArray());

            var neoTx  = Genesis.CreateGoverningTokenTx();
            var actual = neoTx.CalculateHash();

            actual.Should().Be(expected);
        }
Пример #11
0
        public void Test_genesis_merkle()
        {
            var neoGenesis = Neo.Ledger.Blockchain.GenesisBlock;
            var expected   = new UInt256(neoGenesis.MerkleRoot.ToArray());

            var fxValidators = Utility.GetNeoFxValidators();
            var fxGenesis    = Genesis.CreateGenesisBlock(fxValidators);

            fxGenesis.MerkleRoot.Should().Be(expected);
        }
Пример #12
0
        public void Test_genesis_next_consensus()
        {
            var neoGenesis = Neo.Ledger.Blockchain.GenesisBlock;
            var expected   = new UInt160(neoGenesis.NextConsensus.ToArray());

            var fxValidators = Utility.GetNeoFxValidators();
            var fxGenesis    = Genesis.CreateGenesisBlock(fxValidators);

            fxGenesis.NextConsensus.Should().Be(expected);
        }
Пример #13
0
        public void Test_genesis_block_hash()
        {
            var neoGenesis = Neo.Ledger.Blockchain.GenesisBlock;
            var expected   = new UInt256(neoGenesis.Hash.ToArray());

            var fxValidators = Utility.GetNeoFxValidators();
            var fxGenesis    = Genesis.CreateGenesisBlock(fxValidators);
            var actual       = fxGenesis.CalculateHash();

            actual.Should().Be(expected);
        }
Пример #14
0
        public void TestGenesisEncode()
        {
            Chain chain = new Chain(Genesis.CreateGenesis());

            ChainSerializer serializer = new ChainSerializer();

            var encrypt = serializer.Encode(chain.BlockChain);
            var decrypt = serializer.Decode(serializer.ConcateByteArray(encrypt));

            Assert.AreEqual(((List <Block>)decrypt).Count, chain.BlockChain.Count);
        }
Пример #15
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     Lisans.KeyDogrula(txtkey.Text, txtlic.Text);
     if (Lisans.LICKontrol())
     {
         MessageBox.Show("Program ömür boyu kullanım olarak lisanslanmıştır.\nGüle güle kullanın.", "Lisanslama Başarılı", MessageBoxButtons.OK, MessageBoxIcon.Information);
         this.Hide();
         Form frm = new Genesis();
         frm.Show();
     }
 }
Пример #16
0
        public bool ValidateGenesisBlock(BlockHashed newBlock, out BlockchainState blockchainState)
        {
            var expectedSignedGenesis = Genesis.GetBlockData(_cryptography, newBlock.Signed.Data.TimeStamp);
            var result = ValidateParent(0, Genesis.Hash, newBlock.Signed.Data,
                                        out blockchainState);

            if (result)
            {
                ValidateSignature(expectedSignedGenesis.Stamp, newBlock.Signed);
                ValidateBlockHash(expectedSignedGenesis, newBlock.HashTarget);
            }

            return(result);
        }
Пример #17
0
        public void Test_genesis_issue_hash()
        {
            var neoIssueTx = Neo.Ledger.Blockchain.GenesisBlock.Transactions[3];

            (neoIssueTx is Neo.Network.P2P.Payloads.IssueTransaction).Should().BeTrue();
            var expected = new UInt256(neoIssueTx.Hash.ToArray());

            var fxValidators = Utility.GetNeoFxValidators();
            var fxNeoTx      = Genesis.CreateGoverningTokenTx();
            var fxIssueTx    = Genesis.CreateIssueTx(fxNeoTx, fxValidators);

            var actual = fxIssueTx.CalculateHash();

            actual.Should().Be(expected);
        }
Пример #18
0
        /**
         * Create genesis block
         **/
        public static Block GenesisBlock(IList <Transaction> transactions)
        {
            var ts = 1498018714; //21 june 2017

            // for genesis bloc we set creatoris first of Genesis Account
            var validator = Genesis.GetAll().FirstOrDefault();
            var block     = new Block
            {
                Height       = 0,
                TimeStamp    = ts,
                PrevHash     = "-",
                Transactions = transactions,
                Validator    = validator.Address
            };

            block.Build();

            return(block);
        }
Пример #19
0
        public void Mine()
        {
            var codec = new Codec();

            HashAlgorithmType sha256 = HashAlgorithmType.Of <SHA256>();
            PreEvaluationBlock <Arithmetic> preEvalBlock = Genesis.Mine(sha256);

            Assert.True(ByteUtil.Satisfies(preEvalBlock.PreEvaluationHash, Genesis.Difficulty));
            AssertBytesEqual(
                sha256.Digest(codec.Encode(Genesis.MakeCandidateData(preEvalBlock.Nonce))),
                preEvalBlock.PreEvaluationHash.ToArray()
                );

            HashAlgorithmType sha512 = HashAlgorithmType.Of <SHA512>();

            preEvalBlock = Block1.Mine(sha512);
            Assert.True(ByteUtil.Satisfies(preEvalBlock.PreEvaluationHash, Block1.Difficulty));
            AssertBytesEqual(
                sha512.Digest(codec.Encode(Block1.MakeCandidateData(preEvalBlock.Nonce))),
                preEvalBlock.PreEvaluationHash.ToArray()
                );
        }
Пример #20
0
 public QuickStart(ILogger <QuickStart> logger,
                   ChainConstants chainConstants,
                   IOptionsMonitor <GweiValues> gweiValueOptions,
                   IOptionsMonitor <InitialValues> initialValueOptions,
                   IOptionsMonitor <SignatureDomains> signatureDomainOptions,
                   IOptionsMonitor <QuickStartParameters> quickStartParameterOptions,
                   ICryptographyService cryptographyService,
                   BeaconChainUtility beaconChainUtility,
                   Genesis beaconChain,
                   ForkChoice forkChoice)
 {
     _logger                     = logger;
     _chainConstants             = chainConstants;
     _gweiValueOptions           = gweiValueOptions;
     _initialValueOptions        = initialValueOptions;
     _signatureDomainOptions     = signatureDomainOptions;
     _quickStartParameterOptions = quickStartParameterOptions;
     _cryptographyService        = cryptographyService;
     _beaconChainUtility         = beaconChainUtility;
     _beaconChain                = beaconChain;
     _forkChoice                 = forkChoice;
 }
 private void btnRaporDetaysizUCKapat_Click(object sender, EventArgs e)
 {
     this.Dispose();
     Genesis.tbmenuac();
 }
Пример #22
0
 public void Copy()
 {
     AssertBlockContentsEqual(Genesis, Genesis.Copy());
     AssertBlockContentsEqual(Block1, Block1.Copy());
     AssertBlockContentsEqual(BlockPv0, BlockPv0.Copy());
 }
Пример #23
0
 public Consumer(SettingsData.Consumer settings)
 {
     Settings = settings;
     Genesis?.Invoke(this, true);
 }
Пример #24
0
 public void Dispose()
 {
     Genesis?.Invoke(this, false);
     EweSwitch = null !;
     Settings  = null !;
 }
Пример #25
0
 void Start()
 {
     instance = this;
     CheckAndGenerateNear(0, 0);
 }
Пример #26
0
 public void LoadTitle()
 {
     Genesis.Clear();
     SceneManager.LoadScene(0);
 }
Пример #27
0
 public void LoadGame()
 {
     Genesis.Clear();
     SceneManager.LoadScene(1);
 }
Пример #28
0
        private void button1_Click(object sender, EventArgs e)
        {
            {
                var gen = new Genesis();

                string dbname  = "genesis";
                string jobname = textBox1.Text;



                Console.WriteLine("Instantiated the Genesis Object...");



                string msg = "Welcome to the Java test Script...apparently its working...";
                Console.WriteLine(msg);

                gen.PAUSE(msg);

                gen.COM("create_entity,job=,is_fw=no,type=job,name=" + jobname + ",db=" + dbname + ",fw_type=form");
                gen.COM("clipb_open_job,job=" + jobname + ",update_clipboard=view_job");
                gen.COM("open_job,job=" + jobname);
                gen.COM("open_entity,job=" + jobname + ",type=matrix,name=matrix,iconic=no");
                gen.COM("matrix_add_step,job=" + jobname + ",matrix=matrix,step=test,col=1");
                gen.COM("matrix_add_layer,job=" + jobname + ",matrix=matrix,layer=lay1,row=1,context=board,type=signal,polarity=positive");
                gen.COM("matrix_add_layer,job=" + jobname + ",matrix=matrix,layer=lay2,row=2,context=board,type=signal,polarity=positive");

                string msg2 = "Now we'll open the newly created step...";
                Console.WriteLine(msg2);

                gen.PAUSE(msg2);

                gen.COM("open_entity,job=" + jobname + ",type=step,name=test,iconic=no");
                string group = gen.COMANS;
                gen.PAUSE("Group number is " + group);



                gen.COM("units,type=inch");
                gen.COM("display_layer,name=lay1,display=yes,number=1");
                gen.COM("work_layer,name=lay1");
                gen.COM("display_layer,name=lay2,display=yes,number=2");
                gen.COM("profile_rect,x1=0,y1=0,x2=5,y2=5");
                gen.COM("zoom_home");
                gen.COM("add_line,attributes=no,xs=0.6239601378,ys=0.5049917323,xe=4.6505824803,ye=4.5865225394,symbol=r40,polarity=positive");
                gen.COM("work_layer,name=lay2");
                gen.COM("add_line,attributes=no,xs=0.5049917323,ys=4.4675541339,xe=4.4584027559,ye=0.4409318898,symbol=r40,polarity=positive");

                gen.MOUSE("Click a point", "p");
                Console.WriteLine("Mouseans : " + gen.MOUSEANS);

                Console.WriteLine("Checking return of Genesis object...");
                Console.WriteLine("genStatus : " + Convert.ToString(gen.STATUS));
                Console.WriteLine("genComans : " + gen.COMANS);

                string msg3 = "Now we'll clean up...";
                Console.WriteLine(msg3);

                gen.PAUSE(msg3);


                gen.COM("check_inout,mode=in,type=job,job=" + jobname);
                gen.COM("close_job,job=" + jobname);
                gen.COM("close_form,job=" + jobname);
                gen.COM("close_flow,job=" + jobname);
                gen.COM("delete_entity,job=,type=job,name=" + jobname);


                Console.WriteLine("genStatus : " + Convert.ToString(gen.STATUS));
                Console.WriteLine("genComans : " + gen.COMANS);

                string msg4 = "Thats it...";
                Console.WriteLine(msg4);

                gen.PAUSE(msg4);

                Application.Exit();
            }
        }