Sunday, November 1, 2020

A breakdown of Bitcoin "standard" script types (crazy long)

When challenged recently to provide an little known bitcoin fact, I presented that "Addresses are not stored anywhere in the blockchain". This got me thinking a bit more about the bitcoin op-codes and the scripting language they describe. There is a good wiki article on it all as a refresher. It's basically a stack based language similar to Forth or RPL language. Here's an example of a Mancala game I wrote in RPL to show more complex code.

So below I will set out to try to explain the seven most easily identifiable bitcoin transaction types and how the script assembly for them works. Originally the script assembly was basically just <scriptSig> <scriptPubKey>, but with BIP16 and BIP141 the concept of deserializing either the redeemScript or the witnessScript were introduced. Most of this is done outside the scripting engine by the bitcoin client, but here I image a new op-code called OP_DESERIALIZE for the task. I realize it's fictional, but felt it was easier to present the material with this small imaginary op-code.

This makes our complete script assemble a bit more than just <scriptSig> <scriptPubKey> in most cases. I'll go through what that assembly looks like as well as how block explorers or client software identify the seven major transaction types, and how the address is parsed and assembled. I've also written a sample script that will decode these by walking through testnet blocks.


Pay to Pubkey

The original bitcoin client defined two fields scriptSig and scriptPubKey which each contained half of the script needed to validate a transaction. The two scripts were concatenated together to create a complete script. Here's an example of a Pay to Pubkey script

P2PK size script
scriptSig 72 <sig>
scriptPubKey 35 <pubkey> OP_CHECKSIG
assembled <scriptSig> <scriptPubKey>
btc_address b58_encode(pfx + hash160(spk[1:34]))
Test len(spk)==35 and (spk[0:1] + spk[34:35]).hex()=='21ac'
Total vB 107 72 + 35

Since the OP_CHECKSIG operation takes two arguments, this can be interpreted as txin.OP_CHECKSIG(<pubkey>, <sig>) from a non-stack based language perspective. In regards to TXN size, the total size of one of these assembled scripts is 107 vB (bytes). In regards to bitcoin addresses, the address is derived by chopping off the first and last bytes (op codes) from the scriptPubKey (spk) then performing a Hash160 operation on the data. The script is recognized by it's length and the first and last op codes (OP_PUSH, OP_CHECKSIG).

In the original client P2PK was used for what was termed "Pay to IP". In this process, you would enter an IP address in the PayTo field, and the client would connect to the remote node to receive a scriptPubKey from them.


Pay to Public Key Hash

Along with P2PK, the original client also supported P2PKH termed "Pay to address". Since addresses were always stored as the Hash160 of the pubkey, this format had the advantage of requiring no secondary piece of information. All the sender need was the bitcoin address, where as in P2PK the sender needed the pubkey and could derive the address. But pubkeys are long and generally not checksumed like bitcoin address notation is. Having the sender only need a small checksumed hash was simpler and became much more widely used, although it does require a larger scriptSig making it more expensive to spend

P2PKH size script
scriptSig 106 <sig> <pubkey>
scriptPubKey 25 OP_DUP OP_HASH160 <pkHash> OP_EQUALVERIFY OP_CHECKSIG
assembled <scriptSig> <scriptPubKey>
btc_address b58_encode(pfx + spk[3:23])
Test len(spk)==25 and (spk[0:3] + spk[23:25]).hex()=='76a91488ac'
Total vB 131 106 + 25

the total size of one of these assembled scripts is 131 vB (bytes). In regards to bitcoin addresses, the address is derived by chopping off the first 3 and last 2 bytes (op codes) from the scriptPubKey (spk). The script is recognized by it's length and the first 3 and last 2 bytes (OP_DUP, OP_HASH160, OP_PUSH, OP_EQUALVERIFY, OP_CHECKSIG).


Pay to Script Hash

So this simple script concatenation worked well for the first three years, but then, eventually more flexibility was desired and BIP-16 was introduced. It was a simple enough concept, but if you're looking at a TXN validation completely within the scripting engine then the simple concatenation is not enough. You will need to invent a new op code OP_DESERIALIZE and then insert some op-codes to glue it together to exist purely in this scripting engine. The concept of OP_DESERIALIZE, introduced here, is to take the top data element (redeemScript) and reinterpret it as code instead of data.

P2SH size script
scriptSig ?? <sigData> <<redeemScript>>
scriptPubKey 23 OP_HASH160 <rsHash> OP_EQUAL
assembled <scriptSig> OP_DUP <scriptPubKey> OP_VERIFY OP_DESERIALIZE
btc_address b58_encode(pfx + spk[3:23])
Test len(spk) == 23 and (spk[0:2] + spk[22:23]).hex() == 'a91487'
Total vB 96+ 73 + len(redeemScript) + 23

The total size on the blockchain for a P2SH spent output will be at least 97 bytes. The actual size will be dependent upon the size of redeemScript. The majority of non-segwit P2SH transactions are multisig related. At the time of BIP-16, multisig (P2MS) was already widely adopted, though it was mostly done in the scriptPubKey element. As before, this put the burden on the sender to maintain an intricate scriptPubKey instead of a simple bitcoin address. P2SH allows complex scripts to be used while still providing basic pay to address type semantics. The address is derived like most pay-to-address outputs, though a different prefix (pfx) is used. The script is recognized by its length and by clipping the first and last two bytes.

One thing to note with P2SH is that the scriptSig can only support OP_PUSH up to 520 bytes. This puts a hard cap at the size of redeemScript and the flexibility of P2SH in general.


Pay to Witness Public Key Hash

The last four script types were all introduced with Segregated Witness (BIP-141). In order for Segwit to allow backward compatibility, the scriptSig and scriptPubKey elements are either empty or consist of nothing more than data elements (OP_PUSH). Since non-zero data will always pass validation, this makes all segwit TXNs default to valid if witness data is not included. Like P2SH a lot of the op-codes are implied and to make the point I'll artificially insert glue-code here as we did with P2SH.

The P2WPKH is modeled after the P2PKH, but the scriptSig is moved to the witness program and most of the op-codes are implied. Scripts are generally prefixed with OP_0 to signify segwit enablement. The goal of segwit was to allow blocks to expand to something approaching 4MiB while not breaking older implementations. So you can still only have 1MiB of "legacy" block data, but you can have up to 3MiB of witness data... well kinda... The real WU math is a bit more complex, but I'll defer to the wiki for that.

P2WPKH size script
witness 107 <sig> <pubkey>
scriptPubKey 22 OP_0 <pkHash>
assembled <witness> OP_DUP OP_HASH160 <scriptPubKey> OP_SWAP OP_DROP OP_EQUALVERIFY OP_CHECKSIG
btc_address b32_encode(pfx + spk[2:22])
Test len(spk) == 22 and (spk[0:2]).hex() == '0014'
Total vB 48.75 22 + 107/4

For those keeping score, you'll notice that the witness program is 107, yet the same scriptSig elsewhere is 106. This is because the witness program has to push an element count (0x02) so it can be deserialized. I won't get into those specifics since I think we are already getting off in the weeds. You'll also notice with the WU math, we get to apply a 75% discount to the witness program. This gives our "virtual size" in the block at 48.75, making P2WPKH far and away the least expensive script type. The address is derived from the last 20 bytes of scriptPubKey but by identifying the scriptPubKey as a P2WPKH type, the address will use bech32 encoding instead of base58 encoding.


Pay to Witness Script Hash

As part of segwit P2WSH was introduced as a complement to the BIP-16 P2SH standard script. But because the witness program is constructed and not pushed, it does not have the 520 byte push limit that P2SH has. This means you can construct arbitrarily large M of N multisig scripts in the same way as P2MS worked, but at a greatly reduced WU size. Just like P2SH, the script itself (witnessScript) is hashed and that hash is used to construct the address. But unlike P2SH, the witnessScript hash uses a 32 byte SHA256 hash not a 20 byte HASH160 hash. This makes P2WSH addresses uniquely long. As before, there is a lot of implied op-codes used in the imagined script assembly.

P2WSH size script
witness ?? <sigData> <<witnessScript>>
scriptPubKey 34 OP_0 <wsHash>
assembled <witness> OP_DUP OP_SHA256 <scriptPubKey> OP_SWAP OP_DROP OP_EQUALVERIFY OP_DESERIALIZE
btc_address b32_encode(pfx + spk[2:34])
Test len(spk) == 34 and (spk[0:2]).hex() == '0020'
Total vB 52+ 34 + (74 + len(witnessScript))/4

