Daniel Lehnberg and Michael Cordner, core team members of Grin, discuss the first implementation of the MimbleWimble protocol, named after a tongue-tying curse in Harry Potter. We discuss the many ways in which Grin is similar to Bitcoin: its origin story, its goal to be “digital cash,” as Satoshi’s paper was subtitled, and even its emission schedule. We discuss how Grin is private, how it is lighter weight than the Bitcoin blockchain, and the philosophy behind Grin, which stands in stark contrast to the many ICOs.

For the full show notes, go to http://www.forbes.com/sites/laurashin/2019/04/09/a-nimbler-more-private-version-of-bitcoin/

Thank you to our sponsor!

CipherTrace: http://ciphertrace.com/unchained

Episode links:

Grin: https://grin-tech.org

Grin newsletter: https://grinnews.substack.com

Daniel Lehnberg: https://twitter.com/lehnberg?lang=en

Michael Cordner: https://twitter.com/yeastplume?lang=en

MimbleWimble white paper: https://scalingbitcoin.org/papers/mimblewimble.txt

Grin Intros:

https://github.com/mimblewimble/grin/blob/master/doc/intro.md https://github.com/mimblewimble/grin/blob/master/doc/grin4bitcoiners.md

Circle Research report on MimbleWimble technology:

https://research.circle.com/crypto-reports/mimblewimble

Grin’s monetary policy — visually, easier to see how its similar in effect to Bitcoin’s: https://github.com/mimblewimble/docs/wiki/Monetary-Policy https://www.tokendaily.co/blog/on-grin-mimblewimble-and-monetary-policy

Questions about whether Grin got the incentives right: https://twitter.com/nlw/status/1091319888562532355 https://twitter.com/TusharJain_/status/1091316903346429952

Tracking YeastPlume’s funding: https://grin-tech.org/yeastplume

Ignotus Peverell post noting his disappointment in funding for YeastPlume: https://www.grin-forum.org/t/solved-early-disappointments/3682

Interview with Ignotus Peverell: https://breakermag.com/grin-founder-ignotus-peverell-on-life-after-launch-and-the-path-forward/

Conversation with Grin developers: https://medium.com/@BHEXOfficial/bhex-original-ignotus-grin-as-bitcoins-younger-more-nimble-brother-612efadd0478

Transcript

Laura Shin:

Hi, everyone. Welcome to Unchained, your no hype resource for all things crypto. I’m your host, Laura Shin. A bit of news, Unchained is now on YouTube. You can find the most recent episodes there every week on the Unchained podcast channel and we’ll soon be getting the full archive up. Also, if you’re not yet subscribed to my weekly newsletter go now to unchainedpodcast.com to sign up.

CipherTrace:

Within months, cryptocurrency anti-money laundering regulations go global. Are you ready? Avoid stiff penalties or blacklisting by deploying effective anti-money laundering tools for exchanges and crypto businesses—the same tools used by regulators. Ciphertrace is securing the crypto economy

Laura Shin:

My guests today are Daniel Lehnberg and Michael Cordner, core team members of Grin. Welcome, Daniel and Michael.

Daniel Lehnberg:

Hi, Laura.

Michael Cordner:

Hi, how are you?

Laura Shin:

Daniel, why don’t we start with you. Tell the story of MimbleWimble, the technology that spawned Grin. For listeners who don’t know the tale, like Bitcoin’s origine story it has a mystery at its core that makes the technology even more intriguing.

Daniel Lehnberg:

Sure. So, MimbleWimble is privacy enhancing and scalable protocol for a blockchain. Its name comes from the tongue-tying curse in Harry Potter that prevents afflicted from spilling secrets. It was originally proposed in 2016 by a pseudonymous person called Tom Elvis Jedusor which is the French equivalent of Lord Voldemort. It’s from the Harry Potter series and it was shared as a text file on the bitcoin wizards IRC room through TOR link. The link to the paper was dropped there and then this person disappeared and we haven’t heard from them again.

Laura Shin:

And Michael, why don’t you tell how that led to the development of Grin.

Michael Cordner:

Sure.  Well, I mean as Daniel has said that paper was dropped and then a few months later at around, say it was around December of 2016, someone again appeared on the same channel by the name of Ignotus Peverell, who was another character in the Harry Potter series who was I think he stole the invisibility cloak from Death. I think that’s the reference there and he said he had put together a new implementation of the MimbleWimble protocol and it was called Grin and he had the source kind of uploaded and ready to go and then the project kind of took off from there.

Laura Shin:

Wow. Whoever would have thought? Well, I’m sure JK Rowling never would have thought that her creation would be used in this manner but I do think the names and the technology do go well together. So, why don’t you guys describe what Grin is or is trying to be.

Daniel Lehnberg:

Okay. Sure. Well, I mean Grin’s main goal is to be better money and what it is it also bills itself kind of on our home page as a lightweight implementation of the MimbleWimble protocol. So, even though I mean Grin is an entire blockchain in itself and then on top of just the core kind of the MimbleWimble protocol there are all sorts of decisions and things that have to go into the building of the working blockchain, but it aims to be very, very kind of light and as kind of nonprescriptive as possible as to how it deals with those two, as to what it is basically.

Michael Cordner:

So, one of the big important points of the MimbleWimble protocol is that it allows you to very fine transactions being valid without having to store the entire history of the blockchain, unlike previous methods and protocols of blockchain. It builds on previous research. A lot of it is made by Gregory Maxwell in confidential transactions one way, aggregated signatures, CoinJoin and a new thing called cut-through, and it basically allows you to store much less data on the chain and in general much less information. So in MimbleWimble there are no amounts that you don’t need to have addresses stored on the chain and instead what you keep on chain is a very minimal set of data which is basically a set of inputs and a set of outputs that are cryptographically blinded you could say and don’t really mean a lot to anyone aside from the people who are actually involved in the transaction. This allows for much easier synching, faster synching and less size of the blockchain itself as well, which is why you’re getting these scalable properties.

Laura Shin:

Yeah. When I was learning about this there was something really sort of mind blowing. It’s just like if you really understand bitcoin then, yeah, you’re like, oh, this is kind of a better way to do it, you know, just with that level of efficiency or kind of the lightweight- ness of the blockchain. It just feels like this was built by somebody who deeply understands bitcoin and kind of what the problems are with it. So, what about the technology captured your imagination? Why out of all the different crypto projects did you decide to work on this one?

