public KeyId GetDestination() { var template = FindTemplate(); var payToPubKeyHash = template as PayToPubkeyHashTemplate; if (payToPubKeyHash != null) { return(payToPubKeyHash.ExtractScriptPubKeyParameters(this)); } var payToPubKey = template as PayToPubkeyTemplate; if (payToPubKey != null) { var result = new PayToPubkeyHashTemplate().ExtractScriptPubKeyParameters(this); if (result == null) { var pub = new PayToPubkeyTemplate().ExtractScriptPubKeyParameters(this); if (pub != null) { return(pub.ID); } } } return(null); }
/// <summary> /// Extract public keys if this script is a multi sig or pay to pub key scriptPubKey /// </summary> /// <param name="network"></param> /// <returns></returns> public PubKey[] GetDestinationPublicKeys() { List <PubKey> result = new List <PubKey>(); var single = new PayToPubkeyTemplate().ExtractScriptPubKeyParameters(this); if (single != null) { result.Add(single); } else { var multiSig = new PayToMultiSigTemplate().ExtractScriptPubKeyParameters(this); if (multiSig != null) { foreach (var key in multiSig.PubKeys) { result.Add(key); } } } return(result.ToArray()); }
private PubKey GetPubKey() { var payToPubKeyTemplate = new PayToPubkeyTemplate(); return payToPubKeyTemplate.ExtractScriptPubKeyParameters(new Script(_Script)); }
private PubKey GetPubKey() { var payToPubKeyTemplate = new PayToPubkeyTemplate(); return(payToPubKeyTemplate.ExtractScriptPubKeyParameters(new Script(_Script))); }
public BitcoinScriptAddress GetScriptAddress(Network network) { var redeem = new PayToPubkeyTemplate().GenerateScriptPubKey(this); return(new BitcoinScriptAddress(redeem.ID, network)); }
public KeyId GetDestination() { var template = FindTemplate(); var payToPubKeyHash = template as PayToPubkeyHashTemplate; if(payToPubKeyHash != null) { return payToPubKeyHash.ExtractScriptPubKeyParameters(this); } var payToPubKey = template as PayToPubkeyTemplate; if(payToPubKey != null) { var result = new PayToPubkeyHashTemplate().ExtractScriptPubKeyParameters(this); if(result == null) { var pub = new PayToPubkeyTemplate().ExtractScriptPubKeyParameters(this); if(pub != null) return pub.ID; } } return null; }