Looking at the size calculation, the minimum overhead for P2WSH is 53 vBytes which is significantly smaller than P2SH. It also does not fall victim to the size limitation of the BIP16. The witness program can support OP_PUSH operations up to 10,000 bytes. You will also notice that the address construction is 32 bytes. This script type is easily identified by its scriptPubKey length and the specific pattern of the first two bytes.


P2SH Encapsulating Pay to Witness Public Key Hash

The next two script formats are clever bridge formats that were popular during the transition to segwit while not all wallets supported it. The receiving side (scriptPubKey) is P2SH, but the spending side (scriptSig) is segwit. This works because BIP16 simply needs a hash, any hash. Normally a P2SH would receive a redeemScript hash, but in this case, what it receives is a scriptSig hash, which in turn contains the pubkey hash.

P2SH-P2WPKH size script
witness 107 <sig> <pubkey>
scriptSig 23 <OP_0 <pkHash>>
scriptPubKey 23 OP_HASH160 <ssHash> OP_EQUAL
assembled <witness> OP_DUP OP_HASH160 <scriptSig> OP_DUP <scriptPubKey> OP_VERIFY OP_DESERIALIZE OP_SWAP OP_DROP OP_EQUALVERIFY OP_CHECKSIG
btc_address b58_encode(pfx + spk[2:22])
Test is_p2sh() and len(ss) == 23 and (ss[0:3]).hex() == '160014'
Total vB 72.75 23 + 23 + 107/4

Since the scriptPubKey is BIP16, the address is computed just like any BIP16 scriptPubKey. The fact that this encapsulates a segwit transaction is not known until the scriptSig is revealed. Only then is the serialized OP_0 and OP_PUSH interpreted as a P2SH-P2WPKH transaction. Due to the encapsulation, the imagined script assembly is a bit harder to understand, but it carries the same format as we'd expect, { witness + glue + scriptSig + glue + scriptPubKey + glue }. The "glue code" just has more work to do since it must verify both the scriptSig hash and the pubkey hash. Although this format is more portable, it does take up 24 more vBytes than the native format.


P2SH Encapsulating Pay to Witness Script Hash

Just like P2SH-P2WPKH, P2SH-P2WSH is simply a way to contain a P2WSH in a BIP16 address. Again, this works exactly like a BIP16 address until the scriptSig is exposed. Only then does it become clear that this is a P2WSH script. Just like the native P2WSH scripts, this format fixes the 520 byte script limitation that was previously imposed on the BIP16 redeemScript. The new P2WSH witnessScript is not capped until it reaches 10,000 bytes.

P2SH-P2WSH size script
witness ?? <sigData> <<witnessScript>>
scriptSig 35 <OP_0 <wsHash>>
scriptPubKey 23 OP_HASH160 <ssHash> OP_EQUAL
assembled <witness> OP_DUP OP_SHA256 <scriptSig> OP_DUP <scriptPubKey> OP_VERIFY OP_DESERIALIZE OP_SWAP OP_DROP OP_EQUALVERIFY OP_DESERIALIZE
btc_address b58_encode(pfx + spk[2:22])
Test is_p2sh() and len(ss) == 35 and (ss[0:3]).hex() == '220020'
Total vB 76+ 23 + 35 + (74 + len(witnessScript))/4

Again, the imagined assembly of this seems to be a lot to take in, but simply seeing it as { witness + glue + scriptSig + glue + scriptPubKey + glue } may help to make it a bit easier to comprehend. This format is recognizable by the longer scriptSig with the serialized OP_0 prepended to it, and the address is computed as any BIP16 scriptSig is. Even though this more portable, it is 24 bytes larger than the native form.


Other formats

The two major forms not discussed here are OP_RETURN transactions and P2MS (Pay to Multisig). OP_RETURN is simply a unspendable UTXO that can encode some data into the public ledger. P2MS is the legacy form of multisig before P2SH was more commonly used. P2MS avoids some of the limitations of BIP16. As a general rule, if a TXN is not one of these recognized forms, it can be assumed to be of the form <scriptSig> <scriptPubKey>. If that execution fails, then the transaction is invalid. There is also some debate as to whether or not miners will include these arbitrary transaction types. One thing for certain is that there is no convention for displaying any type of address for these UTXOs, since there is no convention for creating one.

References



Rollercoin an Online Bitcoin Mining Big Event is Ongoing join now Halloween limited sales

Are you looking for some mining site here at RollerCoin is an bitcoin mining where you compete against your friends to mine bitcoins. RollerCoin lets you test your skills, complete missions, build your mining empire.

They also Mine REAL BTC, ETH And DOGE

BUT there is more there is an ongoing event all miner is 50% OFF Hurry join now!!

THE Withdraw Of ETH and DOGE is also very low.

You can also Invest To Their coin called RLT You can purchase Their mining rig is great

Here is My Referral link it comes with 1000 Satoshi for free so Register Now: https://rollercoin.com/?r=kgrccpu8


Rollercoin an Online Bitcoin Mining Big Event is Ongoing join now Halloween limited Sales

Are you looking for some mining site here at RollerCoin is an bitcoin mining where you compete against your friends to mine bitcoins. RollerCoin lets you test your skills, complete missions, build your mining empire.

They also Mine REAL BTC, ETH And DOGE

BUT there is more there is an ongoing event all miner is 50% OFF Hurry join now!!

THE Withdraw Of ETH and DOGE is also very low.

You can also Invest To Their coin called RLT You can purchase Their mining rig is great

Here is My Referral link it comes with 1000 Satoshi for free so Register Now: https://rollercoin.com/?r=kgrccpu8


Rollercoin an Online Bitcoin Mining Big Event is Ongoing join now Halloween limited Sales

Are you looking for some mining site here at RollerCoin is an bitcoin mining where you compete against your friends to mine bitcoins. RollerCoin lets you test your skills, complete missions, build your mining empire.

They also Mine REAL BTC, ETH And DOGE

BUT there is more there is an ongoing event all miner is 50% OFF Hurry join now!!

THE Withdraw Of ETH and DOGE is also very low.

You can also Invest To Their coin called RLT You can purchase Their mining rig is great

Here is My Referral link it comes with 1000 Satoshi for free so Register Now: https://rollercoin.com/?r=kgrccpu8


Tokenomy October Highlights

October was yet another month full of exciting events for Tokenomy. Read on and find out what has been going on!

Highlights of The Month!

Tokenomy Academy Videos and Webinars

Episode 30: Decentralized Finance (DeFi) - https://youtu.be/BamLZjlDolk

In this episode, we can discuss about a hot topic amongst crypto communities: DeFi. Let’s learn about DeFi, what does it do, and how does it work!

Episode 31: Fun Talk about Tadpole Finance - https://youtu.be/aM7MB5ytknA

In this episode, with William Sutanto, we discussed a new DeFi experiment called the Tadpole Finance. Let’s learn more about it together!

Webinar TokenomyX: Money Management & The Secret to Consistent Profits

https://preview.redd.it/ukhe10rnxrw51.png?width=2108&format=png&auto=webp&s=bbc8572f9840a602fe4ad19f18a2d6c02029aad1

Webinar TokenomyX: Bitcoin Outlook In Q4 2020 with Crypto Hunter Forum

https://preview.redd.it/7asjos0qxrw51.png?width=2114&format=png&auto=webp&s=706740d92fb781bd672793c503e70bcf1a337476

Swap TEN and IDK in UNISWAP!

https://preview.redd.it/zxlah84sxrw51.png?width=2116&format=png&auto=webp&s=ec5b275d15613218f6c4579ea1de637bf5911808

Now, you can swap TEN and IDK to any ERC20 tokens using an easier and faster way, on UNISWAP!

Click here to learn how to swap your TEN and IDK!

Learn more about UNISWAP here.

TokenomyX’s Trading Competition - Win 100 IDK Daily!

Tokenomy held a Trading Competition on 6-31 Oktober 2020, where a winner with the biggest trading profit will be selected daily to win a trading voucher worth 100 IDK! Congratulations to all winners!