Michael Cordner:

Okay. Well when I first came across the project it was a few months after it had been put out there and I was kind of…the technologies that kind of go into any blockchain development and cryptography, applied cryptography rather, it’s kind of a lot of stuff that really kind of that I like doing just kind of from a technical perspective, kind of I enjoy coding, I enjoy working on it, and obviously cryptocurrencies are interesting and I was kind of looking around for one of them to join but I didn’t really see anything out there that was kind of I thought would be worth joining at the time, not because the projects themselves aren’t worth joining anymore but rather because maybe they’re too far along and there’s not much I can add to it. Like I couldn’t see myself adding anything to Bitcoin itself at this stage. Other projects out there maybe kind of a good clone of

Bitcoin with the change here and there but nothing really substantial, but when I came across Grin and MimbleWimble it was kind of clear to me that this is something really new and something that really had a lot of potential. So that’s kind of why I decided to join it and start getting involved in it.

Daniel Lehnberg:

And on my end I’d been following the crypto space since…well, I heard about bitcoin maybe in 2011, dismissed it, bought first bitcoin in 2013 but was always on the sidelines and kind of monitoring and paying attention, reading, catching up on projects. Made it through 2017 and all the craziness there and there weren’t really any projects that were appealing or speaking to me, instead I was kind of happy being on the sidelines. And then about a year ago I found out about this project and about MimbleWimble and I basically fell down the rabbit hole and just couldn’t stop researching it and I found this…you know, there were some presentations about the MimbleWimble protocol and that led me to Grin and I started lurking and reading up on the project itself and seeing these developers and development community that was very open, was very focused on building and had no intentions of making money from it or profiteering from it and were purely in it for the technology. In early 2018 that felt borderline crazy and also like a complete breath of fresh air. That was really appealing to me and really encouraged me to get involved in the project.

And at the same time as well I was doing some research for my day job back then about bitcoin transactions and the regulatory requirements around that in accepting and receiving bitcoin deposits and withdrawals. It was pretty much at the same time and it had like a profound impact on why I chose to go into Grin was that you would see these guidances from regulators telling companies that in order for you to accept payments from customers you need to have the deposits as they come in go through an analysis tool, so like a third-party KYC analysis tool like some of the well-known actors in the space and based on the score you can then choose to accept the deposits or otherwise you have to refund it and return it back from where it came from, and this was just mind blowing for me because essentially what this means is that you’re establishing credit, it’s almost like a credit score but it’s about score of how good your money is and that made me think a lot about fungibility and why it’s very important to have fungibility on the base, the protocol in order for companies to be able to transact in a way that doesn’t create a huge amount of friction.

Laura Shin:

Yeah. In a way it’s like of course obviously we do know that when there are crimes that happen with money then often the people who transact with each other are potentially both engaging in something illicit and yet on the other hand you could also be the recipient of funds that were involved in illicit transaction and have no idea. So, but I actually wanted to go back and ask you to expand a little bit more on the philosophy of Grin when you were talking about how it was a breath of fresh air and stuff like that because I do agree that there is something pretty different and striking really about Grin’s approach. Yeah. I want to kind of pull out more of what differentiates Grin from some of the other recent projects.  

Daniel Lehnberg:

Sure. So Grin’s main net was launched on January 15 of this year and before that it had been in development for about two and a half years, and from the get-go it’s been done as a completely open source project driven by the community, funded by the community as well. Any development funding we see this as being based on donations. There’s been no ICO, there’s no premine. There’s no dev tax. There’s no anything essentially that allocates funds through the protocol layer to the development team. Instead it was fairly launched, meaning that anybody who wanted could mine it. It’s a proof-of-work mined coin and it’s open for anybody to use and there is no incentives or no special circumstances that benefit early adopters or early contributors more than anybody else.

Laura Shin:

Yeah. We’re going to talk more about that because I think I do see how it’s inspiring and yet I also think it has led to some hurdles I guess I would say that you guys have faced, but one other thing I wanted to expound upon a little bit was the comparison of Grin to Bitcoin, and we talked about kind of some of the similarities and also some of the differences but one thing also that’s kind of different is that they seem to have different goals. Bitcoin is now being thought of as a store of value while Grin is aiming to become a medium of exchange. Why did the project decide upon that goal?

Daniel Lehnberg:

Okay. Well, I think a lot of this refers back to our emission schedule. When we start comparing Grid and MimbleWimble we have to be a little bit mindful of…sorry, when we’re comparing Grid and Bitcoin we need to be a little bit mindful that Bitcoin was launched 10 years ago and was a completely new technology at the time. So some of kind of its original purposes may not have been what it turned out to be. So, I mean the paper itself stated that Bitcoin was supposed to be digital cash. Since it became clear that the emissions or the very limited emissions schedule that leads to a good amount of deflation. The story has since been change. Now it’s a store of value. In our case in Grin we very much would like, as Bitcoin was originally meant to do, we would like Grin to be used as a medium exchange as opposed to a store of value which is why we’ve decided on a kind of a very simple emissions schedule as in one Grin per second, 60 Grins per block, basically forever instead of having a very limited schedule.

Laura Shin:

So, this is something I wanted to ask about. So, obviously the emissions schedules seem different on the surface because Bitcoin has the 21 million bitcoin cap which incentivizes people to get a piece early like a bitcoin or a fraction of the bitcoin and hold onto that and that would then drive up the value of all the bitcoins. So Grin’s approach is different because there is no cap but there is this consistent inflation in perpetuity of one Grin per second but the thing is that they have the same outcome, like overtime Grin’s emission rate will have the same effect of the block reward halvings in Bitcoin, and what I mean by that is in Bitcoin the inflation was high in the early years. There were 50 new bitcoins every 10 minutes and that’s when the circulating supply was low and it dropped to 25 and then it’s about 12.5, soon it’ll be 6.25, and then even though in Grin there are no halvings the emission rate by staying constant starts out as a high percentage of circulating supply and then eventually just becomes this smaller and smaller percentage over decades which basically results in it eventually being somewhat negligible. So, in that sense that’s how I’m confused, like how can Grin go after this medium of exchange goal and try to get people to use it and I even saw in your documentation that you believe that this monetary policy will discourage hoarding but I don’t understand how that will happen if the effect of the monetary policies seems to me at least to be the same. Maybe there’s just something I don’t understand.

