I looked through the transactions in the block explorer and couldn't understand the technical terms. In this example transaction what are Unit, Authors, Children, and Parents? Is the Unit like a Bitcoin transaction ID and the Authors like a Bitcoin sending address?
https://explorer.byteball.org/#zD17W8iMLjb4Uxtt66NIcdhiCv9MCAtQFaBDY4jSXNo=Unit zD17W8iMLjb4Uxtt66NIcdhiCv9MCAtQFaBDY4jSXNo=
Authors
UGP3YFIJCOCUGLMJUFKLXLNYNO4S7PT6
Children
V1UF7jRtqFUDWsOxmSLz23rTs7s0azPbpiNrXncsH74=
Parents
EjR+BnqoiGywB7WIEpELtxjyLku2bVylF8EcAjVGteE=
KSy9G0vl4PdpqZb9VCLJ2pnZyDtcUT+gE30O3uaX9uE=
Unit is hash of data unit, similar to bitcoin transaction ID, but unit can have more than just a transaction.
Authors are addresses who signed the transaction, similar to bitcoin sending address.
Children and parents are pointers to later and earlier units in the DAG (see the arrows between units).
Thanks
Also, in the advanced section of the wallet there was a string starting with xpub if I remember correctly. Is that like a Bitcoin public key, and is it safe to let others know it?
<edit>
This is the xpub string I referred to, and it is an extended public key for an HD wallet.
https://github.com/byteball/byteball-merchantThe merchant runs as a daemon and it doesn't hold any private keys. Instead, it knows only the extended public key and uses it to generate a new receiving address for each order.
xPubKey: extended public key of the home wallet that is to collect funds. To find it out, open the GUI wallet, click gear icon -> Advanced -> Wallet Information, look for "Extended public keys", double-click to select it (it starts with "xpub"), copy and paste into the conf.
I only know of one problem for Bitcoin HD wallet extended public keys. You can safely reveal an extended public key, but if you also reveal one private key from any generated in the same HD wallet an attacker can calculate all the other private keys from that wallet.
https://bitcoinmagazine.com/articles/deterministic-wallets-advantages-flaw-1385450276The problem is this: although you certainly can securely hand out child keys with no risk to the parent key, and you can hand out master public keys with no risk to the master private key, you cannot do both at the same time. The exploit for when that situation does arise is actually quite simple
Does Byteball have this same problem with extended public keys and private keys? Is it safe to reveal your extended public key provided you don't reveal any of your private keys?