Tokenomy & Indodax Proudly Presented to You: TADPOLE FINANCE!

https://preview.redd.it/cgeo4vnyxrw51.png?width=1600&format=png&auto=webp&s=3dbc2d808ce0a7e74a47644468189f6c1f41f0dd

Tokenomy and Indodax are initiating a new DeFi (Decentralized Finance) experiment project, called the Tadpole Finance! It is an open-source platform, providing decentralized finance services for saving and lending. The TAD Token was released on 13th October 2020.

Learn more about Tadpole here.

Be a TEN Liquidity Provider on UNISWAP and Enjoy the Benefits!

https://preview.redd.it/7jmh7bf2yrw51.png?width=2120&format=png&auto=webp&s=afb4067a4abbeaeb6c4bc3f611d8d34a2fed7314

As announced recently, we are now able to swap any ERC20 Tokens on UNISWAP. But did you know? We can also do “Liquidity Mining” by becoming a TEN Liquidity Provider (LP) on Uniswap!

If you are a TEN Holder, it is time for you to become a TEN LP to enjoy the benefits!

Read more about the benefits of being a liquidity provider and how you can become a TEN LP on Uniswap here.

That’s all for Tokenomy’s October Highlights! Stay safe, and stay tuned to our social media for the latest updates.

Sincerely,
Tokenomy Team


[Daily Discussion] Monday, November 02, 2020

Thread topics include, but are not limited to:

  • General discussion related to the day's events
  • Technical analysis, trading ideas & strategies
  • Quick questions that do not warrant a separate post

Thread guidelines:

  • Be excellent to each other.
  • Do not make posts outside of the daily thread for the topics mentioned above.

Other ways to interact:


[Altcoin Discussion] Monday, November 02, 2020

Thread topics include, but are not limited to:

  • Discussion related to recent events
  • Technical analysis, trading ideas & strategies
  • General questions about altcoins

Thread guidelines:

  • Be excellent to each other.
  • All regular rules for this subreddit apply, except for number 2. This, and only this, thread is exempt from the requirement that all discussion must relate to bitcoin trading.
  • This is for high quality discussion of altcoins. All shilling or obvious pumping/dumping behavior will result in an immediate one day ban. This is your only warning.
  • No discussion about specific ICOs. Established coins only.

If you're not sure what kind of discussion belongs in this thread, here are some example posts. News, TA, and sentiment analysis are great, too.

Other ways to interact:


/r/Lebanon Help and Political Discussion Thread - Nov 2 2020



Switzerland Approves Gazprombank to Offer Bitcoin Trading and Custody (current BTC/USD price is $13,710.85)

Latest Bitcoin News:

Switzerland Approves Gazprombank to Offer Bitcoin Trading and Custody

Other Related Bitcoin Topics:

Bitcoin Price | Bitcoin Mining | Blockchain


The latest Bitcoin news has been sourced from the CoinSalad.com Bitcoin Price and News Events page. CoinSalad is a web service that provides real-time Bitcoin market info, charts, data and tools.


Kriptomat free €10 when you purchase €100 in Bitcoin

Kriptomat is a cryptocurrency platform based in Eurpope. They are currently offering €10 when you use a SEPA bank transfer buy €100 in Bitcoin.

Any bank account in Euros you have will be able to send a SEPA transfer for free. If you do not have one Bitwala Bank are offering a €15 signup bonus for new users.

The Kriptomat charges are on the high side for exchanges. You will be charged:

  • €1 when you deposit yoru Euros into Kriptomat.
  • €1.45 when you purchase €100 of crypto.
  • €7 (0.0006 BTC) when you send your Bitcoin to another wallet

However, there is a way to get round the high fees. You can exchange your Bitcoin for Bitcoin Cash and then send that instead. Crypto to Crypto exchnages are free, and send amounts are only €0.03

This would mean your total profit is €7.52, and if you refer any friends you will get an additional €10 for every one that signs up and also buts €100 of Bitcoin.

Links:

My referral link €10 bonus

Non referral link No bonus

Referral programme info

Verification guide

SEPA deposit guide

Fees info

Steps:

Sign up using My Referral Link

Register & verify your ID (this takes less than 5 minutes)

Deposit a €101 via SEPA bank transfer (You need to deposit €101 because there's a €1 deposit fee)

When your deposit arrives buy at least €100 worth of Bitcoin

You will then be immediately rewarded with €10 in additional Bitcoin

I would then exchange your Bitcoin to Bitcoin Cash (this is free)

You can then send your Bitcoin Cash to another exchange for only €0.03 where you can then convert it back again. I sent mine to my Coinbase account If you have not signed up for this one I would recommend it.

When you have done please share your referral link

If you have any questions just let me know on here or in a DM :)



Bitcoin is the bubble that keeps on giving (current BTC/USD price is $13,687.74)

Latest Bitcoin News:

Bitcoin is the bubble that keeps on giving

Other Related Bitcoin Topics:

Bitcoin Price | Bitcoin Mining | Blockchain


The latest Bitcoin news has been sourced from the CoinSalad.com Bitcoin Price and News Events page. CoinSalad is a web service that provides real-time Bitcoin market info, charts, data and tools.


Get $10 free Bitcoin when you sign up on Coinbase.

Get $10 free Bitcoin when you sign up on Coinbase. https://www.coinbase.com/join/cui_mhREPLY


[H] WickedGamer's IPTV Service | Watch 24/7 Live | PPV EVENTS/SPORTS/MUSIC | NO BUFFERING | 4k Live TV | 10k Movies [W] Bitcoin & Paypal

WickedGamer's IPTV Service

Welcome To WickedGamer's IPTV service

  1. .High Quality IPTV with No lag
  2. .3,000 Live TV channels and 10,000 movies
  3. .24/7 live TV
  4. .Consists of worldwide countries channels
  5. .24/7 Support with any issue

--Mainly based on UK but has got other countries too--

PRICE

  1. 1 Connection=45$/yr
  2. 2 Connections=60/yr

**Note:**If anything happens to the service,We will try our best to fix it so far we have fixed all issues whenever we have faced and been running it for a long time but in case it happens we wouldn't be responsible Tho we will try our best level to fix it

Contact me to Purchase

Discord-Wickedgamer95#6109

Telegram-@Wickedgamer95

DISCORD SERVER

https://discord.gg/jaYREZb

==Trust me you won't regret buying!!!==


WickedGamer's IPTV Service | Watch 24/7 Live | PPV EVENTS/SPORTS/MUSIC | NO BUFFERING | 4k Live TV | 10k Movies | Bitcoin & Paypal

WickedGamer's IPTV Service

Welcome To WickedGamer's IPTV service

  1. .High Quality IPTV with No lag
  2. .3,000 Live TV channels and 10,000 movies
  3. .24/7 live TV
  4. .Consists of worldwide countries channels
  5. .24/7 Support with any issue

--Mainly based on UK but has got other countries too--

PRICE

  1. 1 Connection=45$/yr
  2. 2 Connections=60/yr

**Note:**If anything happens to the service,We will try our best to fix it so far we have fixed all issues whenever we have faced and been running it for a long time but in case it happens we wouldn't be responsible Tho we will try our best level to fix it

Contact me to Purchase

Discord-Wickedgamer95#6109

Telegram-@Wickedgamer95

DISCORD SERVER

https://discord.gg/jaYREZb

==Trust me you won't regret buying!!!==


WickedGamer's IPTV Service | Watch 24/7 Live | PPV EVENTS/SPORTS/MUSIC | NO BUFFERING | 4k Live TV | 10k Movies | Bitcoin & Paypal

WickedGamer's IPTV Service

Welcome To WickedGamer's IPTV service

  1. .High Quality IPTV with No lag
  2. .3,000 Live TV channels and 10,000 movies
  3. .24/7 live TV
  4. .Consists of worldwide countries channels
  5. .24/7 Support with any issue

--Mainly based on UK but has got other countries too--

PRICE

  1. 1 Connection=45$/yr
  2. 2 Connections=60/yr

Note:If anything happens to the service,We will try our best to fix it so far we have fixed all issues whenever we have faced and been running it for a long time but in case it happens we wouldn't be responsible Tho we will try our best level to fix it

Contact me to Purchase

Discord-Wickedgamer95#6109

Telegram-@Wickedgamer95

DISCORD SERVER

