Wednesday, August 20, 2014

Reinvestment of Crowdsale Donations (AngelShares AGS Part 2)

Last week I wrote about the AngleShares AGS Campaign.  A 200 day pre-sale where every day 0.25% of the tokens were handed out based on that days bitcoin (BTC) donations.  A similar sale was conducted in what were initially called ProtoShares (PTS), resulting in a 50/50 split between protoshares patrons and bitcoin patrons.  One interesting finding was that the "buy daily from one wallet" purchasing pattern was evident in the transaction structures.

Reinvesting Shares

This week I present what I think is the most relevant finding: individuals who received compensation from the campaign used that compensation to re-buy into AngleShares.  Sometimes one specific payout went entirely into the reinvestment.  I was introduced to this concern by reading this post on while researching the original crowdsales.  This forum is kind of the for AngleShares, ProtoShares, and BitSharesX. You should read the whole thread before or after this blog post.  It's a fun one.

In that thread only one direct re-buy was posted. In my analysis of the blockchain I discovered 5 distinct distributions that resulted in bitcoin being re-donated to the campaign.  There were a lot more transaction paths between the two, but once a transaction chain goes through a tumbler it takes a bit more analysis to prove that either side of the connection could have been possible, and then more analysis to determine how likely that connection is.  And all but these 5 connections didn't pass a simple eyeball test because the excluded paths were tenuously connected by a small BTC transaction interior to a tumbler network.  I also stopped examining connections that were more than 9 transactions deep.  At that point I felt the likelihood they were no longer controlled by the initial receiver was too high to warrant analysis.


The first connected transaction I found was the most obvious.  SynaptiCAD, who according to the spreadsheets were the contractors responsible for a piece of software called Keyhotee, took their March payment and after a couple of months started buying angelshares with it.
Keyhotee 12 Mar 2014 distribution
This graph shows only the first two buys.  There were a total of about 12 single bitcoin buys in this buy daily chain, and about 41BTC remains unspent at the bottom of the chain from their last buy on 6 Jun 2014.  This one is the most directly connected buy.


The four other reinvestments came through a company called Hypertas, which according to the bitsharestalk thread is a company responsible for the payroll and payments for some of the operational expenses.  They have posted a spreadsheet detailing the individual withdraws, which proved invaluable in validating my analysis.

The first connected payment occurred on 24 March 2014.
Angelshares 24 Mar 2014 Distribution Partial Graph
Hypertas controlled and split the bitcoin until a retainer was paid to Stan on 2 May 2014.  Stan then proceeded to reinvest most of the payment.  On 7 May there was a transaction that sent 4 BTC to some other transaction that I am fairly confident was not related to an angelshares buy, but a total of 5.93 BTC was reinvested.

On 11 May a second connected payment started, and it involved two separate accounts according to the spreadsheet.
Angelshares 11 May 2014 Distribution Partial Graph
The left branch starting with the 7f86af transaction was attributed to a "admin retainer".  The branch on the right ultimately was payed out to Stan.  The transactions highlighted in blue include inputs not from this payout.  I'll come back to this later.  Stan also payed out 8.03 from this transaction to another developer working on infrastructure and services for BitSharesX.  Although it's not clear why it came from Stan's coins.

On 31 May a third connected payment started.  This contains the transactions in question in the bitsharestalk forum.
Angleshares 31 May 2014 Distribution partial graph
This graph had two external inputs as well.  The 686d96 transaction had input from what I appears to be a tumbler/mixer of some sort, such as SharedCoin.  The 40ee80 transaction includes about a half a bitcoin from the previous graph, attributable to Stan.  Again this graph shows multiple operations payouts. The left belonging to the admin retainer accout (which has coins mixed from Stan at 40ee80).  The second belongs to Cason, who invests their entire payment over three days.

