Lunarpunk Takeover: Why and How/ Rachel-Rose O'Leary
EthereumZuri.ch 2023 · April 2023 · 44:08
Rachel-Rose O'Leary makes the case for lunarpunk, a movement of hackers building anonymous, anti-fragile and self-sovereign infrastructure, at EthereumZuri.ch 2023. She sets out a thesis that feedback loops between surveillance and cryptography are pushing value and users from transparent systems toward anonymous ones, then reflects on why exiting the surveillance apparatus matters. The second half presents DarkFi and its alpha testnet, explaining how the project achieves generalizable programmability, before a Q&A on whether the gains for freedom outweigh the risks of anonymous coordination.
Speakers
Topics
From EthereumZuri.ch 2023, hosted by EthereumZuri.ch.
Transcript
foreign [Music] so thanks very much for coming we have some stickers here I'll ask that after the talk lots of stickers yeah lots of stickers please come get some stickers um so I have a quick question before I start which is how many people here have heard the term lunar Punk used okay and how many have heard of darkfi okay so there seemed to be some kind of overlap which is good
um because I'm going to talk about both things um I'm going to start off uh speaking about um our macro thesis um basically identifying what we see as some feedback loops that are driving value and users into anonymous systems and away from transparent systems and so this is a bit like our bull thesis for anonymity but it's also um fundamental to the kind of lunar Punk meme space um as being the um the means by which the lunar Punk future kind of emerges
uh then I will briefly uh speak about uh some more kind of deep philosophical questions um such as you know where where are we going with this why why are we exiting from the surveillance apparatus what we hope to gain from this uh this process of access and then in the latter half of the talk I will give a presentation on darkfi specifically I will discuss our Alpha testnet and explain how we achieve generalizable programmability on dartify and so it's three parts and there's kind of a bit on more
economics then it will go into philosophy briefly and finally uh I hope spend the second half talking about tech um there will be a more technical Presentation tomorrow at half past 10 from Amir Taki which will be on the math aspect I will explain slightly more as we go on but I highly recommend this talk for a more technical overview of what we're building um so this is a feedback loop between surveillance and anonymity anyone who has worked in cryptography is familiar with this dynamic so effectively the progress of cryptography is a kind of cut and mouse game in which
cryptography continuously has to update its um uh its its mechanisms in order to adapt to the increasing all pervasiveness and increasing sophistication of surveillance techniques so there is a feedback loop whereby the more sophisticated surveillance becomes the more Anonymous techniques must advance in order to bypass it and so this feedback implies that both surveillance techniques and Anonymous techniques are going to escalate we're going to see a mutual co-development of these two distinct worlds
um how does this Dynamic apply to a crypto context I think these two worlds function as kind of attractors that warp the development of crypto that bend it in certain directions and so in the surveillance space we have the development of regfi regfie is our term for crypto that has adapted toward the increasingly stringent requirements of the surveillance state so it's kind of like the anti-crypto it's um it's it's the death of crypto it's crypto as it merges with surveillance on the other side then we have the side of crypto which is anonymous anti-fragile parallel
infrastructure that we call darkfi so this is anonymous crypto that will be Vindicated as the true Spirit of crypto and you know in terms of their the underlying forces surveillance is is based on a mechanism of control whereas anonymity is about freedom and emancipation so many of you might be familiar with the anti-fragility thesis presented by Nicola tayab um so this is a diagram of a fragile and an anti-fragile system so you see they've got this nice um positive and negative convexity the
graph says concave but you know you can call it positive negative convexity um so what that means is fragile system is something that breaks when Under Pressure an anti-fragile system is something that absorbs shocks and becomes stronger we can see here it's not a this effect is not linear it's actually closer to some kind of exponential function and so this is a this is a linear relation we can imagine say in the case of something like a crypto Wars which is like the era that we're in at the moment especially in the wake of tornado cash
but really it's been going on for decades and it's not even the first crypto War so we've seen this uh this situation of crypto we're spiraling unfolding in time and as the crypto Wars unfold in time we can imagine that Anonymous sisters systems accrue more users and so this like imagines as a linear relationship as the crypto Wars unfold in time the amount of users that Anonymous systems attract also grows um in step with that however as we saw from the anti-fragility um illustration from before this this
it's not a linear relationship there's something else that's happening that gives that convexity and so we're looking for some other Dynamic that is really fueling the um the uh the capturing of value and users into anonymous systems so this quote is something a little bit closer to that Dynamic that we're really looking for this is Jay Stark who here has heard of J Stark wow okay so more people have heard of lunar Punk than heard of Jay Stark um jstart totally okay so Jay Stark um he's a German Kurdish man who created the fgc9 which was um like a fully
um uh DIY gun that you could um build using simple uh um materials that are readily available so he really took the concept of 3D um printing Truity printed guns and completed it by making it something that was like um you know highly simple and with consumer um materials um so Jay Starkey was murdered uh by the state um about two years ago now but here's this is a quote from him he says if something unfortunate happens to one individual another individual will take his place it's a Hydra you cannot completely kill you cut off one head
another pops up we are impossible to stop so that's a beautiful quote well done Jay Stark which gets a little bit closer to this Dynamic that we're looking for so you know the dynamic could be thought about in the context of an Insurrection where um Insurrection happens of revolutionaries killed in action 20 more revolutionaries come to take her place and so this is the the kind of anti-fragility and the convexity that we're looking for uh you may be or you probably are familiar with metcalf's law uh was proposed as a way of valuing networks it
says that the value of a network is proportional to the number of users it's actually equal to the number of users squared um so we propose a version of this uh we call it J Stark's law um which is inspired by the ethics of free software so free software um puts into positive feedback the notion of user empowerment and developer empowerment uh so user empowerment and developer empowerment are positively correlated to each other in the free software paradigm so we adopt this uh this value judgment made by free software into this uh
J Stark's law which says um user empowerment is positively correlated with system anti-fragility and so the more empowered your user base the more anti-fragile your network becomes um so it's using this uh you know conjecture this proposed mechanism that we're able to achieve that nice positive convexity that we're looking for so let's apply this reasoning to a real life scenario let's imagine that um you know there's some moment of escalation in the war against crypto say for example that self-custody is banned like which you know could happen kind of is
happening in some places so self-custody is banned um we have it's it's not this linear situation we have a rapid uh sudden descent into fragility uh so we have users fleeing the the networks on mass and as you know they're on a transparent system uh users are potentially liable for those their activity on that system um the uh crypto Wars escalation leads to this like Mass flight this descent into fragility and this rapidly this descending uh user empowerment uh and and and system anti-fragility uh
feedback on the other hand in an anonymous system this Dynamic is reversed and so we see that as uh as hostile Powers um try to like restrict Anonymous systems they fall into something that we call the regulation trap which is the harder they try to um prohibit access to these systems and to prohibit people from from using them the more the utility of those systems is Justified um so actually the the whole effort of trying to restrict access to these
systems is an estranged paradoxical way affording more power over to those systems um so as we can see in the case of a Crackdown on an anonymous system we actually see a rising political Consciousness within the community we see a rallying of individuals around that project and which leads to growth in users and eventually accumulates in this uh final uh stage in in the convexity um curve which is you know actually suddenly there's economic um advantages to moving over to those Anonymous systems and you know an example of This was um I'm sure many of you were following what
happened were tornado cash what was very interesting was instead of tornado cash being deleted um by the ofax sanction it actually uh was more like a point of radicalization where you had many people in the crypto Community speaking out against uh surveillance and Draconian regulation for the first time and the telegram group of tornado cash suddenly becoming more active people were redeploying the the contracts on ipfs Etc so it had the opposite effect okay so that's the uh that explains a little bit the kind of um economic theory behind lunar Punk and why Anonymous networks are going to grow
and value in users I'm now going to go into a brief section uh on uh the philosophical aspect okay so as we can see I'll just go back briefly this there are feedback loops intrinsic to this process we mentioned some of them um but really this positive convexity this anti-fragility is more like an open spiral uh so we're spiraling outward we're engineering a kind of agaris exit from the surveillance state the question becomes where are we exiting to and why are we exiting uh you know what is the what what is this new
world this Dark Forest that we've emerged to um you know Dark Forest is a term that's used by lunar punks uh generally means a Anonymous World protected by encryption that has decoupled from the surveillance state so we find ourselves here inside the dark Forest why have we come here um and you know so we know for example that the Dark Forest is protective um the example that I always like to give is a historical one which relates to um the the conflict between Ireland and England where um the first time England tried to
invade Ireland that was a failed uh it was ultimately failed because at the time Ireland was covered in forests and those forests were the basis for uh widespread decentralized invisible uh Guerrilla resistance and so while the invasion was initially effective uh traces of the invasion were entirely erased as the years unfolded and so the efforts were absorbed into the into the forest by virtue of that um that amazing decentralized invisible resistance made possible by the by the forests
um so in order to actually gain a foothold in Ireland uh the British forces first had to um destroy the forests and it was only true clearing of the forests that they were actually able to uh to fully colonize Ireland so um we know that forests can protect um Divergent groups you know that they can incubate uh and protect communities but but but what what kind of communities do we want to build in there and what are we trying to protect so um Nietzsche has a really nice uh a discussion on morality where he says that the
um what he calls the the morality of the master um he also aligns it to the state basically imposes a morality on people and says you know this is this is good and evil that's what you have to accept the problem is is when people try to resist against something like the state or some other uh you know Monopoly they do a simple inversion where they say okay I'm gonna that's what the master says I'm going to say the opposite thing and that's my values so you have this inversion this negative copy but the problem is is that if you're in this simple inverted State you haven't properly escaped the morality
imposed On You by the master you're still within the the dialectic so you have to transcend that morality and the way that Nietzsche says that that we have to transcend it he says we must become what he calls philosophers of the future philosophers of the future create new values beyond the set and so they um they're in the creation of new values and he proposes something which he calls genealogy which is about um being very aware and analyzing what are the different forces and what are the different morals where do they come from what are their Origins and from there constructing something genuinely new and outside of this morality that's
imposed by the state and also outside the the inverted morality which comes from the people which is simply a copy but an inverted copy of the state so archelon he says something similar he says that the society has been enslaved by the state and it's lost its own morals in politics it just has a false morality which is imposed by the state so he says Society needs to regenerate this moral and political Fabric and he offers some practical ways of doing that we list a few of them here we have join us in self-knowledge but also know thyself which is like this
process of reflecting on your own um Origins and your the myths that have formed you and that kind of inward reflection at the society level uh Huawei paristin which is self-defense and that's a big part of escaping uh the the kind of seizure of morality and politics by the states and finally the notion of que Boon which means autonomy or self-being or self-becoming um which uh this is how we achieve something which is not simply like an anti-state you know which anti-state is still in this negative inversion of being a inverted copy of what the state is so this is something closer this is
why we talk about lunar punk as a non-state it's something that's genuinely exterior to um the the status Paradigm that has been imposed okay so um we have this beautiful image um this brings me to uh one of my favorite patterns um in science fiction so one of my favorite patterns that happens across science fiction books and novels Etc is the moment in which a society discovers um some kind of alien life or a new kind of Technology an example would be like in the expanse when they discover the ring and what's interesting about these
moments is that it's a transformative contact so it's a moment of contact with something so radically exterior and so alien that it completely reconfigures the horizons of the possible um so it's it's a contact and a transformation that um that that changes um the the space of potentiality forever um so I'm coming now to the technical part of the the this this the speech I believe we're at a similar moment um in relation to Anonymous engineering so I call it here xenotechnics that means alien Technics because it's something so radically exterior and so
novel that it will permanently change the horizons of the possible and it's really a contact with this kind of Alien Force um and if you're interested in this concept which I will briefly touch on but not go deep into and I can encourage you to attend amir's talk tomorrow at half past 10 which will give the actual like math examples of what I'm about to talk about um so dark Phi here's a definition is an L1 for anonymous engineering Anonymous engineering I touched on it briefly effectively what we mean is um a new kind of engineering which is based off of engineering anonymous
schemas and we will give some examples and so dartify is an L1 to enable this kind of anonymous engineering which means we expose an interface by which developers can can integrate cryptographic techniques into their programs that allow them to construct these anonymous schemas so we can give the example of ZK but it's not just CK there's many other techniques that can be integrated as part of anonymous schema including multi-party computation homomorphic encryption and many other exotic crypto techniques that have emerged in the past few years so darkfi is really trying to provide a way a simple way for
developers to integrate all these tools and make applications that dramatically um extend the design space that we currently have in in projects like uh or an ecosystem such as ethereum and that's very much our vision is uh you know we're very inspired by the frictionlessness and the level of creative Innovation that's been made possible by places like ethereum and you know space like defy and the other kinds of innovations that have come out with us so we want to extend that design space we want to push it to its limits by integrating anonymity as part of that um so uh overview of where we're at
currently uh we have our first test net which is live and operational you can download it on you can download software and run it and join the test net play around um we're using a Anonymous proof of stake called or voice crypsinus which is very interesting it's important to note that it's quite different to uh proof of stick as we have it on ethereum where you know in ethereum there's a concept of slashing in darkfi there is no sloshing and it's kind of conceptually like a fusion between proof of work and proof of stake in that um nodes participate in this Anonymous
leader selection and by creating a local proof and they do that by running a lottery um logo on their computers and they have steak as like a variable in that Lottery process which increases the probability of them winning the lottery um so once they if they win this this Lottery and they go through this these steps this algorithm then they can produce a proof that allows them to create a block and so this is an anonymous leader selection protocol which is miv resistant and censorship proof um so alongside this blockchain we have a general purpose smart contract
infrastructure I'm gonna in the next slides discuss a little bit and what that is and and and how that works and how we achieve uh General programmability on dark fi we also have a app driven approach um so there are other kind of zkl ones that exists at the moment they have a um kind of backwards approach to engineering where they are starting by engineering abstractions and then they're you know trying to engineer apps from there but we can see that they're um creating complexity traps for themselves so we've taken the opposite approach where we're actually building apps and we're letting those apps um dictate decisions on like our smart
contract architecture and also to inform the design choices we make in terms of obstruction um so the apps that we have currently working are we have an anonymous there that's working on the test net you can create a dial um on the test net there if you if you don't know the test net we also have swaps it's called here a non-otc that's Atomic swaps um we have Anonymous transactions um Anonymous staking with the or voice crypsinus and we also have Anonymous coordination tooling such as an IRC which is highly Anonymous I will discuss that a little bit later so um I will briefly explain
um darkfi's General programmability um so we have uh on the network all nodes are Proverbs and verifiers all full nodes approvers create the anonymous transaction which is like they um they load their locally they interact with these CK proofs and they put their secret values into them but those secret values are never revealed on the network so the prover does that locally and they then broadcast that transaction which is like you know with these anonymized or Anonymous inputs uh to the network where they are picked up by this verifiers who um you know
verify according to the uh the particular contract they verify the the various crypto and the signatures and then they transition um the blockchain to the next state so transactions on darkfi uh contain multiple uh function call data so we see here um T is equal to a C1 to n we can have an arbitrary number of function calls data in a transaction and transactions are also Atomic so we can have chains of logic where if one function call fails the rest of the
um transaction with the transaction will fail and you know this is how we achieve Advanced um anonymous apps such as protocol owned liquidity which we will look at in the next couple slides so this call data is arbitrary data which is defined by um whatever contract is being used and depends on the on the contract and so if that's like for money or for the Dow Etc that will determine what the call data is and it can contain proofs and signatures commitments Etc um so to achieve this we have like different layers
um we have a ZK Assembly Language and virtual machine which is using Halo 2. um so that is how we achieve the zero knowledge proofs and there's a pipeline where we use this very very simple Assembly Language and that's compiled down to bytecode um which is run on the VM the Assembly Language I highly recommend you check it out it's a very beautiful and very simple I have a new friend appreciation for it since uh today attending a workshop with other Zeke languages and being very disturbed by the the complexity of the languages zks we've kept it intentionally simple
intentionally um uh like low low level for now such that when you read it you can actually understand what it's doing um which I think is really important when it comes to ZK proofs anyway that's a a Tandon so we combine this um these EK proofs with we also have a wasm runtime so when we talk about smart contracts on darkfi they are using wasm and we write them in Rust but wasm is such that you could write them in other languages uh those wasn't contracts have access to an SDK which includes all these different uh Primitives that allow you
to engineer Anonymous applications and so you know signatures elliptic curves commitments and we will extend this gradually uh we're on Alpha Testing it now and we've kept things intentionally simple intentionally manageable but the idea is to gradually extend so that developers can build increasingly sophisticated applications and So currently on darkfi we have um two main contracts on the wasm so we have the money and the Dow inside money we have these function calls which allow us to do the swaps and also the staking and so you can see money transfer that is
um if you guys are familiar with the sapling payment scheme we will talk about in the next slide how that works in in the context of darkfi um but sapling you know was it's an anonymous schema that was invented by zcash and we use that as well in darkfi to to do Anonymous transactions and actually in other apps we use these we use this money transfer as well in this chaining of function calls that we do in the application design and then uh we have this OTC swap which is um you know we create an atomic swap between two parties and then we have this stake in unsafe functionality which is used for the uh orbers cryptoness Anonymous staking
uh so yeah this is our um you know one of our big achievements as well that we created this Anonymous day which is the first Anonymous day um that and it's working on our test net so that's pretty cool so you have their mint um you basically create a new dough with um various um constraints that you set so you decide on things like um what is the Quorum what is the proposal limit like how many tokens do you need to make a proposal um and so there's like we will actually look more deeply but there's several constraints you created now and you make a proposal to the dough
and uh you vote on a proposal and finally uh Derek Zach is um an operation which transfers money um from the Dow treasury to an address specified in a proposal um and so it's it's essentially a form of protocol owned liquidity and that is conditional and and that can allow for advanced on-chain applications so this is a um a simple uh kind of diagram to explain uh sapling as it works in the dark file context um so on the uh on the right we have um the proofs this is like a simplified
version and so we have a mint and a burn proof mint is whenever we make a transaction we output a um a mint a mint proof and we burn uh sorry sorry we input a burn and we output a mint um so we can see that here it says you know Alice wants to send tokens so the way she does that is she first produces this burn proof she Burns those tokens and then mints these other tokens to Bob um so that's unlinkable and Anonymous uh here we have the schema this is like a kind of simplified version just to get an intuition for how that works and so
in a mint proof um you know we create a random serial number and then we create C which is a hash of a serial number and uh any number of attributes so C is actually our coin uh where we can put inside different information like um the the token ID and the value of the token um and then we we broadcast uh C we make it public and we transition the state and then from the Burnside uh we we reveal something called the nullifier which is our double spend protection um and the way that the protocol is designed um you as like as soon as you reveal
that the coin is spent um and you cannot it protects against double spend and that's because it's deterministically generated from the uh private key on a serial number that is created in the midstep um so then uh we we do something called a miracle inclusion proof which basically just proves that um that this this is the correct coin and it exists in the state um so that's the burn proof this then so we use those um mint and burn uh proofs also within
Ado uh application and but we have the other proofs as well so like we've got debt we've got votes and proposed Etc and uh here is the diagram which it doesn't show the mint step this is showing voting which is number one and two is the dire exact and so on number one we can see that someone has created a proposal um that proposal um you know uh checks various um constraints that are set by the dough at the proposer limits which basically says do you have enough tokens to make this proposal the Quorum which says how much uh tokens need to be like uh committed
to this in order for it to be considered value valid and then the approval ratio what is the ratio of yes to no votes and in order for this proposal to pass and so this is all set when you create the dough so um the the participants vote on this anonymously and uh if those votes satisfy the constraints of the um of the Dao then the the um the operation can be executed uh similarly I didn't mention um in the previous slide um or I mentioned here that we are also hiding the amounts
in a transaction um uh using Patterson commitments and the same is true here that we're uh that all the amounts are hidden um and everything is anonymous um aside from you can tell when when a um if I recall correctly when a vote happens you can tell that voting is happening on a proposal but you cannot tell what the vote is or what the proposal is you can just tell that a vote is happening on a proposal in terms of the blockchain because we reveal the the function calls um okay so to back up a bit uh darkfi also has its own peer-to-peer Network
um this is uh designed to be highly modular so it can run over a tour it can run over Nim this means we're the only project uh that is working um that is like seriously considering Network level anonymity and we have these Torah name Integrations already working uh so that's important on this peer-to-peer Network we have a fully Anonymous IRC um so uh I mentioned that the that the peer-to-peer network is highly modular it's very easy to deploy apps on it so this is one such app it's IRC
um but that we've like integrated onto the peer-to-peer Network we've also added some really nice anonymity features uh so we have encrypted channels we have encrypted DMS and we also have a really nice ability to change your Nick um as many times as you want so the IRC has no concept of identity um you can appear as anyone it's completely invisible uh on the network and on the client like it's completely unlinkable the IDS and so it's there's no there's no identity um and we will uh as an as a Next Step
also release a um spam protection which will include rate limit uh we will use rate limit nullifiers for for that um so highly encourage you to join our rrc if you're interested in dartify we have Dev meetings every Monday at four o'clock at Central European Time so spin up um an IRC Damon and join our chat with WeChat it's very chill um okay so in terms of the timeline um I mentioned that we have kept darkfi intentionally simple so with the current architecture that we have which includes these uh this zero
knowledge component and this wasn't component which also integrates the SDK and we can design many interesting applications so we have already the dam in the money we will soon also have uh stuff like nfts and and there are many other projects or apps that can be quite simply deployed using this and but we will slowly add more and more um features to extend the design space like for example multi-party computation is important one but that's we're intentionally postponing that because we're we're simplistically oriented um so we're going step by step and the the current uh status is we've released this uh Alpha Tesla we're stabilizing it
you know uh um smoothing it out and um we have to finalize the token right now the proof of stake it just has um it has a token but it's like a dummy token we haven't done any um actual token engineering so the next release will contain the fully fledged dark token that will be the test map beta um then we will go into a audit phase where um we will we need to audit every aspect of the code base depending on how long that takes we will then deploy mainness um so the current version of Dart fight is pretty much where we want to be when
we release the mainnet minus the token engineering and minus the um the the orders and you know depending on how long the odd it takes we can Target mainnap for you know optimistically end of this year but you know maybe the audit will create new work for us that will drag on for longer so you know it could be a year from now but basically we're we're very focused on on shipping mainna as as quickly as possible and yes so [Music] um if you want more information check out our website on there we have a link to the docs which will give you instructions on how to install and run the tesna and the IRC where we have the
developer meetings every Monday at four o'clock uh you can also follow us on Twitter although it's not that active you're better off following us on RC and similarly there's our GitHub and check it out and happy to answer any questions that you have thank you very much Rachel big round of applause now the deal is we have 10 minutes until the next speaker the next speaker is very interesting there is some very interesting stuff down here for people who need a little exercise walking up and down the steps you have a question sir okay if you keep it short keep it to the point and Rachel doesn't go into a long long answer okay I'll I'll try Okay
um are you concerned at all with uh the emergence of dark Dows like uh lowering the barrier for kind of committing attacks right so uh when I think of like a dark dial I think of the ability for people to anonymously coordinate to launch an attack right without revealing right that they would like to launch an attack so you could imagine a governance system being compromised by a minority of of token holders right because people just kind of keep committing tokens to do the attack committing tokens until some threshold is reached right uh such that you can you know you can achieve Quorum right
um You could also think of it you know in more traditional terms right in terms of validators right coordinating to compromise some Network you know validators of of oracles right um so are other things we can do to mitigate the impact of this or is this just kind of like the new reality that that we live in question oh I have Mike so I agree that um you know anonymity and privacy they come with these um negative externalities uh you know such as uh you can imagine like you said like interesting Anonymous dials coordinating to do stuff without uh this like um this
issue on eat where you know they couldn't do that because they would be caught by police and stuff um so yeah I definitely think that the Privacy comes with negative externalities but um you know I I think that the gains for Freedom are outweigh the the cost uh the potential cost in terms of risk that that comes from things like dark dose um so I'm I'm much more concerned about the um potential dystopic impact of us like totalizing surveillance state that we're heading into that I am concerned about like the ability for people to coordinate anonymously to do illegal actions um sorry I don't know if that answers all right maybe maybe there's a chance to
follow up on the question afterwards we'd get everybody else give everybody else a chance to uh jump down here grab a very cool sticker if they want thank you very much Rachel thank you uh we have about five minutes before the next talk thanks a lot [Music]