https://discord.gg/jaYREZb

==Trust me you won't regret buying!!!==


Weekly /r/DesMoines Events Thread for the week of November 01, 2020

This thread is for any events going on in Des Moines this week! What events will you be attending? What events do you want to attend? What events do you want to promote? Whats new around Des Moines this week? Add a comment below.

Please provide the following when posting new events: - Time, Date, Location, Cost and some sort of description of the event.

New threads start every Sunday, and will be stickied at the top of the subreddit.

Here are some places to find things to do: Cityview's Calendar - Juice's Calendar - Des Moines Register Event Page - Catch Des Moines Calendar

If you have any recurring events, specials, or other suggestions for this weekly thread, please send us a modmail

Bar Map

THANKS FOR HELPING US CROWDSOURCE THIS

Discord for Iowa/Des Moines https://discord.gg/2MKbCv5 

Trivia Nights:

  • First Monday of the month is Mona's Pub Quiz at The Lift

  • Benchwarmers in Ankeny on Mondays

  • BeerStyles in WDM, Tuesdays 7-9 PM

  • Ridgemont in Windsor Heights Wednesdays 8-11

  • Wednesdays at Fireside Grille in Altoona -starts at 8

  • Trivia Thursdays at The Ingersoll Tap.

  • Tuesdays at Quinton's

  • Gas Lamp has triva on Tuesday

  • Tuesdays at Basement Bar at Des Moines Social Club

  • There's trivia at The Beer House in Urbandale on Wednesdays, 7pm. Also at F&O's on Fridays, 9pm

  • Tuesdays at Wellman's Ingersoll

  • Wellmans Pub on Ingersoll has trivia Tuesday night at 8

  • Trivia at Thunder Head in Ankeny every Tuesday

  • Trivia at the Keg Stand, Thursday nights (I think it starts at 8:30?)

    Drink Specials:

  • 2 for Tuesdays @ the Flying Moose every Tuesday all night (Also, 2 fers every day until 8pm)

  • Beechwood has 2 for 1 on tuesdays.

  • Quintons: Thursday Half off all drinks

  • Quarter beers at both Flying Moose and Mickey's Clive on Weds

  • Wednesday is geeks who drink at the red monk

  • Lift has $3 draws on Thursday

  • First Wednesday of every month there is a bottle share at 515 Brewing @ 6

    • Tuesdays they have trivia at The Hall in Valley Junction too. Starts at 7.
    • Smashpark in WDM has trivia at 7 and 8 on monday nights

    Weekly Open Mic night:

  • Gas Lamp now does karaoke on Tuesdays (with a live band for you to sing with!).

  • Tuesday night comedy open mic at Lefty's Live Music at 8pm.

  • open mic every Tuesday at Luckys at 8.

  • Friday night at the Beechwood is free stand-up comedy.

  • Acoustic music open mic at AJ's on East Court, Sundays at 4pm

  • Free Killer Queen at Up-Down every Thursday!

  • There is trivia at The Ducktail Lounge on Sunday’s.

  • Open Mic Thursday at Java Joe's Downtown at 7:30

    Other Ongoing Events:

  • Blues Jam Band every Tuesday at Carl's Place, $3 tallboys

  • Des Moines Bitcoin and Blockchain MeetUp at Gravitate in West Des Moines - 2nd and 4th Thursdays of each month (eg Oct 25th) at 7:00pm

    If any of these are no longer current or you would like to add something, please ping /u/annarchist to update this thread otherwise I may miss it.


Bitcoin Fails to Sustain $14000+ Price (current BTC/USD price is $13,836.87)

Latest Bitcoin News:

Bitcoin Fails to Sustain $14000+ Price

Other Related Bitcoin Topics:

Bitcoin Price | Bitcoin Mining | Blockchain


The latest Bitcoin news has been sourced from the CoinSalad.com Bitcoin Price and News Events page. CoinSalad is a web service that provides real-time Bitcoin market info, charts, data and tools.


Rollercoin. Online Bitcoin Mining!!! 50% off in special Halloween event!!! 1000 Satoshi for free!!!!

Halloween especial offer!!! 50% off in all miners only for a week!!!

New miners and one only available during this Halloween event!!!

They have increased the reward for register using referral link from 200 to 1000 satoshi!!!!

Earn real bitcoins. Build Virtual data center and start earning Bitcoin, Ethereum or Doge.

Play fun and addictive side-missions, tasks, and mini-games to increase your mining power. The more powerful your miner is, the more bitcoins you earn.

Ethereum and DOGE withdraw is here!! Now you can withdraw ETH and DOGE with very low minimum!!!

Block reward increased by 2!!!!

Join discord for help in the first steps and play with cctip bot!!

Here is my referal link. Register now and get 1000 Satoshi for free: https://rollercoin.com/?r=k7p0mi77


Bitcoin monthly candle closes above $13K for the first time since 2017 (current BTC/USD price is $13,773.45)

Latest Bitcoin News:

Bitcoin monthly candle closes above $13K for the first time since 2017

Other Related Bitcoin Topics:

Bitcoin Price | Bitcoin Mining | Blockchain


The latest Bitcoin news has been sourced from the CoinSalad.com Bitcoin Price and News Events page. CoinSalad is a web service that provides real-time Bitcoin market info, charts, data and tools.


Twitch allowing a scam to stream "Live" on their platform for 8+ hours?!?! Why?

