Extend validateaddress information for P2SH-embedded witness
This adds new fields 'pubkeys' and 'embedded' to the RPC's output, and improves the
documentation for previously added 'witness_version' and 'witness_program' fields.
"\"isvalid\" : true|false, (boolean) If the address is valid or not. If not, this is the only property returned.\n"
"\"address\" : \"address\", (string) The bitcoin address validated\n"
"\"address\" : \"address\", (string) The bitcoin address validated\n"
"\"scriptPubKey\" : \"hex\", (string) The hex encoded scriptPubKey generated by the address\n"
"\"ismine\" : true|false, (boolean) If the address is yours or not\n"
"\"iswatchonly\" : true|false, (boolean) If the address is watchonly\n"
"\"isscript\" : true|false, (boolean) If the key is a script\n"
"\"script\" : \"type\" (string, optional) The output script type. Possible types: nonstandard, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_keyhash, witness_v0_scripthash\n"
"\"hex\" : \"hex\", (string, optional) The redeemscript for the p2sh address\n"
"\"addresses\" (string, optional) Array of addresses associated with the known redeemscript\n"
"\"isscript\" : true|false, (boolean, optional) If the address is P2SH or P2WSH. Not included for unknown witness types.\n"
"\"iswitness\" : true|false, (boolean) If the address is P2WPKH, P2WSH, or an unknown witness version\n"
"\"witness_version\" : version (number, optional) For all witness output types, gives the version number.\n"
"\"witness_program\" : \"hex\" (string, optional) For all witness output types, gives the script or key hash present in the address.\n"
"\"script\" : \"type\" (string, optional) The output script type. Only if \"isscript\" is true and the redeemscript is known. Possible types: nonstandard, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_keyhash, witness_v0_scripthash, witness_unknown\n"
"\"hex\" : \"hex\", (string, optional) The redeemscript for the P2SH or P2WSH address\n"
"\"addresses\" (string, optional) Array of addresses associated with the known redeemscript (only if \"iswitness\" is false). This field is superseded by the \"pubkeys\" field and the address inside \"embedded\".\n"
" [\n"
"\"address\"\n"
" ,...\n"
" ]\n"
"\"sigsrequired\" : xxxxx (numeric, optional) Number of signatures required to spend multisig output\n"
"\"pubkey\" : \"publickeyhex\", (string) The hex value of the raw public key\n"
"\"pubkeys\" (string, optional) Array of pubkeys associated with the known redeemscript (only if \"script\" is \"multisig\")\n"
" [\n"
"\"pubkey\"\n"
" ,...\n"
" ]\n"
"\"sigsrequired\" : xxxxx (numeric, optional) Number of signatures required to spend multisig output (only if \"script\" is \"multisig\")\n"
"\"pubkey\" : \"publickeyhex\", (string, optional) The hex value of the raw public key, for single-key addresses (possibly embedded in P2SH or P2WSH)\n"
"\"embedded\" : {...}, (object, optional) information about the address embedded in P2SH or P2WSH, if relevant and known. It includes all validateaddress output fields for the embedded address, excluding \"isvalid\", metadata (\"timestamp\", \"hdkeypath\", \"hdmasterkeyid\") and relation to the wallet (\"ismine\", \"iswatchonly\", \"account\").\n"
"\"iscompressed\" : true|false, (boolean) If the address is compressed\n"
"\"account\" : \"account\" (string) DEPRECATED. The account associated with the address, \"\" is the default account\n"
"\"timestamp\" : timestamp, (number, optional) The creation time of the key if available in seconds since epoch (Jan 1 1970 GMT)\n"
"\"timestamp\" : timestamp, (number, optional) The creation time of the key if available in seconds since epoch (Jan 1 1970 GMT)\n"
"\"hdkeypath\" : \"keypath\" (string, optional) The HD keypath if the key is HD and available\n"
"\"hdmasterkeyid\" : \"<hash160>\" (string, optional) The Hash160 of the HD master pubkey\n"