HNHacker News
TopNewBestAskShowJobs

muneeb

832 karma · joined November 20, 2007

Co-founder Stacks (YC S14), a Bitcoin L2. Interested in distributed systems and blockchains. Bitcoin class of 2013.

Twitter: @muneeb

Web: http://muneeb.com

submissionscomments
muneeb··on Smart contracts on Bitcoin
I'd argue the inverse.

It's easier to build more complex things on top of simpler primitives than vice versa. So a simpler base layer (say TCP/IP for the internet) opens the doors to more complex things on top (say http or JavaScript).

You don't want a Solidity bug (and there are many) to mess with the supply or ownership of Bitcoin. The limited/simple scripting language is there for a reason. It's easy to add complexity and more functionality at Bitcoin base layer: the decision to not do it is the hard (but in my view the right) choice.

muneeb··on Smart contracts on Bitcoin
Ethereum 2 is very different. It is proof of stake (PoS). This reuses the proof of work of Bitcoin (so very different properties for how hard it is to change blockchain history). Also, PoS has some bootstrapping issues where a new node cannot independently (without trusting other nodes) verify the history of blockchains.

Scalability properties are also very different. Eth2 tried the concepts of sharding between <pick a number> chains. That has issues around added complexity between the shards and contracts needing to execute on shards where other data/logic they need is already available (so gravitational pull towards a mega shard). Stacks has no shards and scales horizontally. FWIW, Eth2 seems to be doing a slow move away from the sharding concept towards layer-2 like scalability as well. They disabled code execution for shards and using them more for data availability in latest iterations.

muneeb··on Smart contracts on Bitcoin
What you are describing is similar to what Stacks 1.0 was i.e., directly on top of the Bitcoin chain -- a virtualchain. Every Stacks 1.0 transaction was a Bitcoin transaction.

The lessons we learned from that deployment for 2+ years is that (a) it doesn't scale that well and (b) it's very hard to modify Bitcoin and get new changes accepted (for good reason), so you end up with very limited scripting.

To fix the two limitations of Stacks 1.0, we worked on Stacks 2.0 which has a separate blockchain (so scalability independent of Bitcoin) where settlements still happen on Bitcoin and, more importantly, a full smart contract language without modifying Bitcoin itself: https://clarity-lang.org

muneeb··on Smart contracts on Bitcoin
The design can be thought of similar to a side chain but it's not really a side chain. It uses a new type of consensus, called Proof of Transfer (PoX). Stacks miners have visibility into both the Bitcoin chain and the Stacks chain. Leader election happens on Bitcoin and winning leader writes blocks on the Stacks chain. Details: https://blockstack.org/pox.pdf
muneeb··on Smart contracts on Bitcoin
Muneeb here, Stacks co-founder. So it does not use Bitcoin as oracle. It uses Bitcoin as a settlement layer. (Oracles like Chainlink can be, and are being, built using Clarity lang for Stacks blockchain itself.)

For using Bitcoin state on Ethereum, you'll need to implement Bitcoin SPV proofs. It's entirely possible but fairly complicated to do that given (a) Ethereum is a separate network that can fork independently from Bitcoin (Clarity contracts on Stacks fork with Bitcoin), and (b) Eth miners have no native visibility into Bitcoin state (Stacks miners have full visibility into Bitcoin state). Possible but more complicated. Further, any asset generation and transfers etc on such ERC20 asset would have nothing to with Bitcoin vs on Stacks all asset generation and transfers etc settle on Bitcoin and are secured by the Bitcoin main blockchain.

muneeb··on Smart contracts on Bitcoin
Good question!

Bitcoin has limited scripting language (Bitcoin script) for security reasons. Having a general smart contract language could open up a larger attack surface area for Bitcoin.

The transaction costs will be low initially as they're a function of network traffic. The main thing here is to decouple scaling of transaction (as miroblocks on Stacks chain) from the scalability of Bitcoin (and Bitcoin is hard/impossible to change).