The final connected transaction discovered is from 24 Jun 2014.
Angleshares 24 Jun 2014 Distribution partial graph
This graph is very simple compared to the previous two.  Stan received a distribution with which he re-invested the entire amount over 7 days.  There were no external inputs or outputs.

It's All Connected

The kicker for all of this, of course, is that it is all connected. If we load all the hypertas graphs together we get one large map of Angelshares buys where the sources come almost exclusively from Angleshares distributions, with two small inputs form a daily buy tree that originated from a tumbler output.  Some of the reinvested buy trees combine BTC from multiple distributions.

Composite Angleshares/Hypertas reinvestment graph
If you read the bitshares thread you will see, after wading through a legal story, metaphor, and a picture of a greek ship, that there is an important public statement form Stan:
As for recycling of AGS, we have said we would not do that.  Period.  We have also said that once we pay employees or vendors for their services, the money is theirs to do with what they please.  It does not surprise us that people working in this industry would want to donate some or all of their earnings to the cause and we have publicly encouraged this from the very beginning. []
These graphs support the claim that it is the employees and vendors were the ones paying for the shares.  Stan did not come out and say that he himself had repurchased in the past and that he expected to repurchase in the future. But it should be noted that the transactions in the forum post were not related to any of Stan's purchases but belongs to Cason.  There is also no indication of how much external bitcoin the employees brought in either (the 0bb534 transaction indicates at least Stan brought in external bitcoin).  There is nothing necessarily illegal or unethical in these behaviors, it can be viewed using your salary to buy stock on the open market for the company you for.  Since this was an unregulated sale there were no requirements for aggressive reporting on purchases like this.


By analyzing the transitions in the bitcoin blockchain and combining that with publicly shared ledgers we were able to validate a claim made on a message board that reinvestment into a public crowd funding campaign was occurring.  The reinvestment appeared to be consistent with claims by the management that employees paying with bitcoin that was their salary or other compensation were responsible for the reinvestment.  One of the reinvesting employees, however, turned out to be the manager/officer making that claim.

There are also two points that need further clarification: what is the admin retainer account, and what happened with the 6b32ef transaction on 1 Jun 2014 where Stan payed for an expense attributed to Hypertas.  These seem benign, but are worthy of explanation from Stan and Hypertas.  [Edited to add: in the comments Stan clarified that the admin retainer goes to his wife for admin tasks performed, and the 6b32ef was Stan paying out of his own pocket while hypertas bitcoin wallet issues were being resolved, and he was later reimbursed.]

For my next post we will dive into college football and follow up on one of the entertaining stories from bitcoin's ride at the top of the market.

Thursday, August 14, 2014

A Different Kind of Crowd Sale: AngleShares AGS Campaign

After last week's post on Ethereum and SwarmCoin I was tipped off by BitSharesHub to another interesting crowd sale: the BitShares AGS Campaign.  There are several facets to this presale, enough for two weeks of content.  This week I will focus on the crowd sale itself.


The structure of the crowdsale itself was very novel.  Strictly speaking you weren't buying anything, but you were making donations.  Based on the donations amount you would receive an appropriate portion of the tokens. I'll leave the legal analysis for the lawyers on that one.  That wasn't the novelty, the novelty was the distribution mechanism as well as the piggybacked BITX sale.

The sales itself resulted in two separate token issuances, one for BitShares AGS and one for BitShares X.  The distinction is quite involved, and their FAQ has all the details.  Shares were sold for both Bitcoin as well as ProtoShares (PTS).  This analysis only deals with the bitcoin side of the equation.

Bitshares has also been very transparent with their use of the donations received.
BitShares BTC Spent
This chart shows the cumulative amount of BTC spent from the donations address.  Each and every one of these downward dips in the chart is explained on a google docs spreadsheet.  The largest one day drop is the result of moving 2,200 BTC into cold storage.  The addresses for these cold storage draws as well as all other expenses are documented on the sheet so the shareholders can easily verify the cold storage is still there and that the other expenses went to the intended addresses for the intended amounts.