Michael Cordner:

No. I think you’re right and I think that’s a fair point. I mean it’s not so much that there’s a halving or there’s a limited number. It’s that the inflation rate is predictable and so we know how many Grins there are in circulation now, we can point to 30 years from now and say we know how many there are going to be in that. So that’s really what we think the important thing is here. You know, you’re right. The inflation rate approaches zero basically so you get to point where you might as well not be mixing anymore Grins because there’s basically no appreciable inflation going on after a while, but to be honest I’ve got to kind of go around saying that the choices that Grin is making in this regard are very conservative and this is absolutely as far as I know the first major coin to do this as in to not to have a halving and not to have a limited emissions schedule. So, I don’t think we could have gone out there and created an inflation schedule. I mean kind of at this point in cryptocurrency development even what we’re doing now is a very, very radical approach and we hear all sorts about it everywhere we go.

Daniel Lehnberg:

Yeah. I was about to say it’s great that you point it out, Laura, and it really is a conservative approach and personally I would have loved to have more inflation because we were the kind of questions I was asking myself as well when I got involved, but the amount of…I think like the comments, the commentary on the sidelines and from people kind of approaching the project I think the narrative has a big role to play here and when Grin’s emission schedule is ‘unlimited’ it has a lot of effect on people’s minds and how they approach the coin. We’ve seen that just in the comments. I’m not sure that’s going to last and it’s going to maintain itself but it’s very much I think has this effect of thinking that, all right, Grin is not going to be worth much more. Everybody is going to think, oh, it’s doomed, you know, the value is going to go down so much, which is great in my opinion and if you try to build an electronic cash-like functionality because then people are not going to think twice about spending it which is really what’s important in order to drive adoption.

And I would have loved to see like over time much more aggressive inflation but I think as Michael was pointing at this was already a very radical step apparently in the space and I think at least we’re going the right direction. And to be fair also to point out I don’t think it would have been possible to have this if it wasn’t for the success of Bitcoin, right. In a way we’re standing on the shoulders of Bitcoin having proven the concept of a cryptocurrency to some degree and I don’t think it would have been possible with unlimited emission back in 2009 but because of Bitcoin we can now take it one step further and say, all right, this is an unlimited emission still very conservative.

Laura Shin:

Well, one other thing that I was wondering though is if you…so essentially as I pointed out, the inflation rate or the emission at least, yeah, you can push this narrative that it’s going to be different from Bitcoin but like I said in effect it is pretty much the same, but the other thing is so with Grin unlike with Bitcoin…well, no. Actually in this regard I guess they’re sort of similar because somebody needs a Bitcoin address, but anyway, to send somebody Grin they have to agree to accept it but like who’s going to want to accept a new currency if the narrative is that it’s going to quickly depreciate? So in that regard like how do you plan if your goal is to get medium of exchange then how are you going to do that and is there some plan to get stores to accept Grin, or like how are you going to, yeah, make this medium of exchange goal happen?

Daniel Lehnberg:

Sure. I think it’s very early days in the project’s life cycle at this stage where Grin is only a few months old, so this is something that is going to have to take some time to grow and mature as the ecosystem evolves. There are right now I would say the kind of the main use cases are buying Grins and putting them in a wallet, right, or you mine Grins and you have a mining pool and you cash out from the mining pool and either to an exchange or you put it back into your wallet. I think those use cases are going to be dominating for a while now. Over time though because there are more Grins minted every day, every second there’s a new Grin put out in circulation, there’s going to be a lot of users holding a lot of Grin and some businesses are going to find that attractive in terms of speaking to like an audience where they can sell products to specifically catering to us because they accept Grin. That’s one way of starting to get some early adoption.

Another way that will happen over time once there’s a big enough user base or even the other way around it could also be, is for businesses and individuals who have needs to transact privately, right, and this will drive adoption and in my opinion it doesn’t matter much whether there is a depreciating pressure on the Grin assets themselves if you’re able to transact with them and then easily cash in or out to another currency like Bitcoin for example.   

Laura Shin:

Yeah. So I  guess we’ll see because obviously Bitcoin has the most traction out of any coin and so that could simply be the main selling point is in order to use this for transactions is that it’s like Bitcoin but private.

Michael Cordner:

Yeah. Absolutely. Sorry. I was just pointing out that you could say it’s like Bitcoin but like private but I mean we do have some technologies coming out like for instance the ability to do atomic swaps with Bitcoin, which we have. So there is also the use case of using the gridlock chain as kind of a way to further privatize Bitcoin transactions as in someone does a transaction in Bitcoin then does an atomic swap with Grin and then a swap back and then there’s a greater level of privacy there.

Laura Shin:

Yeah. So let’s actually talk more about the privacy features of Grin. What are the different ways that the protocol enables privacy?

Michael Cordner:

Okay. Sure. Well there’s a few different things. First off amounts on the blockchain are completely obfuscated. Transaction structure by the time it gets to the blockchain is obfuscated or compressed and I mean you can try this now. If you look at a Grin blockchain explorer and you look at the data that’s in each block there’s basically nothing there identifying it. It basically looks like random data and that’s down to kind of the mathematical trickery that happens with MimbleWimble. So instead of having one transaction, one signature per output you kind of have everything kind of put together amalgamated into kind of one very compact block, so to speak.

Laura Shin:

And why don’t you talk also a little bit about like CoinJoin, confidential transactions, the Dandelion Protocol, some of the other features.

Michael Cordner:

Yeah. Sure. So I mean the dandelion protocol itself, I mean that’s not specific to MimbleWimble in particular. That’s something that’s kind of on top and what that does is it’s meant to hide the transaction graph. So, if I’m say a three-letter agency and I’m able to monitor a good portion of the network I can see where transactions might occur… transaction was suddenly broadcast to all its peers I could potentially get a good idea of what machine that transaction came from. So dandelion attempts to obfuscate that a bit. So when a node receives a transaction it doesn’t broadcast to all its peers but it will send it off another node which will send it off to another node at random and that’s called the stem phase which is why it’s called dandelion. So, one node to another node to another node and then randomly at some point one of the nodes will say right and we’ll have the fluff phase where that particular node will broadcast the transaction to all its known peers. So by doing that you’ve obfuscated the path. If you get a transaction, you’re a node, if you get a transaction that’s not necessarily obvious where it came from and that’s what dandelion is supposed to do.

