Documentation ¶
Index ¶
- Constants
- func DecodeType(address string) (int, error)
- func GetScriptType(script []byte) int
- func IsConfidential(address string) (bool, error)
- func IsMultiSig(pops []ParsedOpcode) bool
- func IsPubkey(pops []ParsedOpcode) bool
- func IsPubkeyHash(pops []ParsedOpcode) bool
- func IsScriptHash(pops []ParsedOpcode) bool
- func IsWitnessPubKeyHash(pops []ParsedOpcode) bool
- func IsWitnessScriptHash(pops []ParsedOpcode) bool
- func NetworkForAddress(address string) (*network.Network, error)
- func ToBase58(b *Base58) string
- func ToBase58Confidential(b *Base58Confidential) string
- func ToBech32(bc *Bech32) (string, error)
- func ToBlech32(bl *Blech32) (string, error)
- func ToConfidential(ca *ConfidentialAddress) (string, error)
- func ToOutputScript(address string) ([]byte, error)
- type Address
- type Base58
- type Base58Confidential
- type Bech32
- type Blech32
- type ConfidentialAddress
- type Opcode
- type ParsedOpcode
- type ScriptClass
Constants ¶
const ( P2Pkh = iota P2Sh ConfidentialP2Pkh ConfidentialP2Sh P2Wpkh P2Wsh ConfidentialP2Wpkh ConfidentialP2Wsh P2PkhScript = 1 P2ShScript = 2 P2MultiSigScript = 3 P2WpkhScript = 4 P2WshScript = 5 )
const ( // MaxDataCarrierSize is the maximum number of bytes allowed in pushed // Data to be considered a nulldata transaction MaxDataCarrierSize = 80 )
Variables ¶
This section is empty.
Functions ¶
func DecodeType ¶ added in v0.0.3
DecodeType returns address type
func GetScriptType ¶ added in v0.0.4
GetScriptType returns the type of the given script (p2pkh, p2sh, etc.)
func IsConfidential ¶ added in v0.1.0
IsConfidential checks whether the given address is confidential
func IsMultiSig ¶ added in v0.3.0
func IsMultiSig(pops []ParsedOpcode) bool
IsMultiSig returns true if the passed script is a multisig transaction, false otherwise.
func IsPubkey ¶ added in v0.3.0
func IsPubkey(pops []ParsedOpcode) bool
IsPubkey returns true if the script passed is a pay-to-pubkey transaction, false otherwise.
func IsPubkeyHash ¶ added in v0.3.0
func IsPubkeyHash(pops []ParsedOpcode) bool
IsPubkeyHash returns true if the script passed is a pay-to-pubkey-hash transaction, false otherwise.
func IsScriptHash ¶ added in v0.3.0
func IsScriptHash(pops []ParsedOpcode) bool
IsScriptHash returns true if the script passed is a pay-to-script-hash transaction, false otherwise.
func IsWitnessPubKeyHash ¶ added in v0.3.0
func IsWitnessPubKeyHash(pops []ParsedOpcode) bool
IsWitnessPubKeyHash returns true if the passed script is a pay-to-witness-pubkey-hash, and false otherwise.
func IsWitnessScriptHash ¶ added in v0.3.0
func IsWitnessScriptHash(pops []ParsedOpcode) bool
IsWitnessScriptHash returns true if the passed script is a pay-to-witness-script-hash transaction, false otherwise.
func NetworkForAddress ¶ added in v0.0.4
NetworkForAddress returns the network based on the prefix of the given address
func ToBase58Confidential ¶ added in v0.0.4
func ToBase58Confidential(b *Base58Confidential) string
ToBase58Confidential prepends a version byte and appends a four byte checksum.
func ToBech32 ¶
ToBech32 encodes a byte slice into a bech32 string with the human-readable part hrb. Note that the bytes must each encode 5 bits
func ToConfidential ¶ added in v0.0.4
func ToConfidential(ca *ConfidentialAddress) (string, error)
ToConfidential returns the confidential address formed by the given unconfidential address and blinding public key
func ToOutputScript ¶ added in v0.0.3
ToOutputScript creates a new script to pay a transaction output to a the specified address
Types ¶
type Address ¶
type Address struct {
// contains filtered or unexported fields
}
Address defines the address as string
type Base58 ¶
Base58 type defines the structure of a legacy or wrapped segwit address
func FromBase58 ¶
FromBase58 decodes a string that was base58 encoded and verifies the checksum.
type Base58Confidential ¶ added in v0.0.4
Base58Confidential type defines the structure of a legacy or wrapped segwit confidential address
func FromBase58Confidential ¶ added in v0.0.4
func FromBase58Confidential(address string) (*Base58Confidential, error)
FromBase58Confidential decodes a confidenail address that was base58 encoded
and verifies the checksum.
type Bech32 ¶
Bech32 defines the structure of an address native segwit
func FromBech32 ¶
FromBech32 decodes a bech32 encoded string, returning the human-readable part and the Data part excluding the checksum.
type Blech32 ¶
Blech32 defines the structure of a confidential address native segwit
func FromBlech32 ¶ added in v0.0.2
FromBlech32 decodes a blech32 encoded string, returning the human-readable part and the Data part excluding the checksum.
type ConfidentialAddress ¶ added in v0.0.4
ConfidentialAddress defines the structure of a generic confidential address
func FromConfidential ¶ added in v0.0.4
func FromConfidential(address string) (*ConfidentialAddress, error)
FromConfidential returns the unconfidential address and the blinding public key that form the confidential address
type Opcode ¶ added in v0.3.0
An Opcode defines the information related to a txscript Opcode. opfunc, if present, is the function to call to perform the Opcode on the script. The current script is passed in as a slice with the first member being the Opcode itself.
type ParsedOpcode ¶ added in v0.3.0
ParsedOpcode represents an Opcode that has been parsed and includes any potential Data associated with it.
func ParseScript ¶ added in v0.3.0
func ParseScript(script []byte) ([]ParsedOpcode, error)
parseScript preparses the script in bytes into a list of parsedOpcodes while applying a number of sanity checks.
type ScriptClass ¶ added in v0.3.0
type ScriptClass byte
ScriptClass is an enumeration for the list of standard types of script.
const ( NonStandardTy ScriptClass = iota // None of the recognized forms. PubKeyTy // Pay pubkey. PubKeyHashTy // Pay pubkey hash. WitnessV0PubKeyHashTy // Pay witness pubkey hash. ScriptHashTy // Pay to script hash. WitnessV0ScriptHashTy // Pay to witness script hash. MultiSigTy // Multi signature. NullDataTy // Empty Data-only (provably prunable). )
Classes of script payment known about in the blockchain.
func TypeOfScript ¶ added in v0.3.0
func TypeOfScript(pops []ParsedOpcode) ScriptClass
scriptType returns the type of the script being inspected from the known standard types.