The chart of received funds shows a varied level of interest based on what was available for sale.  For the most part, the AGS shares were sold from 1 Jan 2014 (block# 278062 or so) to about 18 Jul 2014 (block# 311410 or so).  BitShares X were sold as part of the same crowd sale, but only up until 28 Feb 2014 (block#288406 or so).  Based on this overlapping offering the donations were front loaded:
BitShares BTC Received 
This chart shows only received bitcoin and does not include any of the spent funds. The bend in the curve occurs almost exactly at the moment the BitShares X tokens were snapshotted for distribution. You will also an uptick in the days leading up to the snapshot, corresponding to the announcement of the cutoff date, and then the buy rate levels off at a rate less than the initial sale period, which it sustains almost until the end.

Compare this to the cumulative coins received for SwarmCoin:

SwarmCoin BTC Received 
About a third of the SwarmCoin sales occurred in the first few blocks of public availability.  There was a slight uptick near the end but nothing like that initial wall of sales.  To me there is a rational explanation for this behavior: there was no distinction made in the SwarmCoin sale between bitcoin spent on the first day or bitcoin spent on the last day, all donations were equal during the public sale. 

The BitShares sale was structurally distinct, they paid out shares on a daily basis.  So a coin spent on day one or day two may have different values.  Based on this structure spending twenty coins on one day of the sale was almost certainly worse share wise than speeding one coin on twenty different days of the sale.  And many traders leveraged this specific "buy daily" strategy.  The would set up a pool to buy with and spend that over a number of days, either until they ran out of money, they lost interest, or the crowd sale ended.  Here is one transaction tree that showed one trader spending a fixed amount of coins from the same address on each day until the address was emptied.
Representative Daily Buy Tree
Many traders used this technique, as there are several of these towers in the transaction graph.  This is one of the shorter trees, and there are several some longer ones. I thought that this was one of the most interesting finding of all, that a particular trading strategy can be demonstrably and conclusively shown from blockchain data.


Usually when you do IPO type offerings you have pick two of the following three characteristics:  the total value raised, the total number of shares released, and the timeframe of the sale.  The SEC makes you attempt to hit the first two within a certain range, and fixes the last one to be a single point in time.  The market almost immediately shows how broken that thinking is, often by rewarding institutional investors. Mostly because one of the few reliable ways to comply with regulations is to engage in a "road show" of these institutional investors so you can establish the parameters and hit them.

Bitshares I feel made a good compromise to this structure by fixing only the total coins released and taking a unique spin on the timeframe of the sale. By allocating shares on a rolling basis the investors can be more sure of the size of their stake without the uncertainty of a long purchase window.  The downside is that when there is a material event that occurs during the sale (in this case the BITX snapshot), the value of the shares can take significant shifts to the downside as well as the upside.

This isn't my only significant finding.  Next week I have something so share that I found in the transaction graphs that is even more interesting than the "buy daily" trading pattern.

Also, if there are any other blockchain "events" you would like me to examine, send me a tip to my email ( or to my twitter account (@Numisight).  Currently I am only equipped to examine the bitcoin blockchain, but a particularly juicy tip may motivate me to improve my tooling.

Tuesday, August 5, 2014

A Tale of Two Bitcoin Presales: Swarm and Ethereum

One is done, and one has passed a major milestone.  One has a lot of bitcoin, and one has a whole lot of bitcoin. But the more interesting differences are under the covers of these two presales.  The two presales I am talking about are Swarm and Ethereum.


Swarm ran it's first phase of the crowd sale from 17 Jun until 20 July.  A second phase was canceled based on feedback from early backers.They accepted payment via bitcoin and counterparty.  I will only be examining the bitcoin donations.

SwarmCoin fundraiser balance over time
One notable fact is that the input address was not created specifically for the fundraiser, either that or other parties were allowed to donate to the fundraiser before it was made generally available.  17 Jun 2014 (UTC) corresponds roughly to block number 306221.  This is where the large spike in donations occurred.  Note that there was a relatively quiet period on the donation address just before.  Donations ended on 20 Jul 2014 and no other donations have been seen.

Swarm coin appears to be either converting their BTC to fiat or storing their coin on an exchange of some sort.  Here is a representative donation graph (the 12GZL7... address is the SwarmCoin BTC exodus address).

Five Representative Swarm Coin purchases
Because the transactions are promptly gathered together into a transaction (usually with other than SwarmCoin addresses) and repackaged into other coins for other users, this indicates to me that some sort of an exchange is being used (although I am not sure which one).  The downside of this arrangement is it hides the real point in time balance of the swarm coin project.  The only people sure of their balance are them and their exchange.  This also shifts the security of the coins to the security of the accounts at the exchange.

Ethereum Phase 1

Ethereum started their crowd sale on 22:00 22 Jul 2014 and will continue through 2 Sep 2014.  The first two weeks were offered at a flat rate, and the remainder of the sale will see a gradual taper in the price.  The taper began on 6 Aug 2014.  This corresponds from blocks about 312027 to  314039.
Ethereum Pre-Sale through 5 Aug
Ethereum has quite a different shape than the swarm coin graph.  First, the balances are stored on the blockchain and are not siphoned off to some off-chain account.  This was done in the name of transparency.  Second, the exodus address had a whole lot less activity prior tot he sale.  Likely limited to software testing.

We also see that there are two distinct interest waves instead of one.  An initial wave over the first day or two spiked the sale up over 6000 coins.  A second, more produced wave near the ending of the flat sale occurred accouting for nearly half the crowd sale to date.

The transactions are all fairly boring.

The actual purchase transaction is in blue, with the two orange transactions belonging to the wallet the purchase came from.  The yellow transaction is done by ethereum.  One hundred bits are stored off into a constantly changing address and the balance is placed into the exedous address.  I am not sure why they set it up this way at this point.  The scripts on either side don't show any strangeness and are quite typical.  Perhaps we will see later or they are creating a pile of dust bunny coins to pay transaction fees with.

Since the balance is stored on blockchain the Ethereum crew is using an underused security feature of bitcoin: Multisig addresses.  The exodus address is 36PrZ1KHYMpqSyAQXSG8VwbUiq2EogxLo2, where the leading 3 means it is a pay to script hash address.  Because it is pay to script has the script needs to provide the script only at redemption time we don't know how secure the keys are.  To pay to one of these address we only need to know the address, not the content of the script that it pays out to.  Generally speaking these are multi-sig addresses, but they don't need to be.  For all we know the address is a pay to bearer script.

So until we see a coin cashed out of the 36PrZ address we won't know what the script is. Fortunately for us one such transaction has already been done in block 311815.  [I have yet to see a block explorer that decodes this properly, I will update that link to the first one who does]. From the script we can see that it is a 3 of 4 signature address, and I believe that the addresses are 14E2JwZLCEpKnjPuMsMciGLfBZ6no23skT, 159Hhu9oi9ti1X8fU8JN1SQAt7DVA8PgFR, 1LfztD3YYFrn3zjw1aQT3cGu3CjjZFq7q3, and 1KxmHFVLbfqWtTNpUQmDJdhhpGmyW8JBDH.  I may be wrong on the addresses, it appears a different (newer?) ECDSA curve is specified in the public key.


I like the way the Ethereum pre-sale is going better than the Swarm pre-sale.  My main reason is that they are keeping the balance on the blockchain where community members can audit it, rater than as some database row in an unknown exchange.  I know there are a lot of privacy advocates out there who want to strip the blockchain of all of the useful auditing abilities.  But there is too much value in a publicly traceable ledger of income and expenses.  Imagine if the Bitcoin Foundation shared publicly or with it's members the addresses of it's wallet.  That would go a long way to instill trust.