public override WalletAccount CreateAccount(byte[] privateKey) { WalletAccount account = base.CreateAccount(privateKey); OnCreateAccount(account); AddContract(SignatureContract.Create(account.PublicKey)); return(account); }
public override WalletAccount Import(string wif) { WalletAccount account = base.Import(wif); OnCreateAccount(account); AddContract(SignatureContract.Create(account.PublicKey)); return(account); }
public EnrollmentTransaction GetTransaction() { return(Program.CurrentWallet.MakeTransaction(new EnrollmentTransaction { PublicKey = (ECPoint)comboBox1.SelectedItem, Outputs = new[] { new TransactionOutput { AssetId = Blockchain.AntCoin.Hash, Value = Fixed8.Parse(textBox1.Text), ScriptHash = SignatureContract.CreateSignatureRedeemScript((ECPoint)comboBox1.SelectedItem).ToScriptHash() } } }, Fixed8.Zero)); }
UInt160[] ISignable.GetScriptHashesForVerifying() { if (Blockchain.Default == null) { throw new InvalidOperationException(); } if (PrevHash != Blockchain.Default.CurrentBlockHash) { throw new InvalidOperationException(); } ECPoint[] miners = Blockchain.Default.GetMiners(); if (miners.Length <= MinerIndex) { throw new InvalidOperationException(); } return(new[] { SignatureContract.Create(miners[MinerIndex]).ScriptHash }); }
public override UInt160[] GetScriptHashesForVerifying() { UInt160 issuer = SignatureContract.CreateSignatureRedeemScript(Issuer).ToScriptHash(); return(base.GetScriptHashesForVerifying().Union(new UInt160[] { issuer, Admin }).OrderBy(p => p).ToArray()); }
UInt160[] ISignable.GetScriptHashesForVerifying() { return(new UInt160[] { SignatureContract.Create(Miner).ScriptHash }); }