Other features, CoinJoin is kind of built into it. CoinJoin and Bitcoin is a bit different but we kind of use the term a little bit just kind of more for clarity of explanation. What happens is because in a MimbleWimble transaction it’s not about signing individual outputs. It’s about putting all of the inputs and outputs in a single transaction together and making sure they sum to zero, right. So if you can do that you have a node show something else it’s cut cut-through, which we talked about where we kind of touched on a bit earlier. So if all your inputs and outputs in a transaction equal zero, most assuredly you can start cutting out some of these outputs kind of on either side of the equation. So, I could potentially do a transaction that involves certain inputs and then without any confirmation do another one and another one, and I can cut out the transactions that happens in the middle and that’s the notion of cut-through, and again, that goes towards adding some privacy.

Laura Shin:

And that’s like if I send you a payment and let’s say it’s for 10 Grin and then part of the inputs that were used…well actually, so how would this work? So, okay. So let’s say that I send you 10 Grin and then you turn around and you send 10 Grin to Daniel. Then essentially what will happen is the cut-through will make it look like I just sent 10 to Daniel directly. Is that right?

Michael Cordner:

Yeah. It will cut out the middle ones as you say, and again, we say look like it. There’s nothing that appears in the chain that identifies you or ties you to a particular address, so it just gives you an extra layer of kind of obfuscation.

Daniel Lehnberg:

Yeah. And we should say that there are no addresses even and the only thing that are on the chain are these outputs and inputs. Some linkability is possible to do there because one output and one transaction is then being used as an input in a future transaction but it makes it much harder to build up a valid transaction graph and especially like monitoring the network if you’re an analysis firm, but it’s not perfect in that we have still a long way to go and we’re kind of constantly looking to make improvements and don’t feel like we’re finished in terms of obfuscating data and making the chain more private.

Laura Shin:

Yeah, its probably a cat and mouse type thing.

Michael Cordner:

Yeah. And I think already we’re well on our way given what we’re doing already as described in the fact that it’s enabled by default for everybody on the chain. So a big part of privacy is hiding in crowds and amongst your peers and because this is enabled by default on the core protocol anybody that is using Grin is essentially making it harder for privacy to be leaked.

Laura Shin:

We’re going to talk more about this concept of having no addresses in Grin in a moment but first a quick word from our fabulous sponsors.

 

Cipher Trace

Within months, cryptocurrency anti-money laundering regulations go global. Are you ready? Avoid stiff penalties or blacklisting by deploying effective anti-money laundering tools for exchanges and crypto businesses—the same tools used by regulators. Ciphertrace is securing the crypto economy Face it, regulations can stall or kill a fast-moving crypto business. New financial action task force and european union cryptocurrency AML laws are coming soon. You could be hit with stiff fines or blacklisted—no matter where your servers are in the world. Prepare now. Deploy the same powerful CipherTrace tools used by regulators. protect your assets, streamline your compliance programs and keep your exchange or crypto business out of the regulators crosshairs. Learn how effective anti-money laundering tools help keep your crypto businesses safe and trusted. Learn more at www.ciphertrace.com/unchained.  CipherTrace is securing the crypto economy.

 

Laura Shin:

Back to my conversation about Grin with Daniel and Michael. So as you mentioned there are no addresses in Grin. This is yet another reason I was so fascinated by this technology. So, how do people send each other money then? How do I send Grin to somebody if I don’t have an address or addresses that I call my own?

Michael Cordner:

Okay. So, you’re right. There are no addresses in Grin. All you have basically is a wallet which is essentially a private key or a system for generating private keys that give you permission to spend outputs that are on the chain. So in order to build a transaction there’s an interactive element in the protocol, as in I have to send some data over to the person I’m transacting with who has to do something to it and then send it back and then post it to the chain. So, from a cryptographic standpoint it’s known as an interactive protocol as in two parties have to transact with or interact with each other rather in order to create the transaction.    

Daniel Lehnberg:

And the key kind of part of that then means that this has to happen through some communications channel but it could be any communications channel that the sender and the receiver chooses to use. It could be a private chat. It could be written message. It could be any form of communication that allows the sender to interact with the receiver once and then the receiver to send information back to the sender, and that’s it, and then that can be finalized and broadcasted in the chain.

Laura Shin:

Yeah. This was another thing that I thought was so interesting. Like there’s something about this architecture that reminds me a little bit of email in the sense that the protocol makes the transaction possible but then there are many ways you could execute it. So, like with email you could use your own email server or you could use Gmail, and so for Grin what are the different ways in which people can execute Grin transactions?

Michael Cordner:

Oh, okay. Well just a little bit of technical explanation. The absolutely simplest way to send someone a transaction in the core, just kind of on the MimbleWimble protocol itself, is you send them a transaction or partial transaction and this would contain some private keys that are needed in order to spend the output and the other core person puts that together with theirs and creates a transaction. So that’s the simplest way to do it but that obviously involves the center revealing private keys which causes also some other problems so we don’t do that. So in Grin itself we have something on top of that for making a transaction and it’s using Schnorr signatures and it requires one back and forth. So from say the sender to the receiver and back in order for either party to build up a Schnorr signature so we can put together kind of the final signature without any one party having to reveal the keys to anybody else.

So from a practical standpoint what comes out of that is the shortest way to form a transaction is from sender to receiver and back to sender, and already kind of within the core of software that we have there’s a few ways of doing that. So, obviously the kind of most maybe intuitive way of doing this would be via http. So somebody runs a listener on their wallet and it’s listening for senders to send money to the wallet directly. So that’s an http listener. The sender will send an http request and then the response will contain the rest of the info to create the signature and then the sender can create the final transaction and post that to the chain.  We also have a method of doing that via emails so you can send a file to somebody. So in your wallet you generate your send file, you send that to the recipient and at their leisure they receive it, import it so to speak into the wallet and send the result back to the sender to finalize it and put it onto the chain, and again, the actual number of ways you can do this from a technology standpoint are infinite. We have an experimental key base adaptor so single key base users can send to other key base users on the system.