muneeb··on Smart contracts on Bitcoin
The Clarity smart contracts have direct visibility into Bitcoin state and developers can write logic around it. I do not think the headline implies you are changing Bitcoin to do this (don't think at this point anyone can change Bitcoin in any significant way).
muneeb··on Smart contracts on Bitcoin
99% of Bitcoin remains passively outside of smart contracts. Only about 5B on Ethereum. This can be a fairly large market and we're in early days. More use cases don't need to take anything away from Ethereum!
muneeb··on Smart contracts on Bitcoin
We received some push back for Stacks 1.0 as well! And for similar reasons i.e., you don't want to put a lot of additional data into the Bitcoin blockchain (makes it much harder to scale Bitcoin that way).

This was the primary reason why for Stacks 2.0, a hard design requirement was to make absolutely no changes to Bitcoin and to not put additional data in Bitcoin.

With Stacks thousands of STX transactions result in a single hash on Bitcoin (technically on the order of active miners on Bitcoin), so Stacks transactions automatically settle on Bitcoin every block.

muneeb··on Smart contracts on Bitcoin
The smart contracts part comes with Clarity lang: https://clarity-lang.org/

Clarity contracts have direct visibility into Bitcoin state and can write logic against that.

muneeb··on Smart contracts on Bitcoin
Muneeb here, Stacks co-founder. Great question. You are right that Clarity smart contracts have direct visibility into Bitcoin, so you can write a contract that has logic triggered by pure Bitcoin transactions.

Moving Bitcoin to Stacks is a bit more complicated and there are several ways:

a) Wrapped assets. Tokensoft + Anchorage (custodian) have a solution that they're calling xBTC where a "wrapped Bitcoin" is issued on the Stacks chain. Such wrapped assets exist on other chains like Ethereum as well with one main difference that xBTC is secured by Bitcoin itself.

b) There are more decentralized solutions similar to Keep network, where threshold signatures can be used to move the assets by a group of nodes.

c) The most decentralized way of doing this is by locking your BTC directly on BTC chain, using Clarity to monitor funds, and then having Clarity trigger release of funds on Bitcoin chain. This requires Clarity logic to trigger Bitcoin state changes. This is theoretically possible but at R&D stage currently.

muneeb··on Private client-side-only PWAs are hard, but now Apple made them impossible
Can decentralized (i.e., user owned) storage help here? Instead of keeping data only at user device, it can be backed up in an encrypted and private way.

Gaia is one example: https://github.com/blockstack/gaia (I've worked on Gaia so I'm biased but there are other such decentralized options as well.)

muneeb··on Show HN: I made a privacy-focused online journal
See reply above. Thanks,
muneeb··on Show HN: I made a privacy-focused online journal
The pay outs are in Stacks (STX) tokens. Only the pilot phase was in USD/BTC which came from a developer growth/marketing budget that Blockstack PBC funded.

See this post for details: https://blog.blockstack.org/app-mining-plans-to-pay-blocksta...

Newly minted tokens as incentives have been in use since Bitcoin started 10+ years ago. We are using that concept for developer incentives.

muneeb··on Show HN: I made a privacy-focused online journal
The point is global coordination without going through a big company like Facebook.

Take the Dmails app for example, you can email me there on muneeb.id -- this will not be possible with an offline app.

I hear you on the developer focus for Blockstack. We might start a different brand that is consumer-focused. Right now the best page for consumer info is: https://blockstack.org/try-blockstack

muneeb··on Show HN: I made a privacy-focused online journal
Muneeb from Blockstack here. The Stacks blockchain is needed to anchor user identities in a system that is not controlled by any single company.

The App Mining rewards are incentives for developers to improve their app quality. I'd recommend this research paper to dig deeper in to the game theory behind App Mining: https://blog.blockstack.org/app-mining-game-theory-algorithm...

The source of money is newly minted tokens, just like in Bitcoin the miners operating the nodes and processing transactions get the newly minted tokens.

muneeb··on The Vision for Decentralized Web
Muneeb from Blockstack here.

Dpage can be easily converted to a Desktop app. Most of the app logic is client-side anyway and hosting at a domain is mostly for convenience.

