 Hi, I'm Taza Greenwood, a research scientist here at the MIT Media Lab, and I run law.mit.edu, where we research computation and law. And today we did a research update to the Human Dynamics Group. And here's a little preview of what we did. With me is Mark Obland, who demoed ValQ for creating legal entities and electronic transactions. And also Dan Buckner of Microsoft demoed their approach to blockchain-enabled identity and personal data sharing, all as part of our open-source automated loan fund, which itself is part of trying to create, you know, a fully digital credit union and state of trip. So Mark, do you want to introduce yourself and just show us a screen of what you demoed? Yeah, yeah, great. Thanks. I'm Mark Obland. I'm a corporate lawyer coder. I spend almost all of my time writing code. But talking about the automated legal entity, we're going to jump right in. I'm here in ValQ.co. And what we're going to do is we're going to create a company. This is automated as we can make it. Part of what it means to make a company is to create the paper that a secretary of state, in this case Delaware, expects to see. And so a lot of that can be automated. But it also involves creating Microsoft Word documents. So let's create a company now. This company here, let's name it. We're going to call this Sunshine. Okay, and go ahead and submit this. There's a few steps in here that's really just data entry. We're going to go through all of them. I'll just do this first one by myself. I'm in New York. And then what we're going to do is we're going to just jump over to another one that I put together already this morning. So let's go to this one called ValQ MIT Human Dynamics Labs in Inc. Okay, and we're going to jump to the step where we can sign a document. On this step here, what you can see is the information about this incorporation has been merged into a document, very similar to what we started off in the other. And you can see the PDF on the page. There's some other data. There's the data itself. There's a red line against the template. And then we can sign it. So let's remove this signature. We can record a new one. Write my name. Now there's a whole bunch of data that's being created right now. I'm going to go back to that step and we'll look at it. Part of the data around is that there's this header language. We can hash that language so we can know what was there, when it was being signed, what it told us we were signing. There's the PDF version of the document itself. There's the different versions of the data. All of those pieces can be hashed and recorded. Let's look at some of those hashes. If we look at the signature, it's going to give us the hashes of the document. Here's the SHA-256 of that document, the DocX version of it. And then you can see the signature itself, some of the information about the timestamps. You can see the IP address. You can see the user agent. In any case, there's a whole bunch of data that we're creating around it. We're doing it in a format where we can record and reuse that data. Okay, we're not going to finish this one, but what happens from here is then you pay your Delaware fees, you choose your registered agent, and the document is transmitted to Delaware and you get a legal entity. Now that's one transaction for a company, but there's a bunch of other transactions that companies do over their lifetime. Some of them are standardized to an extent where you can create easy tools like this. Others need to be a little bit more ad hoc. So what we've done to deal with those ad hoc transactions and to try to keep the data perspective and the automation perspective is creating a very simple scripting language. So now we have a legal entity and we need to hire somebody. So to hire somebody, we're going to go over and get an offer letter. So I'm going to open this document right now in Word. Let me make sure that we're sharing appropriately. Share again. Let me do my entire screen so you should be able to see. So you can see this now. Okay, so this is just a Word document. It's an offer letter. And actually, you're not screen sharing right now. No, not screen sharing. Okay, that's good. Thank you for the, okay. And instantly, one of the high points at the demo today was the integration with Word for legal documents is terrific. That is, after all, the application that they work out of, what they're comfortable in for these contracts. So the ability to treat that as data and have integrations and workflows where there was a point that people liked. Sorry, I was filling a little time when you got your screen share ago. Back to you. Okay, great. So this is the Microsoft Word document. What this is is an offer letter. It's a simple little contract between an employee and a company that says, hey, you're going to come and join us. Here's your role. Here's your salary. Maybe you have benefits. It might also list stock options. And you might invest in those stock options. But you can see, again, that this is just a Word document. But there is some scripting in here. It's just text. You can see these things. Everything that begins with vfield is a script tag. And those will, writing it this way makes it so a computer can read those and identify those as script tags and create a lot of workflow around a document like this. A form that you can fill out, the ability to merge it, and the ability to collect that data. So let's take, I'm going to close this document and we'll take it, go back to the application, take that same Word document you saw and drop it on the application. We've got a parser now that's going to read the scripting in there and create the form. You'll see that momentarily here. So after some validations have run, all these tags were created here. Created this form that you could fill out. If we were to go to another page and fill out this form, we could get a Microsoft Word document back, all the scripting removed, and the data now in it. Now here's the structure of those tags as well. You can see the nesting relationship of it. And again, the original document. One thing I might show in here is that with the scripting, nested fields are very calculable. It's very easy to write the code. It's not easy to write the code, but the code can easily figure out which fields need to be hidden and which need to be shown. So you can see that here when I click yes on this, the nested fields up here. So we're going to skip some of the steps to putting this document together as a transaction, including mapping the data to a data room. As I've gone through and I've filled out the form, and the document has been merged together and it's a pretty good looking document. This is the PDF version. And I'm on a page where I can sign it. So I'm going to hit the sign. We could record a new signature or we can just hit one of these signatures that we already have recorded. I'm going to hit that signature. Now I'm going to go back over to this completed transaction and reload the page. Now that we've signed that document, I'm going to close that transaction. And now we have the possibility of pushing this transaction to the blockchain. So let me hit this. As I showed you before, every time you deal with a document, it's easy to run various digests of it. Here are the SHA-256. This is the number that's generated by running the document through the algorithm. And if any change were to be made in the document whatsoever, this number would change. So this is the number that we would document in this exact format that existed at this point in time. So to push it in the blockchain, we'll hit this. And we're going to push this in real time. What happens now is that this hash is going to another service, in this case, Tyrion. And Tyrion is going to collect these hashes from its users over 10 minutes, construct them into a Merkle tree, and then record the root of the Merkle tree in the blockchain in a piece of a transaction called OP-Return. It takes a few minutes for this to register. You can see it hasn't happened yet. Let's run over to one that I did earlier today. So here's one that I did this morning. In this case, the SHA-256 was this number right here. And the API service Tyrion gave us back this write proof, which if you combine together with our original hash, you can calculate the Merkle root. And this is the number we want to see in the blockchain. So if I go over to another service, in this case, blockchain.info, and look up that transaction, and go down and look at the output scripts down here. Again, just to be clear, this is a separate service. This is actually reviewing what's in the blockchain. I can see that that number matches. I just searched it on the page and you see it, it found it because it's the same number. I can, this page has been loaded earlier today. You can see earlier today was 20 confirmations. If I reload it now, I bet it's gonna be a bunch more. It's 42 now. So now you've seen sort of a traditional transaction, what it looks like to put that in the blockchain. Given the data we have here, you could also go and reconstruct this, this Merkle tree externally. Document, I could do that here. Download the original document, save it to my desktop. Replace it, show it in a folder. Get the pieces of it. The pieces were right here. So the right proof on the Merkle tree is right here. Go to a validation tool, add a right proof, put that in there. Now then, drag this document on. I know this is a few steps. We should hopefully get the same number. Okay, it looks like this is gonna be the same number. It is, okay, so it matches. The final thing I wanna show, I'm gonna click on this and take you down to this section on best. Sorry, Mark, we lost your signal a little bit with the final thing I wanna show is. Okay, so yeah, the final thing I'm gonna show is, I'm going back into the offer letter that we had started in and I'm gonna look at a couple of the fields in here. So you can see if you decide that there's vesting in this transaction, you can say the initial, you can describe the initial percent that's vested. You can describe if there's a cliff, perhaps that's after one year of service to the company, one year's worth of the shares might best. That might be something like 25% of them. And then after that, over a total of four years, the rest will last. That is reducible to a nice formula. That also means that this piece of the contract, the bigger contract, could be put on a blockchain like Ethereum as a smart contract. And over time, you can tell how many, what percentage of the shares are vested. And perhaps if you wanted to stop the vesting, you would record a second event on the blockchain, indicating that, for example, the employer's no company, the service is terminated and last vesting has stopped. All of that can be reported and time-stamped and be calculated as a smart contract. So that's the gist of what I've got here. Happy to answer any other questions or if there's anything else that you want to discuss, happy to jump in as well. Thanks, Mark. That was really great. And I think people were excited about how you approach legal entity creation and contract and just basically transaction workflow. And that you're already expressing hashes. Well, I should say expressing the documents as data and hashing that data regularly. Makes it not certainly possible to put evidence on the blockchain as you showed we're doing, but also it just demonstrates that your information is computable. And that's huge for the Human Dynamics Group here in the media lab where it's fundamentally a data science group. And so I should take the opportunity to just show the slides that your demo is fundamentally part of. And it's part of a collaboration we're doing to prototype eventually a federally chartered credit union. But initially, on something, a byte that we could actually chew would be an automated loan fund. So I've got the, here we go, the research slides here that demonstrate the overall, I'm gonna call it like the workflow. Wait a second, where are we here? Where is my hangout? Here we go. So let me screen share. Where is the screen share? Boom, okay. That is not what I wanna share. There we go. So here is the, it's a little bit sluggish, but the, you can sort of see it here. This is the prototype automated loan fund workflow that is our target operating reference implementation that we're trying to code to. You'll see here, automated legal entity, Delaware Corp. You've demoed it. Enforceable contracts and transactions, you've demoed it. Under Uniform Electronic Transactions Act and Electronic Signatures and Global National Commerce Act, just under the basic common law of contracts and basic state corporate law. I think what you've demonstrated is over-sufficient and even elegant. The idea of having publicly verifiable evidence recorded on a blockchain is also part of it. And I think you demonstrated that as well. So if you, I don't know, can't quite make up the some diagram, but the right lane is block chain. So we've got a signed contract for a loan on the blockchain. We might do, you know, acknowledgments of each individual payment at the end of the day. Your loan is paid off in full. You've got a discharge of debt or, you know, possibly a default. So we're showing that. And now looking forward, this idea of like self-sourced, valid identity and data is a part of the integration that is being actively worked on and provided by Dan Buckner at Microsoft. So Mark, maybe you could let me know whether this screen share is showing the video in just one second. It's got a nice endless screen of screens within screens. I know, it's mystical. Here we go. There, okay. And let me know if you're getting this audio. Great. And so next up. It's pretty faint, but I'm getting it. I was gonna talk through integrating blockchain and the web for individual identity and personal data ownership. Dan? Great, awesome. So, you know, I'd love to present our view at Microsoft of decentralized blockchain-based identity. Really, I think it's important to think of identity on the blockchain in the way that we're envisioning it in any way, not as just a replacement for what you think of as traditional identity in the world today. Go off, instead of really more about authentication than identity, even though go off and existing protocols do offer some preferences and data storage, they're federated and they're more about logging and socially and doing those sorts of all traversals. So the system that we're building, obviously it's going to do all of those things and it does all those things, but it also is beyond something as simple as off. So really it's sort of foundation for a new class of absence services. To establish a foundation, I think it's important to separate two things. One is identity from an identifier. So an identity is the actual data that makes you yours. It's all the things that people attest about you, self-attest about yourself, the attributes activities, how you relate to the world. So you're saying my favorite color is green and someone else saying yes, you did graduate from the school. Those are all things that make up your identity and that's the data piece. There's a lot of data that makes up you, whereas an identifier is really a shortcut to meaning of who you're talking about. So when I say at Satoshi or www.microsoft.com, what I'm really doing is saying here's a human friendly way that I can refer to an identity, a thing in the world. And it's important to separate them because what they are and where they are rooted, blockchain versus off chain is sort of the distinguishing factor. And so I'll talk about how blockchain applies to our system. Blockchain is interesting for identity because it solves the proof of ownership of these tokens and in the Bitcoin system, tokens are inferred to have value by the market, monetary value. But we, using that system through a partner named BlockStack, who I think has a really great reference implementation of main routing, to hijack that system to embed transactions that normally would be no value with payloads that can register names. So if you think about every transaction on a blockchain as a check, no matter what you put in the line for how much the check is, you still get the same memo. So that memo line is just as big, just as much text in it, whether it's transferring one cent or a million dollars. And what's interesting about that is, you can use that free form space any way you choose. So what BlockStack does is they take that check and they write in some code that essentially reserves a name. Let's say Dan.id or app.fru.app. And then also relates it to both keys that prove that you own or whoever possesses them owns that ID and off-chain locations. So three really important things, registering a name that's an identifier that's easy to relate to. Who owns it by tying it to a pair of keys and then where does it point? And this is a really important thing because under our concept in the BlockStack that really the only thing to get on the blockchain is the identifiers. And once you have identifiers that are linked to keys and point to off-chain, you can do almost everything else by signing pieces of data with those keys. So this is what we see as the whole ecosystem. You know, all the pieces in the blockchain and the system, the first one is the blockchain. It's actually a small part of the ecosystem but very important. And it's used by the name registration indexer to group names. So I might have bill.id, bill.id as keys associated with it and bill.id on the blockchain points at what we want to call an identity container or identity hub. And within these hubs are all the data, the identity that we talked about initially that make you up. So you saying that your favorite color is green, you know, where you went to school, your school with testing to that, driver's license perhaps to Julie signed by the government. That's where your identity data was in this encrypted container with an ACL that meters access to it. So you can, as a user, self-solving this container on your devices in the cloud and be able to meter access to that data so that, you know, if your friend, maybe your friend has access to your songs, but, you know, it doesn't have access to them. So your personal financial documents, whereas your wife or spouse or whatever might have access to everything. So that's what that's used for. And really important is that there's a standard REST API that all these containers, regardless of implementation, can use to communicate over so that we have this interoperable world identity data. Just to give you a quick example of how you would address a container. Every container, it doesn't matter what the URI is, that it's located at that, which the blockchain points to, they all respond over the same RESTful path interface. So in this case, you could see three examples at top. If you were to use the schema.org, or wanted to use the schema.org scheme, I would say a well-known identity, which is an archaic standard already, the ID that you want to address. And then say, you can address data. And they're just using the exact same structure that you're applying to your work. So if you look at, you know, or for files already describing the schemes, we did this for a number of reasons, the biggest one is that we just wanted to be able to say here is a no location for certain data and not have to open the valid. And that's, you know, if you've ever been in a standards world, semantics and nomenclature taxonomies are some of the most fought sort of battlegrounds. And really, you know, we didn't want to, as Microsoft or any of the companies participating in this open source venture that we're trying to open to one world, we just wanted to really get away that you use anyone that made sense of your industry. So some industries like medical, like fire, HL7, not seeing an order. And so that's fine. So you could imagine replacing scheme.org here with fire and obviously the structure that made sense for that medical scheme. And so below you see here is an example of like a payload. So if I had the ability to see Jane.id's playlists, you know, I would make a request to this route signed by my identity to Keith. And what the response would be is all the playlist type objects that come back. And so we think that this is a really pretty awesome way to democratize the transmission and evaluation and presentation of data. So, you know, with this example of playlists, you could write an open source client that only have to be able to consume the user's playlists and do the same sort of fidelity of playing the soft and validated access that any other validation spotify does. So we're not really the pillars of this system. We already talked about one, the global index of ITs. Next is those hardware and software for storing the energy is involved with UX aspects of things. That's never a problem that is, you know, you're always working for better solutions. Obviously, this is a system. So it's going pretty rapidly, which means the key manager will probably say, we have some new ideas on how to do that. We have some partners that are great and perform doctors that help people make this real for them. And then another one is identity agents. So, you know, like I said before, your body has access to a certain part of your body quite often because we have more access. And a lot of those are agents, because of agents very good. From Microsoft, Cortana is one of your agents that has access to your calendar and driving updates and stuff like that. So it's always stoked to what the user wants to commit an agent to see. And then of course that I can discuss already. So really, you know, with this foundation, you should really think of it as these, like on the back, sort of, built on top of that. Sorry, Mark, could you, we lost your, Dan, we lost your feet in the last seconds, can we just repeat? Okay, just repeat this. Yeah, so I really, I would look at this as, you know, a system of identifiers that are linked to containers of semantic data, all self-solvered to the user. And really they're just a foundation in which you build a whole set of apps and services. So you can see on this slide, there's quite a few. But anything from classified sales to IoT devices to property records to the system. One thing I'd like to highlight is the difference between what's on chain and what's off chain. So on the left of this slide, you could see, you know, this is an apartment rental example where Bill and Jane write up a contract. Right now there's a lot of APIs where you take a piece of data and you can hash it and then put that hash in a blockchain. And that proves a couple of things. It proves, like, rough timing that there was some document out there in the world that matches this hash. And it was entered into the record at this time. It doesn't prove who was attached to that document with any real certainty. It doesn't prove, you know, the actual document itself because like you see below, you have to keep that source material off chain somewhere. So it really is just a rough time statement. And then we move to possibly this other way of doing things, which I think is just more efficient and kind of better all the way around where Bill and Jane, they register identities on a blockchain that are linked to cryptography through the keys that are tied to the identities and they can sign really high fidelity metadata and that same rental agreement off chain together as one piece of data with time stamps and signatures and everything else. And then they still store it off chain just like they did before, but they can have, you know, precise time stamps or, you know, atomic time. They can have, you know, signatures that validate who they are and the fact they signed at that exact time. And then they can produce that object at any time to solve that question of what the agreement is about. So same system point here is that you don't flood the chain with stashes, which are of limited value. So just to kind of drive home one example, it's more a consumer use case. We talked about, you know, where data lives to enter. Now let's imagine like you're going to a car, you generally go there and you enter data in your form and that data is transferred to your database, put it in Craigslist DB and from there on, people who want to see or your car after the Craigslist, yeah. We think that there's maybe this new model where you as a person have your container and you put a semantic object in your car inside of an offer's path, which scheme.org has, it's under the thing that the agent offers. And then what happens is you could write out an app, a crawler that has an app, anyone really can and they can scan all of these paths that people choose to publicly expose. For instance, offers probably have to choose to expose. And then form the same app that you might get in the Craigslist, but really none of the data had been entered in Craigslist solely owned by their institution. It kind of breaks down the concept as walled gardens. And we think that that's pretty interesting for any class of applications. So in closing, really the future we believe is isn't just this internet of things like devices, it isn't like open ID for people and websites with the traditional DNS. Really this system can become the substrate for all of those things anymore. And with projections about how proliferated devices are with IoT and connected prices, people, objects. But we think this would grow to be hundreds of times larger than the web today. And it's more efficient, you know, right now the web is basically on HTML and crawl it, you know, you try and find this data for what the agent is trying to express. But it's really, it's all inference, it's very difficult. So for data that an ag enemy is really true in trying to express about themselves or what they're offering, we think that the structured, comparative, reliable data on these containers is a great way to go out there. And so that's basically it. Thanks for the time to present and I hope you got a lot. Okay, here we go. So let's get back to the hangout here and I'll stop that screen share. That is kind of funny when it goes off into infinity, isn't it? So there you go, and it was good. So just to kind of bring the threads together here. Here we go. Mark, are you seeing the? Yeah, I see the swim lane chart. Great, okay. So that really fills out the fourth bullet, self-sourced valid identity and that is identity people are creating for themselves on public open blockchains. And the data store, permission-based, personal data. And so here's some slides that we're backing fundamentally what you showed Mark and I'll just skip across them. Here are Dan slides and they are all available at, I'll go to the last slide, law.mit.edu where I've just embedded them and where I will embed the video that results from this hangout on air, we'll update. The project that we're working on, the MIT part of it that brings these components together is license under MIT license and narrative stuff is narrative materials or license under Creative Commons, attribution license, work out of GitHub for the most part on this project and we have a Slack channel, if you're interested, come to law.mit.edu forward slash contact and give a show. Again, I wanna thank Dan Buckner, Mark Obladen, not present Tommy Lander at the US House who's been just invaluable as a collaborator and he'll be joining us also in January for the IAP, the independent activity period course that we're putting together to really take a deeper look at these systems, these transactions and what the legal basis and legal frameworks are for them, how lawyers can utilize and can assess and analyze transactions that are occurring with these tools. The legal analysis may be a little bit different, it may be easier using data analytics to do legal analysis in some cases. So we'll be putting together some standard terms for defining blockchain and defining some of the substance of transactions using these tools and also learning how to use the tools as a way to create contracts, transactions and then a full test with this loan entity. Doubtless we'll be doing some other things as well. I'll leave it to Tommy to talk about convening legislative and UEDA and eSign dialogue, which will continue from a round table that we worked on together, Mark, Dan and I, Tommy and Digital Chamber of Commerce and others in the US capital. And we're planning to do this IAP course free of charge at MIT. If you're a student, you'll have a course number, you can get to your credit and it will also be online and we'd like to use the opportunity to test out this new curriculum and start to get some feedback on this method of doing professional education and continuing legal education. So with that, I want to thank you again, Dan Buckner and thank you, Mark, very much. She's here in the Media Lab with me and I look forward to seeing all of you online.