So, yeah. I mean we’ll probably talk a bit more about it later with what we’re doing to facilitate these kinds of transactions because our approach is like I said, we’re just trying to be nonprescriptive so instead of saying providing one way of doing the transaction we want to try to provide the tools to enable the community to come up with the best or most appropriate ways to perform this transaction.

Laura Shin:

And isn’t there a way to do it with paper as well?

Michael Cordner:

You could if you could write everything down on a piece of paper and send it to somebody and they can type it all back in, but yeah, absolutely. You could meet someone at the dark alley with a wad of paper and say, here’s your Grins.

Daniel Lehnberg:

And my part of the team I’m involved with we’ve also developed a system called Grinbox which allows you to…it’s essentially like an inbox for your Grins. It’s funny that you use the email analogy before, Laura. So everybody gets an address but the address is not stored on chain or anything. It’s derived from your private seed and then you can exchange messages through a relay of servers that are federated just like email and all these messages are entered and then encrypted so that only the sender and the receiver can actually be privy to the information of the slates, but it’s essentially an example of how we envisage layer two solutions to deliver different solutions on the problem of exchanging message information and building these transactions rather than on the core protocol layer saying all right, this is the one way to best do this. Instead it’s encourage that many different approaches are experimented with and kind of the one that works best is going to be the one that gets a lot of usage.

Laura Shin:

And then one other thing that I was just thinking about was with Bitcoin a lot of people have said that you could do kind of like fundraising for disaster recovery and stuff like that, you know, people could publicize their bitcoin address and then people could just push that out but is that like earlier, Michael, when you were talking about how you could use http that’s always just listening, is that a way that, that kind of crowdfunding could happen as well using Grin?

Michael Cordner:

Yeah. Absolutely. As a matter of fact we do have an example of that going for our own fundraising efforts. I believe there’s an http address that can anyone can send Grins to with their wallets.

Laura Shin:

And then for this roundtrip communication that needs to occur to make a transaction happen, obviously we know that ransomware has been a huge trend with Bitcoin where they hijack your computer or whatever and demand you pay them in bitcoin. Does the setup of Grin make that any either easier or harder, or I’m not sure how that would effect that trend?

Michael Cordner:

That’s a good question. That’s not really something I’ve thought about. I mean the people that use Bitcoin’s ransomware are not necessarily the cleverest people in the world because using Bitcoin leaves a massive trail behind as to where you are. I’d say the minute someone tries to actually spend that bitcoin there would be people all over them. So, yeah. I’m not really sure. In a sense if they say here’s my http listener, I mean they could be doing this through TOR as well. So, yeah. It could be quite difficult to track them as well. So, yeah. It’s interesting. It’s not really something I’ve thought about too much.

Laura Shin:

Okay. I guess if they take control of your computer and then initiate the transaction and you want to get the computer back you would need to complete it but then maybe it’s actually worse because then since it’s private the ransomware people will like Grin better than Bitcoin actually. Yeah. I also didn’t know the answer to that when I asked it but just thinking it through right now. All right.

Daniel Lehnberg:

Yeah. I mean there are many use cases for private transactions that are maybe negative but there is also many positive use cases for private transactions and the need for private transactions in general, and it seems like the example that you raised if we established that ransomware is possible today and it’s widely used and it works well with Bitcoin, I don’t think it makes a big difference to the spread of ransomware with the technology like Grin. Maybe they switch to it, maybe not but it seems like they’ve been able to carry out their business regardless today quite well.

Laura Shin:

Yeah. And I know it’s so early in the life of Grin but do you have any sense yet of whether criminals are interested in this form of money because for people who’ve listened to my previous episodes with Fluffy Pony, of Monero and Zooko of Zcash, I did ask them a little bit about how they felt about the fact that their cryptocurrencies did make crimes easier.

Daniel Lehnberg:

I don’t know. I mean it’s kind of like criminals use cash as well and I’m not sure what the Fed thinks about that. I’m sure the Fed is much more focused on kind of the wider economy than specific individual use cases for how cash is being used. I like to think of Grin as quite agnostic in that sense and that protocol itself is not opinionated about use cases. It shouldn’t be. Just like cash doesn’t really care how it’s being used, it’s just functional. And then there might be some individuals or organizations that are using cash in a way that breaks the law and I definitely think governments and regulators should care about that but it’s not up to the transaction method itself to do that.

Laura Shin:

Yeah. So, let’s also now kind of apply this same thinking to just the general uses for the technology. So we’ve been talking about how this protocol or Grin requires this like roundtrip communication to make a transaction happen and in the Bitcoin world or in the crypto world in general a lot of people have talked about how legacy systems are pull technology, meaning you have to hand over your information and then the store or whatever that wants the payment from you has to contact your bank and it requests that money and that pull technology is sort of prone to fraud, and then people have been talking about how Bitcoin is a push technology where you control the money and like cash you decide when the money gets sent out from your address, and of course then puts the burden on users to not lose their private keys. So, in this case where MimbleWimble is like different how do you think it will affect behaviors around money and what kind of financial problems do you think could happen or sort of like the push pull thing, or do you think that it sort of resolves all kinds of issues with that?

Daniel Lehnberg:

I think it actually improves a bit on the model with Bitcoin from a practical perspective of accepting payments from users. Again kind of thinking in the context from like a business one of the problems or challenges I should say with accepting Bitcoin is that users are prone to do a lot of errors and mistakes, and by having this interactive protocol where basically in order for you to receive a Grin transaction you have to actively get involved in order to process it, which means that it’s not possible for somebody to just send money to an address of yours in the blind like an http address or something. You actually have to actively respond and send information back to the sender which means that it’s very easy to reject transactions which allows transaction flows to be more robust in a way. So you don’t have this issue of some user sending address to an address they shouldn’t be doing and now you have to figure out what happened and return the funds back to them or if some unauthorized person is sending you cash which might sound a bit strange but in a lot of businesses actually are very careful about making sure that they only receive payments that they’re supposed to receive otherwise their bookkeeping doesn’t add up. With Grin it becomes easier to do so because you can basically run checks and validate that indeed you’re supposed to receive this payment and otherwise reject it.