Blockstack's "centralized servers" doesn't really fully capture the technology at play here. The pointers to user data lockers are stored in the Stacks blockchain, and users can host their own private encrypted data lockers where they want. Blockstack PBC does provide a free service to host data lockers, as a way to help bootstrap initial usage.

muneeb··on The Vision for Decentralized Web
Muneeb from Blockstack here.

There was a HN Launch discussion recently that might be relevant here: https://news.ycombinator.com/item?id=20413420

The decentralization comes from (a) open-source GPLv3 code, (b) permissionless blockchain, (c) enabling users to host private data lockers, among other things.

The discussion on decentralization in our recent SEC offering circular -- page 49 and page 69 at https://stackstoken.com/circular -- is also relevant here.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Tokens will be distributed 30 days after close of sale. The sale runs by default for 60 days. See https://stackstoken.com/faq/ for details and the circular https://stackstoken.com/circular is the source of truth.
muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
That's a good test.

I worked on this for free until we could raise venture capital to support the open-source development. Without venture capital, I'd probably be working on it in academia but I think that'd be less impactful given limited resources. Developers have been building apps on Blockstack since 2017, the App Mining program was introduced in late-2018. There is a genuine community of developers who'd work on this for free because they believe in the mission.

Users don't have any strings attached. There is a free username registration service for them (the default method) and the apps on https://app.co/blockstack provide real utlity while hiding blockchain-complexity. I don't think most users even realize that there is any blockchain involved.

Finally, no user is being paid to use any app. The App Mining program for developers is the only component in the ecosystem where any incentives/payments are involved. Apple had developer incentive programs for iOS for example. When launching a new platform you have the chicken & egg problem of users and apps. We're trying to get enough high-quality apps so users can get real utility. The App Mining program stops after the initial years.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
There is no business model behind App Mining payouts for Blockstack. It's a developer incentive program, meant to incentivize developers to build high-quality applications on the network, especially in the initial years.

You can argue that the developers make the Blockstack ecosystem more valuable by spending their time and effort to build apps for it in return for newly minted Stacks tokens. Kind of similar to how Bitcoin mining works where miners provide computing resources to the network and do some "work" and earn newly minted tokens.

Thanks for the Dmail feedback, we'll look into it!

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Understand your skepticism.

"Happens all the time with IPOs" refers to restrictions on significant holders and company affiliates to sell. Which I believe is a good thing.

Blockstack pre-dates Ethereum and is the exact opposite of Ethereum in terms of tech design. This is a regulated token offering which is very different from what Ethereum did. Doing what Ethereum did i.e., "ICO", in my view, is a much easier but legally risky path.

Love what Sovrin is doing. Blockstack pre-dates Sovrin by a couple of years. We've worked on the Decentralized Identity Foundation (DIF) with them.

I don't understand your IPFS comment, can you please elaborate? Gaia provides blockchain-pointers to private data lockers, IPFS is p2p storage. You can actually plugin IPFS as a storage option with Gaia, driver here: https://github.com/blockstack/gaia/pull/129/files

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
If by this you mean tokens that were locked for 1 year under Reg D and then unlock monthly since the launch of the Stacks blockchain in Nov 2018, then yes there is a subset of tokens that are unlocked following the unlocking procedures that other holders also follow.

Union Square Ventures, myself, and my co-founder are one of the largest holders of such tokens. We have restrictions from the SEC on selling these on the open market (given >5% ownership of Blockstack PBC). Restrictions which are also disclosed in the offering circular. Happens all the time with IPOs.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Thanks for pointing this out. From direct text from our FAQ:

"Why were Stacks Tokens valued/sold at $0.00012 prior to the 2017 accredited sale at $0.12? Founders and early employees of Blockstack PBC received tokens at $0.00012 per token in October 2017 based on an independent valuation from Foresight Valuation Group, LLC when the Stacks Token was still in its earliest stage of development and before the publication of the token white paper at the end of that month. This grant was subject to a three-year time lock commencing upon the introduction of the genesis block to the Blockstack network in November 2018, and the nominal price reflected the early, high-risk support of founders and early employees.