There is no shortage of scammers looking to take advantage of users across any platform, and is the job of the company to make sure it is minimized as much as possible. The fact that Twitch has allowed this scam to exist for 8+HOURS is an absolute atrocity and honestly raises a lot of questions as to why the scam was allowed to run for so long. You can not tell me that there is not a single moderator or twitch employee that is not aware of this live stream which is taking place in the "Just Chatting" channel titled as [Elon Musk about Bitcoin and Ethereum|!giveaway] Account Name: elonmusk332 that currently has 36,000 people watching (I'm sure most of them are bots) but still the fact that this has been running for so long and countless users have reported it with no action raises a big concern. Why was this allowed?! What took so long and why are you not taking action immediately when a scam like this goes live? I understand it may be challenging to catch a scam but this is literally right in front of everyone's face the second they log on. There is no excuse that can justify the reason for the delay and you have put many people at risk for allowing the stream to stay online for as long as it did. I pray nobody was naive enough to actually believe in this scam which was encouraging users to send an amount of Crypto currency and they would then receive double the amount that was sent. In the unfortunate event that people did fall for the scam then you guys better be prepared to deal with law enforcement for the users that report a claim for their losses which was allowed on your platform. They will conduct investigations thoroughly and will find out who was behind the scam, the fact that you guys left it running for so long will not look good at all for twitch and will need to be explained when or if an investigation happens. Best of luck twitch you guys unfortunately acting pretty SUS on this one..


US banks seek partnership with Bitcoin and crypto custodians like Coinbase (current BTC/USD price is $13,802.87)

Latest Bitcoin News:

US banks seek partnership with Bitcoin and crypto custodians like Coinbase

Other Related Bitcoin Topics:

Bitcoin Price | Bitcoin Mining | Blockchain


The latest Bitcoin news has been sourced from the CoinSalad.com Bitcoin Price and News Events page. CoinSalad is a web service that provides real-time Bitcoin market info, charts, data and tools.


The Narrow Present | Monthly FIRE Portfolio Update | October 2020

Sometimes, I feel the past and the future pressing so hard on either side that there’s no room for the present at all.

Evelyn Waugh, Brideshead Revisited

Portfolio goal

My objective is to reach a portfolio of $2 180 000 by 1 July 2021. This would produce a real annual income of about $87 000 (in 2020 dollars).

This portfolio objective is based on an expected average real return of 3.99 per cent, or a nominal return of 6.49 per cent.

Portfolio summary

  • Vanguard Lifestrategy High Growth Fund $728,112

  • Vanguard Lifestrategy Growth Fund $41,606

  • Vanguard Lifestrategy Balanced Fund $78,564

  • Vanguard Diversified Bonds Fund $109,495

  • Vanguard Australian Shares ETF (VAS) $231,548

  • Vanguard International Shares ETF (VGS) $75,298

  • Betashares Australia 200 ETF (A200) $231,199

  • Telstra shares (TLS) $1,428

  • Insurance Australia Group shares (IAG) $6,043

  • NIB Holdings shares (NHF) $4,992

  • Gold ETF (GOLD.ASX) $121,009

  • Secured physical gold $19,482

  • Ratesetter (P2P lending) $7,363

  • Bitcoin $218,040

  • Raiz app (Aggressive portfolio) $17,488

  • Spaceship Voyager app (Index portfolio) $2,841

  • BrickX (P2P rental real estate) $4,447

Total portfolio value $1,898,955 (+$73,218)

Asset allocation

  • Australian shares 40.8%

  • Global shares 22.4%

  • Emerging market shares 2.1%

  • International small companies 2.7%

  • Total international shares 27.3%

Total shares 68.1% (-6.9%)

  • Total property securities 0.2% (+0.2%)

  • Australian bonds 4.1%

  • International bonds 8.6%

Total bonds 12.8% (-2.2%)

  • Gold 7.4%

  • Bitcoin 11.5%

Gold and alternatives 18.9% (+8.9%)

Presented visually, the chart below is a high-level view of the current asset allocation of the portfolio.

[Chart]

Comments

This month the portfolio expanded by around $73,000, continuing the strong overall pattern of recovery since March. This has resulted in portfolio growth of 4 per cent, which has taken the value of the portfolio to a new monthly high.

[Chart]

The portfolio was affected by small price falls across global shares, a modest increase in Australian share values, with limited movement in gold and bond holdings.

This means that the majority of gains in the portfolio have been from an appreciation in the price of Bitcoin, which in fact made up more than 90 per cent of the total monthly gains. This appears to be based on some early steps by Paypal to increase use of Bitcoin, and some recent corporate decisions by a US technology firm to seek to employ it as a corporate treasury store of value.

[Chart]

This element of the portfolio, more a product of curiosity than deliberate investment intent, now represents a surprising 11 per cent of total assets held. Combined, Bitcoin and the gold components of the portfolio have expanded in value over the past few years to currently sit at their highest dollar value ever. This is despite no significant investments in either for nearly five years.

What this means in practice is that while these values increase, to hold other elements of the portfolio close to their targets, equity purchasing continues. In essence, as these defensive (or at least uncorrelated) assets appreciate, there is a strong automatic signal through my asset allocation plan to increase equity holdings to maintain balance.

This month this translated to continued purchases of Vanguard exchange traded funds, with units bought using Selfwealth in both the Australian shares (VAS) and international shares (VGS) funds.

Third quarter dividends start to grow

Third quarter dividends from the three equity ETFs held (VAS $1,702, Betashares A200 $1,583 and VGS $275) were received this month. These totalled close to the $3,600 expected, but were around 40 per cent lower than past historical distributions for the same period.

In addition, a distribution from the Vanguard diversified bond fund of $2,483 was received, a far higher payout than average. These distributions were all reinvested through the month.

Estimating future distributions – some further explorations

As I start to think ahead to the December half-year distributions, I will primarily rely on the approach of estimating approximately the average level of distributions per ETF or fund unit, drawing on historical records. Then I will likely apply a broad downward adjust to reflect expected cancelled or deferred dividend payouts during the pandemic.

Doing some early work on this has turned up a potential issue of under-estimation of future distributions from applying this approach. Put simply, while payouts per unit for ETFs show no particular trends, the ‘cents per units’ distributions paid out of the Vanguard retail funds (in particular the High Growth, Growth and Balanced funds) have generally grown over time.

The trend is evident at least for June distributions measured over the last decade, as can be seen in the chart below. Interestingly, however, the issue does not seem to be as clearly present for December distributions.

[Chart]

At an annual aggregate level, this can mean that simple averages or median figures may not necessarily be representative of trends in recent, and potential future, payouts.

Presumably part of the reason for this is that some elements of the capital growth experienced by the retail funds are being ’embedded’ in the price of the retail fund units over time. This can be thought of as akin to a share price increasing over time, but the precise drivers for this happening are not entirely clear.

Early work suggests that giving weight to more recent fund distributions would substantially raise the estimated future portfolio income – by almost $20 000. Yet in these COVID-affected market conditions, this effect may not be discernible compared to broader dividend reductions.

Centre of the load – changing balance of holdings

Since the commencement of the journey in 2017 there have been some substantial changes in the shape of the financial independence portfolio.

Many of these changes have been documented elsewhere, including the growth in the overall size of equity holdings, and a strong rebalancing towards Australian equities based on the portfolio plan.

The focus of much of the portfolio analysis contained in this record focuses on asset allocation. That is, the specifics of what is owned, rather than the how – or the precise investment structures through which these assets are owned.

This is entirely the right way to think about the issues for most purposes – as generally it makes little difference if a share in global firms is owned through an ETF, a passive low-cost managed fund, or even a Fintech mobile app such as Spaceship or Raiz.

Yet day to day, it is these investment structures I deal with, and choose to expand my investments in, or receive distributions from. Over time these choices are shaping the overall characteristics of the portfolio in ways that are only slowly becoming apparent.

Comparing past and present investment structures

The portfolio at the commencement of this record was a legacy of two competing characteristics – consistency and a taste for experimentation.

The chart below shows the composition of the portfolio by investment structure in January 2017.

[Chart]

Starting the journey, this meant a solid basis of larger investments in Vanguard retail funds. The largest of these – the Vanguard High Growth Fund – comprised around 6 in every 10 dollars invested. Collectively, all Vanguard retail funds constituted 82 per cent of the portfolio.

By contrast, a range of small experimental investments made up a tiny proportion of the portfolio, with Raiz, Spaceship, and Bitcoin only representing around 1-2 per cent of the entire portfolio.

The portfolio, viewed by structure, looks quite different today.

Investments structures which have not received new contributions have naturally shrunk as the overall portfolio has approximately doubled across the past four years. The chart below shows the portfolio by investment structure today.

[Chart]

Overall, the portfolio has a greater number of individual structures. This is mostly the result of a shift in the focus of new investments towards exchange traded funds.

The shifting balance and portfolio implications

The major changes in terms of portfolio and investment structures have been:

  • A declining importance of Vanguard passive index funds – The Vanguard retail funds are only around half of the portfolio by value, with the High Growth fund alone declining from 59 to 38 per cent of the portfolio.

  • With ETFs growing in portfolio significance – Exchange traded funds (VAS, A200 and VGS) have grown to just under a third of the total portfolio.

  • And from nowhere, Bitcoin arrives as a portfolio component – Bitcoin has come from being an inconsequential part of the portfolio, to constituting more than 11 per cent of its value.

  • Smaller investment structures have even more negligible impact – with the five smallest investment collectively making up only 2 per cent of the overall portfolio in 2017, and half that today.

These significant changes have a few different implications.

First, the portfolio performance is increasingly a function of how the Vanguard High Growth fund, Australian equity ETFs (A200 and VAS), and Bitcoin perform through time. These four investment structures represent nearly 80 per cent of the portfolio. This has some benefits in terms of simplicity, as it is easier to get a broad sense of performance from just a few data points.

Second, and conversely, a significant number of investments simply have negligible effect on overall portfolio outcomes, representing less than one per cent of holdings.

Third, with a number of these investment structures being lower cost, this increasing concentration in these vehicles has the overall effect of lowering average fees across the portfolio. These currently sit at around 0.24 per cent.

Trends in average credit card expenses

Similar to recent months, average monthly expenditure on credit cards has continued to fall. The rolling average level of distributions is also gradually falling, reflecting some larger distributions in the older data being excluded over time.

[Chart]

Reviewing monthly figures, total expenditure continues to track at levels above estimated distributions, while credit card expenses remain fully met.

[Chart]

Progress

Measure Portfolio All Assets

Portfolio objective – $2 180 000 (or $87 000 pa) 87.1% 117.3%

Credit card purchases – $71 000 pa 106.3% 143.2%

Total expenses – $89 000 pa 85.1% 114.7%

Summary

There was a small pleasant surprise in the past week, in the form of recognition in this Business Insider piece on the topic of choosing a FIRE lifestyle. With the portfolio moving beyond previous monthly highs it has been tempting to consider the journey smoothly back on track, and that the timeline for the portfolio goal of July 2021 may yet be attainable.

Yet the sense of changing regimes – monetary, fiscal, and inflationary – is unmistakeable, with the International Monetary Fund, for example, openly calling for a new ‘Bretton Woods‘ moment. Nobel prize winning economists are increasingly questioning a series of pervasive puzzles across markets, and the foundational concept of risk-free rates that sit behind all market asset prices.

These same forces have found their expression in the portfolio this month, with unanticipated increases in non-traditional and alternative asset types. These seem caught in a struggle between the past and future, and the portfolio itself seems poised at the same potential inflection point.

The shape of some of these inflection points is well described in this piece on the historical premium for investors assuming equity and bond risks over the past 300 years. Critically, it reinforces the extraordinary and atypical performance of bonds over the past 40 years, and their poor outlook going forwards.

Likewise, this recent work by Professor Robert Shiller points to increasing fears in the US of poor future equity returns. For another perspective, this academic piece highlights a potentially more stable underlying connection between price fluctuations and value in key international equity markets.

This month I have also sought out perspectives from a slightly shorter time period, beginning Felix Somary’s memoirs The Raven of Zurich. It is a story of an extraordinary financier’s life, a life intersecting with almost every major world event in the first half of the twentieth century. The contents are a stark reminder that predictions and warnings can go unheeded, and that identification of risks is only one half of their resolution.

Reflecting on the memoir, one is reminded that nobody has ever had a choice of what history they live through. The only choice lies in how to respond, what actions to take.

With looming US elections likely to be highly contested, increased uncertainty and fear driving markets, there is a sense of there being hardly room for the present. Yet this narrow present is the one we must act in, to seek to progress the chosen journey.

The post, links and full charts can be seen here.


Happy Halloween - Updated Audit Status of Canadian Cryptocurrency Exchanges

Masks meant something different one year ago when I posted the highly popular “Happy Halloween - Audit Status of Canadian Cryptocurrency Exchanges”. Since then,

  1. We’ve had 20 more cryptocurrency exchange incidents globally.
  2. Canadian exchanges have seen massive progress - in at least a couple of exchanges.
  3. We’ve seen the collapse of Einstein which took millions of dollars more from Canadians. And we saw the OSC crackdown on the inflated trading volume on CoinSquare.

Blockchain provides the full ability for exchanges to prove asset backing, yet we continue to have to guess which platforms are backed. In an effort to help Canadians find the exchanges which are most transparent, we divide platforms into 5 categories:

  • Dead Platform/Incidents - For fun, and to help illustrate the risks, reviews of past platforms that collapsed or lost funds in Canada. No disrespect to the real losses of Canadians who worked hard for their money.
  • No Verification Found - A platform that doesn’t appear to give any indication of any auditing or internal controls. You may want to avoid these platforms, but sometimes these are just because this information is not available easily.
  • Apparent Verification - I was able to dig and locate some sort of claim or indication that they were being audited. Of course, most of these don’t mention who specifically is performing the audit, what is actually being checked, and/or anything about the verification process. In one case, this verification is severely out of date.
  • Full Backing Report - In order to meet these criteria, the platform has to have undergone a process where full backing of customer assets was verified by a third party within the past year. A report needs to be published including the verification process and that the third party has verified full backing (or what level of backing). While these are pretty compelling, it doesn’t stop a dishonest platform from excluding customers, tricking the audit process, or colluding with the third party in various ways.
  • Proof of Reserve - This is a cryptographic process that includes public wallet addresses, signing of transactions, and a public hash list or Merkle tree to allow customers to validate inclusion. Together, these three criteria demonstrate that funds exist on the blockchain, are spendable by the exchange, and fully back crypto assets of all customers who check. Combined with a financial audit, it’s the best we can get. While many misuse the term, no Canadian exchange has ever fully proven reserves.

If Proof of Reserve or another form of verification was standard on all exchanges, people like Gerald Cotten and Dave Smilie wouldn’t have been able to pull off massive fraud, and cases such as Einstein would have been known long before it resulted in insolvency. Supporting exchanges that don’t provide public validation or transparency is supporting fraud. Even if the platform is 100% honest, they are setting a dangerous standard that enables other fraudsters to hide in plain sight.

Dead Platforms/Incidents

FlexCoin - As “the world's first bitcoin bank” that’s “not a true bank”, FlexCoin provides “a central location for all of your bitcoins”. “Bitcoins deposited with flexcoin will be stored on [thei]r secure servers” so you can “send bitcoins to non-technical individual[s] via e-mail”. Unlike blockchain, “flexcoin to flexcoin transfers are free”.

MapleChange - “[S]wift, reliable and to-the-point!” “One of [their] primary concerns is security for [their] customers'' which is why “keys are cryptographically encrypted”. More Canadian than anyone! Excuse me while we hold the door open to our crypto! "[W]ithdraws(sic) are next to instantaneous", "rel[ying] solely on the aspect of swiftness"!

Canadian Bitcoins - Funds stored for convenience in a professional Rogers data center, which has the highest level of courtesy and customer service - always going above and beyond to provide expedient service whenever a request comes in!

CoinTrader/NewNote - A “meticulously engineered Bitcoin Exchange” “focused on security and tak[ing] these risks seriously”. “[Y]ou don’t have to worry”, they have “90+% cold storage” and their “cold storage is fully insured by Xapo”. Plus, as “a registered Canadian corporation” they “leverage the good guys to fight the bad guys”.

Einstein - You can get “your money deposited and withdrawn faster than any other exchange”. As one customer said "With so many hacks and exit scams, it gives me confidence knowing Einstein is backed by hard-working people just like me." Just check the user experience on their subreddit from their "220,000+ satisfied customers".

EZ-BTC - As the world’s “most user-friendly and bespoke crypto currency management platform”, they have “strong security”. “All your coins are kept in cold storage. They’re safe.”. The presence of physical ATMs was one of the strategies to build customer confidence for their promised 9% annual return on stored funds.

QuadrigaCX - Operating since 2013, with “vast cryptocurrency reserves” right up to the end. "Bitcoins that are funded in QuadrigaCX are stored in cold storage, using some of the most secure cryptographic procedures possible." Even today some of the funds remain 100% secure in their cold storage!

If there are any others I missed, let me know!

No Verification Found

BitVo - Whether “Canada's premier cryptocurrency exchange” or merely “on a mission to become Canada’s premier cryptocurrency exchange”, we have to praise BitVo’s security for including “multiple signatures of a select group of trusted individuals” which are “not connected to the exchange platform or a network”. It is unfortunate that such common sense concepts are “proprietary” instead of the standard on all Canadian platforms. While assuring that they operate “on a full-reserve basis” and talking about “transparency”, the proof is lacking and nothing indicates it to have been verified externally or even internally. The withdrawal-based fee structure incentivizes users to keep funds “safe and secure” on the platform - which is “owned and operated by banking and security experts”. The “banking” side shows for sure in these hidden fine-print fees, which go well with transparency.

CoinField - Apparently no longer the "most secure trading platform in Canada" but now instead the “Best Bitcoin & Cryptocurrency Exchange In Canada” - based in Estonia and no longer having a Canadian office. They’re “fully regulated” in 193+ countries, except for the period between October 2019 and June 2020, when they weren’t even registered as an MSB. They offer a huge range of trading pairs except for the ones you need, with high liquidity except for the pairs that don’t have any, and you can withdraw and trade all of your funds as long as you leave a small amount behind at every stage.

CoinSmart - Not sure what "[i]ndustry leading cold storage" is, but luckily it’s “bank level”. No mention of multi-sig. They’re so "accountable to [their] clients, community and to each other" and "committed to being open and honest" that they don’t include any audit. Deposits are easy and withdrawals are fun - like a video game. Advance through each stage to prove your willpower, complete with warnings, SMS verification that doesn’t display errors (but luckily you can change the number to anything at all without further verification), and even an elaborate high-resolution selfie requirement you have to email in. If you can’t complete or don’t feel comfortable sending info via email, your money is held hostage - no big deal at all really.

Coinut - As "the most secure cryptocurrency exchange", they provide “a comprehensive cryptocurrency exchange platform for trading cryptocurrencies”. (Not to be confused with a cryptocurrency exchange platform for trading coconuts.) They’ve been “running securely for about three years” “by storing cryptocurrencies offline” in a single “offline computer”. In addition to not using multi-sig and "not us[ing] USB drives, as the online computer may be infected with virus", they also don’t appear to use audits or any form of public verification.

NDAX - “Canada’s most secure trading platform” to "set the standard for the Canadian cryptocurrency industry". While NDax promotes “segregated accounts” and “95-98% of user funds in an offline, multi-signature wallet”, there’s nothing to indicate backing of assets on the platform. While apparently partnered with a Canadian bank, the bank is not revealed. No audit found but at least there’s a full-page risk disclosure and disclaimer. You can sleep peacefully knowing that they’re legally protected, even “for losses suffer(sic) to you as a result of any defaults of by(sic) insolvency of other Users.” What does that even mean? Apparently, even with their industry-record withdrawal fees, they couldn’t afford a legal team with proper grammar.

Newton - Newton was one of the first to announce third party custody. You should give your funds to Newton, because they’ll give them to Balance, and they’ll do this for free! And “[m]ultinational companies trust” Balance. According to the Balance terms, “the digital assets you purchase via the Platform are not protected by any government or other insurance”. "Prospective clients...will hold the entire liability associated with purchasing a Digital Asset Cache™️ and using [Balance] services, potentially including partial or total loss of capital." "Balance does not represent or guarantee that the Balance Platform will be free from loss, corruption, attack, viruses, interference, hacking, or other security intrusion, and Balance disclaims any liability relating thereto." "No data transmission over the Internet can be guaranteed to be 100% secure, and as a result [they] cannot ensure or warrant the security of any information you transmit to [them]." "You are solely responsible for maintaining the confidentiality and security of your Account." If someone else should “[w]ithdraw the digital assets in your DAC to [thei]r external digital wallets as soon as within the same business day.” "Balance shall not be responsible for any losses arising out of the unauthorized or other improper use of your Account." The security of Balance custodianship comes down to (a) proprietary “HSMs” tested by their team of experts are more secure than hardware wallets tested by thousands of teams of experts around the globe, (b) a standardized and documented system of physical security in facilities accessible to a select number of people is superior to a combination of unique physical security, exclusive signing procedure, and complete locational secrecy that could be employed separately by multiple reasonably competent individuals, and (c) placing your trust in the team of Newton, the team of Balance, and the security of a website is more secure than simply trusting a single team to manage the private keys in an offline multi-sig fashion.

While Balance has an extensive page on security and internal controls, I was unable to locate any audit nor verification that the assets on Newton or custodian Balance are actually fully backed against deposits. From the demo page, we can see that Newton has visibility to see their balances on Balance, so at least Dustin and the team can check diligently and make sure they aren’t taken. Why not give some of that visibility to your customers? Why has Newton, which has been a leader in so many other areas (“commission-free”, working to get the best rates, etc…) not been a leader in putting together any level of public visibility to the backing of customer funds on their platform?

Apparent Verification

CoinBerry - While hard to judge from a few excerpts of what’s likely a multi-page (or even a multi-chapter) policy, it remains to be seen if their new insurance will ever come to use, given that CoinBerry was already using the best practices of offline multi-sig for the storage of all customer funds, a set-up which, to date, has a breach-less record historically. It would also be the first time that insurance has ever paid out in the history of cryptocurrency, and would cover up to $1m of client funds. It would appear that CoinBerry is counting on a structure with multiple wallets to limit losses, which is an interesting strategy, given the number of times that platforms have suffered the simultaneous breach of multiple wallets (Bitfinex, VinDAX, Bithumb, Altsbit, BitPoint, Cryptopia, and just recently KuCoin all had multiple wallets breached all at the same time). Assuming the private keys are properly managed by separate trained people, CoinBerry client funds appear to be stored in what’s essentially a giant cold storage wallet, with all withdrawals handled and verified by multiple people before being approved, which is the most secure setup possible in cryptocurrency.

CoinBerry is also “trusted by Canadian Municipalities”, a deal that enabled “the first payment of property taxes with Bitcoin in Canadian History”. They reportedly also “undergo annual 3rd party financial statement audits”. From records, these appear to be conducted by the firm MNP which is an accounting firm. CoinBerry has not, however, publicly declared themselves to be “fully-backed”, nor have they published any verification on the backing level of funds on the platform. Rather the audits are “secret”. This is concerning given the large referral bonuses paid out by the platform to new customers (including a popular $25 referral bonus for purchasing $50 of bitcoin), multiple issues with withdrawal delays, including one affecting hundreds of customers earlier this year, and the slow increase to their “fair pricing and industry-leading low fees.” Fees have gone from 0.5% to 1%, to a tiny sentence about “adding a margin, or spread, of between 0% and 2% to the rate offered by [thei]r liquidity sources”. Luckily, they “don’t hide fees across your trading experience.” In case you should sign up and find that (up to 2%) rate to be too high, “[a]ccounts requesting a withdrawal of Fiat or Crypto currency in original form, without conducting a trade will be...charged an account maintenance fee calculated as the larger of $25 or 5% of the total amount requested.” You will also need to pay additional “mining fees for crypto withdrawals”, which significantly exceed typical transaction costs and are only mentioned in the fine print of their fees page. CoinBerry has publicly expressed agreement that you should not store funds on cryptocurrency exchanges including their own. Neither their insurance nor world-class security will do anything whatsoever if their platform goes insolvent.

CoinSquare - CoinSquare has had a rough year, most notably with being publicly declared as having inflated trading volume and having to pay multi-million dollar fines. As usual, the Reddit community was already on top of this and apparently, some staff at the company were even open about it. Ironically, one could argue that their dishonest practice did more to stand up to Quadriga than regulators ever did, may have saved thousands of Canadians from losing their funds, and may even have been a key factor in bringing Quadriga down. It remains to be seen what will become of the shell of one of Canada's oldest exchanges. It would be the ultimate in poetic irony if the actions of the OSC to protect CoinSquare investors ultimately destroyed the full value of their investment. If that plays out, I'm sure they will heap praise on the OSC for so publicly and fragrantly shaming CoinSquare for a practice which was similarly employed on other exchanges globally and which they'd already voluntarily ceased months prior to the conclusion of the 6-figure investigation and 7-figure fines.

That said, CoinSquare already had a lack of visibility into their security practices, which they describe as “100% proprietary”. This would imply the team at CoinSquare is smarter than established security standards by experts all around the world at protecting your funds, contradicting previously reported incidents. They describe “SSL and 2FA”, which are more or less standard features of all exchanges. A “95% cold storage” policy is low compared to many other platforms, and it doesn’t appear to be mentioned whether multi-sig is being employed or not. And of course, their apparent regular audits are not public (allegedly by “a national accounting firm whose identity is protected under an NDA"). They’ve routinely described themselves as solvent rather than fully backed.

Kraken - A kraken is “an enormous mythical sea monster”, and likewise Kraken, the exchange, is enormous, the largest and oldest exchange platform in North America. Kraken recently achieved the momentous accomplishment of becoming the first cryptocurrency exchange to be a regulated bank by completing a charter in the state of Wyoming. Kraken calls itself the “most trusted cryptocurrency exchange” and apparently “provides world class financial stability by maintaining full reserves, healthy banking relationships and the highest standards of legal compliance”. While many individual Kraken customers have been hacked, the platform overall never has, which is an impressive record.

Similarities abound further. According to legend, kraken exist off the coast of Norway. According to alleged court papers, Kraken operated illegally in the state of New York. Should you encounter a kraken, you may be best to leave silently. If you should work at the counter for Kraken, you may be legally silenced. One of the former employees for Kraken alleges wrongful dismissal and that the bank accounts of Kraken are actually running millions of dollars short of where they should have been. But don't worry - Kraken’s website features a Proof of Reserve page, stating that “[o]ver the past several weeks, Kraken has successfully developed and completed an industry-leading, independent, cryptographically-verified audit.” But the page was written in 2014 and among the long list of limitations, the process does not enable any validation on the blockchain. Kraken hasn't done any validation or publishing of reserves in 6 years and counting.

NetCoins - Once upon a time, the cofounder of CoinTrader (sound familiar?) decided to found a new exchange - “Canada’s easiest, most trusted way to buy and sell crypto”. As they say on the FAQ, “[t]rading cryptocurrency is completely safe”. Having your own wallet is “entirely up to you! You can certainly keep cryptocurrency, or fiat, or both, on the app.” “Get verified in minutes!” While comforting to know that parent corporation BIGG Digital Assets is audited by Manning Elliott LLP and they have “[r]eal human beings you can get in touch with easily”, this doesn't make up for no visibility whatsoever into how funds are stored or what portions are backed.

Full Backing Report

There are only two exchanges in Canada meeting these criteria.

BitBuy - BitBuy has operated since 2016, and was the very first to get a “Proof of Reserve and Security Audit Report” from third party CipherBlade. Since that time, they’ve also established themselves as the first company to get two separate third party validations, with the second one from Blockchain Intelligence Group. The platform’s initial operation as a non-custodial “Express Trade” model lends additional credibility. Therefore, with now two independent third party reports, BitBuy maintains the title as the most transparent exchange in Canada.

However, “Bitbuy has moved its existing bitcoin holdings over to Knox”. You now have to trust both teams and platforms for the security of your funds. This is described by them as an “industry leading push for best practices”. Insurance is of course “subject to the full policy terms, conditions and exclusions”. And “Bitbuy will be Knox’s first platform partner”. Knox has never done this before for any other platform. Their security model is “a mouthful for most”, but let’s break down their pitch. They have “air-gapped specialized hardware”. So is a standard typical hardware wallet. It’s running “custom policy logic”, which could be a good or a bad thing depending on the logic. Their logic has probably been vetted by a single team of experts, which is a standard shy of most hardware wallet protocols vetted by thousands of experts globally. They use a “dual-control operational model”, which if you look up dual-control, it actually refers to the fact that the functionality of the module is simultaneously performing actions and being monitored”. It allows one to “experiment with the system so as to learn about its behavior and control it better in the future” which you can decide for yourself if that’s a good thing to have or not in the hardware that controls withdrawals of an active exchange platform. There is “offline transaction processing”, which again is a standard feature of a hardware wallet. “Geographically distinct facilities” is a good idea, though easily achieved by not storing all the private keys in the same place. Saying that the facilities “communicate in a closed network” is an interesting concept. How can you know that a network is closed? If the facilities are close together, they can be breached together. If far apart, someone can get in the middle. The network is no longer closed the moment any part of it is breached. I can go on and on and break down every one of their systems if I have to, but instead, I’ll quote their own security advice about “minimizing the attack surface of the entire key lifecycle”. The minimum attack surface for a private key is having an individual generate it secretly and securely using a process which is vetted by hundreds of security experts around the world, and not relying on a third party to have to control anything to do with that key. This is already available from most standard hardware wallets, with experts debating whether other advanced experts can find a way to extract the key with access to extremely sophisticated equipment and physical access to the hardware. The best and most efficient way to mitigate a weak or corruptible party is through multi-sig where all parties have to sign the transaction. Adding intermediary custodians instead means funds are lost when any one of them is breached, and when using the same in-house hardware as Knox does, any vulnerability on that hardware or supply chain can compromise multiple wallets at once.

Now, insurance. The policy isn’t public on its website. It gives high-level features only. What’s astounding is that “collusion” is considered a break-through, which says a lot about the state of third party insurance in the space. I requested an example policy from their team. Their response was that it was “proprietary” and that they only “go over it with serious buyers”. In other words, no one has visibility to the actual policy details of what’s really covered outside of BitBuy or Knox, and neither party has any incentive to present that information objectively. For now, until someone cares to prove me wrong, I’ll quote their own website, “[m]ost policies covering Bitcoin theft and loss fall short and provide a false sense of security”.

One of the issues with the BitBuy validation is that it offers no visibility whatsoever for customers to know if their balances were included in any of their third-party validations. As such, BitBuy could have excluded any number of customers and passed both verifications with flying colours. That's why it isn’t a full Proof of Reserve. Also, they stopped talking to me again. But I still believe that BitBuy is one of the least worst platforms, now with reserves verified by two separate third parties.

ShakePay - Firstly, congratulations. The formerly trustless raccoon has now got a third party validation - a key step forward. The ShakePay platform is incredibly good at marketing, with the most powerful “Shaking Sats” program to literally get thousands of Canadians to think about buying more cryptocurrency every single day, or at least to pay homage to their great raccoon mascot. More recently, ShakePay completed a security assessment provided by CipherTrace, and added further insurance. CipherTrace found that reserves appeared to be fully backed including extensive analysis of the transactions and provided data.

ShakePay could be upfront that they charge a market spread or list the buy and sell prices. Instead, they promote the service as “no fees” and list only one price for bitcoin or ethereum, the only coins they sell. To find the model you have to click through to a separate page. The spread and pricing information is only ever available from within a registered account. ShakePay does not offer any additional trading functionality or coins.

ShakePay states that the “majority of all digital currencies are stored securely offline”. The CipherBlade report found this ratio was at “93% of Bitcoin and 91% of Ethereum” in cold storage at the time of the report, though it “var[ies] periodically to some degree throughout the day”. The report refers to a “multi-signature wallet interface”, which they later call a “service to access its sending and receiving multi-signature wallets”, which apparently also “does not have control over cryptocurrency in the hot wallets”. This part doesn’t exactly make sense, as one would most likely consider “access” to a “sending” function as “control”. Apparently, this “not mentioned” service is “without any known security risks” and there are also “redundancy measures” in place as well. Whatever that means in the context of irreversible transactions is a mystery.

However, the majority of funds are no longer stored with ShakePay but have now been given to an undisclosed “trust company registered under the NYDFS”. The “variety of security protocols” in place here include “address whitelisting”, the only policy they are willing to disclose publicly “for security reasons”. While ShakePay won’t identify the third party, “CipherBlade can confidently conclude that Shakepay controls these cold wallets” even though “they are controlled by [the] cold storage provider” and “the cold storage provider ultimately holds the private keys”. ShakePay does receive “an account statement” “which includes applicable wallet addresses and balances held” and “[d]ata found on the blockchain was also in line with information found on these statements.” It will be interesting to see in one of many “quite unlikely” events what “the cold storage provider’s policy and Shakepay’s own policy” would cover, given that the details of both policies are completely secret. Luckily, “[t]he vast majority of Shakepay customers who purchase cryptocurrency on the Shakepay platform withdraw it promptly thereafter.”

It’s important to note that this report is not a Proof nor an Audit (as originally named). “The reviewer is not a professional accountant, and CipherBlade has not performed a professional financial audit or an audit of internal controls and expresses no assurance on the accounting records of Shakepay.” ShakePay was happy to remove “audit” but they still continue to insist on calling this a “proof”, when it’s not. They claim “Proof of Reserves can have a variety of setups” and they cited Nic Carter’s blog post, which also listed all the criteria for the proof, which they did not meet. In discussion with Nic (who is amazingly open to chat), he’s agreed “what they are doing is not a full PoR” and he “didn’t believe it would be a widely consulted thing - [he] was mostly doing it to encourage custodians to take PoR seriously”. The point of a “proof” and why it’s called a “proof” is because it leaves no doubt. A Proof of Reserve needs to prove the reserves - that funds exist on the blockchain, are spendable by the platform, and fully back the assets of any customer who bothers to check. ShakePay’s does not.

Proof of Reserves

Presently all platforms in Canada have refused to provide visibility to the public blockchain entries backing funds on their platform. They have refused to sign a proof of spendability for any funds they control. All claims and verifications have been against customer lists provided by the platform with no ability for any customers to validate they were included. This is a recipe for more Gerald Cottens and Dave Smillies.

I understand Proof of Reserve is not practical for all platforms. I was able to come up with an alternative that doesn’t require public blockchain visibility, could be implemented today using reputable third parties, and effectively validates all customers are included.

How We Could Have Safe Exchange Platforms In Canada

The first and largest issue has always been a lack of transparency. Far more funds have been lost to fraudulent platforms and wallet services than hacks. Honest platforms need to be giving greater visibility and certainty to their customers to make fraud obvious.

Secondly, no platform employing offline storage and multi-sig has ever been breached. We need to agree on the basic standards of what it takes to keep assets secure and create an environment where best practices are shared instead of hidden between platforms.

And thirdly, third party insurance incentivizes high fees, it limits coverage, and it does everything possible to avoid a payout. We need an organized insurance strategy that is run by platform operators and overseen with the full protection of Canadians in mind.

What’s possible is exciting, but not guaranteed. There are a lot of irreversibly horrible futures which are even more likely if we merely sit back and watch.