Laura Shin:

All right. So let’s talk a little bit more about some of the other features of Grin. So Grin does not have something called scripting which Bitcoin has. So what are some examples of things you can do with scripts in Bitcoin but not in Grin but then Michael I think also did mention now you guys still have features like atomic swaps and I think there are a few others. So what are some of the other features that you were still able to retain anyway?

Michael Cordner:

Right. So, I mean atomic swaps is one example. There’s something that’s been kicking around in MimbleWimble circles with the notion of Scripless Script, and what that means is it means kind of cryptographic tricks that you can do to enable kind of script-like functionality without actually having to go through, you know, with actually having to include a script. So, one example of that, I mean and again, this is all kind of theoretical stuff that we kind of have on the list for research, a lot of the stuff like Lightning. We’d be technically be able to enable that at some point after some research using kind of Scriptless Script tricks. There’s the atomic swaps that we mentioned. There’s time locked, relative time-lock transactions, vaults, which are kind of user level security.

Laura Shin:

Meaning if I want to do a transaction for a large amount or something then there’s a delay built in so that people can’t rob me.

Michael Cordner:

Yeah. Absolutely. Yeah. And if someone tries to then there’s a case where nobody gets the money. So there’s less incentive for people to even try it in the first place.

Laura Shin:

And so what are Scripless Scripts? So first of all, can you describe what scripting is and then what Scriptless Scripts are?

Michael Cordner:

I think in terms of saying what Scripless Scrips are is it’s not as if there’s…it’s just a Scripless Script is a particular anything. It’s more of a trick that’s done to enable something that you could do with a script. So, for instance at a kind of mathematical level there would be some trickery about adding one to something or using the number one in a kind of creative way. So you couldn’t point to a set of things and say these are Scripless Scripts. It’s very much about tricks to enable scripting-like behavior.

Laura Shin:

And scripting is a way of making Bitcoin programmable.

Daniel Lehnberg:

Yeah. It’s basically some very basic smart contract functionality.

Michael Cordner:

Yeah. That and Bitcoin like I don’t think it’s used all that extensively over the kind of standard exchange script. Stuff like you see with Ethereum the biggest use case for Ethereum is to have smart contract enablement or the ability to develop smart contracts. Unfortunately that doesn’t fit in with the MimbleWimble protocol because it’s such a kind of compact form of a blockchain that there’s no room for it anywhere.  

Laura Shin:

Yeah.

Daniel Lehnberg:

And so and the notion and concept of Scriptless Scripts is attributed to Andrew Poelstra who was doing MimbleWimble research early on and just basically allows you to implement some simple smart contract functionality that is off chain in a way and you don’t only check signatures are present and correct and it’s derived through using Schnorr signatures.

Laura Shin:

And what are Schnorr signatures?

Michael Cordner:

A Schnorr signature is basically it’s a multiuser signature. So, I can sign something or I can create a signature for something and someone else can create a signature for the same thing and we can combine the two signatures together. You can basically add them together to get kind of one signature that’s taken from all the kind of partial signatures involved. So, that’s how we do the basic transaction in Grin at the moment, which is instead of everyone getting private keys I just sign a part signature with my private keys and the other person signs part of their partial signature with their private and keys and then when you put that all together you can add the public keys and then the public keys will be able to verify the signatures. So like the added private keys equals the added public keys and it all works as if it was just one person created the signature.

Daniel Lehnberg:

And if you do Scriptless Scripts, or a doctor’s signature as they call it, you’re basically in a way hacking this by putting these signatures, the private information could be random but you could also put in some deliberate information that then can be used in your kind of off chain smart contract in air quotes.

Laura Shin:

Let’s talk about your launch. What were some of the different features of your launch and why did you choose those features?

Daniel Lehnberg:

Okay. So I think the notion of like a fair launch in the sense that there wasn’t any premine or dev tax or any kind of design around incentivizing or rewarding development team, I think that was taken quite early in the project. I think a lot of it has to do with just keeping things simple and straightforward and also making things fair and transparent, and it just in a way I think the more I’ve kind of been involved in the project and the more I think about it it’s what really makes sense if you’re looking at the big picture and thinking about what the end goal is.

If the end goal is to get funded and have a little small development team working on a project you probably would do it in a different way, but if you’re trying to build almost something that could be a public good and you want to see like big picture, long game  thinking and want to enable like a healthy and thriving ecosystem surrounding your project, you need to allow equal access to getting involved and making it as easy as possible and because there’s no incentives for me to kind of…I’m not getting rewarded if more people are joining the project, as relatively I guess I’m a relatively early user, but if somebody chooses to get involved in Grid today they have the same conditions as I do and it makes it very easy to contribute because you’re not feeling that when you’re contributing that somebody else is profiting as a result of that, and it also allows us as a group and as a community to be very open and honest about the project itself. We’re not necessarily selling anything because we have nothing to sell and we have no upside from it either, and I think that is great in the sense that it keeps us very honest and it allows also a community to build around the project.

Laura Shin:

Well, so then how do you feel about the fact that in the end the early miners were these like special purpose investment vehicles devoted to mining Grin and they were funded by I guess people were saying 100 million dollars in VC money?

Daniel Lehnberg:

Sure. I mean that may be the case. I haven’t see the 100 million dollars attributed to it. When I was speaking to some groups and individuals it seems like a lot of the investment vehicles didn’t participate in mining immediately. I don’t know if they’re doing it now. There’s a lot of mining happening in China but generally speaking equal opportunity doesn’t mean equal outcome. We welcome everybody to use Grin, to mine Grin and to participate in the project. Now if there were groups that felt that the project was really exciting and they really wanted to mine Grin and they wanted to develop a lot of resources into doing that then they’re free to do that and I guess that’s just good in general. We’re an open project and again we don’t really think about these things too much. I don’t think we see it as an issue necessarily.

Laura Shin:

And how did notions of fairness play a role in your decision to have those two different consensus algorithms with one of them becoming more dominant over time?

Daniel Lehnberg:

Right. So, just some background first before I go into answer that. Grin is proof-of-work mine as we said and there are two proofs of work. They’re all from the same family of proof-of-works called the Cuckoo Cycle family, which was created by John Tromp, which is also a part of the core team of Grid, and we launched with two different algorithms, two variations of that, of the Cuckoo Cycle family. The first one is specifically tuned for ASIC manufacturing and making it as easy as possible to develop ASICs for it.

 

Laura Shin:

And ASICs are like specialized chips that can be built specifically to mine Grin.

Daniel Lehnberg:

Exactly.

Laura Shin:

Specifically to do anything but then you could have ones that are Grin.

Daniel Lehnberg:

Exactly. So GPU is a type of ASIC but it’s a very generalized type of ASICs but you can also make a specialized ASIC that only does one thing really, really well and efficiently, for example mining this Cuckoo to ASIC tuned algorithm. So that’s one of the proof-of-works. The second proof of work is ASIC resistant, meaning that it’s designed to be more GPU friendly and incentivize GPU mining rather than something to develop ASICs for, and when we launched the reward for the ASIC tuned proof of work was 10 percent and the reward for the ASIC resistant proof-of-work was 90 percent, meaning that 90 percent on average of all rewards would go to the miners who are mining the GPU friendly proof-of-work and this over time, the balance here between 10 percent and 90 percent changes linearly up until the second…once Grin has a two-year anniversary it will switch to being completely 100 percent on the ASIC tuned proof-of-work.

So what we’re saying is that we bootstrapped a network giving a heavier weight towards the GPU friendly algorithm and then over time there will only be rewards after two years for the ASIC tuned algorithm. And the logic for that is that essentially when Grin was in development we noticed that there was a lot of attention being put to the project and we heard rumors of ASICs being manufactured and so on and we were worried about the decentralization of the network and a way to bootstrap the network was basically to devise this duel proof-of-work system which is only temporary way to increase the decentralization and also not incentivize one or two big ASIC manufacturers with a lot of resources to kind of jump the queue and have an ASIC mine already from day one and take control of all the hash power on the network but instead to have a gradual increase of this ASIC friendly proof-of-work and as a result build a healthy, hopefully healthy, ASIC ecosystem where you have many different ASIC manufacturers competing and offering products to the market.

Laura Shin:

And let’s also go back to some of the comments you guys made earlier about how Grin does not have a dev tax, meaning that part of the block reward does not go to the developers, and so for instance especially like I know you, Michael, you go by the name Yeastplume, you were trying to raise funds to pay for your time on developing Grin from the community and I saw that at first at least the campaign was not going very well. You weren’t even trying to raise like a huge sum of money and I think it was like, what was it, 55 pounds per year or sorry, 55,000 pounds a year or euros?

Michael Cordner:

No. It was a period…the rates actually that were using was 9,000 euro. So let’s say around 10,000 USD would kind of be our standard what we standardized for a month of developer’s time. Yeah.

Laura Shin:

A month. Yeah.

Michael Cordner:

And I mean that obviously includes taxes we have to pay. It’s like the salary payment basically that we get.   

Laura Shin:

Yeah. And at first I think you only raised like roughly a fifth or something and then…sorry, keep going.

Michael Cordner:

No. You’re right about that but then that was also the fourth time, the fourth campaign as well. So I’d been working fulltime on Grid since about February of last year and since them I’ve done four funding campaigns and all of which were successful. I mean the first one was in the height of the big coin bubble, so everyone was feeling wealthy and I mean that campaign was funded in about two days. The next one took a bit longer. The next one took a bit longer. The last one which was done just around launch it stalled a little bit but also there are a lot of companies out there who pledged to support Grin over the long term as in a mining pool might decide to give a donation of their proceeds into the Grin general development fund. I think a lot of that was kind of being set up as well at the same time. So, up until now I mean the community has been absolutely great and very supportive and have allowed me to be able to work on this full time.

Laura Shin:

Oh, but actually because that one fundraising attempt at least did not go very well, I know that Ignotus wrote a post expressing their disappointment with the lack of funding for your work and they also talked about greed in the crypto community, but I just wonder looked at another way it could also been seen as a problem of incentives and like do you feel like if you were to do it again would you try to raise funds a different way that kind of harnesses incentives more?

Michael Cordner:

Okay. I mean I don’t think raising money is inherently evil or structuring yourself in such a way that injecting capital into your project however you want to do it is not necessarily a bad thing. As a matter of fact as we can see now it’s challenging to do things the way we’re doing it but I mean this wouldn’t necessarily be true for all projects I’ve ever worked on ever but in this case with Grin I mean it’s the first implementation of MimbleWimble and we think if the project is run in such a way that it’s obviously to benefit a small group of people even if it’s just for supposedly just to pay developers and nothing else, it still kind of diminishes from the notion of Grin belonging to everybody. If there’s a dev tax and developers are only paid out of the dev tax there’s much less incentive for other developers to come along and join and make contributions as you would to an open source project because they’re all getting paid, I’m not,  why would I do this? So, it’s challenging. It’s not the only answer but I mean it’s the one that Grin, it’s kind of the path that Grin has chosen and we intend to stick to it.

Daniel Lehnberg:

Yeah. And I mean I’ve been kind of called a fanatic or incredibly naïve when I say it but the way I’ve been thinking about it I don’t really see another way of doing it that makes sense essentially. I think it’s hard. We’re very frugal which I also think is a good thing and raising money in a different way while you solve the funding problem perhaps you also open up the door for a bunch of other problems. As Michael was saying other developers might be less incentivized to join if they’re not getting paid. How do you allocate funds? How do you handle all of this administration? It’s one thing, we have some administration now for the modest funds that we receive in donation but it becomes a complete different game if you’re having hundreds of thousands or millions even of dollars that you’re supposed to administer and do it in the right way and how do you ensure that funds get allocated to the right place, that they’re used efficiently and that all of this ultimately is actually benefiting your long-term goal. It’s not obvious and I don’t think actually it’s been proven in this space that having more money yields to better results. I haven’t actually seen a single example of that at this stage.

Laura Shin:

Yeah. This is one of those things where when you look at it one way you can see kind of one side and looked at another way you see the other side. Maybe because we’ve seen that socialism maybe hasn’t worked out super well in a lot of places and maybe it’s because growing up here in the US you kind of see like, okay, here’s how capitalism works and you sort of think, okay, it works well, but at that same time you can live in a capitalist society and sort of kind of be into minimalism and be like, well, I don’t want to buy a ton of things all the time because that’s not a very satisfying way to live. So, yeah. I look at it and I kind of go back and forth.

You know, I do…and there is something. I don’t mention who this person was but I was talking with somebody about Zcash and about the developer rewards that they have and that person kind of had a view that was like negative on the creators earning money from it and I was a little bit confused at first. I just thought, well, they created it. They should be rewarded but I know what you’re talking about if you’re trying to build something that’s for the community. It’s just that like I said when I see also that  you struggle a little bit to raise funds for the development. It just makes me wonder, well, like could it have been done better?

But anyway, as for your points I actually wanted to expound on that a little bit more. You’ve decided not to do a foundation for the governance of Grin. Why not and how do you guys plan to govern Grin?

Daniel Lehnberg:

Right. And so one of the early contributions I did was to have a look at foundations and do some research around that and see what the use cases for foundations are and how they apply to Grin in the context and whether we should have one or not, and as I was going through it I couldn’t really find any compelling arguments to why you would need a foundation especially if you’re trying to be decentralized, and I think the main point maybe was to protect the trademark, to have like an entity that registers a trademark and protects it, but we didn’t see any point in trying to enforce that even, and otherwise I don’t really see the use case for it as an official…I’m doing these air quotes again but like as an official foundation. It becomes this centralizing entity which now needs administration, an organization, I need a bureaucracy for it and then this centralized foundation is going to be making decisions and even if you only support their fund projects, et cetera, you’re effectively you’re taking these decisions and it creates structure where I’m not sure it actually adds any benefit.

In the research however we did conclude that foundations are great in the sense that if other people want to put together a foundation and say you have a passionate individual that really wants to further Grin development and say, hey, I’m going to put together a Grin foundation. Now I’m going to create the structure and I’m going to give it a grant and hand out money to development projects that are targeting Grin, that’s great. We encourage it. We encourage many foundations to be founded on these principles, however, they won’t be an official foundation, and rather instead and how like Grin’s governance has evolved has instead been from having just Ignotus as the main founder and individual or group entity, a bunch of robots nobody really knows who Ignotus is or are, but now also having a technocratic council that essentially was created for the main…the main purpose was to manage the multi-sig keys where funds, donations are being kept.

So essentially the moment you start accepting donations and funds you create a layer of hierarchy. I think it’s in a way inevitable. You can’t really do it in a different way outside of you start like going into governance research like distributed at autonomous organizations and so on which I think is very much unproven. It’s very difficult where we want to stay focused on really working on Grin and not try to overcomplicate things. So, instead there’s this subset of individuals, nine people. Michael and I are part of them, that are part of initially was part of managing the keys, but the general way of how governance decisions are being made today is in a very transparent fashion where we have biweekly meetings and so every other week there’s a development related meeting and the other week there’s a governance focused meeting and anybody is free to add points to the agenda and these will be discussed in a meeting which are happening on our Gitter chat, everybody is free to join in and the points are discussed and decisions are being made out in the open in a transparent fashion. And the philosophy I think in general was to just keep things minimal, minimal and transparent and open as far as we can and for as long as we can, and if there is no reason to change it we wouldn’t want to do that.

Laura Shin:

All right. So, let’s close out with one last question. Since launch, which was not that long ago, what are some of the things you guys have been working on and what can we expect from Grin going forward?

Michael Cordner:

Sure. Well, as I’ve talked about a little bit earlier, what we’re trying to do is support the community in building tools on top of Grin. So, from my perspective anyhow I’m doing a lot of work on the wallet software itself but rather than trying to create the nicest GUI wallet there is I’m spending all of my time focused on putting out an API or a set of tools for other developers to pick up and build their fancy GUI wallets on top of. So, in once sense it’s very much support the community and let them come up with solutions to some of the problems they’ve talked about and experiment and see what happens from there.

On top of that, I mean we have some of the additions to the core protocol that we’ve talked about and I kind of describe this as very kind of careful and considered introduction of new technologies into Grin because while we have a long list of things that we think we know how to do we can’t guarantee when we’re going to kind of have all the research worked out in order to be able to enable them. So, we’ll be kind of slowly and measuredly adding features to core Grin protocol as we go.

Daniel Lehnberg:

One of the things I’m very much excited about is the recent work by Ignotus to see and explore the potential of i2P integration onto Grin and support a more anonymous peer to peer network.

Laura Shin:

Yeah. I think you guys have a very, very interesting project. So, we will have to check back in to see what happens. Well, thank you both so much for joining us today. Where can people learn more about you and Grin?

Daniel Lehnberg:

Thank you, Laura. If you want to learn more about Grin a good place to start is on our website, grin-tech.org. There’s also a Grin newsletter every week that I curate and if you want to reach out to me you can always do so via Keybase or Twitter @Lehnberg.

Laura Shin:

And Michael, do you have a Twitter handle?

Michael Cordner:

Yeah. Absolutely. It would be @Yeastplume is my Twitter handle, and again, if someone really wants to find me it’s very easy to do so either through our Gitter channel or the forum, anything Grin related you should be able to find me there anyhow.

Daniel Lehnberg:

Yeah. And I should also add that if you have questions, if you want to find out more about Grin, join the Gitter channel. The community is very welcoming and receptive for anyone and get involved.

Laura Shin:

All right. Great. Well, thanks so much for coming on Unchained.

Daniel Lehnberg:

Thank you, Laura.

Michael Cordner:

Thank you for having us.

Laura Shin:

Thanks so much for joining us today. To learn more about Grin, Daniel and Michael, check out the show notes inside your podcast player. If you are not yet signed up for my email newsletter go to Unchainedpodcast.com right now to get my thoughts on the top crypto stories of the week plus a preview of exclusive podcast content, and be sure to check us out on YouTube. Unchained is produced by me, Laura Shin, with help from Ralene Gallipoli, Fractal Recording, Jennie Josephson, Daniel Nuss, and Rich Stroffolino. Thanks for listening.