Holders of Blockstack's Series A convertible preferred stock who had invested a total of $5.1 million as of late 2016 and funded Blockstack's early growth and development before the decision to create a token, or the drafting or publication of any white papers—were also provided an opportunity to purchase tokens at the $0.00012 per token price. This opportunity to participate at a nominal price was given in return for their early support and in proportion to their equity ownership, and it was based on their reasonable expectation as early investors that they would receive tokens if Blockstack ever decided to create a digital token. These tokens are subject to a three-year time lock, commencing upon the introduction of the genesis block to the Blockstack network in November 2018."

Now more context here:

I purchased my shares in Blockstack PBC in 2013 for $42, as does any other startup founder. Will I get a 23809x return if I sell my shares for 1,000,000? No, I'm earning these by the 5+ years of work and no reasonable person would assume that it's a 23809x return. The grant is "free" or at "$0" and the $42 number (standard practice in startups) is there for a tax cost basis.

Exact same logic applies to founder/employee token grants, as we structured our token grants after equity grants.

We did not sell "discounted tokens" at $0.12. That was the price the market was able to bear in Fall 2017. If you consider that a "Series A" price. A 2.5x multiple for a "Series B" is, again, totally standard and rather at the low end for traditional startups. Same thing applies here.

Finally, we are disclosing all this information so investors can make informed decisions. Not the standard practice in other token offerings. I believe disclosures and transparency is a good thing and that's why we took this approach and worked with regulators.

My one request would be to view this from a "what would it look like in a traditional startup?" angle vs. a "how is this project trying to scam me with a pyramid scheme?" angle. Thank you!

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
See the "Tunable Proofs" discussion in Seciton 2 of the whitepaper 2.0 https://blockstack.org/whitepaper.pdf

Initially, we rely heavily on proof-of-burn when the native hashpower on the network is lower. We're currently looking at memory-hard hash functions for the native PoW part.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Oh the mobile SDKs need a lot of attention and love. We're putting it on our roadmap: https://blockstack.org/roadmap
muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
This is a very good (and interesting!) question.

Regulation A+ is technically an exemption from registration requirements. Although in practice it works closer to a fully registered offering. Just pointing it out because the Stacks tokens are not "registered".

Transfers can take place between users/peers and do not need to be registered. Trading in the US needs to be on a regulated securities exchange while the token is treated as a security. See our FAQ question on exchanges: https://stackstoken.com/faq/

Trading in international jurisdictions depend on appropriate local law.

Finally, this is decentralized open-source technology and Blockstack PBC cannot control activities on the network.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Yep, the filing is already public and available through the SEC Edgar website. See also https://stackstoken.com/circular

Our hope is that the work we've done (and the $1.8M legal and accounting fees that we've paid!) helps other projects as well. That would take some sting out of the legal/accounting costs of doing this :-)

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
Mujhay bhee Pakistani logon sey mil kar achaa lagta haay

(That's Urdu in case anyone is wondering.)

Appreciate your support! Crypto is generally a wild west and we're trying to help mature this industry.

muneeb··on Launch HN: Stacks (YC S14) – The first SEC-qualified crypto token offering
I think that the industry needs to move from infrastructure phase, to developer traction phase, to user traction phase. Not in discrete steps but in general.

By the 2017 "crypto mania" the infrastructure was barely there. Imagine that even a single app/smart-contract on Ethereum could not scale beyond 500K users without choking the entire network. Cryptokitties comes to mind.

Just building infrastructure is not a magic solution. You need to iterate over developer tools, give developers the right tools, have educational resources, raise awareness around why decentralized apps are important etc. That's generally the developer traction phase where I believe Blockstack is now (we've had 170 independent apps/startups built on top -- most in the last 6 months).

With an active community of developers organically building decentralized apps and playing around with tools, you can see a lot of experiments but can still end up with a graveyard of apps that no one uses. That's the user traction phase which I do not think we're in yet for Web 3 / decentralized apps. I remain confident that as the UX of these apps gets better and as security/privacy becomes more and more imp, we'll start seeing "killer apps". Some of these will be "crypto native" meaning they are not just "decentralized X" but they'll have some crypto native functionality that was simply not possible in web 2.0 and the traditional client/server model.

Page 1 of 3Next →