Read Blockstack.

Everyone should do Lab 1 for today.

Blockstack's main technical focus is associating names with people. Why is that so important? Why does it make sense for naming to be the key ingredient in a new decentalized Internet (rather than for example storage)?

How does a Blockstack app find a file owned by a user other than the user running the app? How does the app check that it received the correct content?

How does a Blockstack persuade Gaia that it's allowed to write a particular file?

Do Blockstack names carry meaning? What use are they?

Why is it important that Blockstack names be unique, human-readable, and decentralized? Why is providing all three properties hard?

Why does Blockstack use Bitcoin?

What information does Blockstack store in the Bitcoin block-chain?

Presumably Blockstack, like Bitcoin on which it is based, takes tens of minutes before a transaction is known to have succeeded. Does that adversely affect how Blockstack can be used?

Suppose I store my calendar and my e-mail using Blockstack, and access them using decentralized applications. If I want to prevent my calendar app from reading my e-mail, will Blockstack help me? What about if I do want my calendar and e-mail apps to see each other's data?

Suppose there's some information that multiple people want to modify. Does Blockstack support that?

Why does Blockstack charge money (BTC) for names? Who receives the payment?

What's in a zone file? Does each user (or web site, or DApp) have their own zone file? Is a user expected to have a zone file entry for each of the user's files, or perhaps just a single entry pointing to the user's storage provider?

Could a Gaia server return an old version of a data block, correctly signed, and get away with it? If so, is this a serious problem?

How do Blockstack applications know what servers to talk to in order to get at Blockstack-related services such as name lookup and Gaia?

What happens when a user authorizes an app to use the user's Blockstack identity? The app needs to be able to sign data it stores in Gaia; where does the required private key come from?

What private keys are associated with a user, and where do they live?

What does a user do to start using an existing Blockstack identity on a new device? What are the consequences of someone stealing a user's device, and how can the user recover?