Ross Ulbricht’s Assorted Writings

Ross Ulbricht’s Assorted Writings

$lave’s note: Free Ross Ulbricht.

Donate to Ross here and read more here.


I started the year in the middle of my stint with Good Wagon Books. Donny and I had worked on it the last quarter of 2009 and were trying to ramp up by hiring people to go door-to-door. It was a real struggle and by the end of our trial partnership, it was clear that we hadn’t grown the business to the point that it made sense for me to stay on. I also had an offer for a job from Peter and David that sounded great and I was ready to move on and work for them on their private equity venture. Unfortunately, they were all smoke and mirrors and after several weeks of them not returning my calls, I realized there was not an opportunity for me there. This was extremely discouraging. There I was, with nothing. My investment company came to nothing, my game company came to nothing, Good Wagon came to nothing, and then this.

I had to find a job quickly, so I turned to Craig’s List and found American Journal Experts. For the next six months, I edited scientific papers written by foreigners. It sucked. The hours were flexible, but it drained me. I hated working for someone else and trading my time for money with no investment in myself.

Up to this point, I had been working on selling my rental house in Pennsylvania. It had helped me stay afloat with around $600/mo in cashflow, but finally the sale came to a close. I made about $30k off the whole thing, and could finally start trading again. I had been practice trading for a while and saw an opportunity to take my $30k and make it as a day trader. $30k isn’t alot to start with, and I didn’t get off to a very good start with my trading.

Around that time, another opportunity came into my life. Donny had gotten a job offer from his brother in Dallas to be the VP of sales at their milling company. He didn’t know what to do about Good Wagon, which he had grown somewhat to the point that he was making around $6k per month in sales. He made me an offer. 50% of the company and a $3k per month salary to take over and run the business going forward. I took the deal and we went to work on it. By the end of the year, we had our best month on record with around $10k in sales in December.

While all of this was happening, I began working on a project that had been in my mind for over a year. I was calling it Underground Brokers, but eventually settled on Silk Road. The idea was to create a website where people could buy anything anonymously, with no trail whatsoever that could lead back to them. I had been studying the technology for a while, but needed a business model and strategy. I finally decided that I would produce mushrooms so that I could list them on the site for cheap to get people interested. I worked my ass off setting up a lab in a cabin out near Bastrop off the grid. In hindsight, this was a terrible idea and I would never repeat it, but I did it and produced several kilos of high quality shrooms. On the website side, I was struggling to figure out on my own how to set it up. Driving out to Bastrop, working on Good Wagon, and trying to keep up my relationship with Julia was taking all of my time. By the end of the year, I still didn’t have a site up, let alone a server. I went through a lot over the year in my personal relationships as well. I had mostly shut myself off from people because I felt ashamed of where my life was. I had left my promising career as a scientist to be an investment adviser and entrepreneur and came up empty handed.

More and more my emotions and thoughts were ruling my life and my word was losing power. At some point I finally broke down and realized my love for people again, and started reaching out. Throughout the year I slowly re-cultivated my relationship with my word and started honoring it again.

My relationship with Julia was pretty rocky throughout the year. We even broke up for about a month and half toward the end. I couldn’t even tell you now why it was a struggle, or why we broke up. On my side, I wasn’t communicating well at all. I would let little things build up until I got mad. We eventually got back together and even moved in together, and it has been amazingly good since.

In 2011, I am creating a year of prosperity and power beyond what I have ever experienced before. Silk Road is going to become a phenomenon and at least one person will tell me about it, unknowing that I was its creator. Good Wagon Books will find its place and get to the point that it basically runs itself. Julia and I will be happy and living together. I have many friends I can count on who are powerful and connected.


still working on good wagon books and Silk Road at the same time. Programming now. Patchwork php mysql. Don’t know how to host my own site. Didn’t know how to run bitcoind. Got the basics of my site written. Launched it on freedomhosting. Announced it on the bitcointalk forums. Only a few days after launch, I got my first signups, and then my first message. I was so excited I didn’t know what to do with myself. Little by little, people signed up, and vendors signed up, and then it happened. My first order. I’ll never forget it. The next couple of months, I sold about 10 lbs of shrooms through my site. Some orders were as small as a gram, and others were in the qp range. Before long, I completely sold out. Looking back on it, I maybe should have raised my prices more and stretched it out, but at least now I was all digital, no physical risk anymore. Before long, traffic started to build. People were taking notice, smart, interested people. Hackers. For the first several months, I handled all of the transactions by hand. When they came into my local bitcoin client, I matched them up with the amount and time of the purchase and did all of the necessary account adjustments. Between answering messages, processing transactions, and updating the codebase to fix the constant security holes, I had very little time left in the day, and I had a girlfriend at this time! At some point, a hacker found some major flaws in my code. I sent it to him for review and he came back with basically “this is amateur shit”. I knew it too. I tried to work with him but I think he lost interest and since I wasn’t charging commission, I only had my shroom money to pay him with. Thankfully that quadrupled from bitcoin increasing in price, little did I know I could’ve cashed out at 8x higher for a total of 32x! That would have gotten me off to a hell of a start. As it was, I cashed out all the way up and all the way down. I called the peak, my timing was just off. In any case, I decided to rewrite the site in an mvc framework as suggested by my benevolent hacker adviser. So, while still manually processing transactions and responding to a bigger and bigger message load, I learned to use codeigniter and began rewriting the site. At some point around this time, I also learned how to host my own site and was on my own servers. I think I made this plunge because I wasn’t sure how much traffic freedomhost could handle, and I wanted control of my .onion domain. So, when I switched I posted a redirect from the old .onion to the new, ianxz6zefk72ulzz.onion. And yea, that was yet another learning curve, configuring and running a LAMP server, oh joy! But I was loving it. My ideas were actually working. Sure it was a little crude, but it worked! Rewriting the site was the most stressful couple of months I’ve ever experienced. I worked all day everyday, still processing transactions by hand, dealing with scammers, answering messages, meeting new strange people through my site and getting to know them. When I finally got the site ready, there were several new features including a tumbler and automated payment processing. The weekend of the switch was the peak of stress for me. Updating a live site to a whole new version is no easy task. You don’t realize how many little pieces lay on top of one another so it works just right (at least when you code poorly like my amateur ass was doing). So for about 48 hours it was stop and start on the switch, but I finally got there and it was working. It looked like I didn’t have to process the transactions manually anymore, but then the rot started. Some where, the site accounting wasn’t balancing, and I was losing hundreds of dollars every few hours. I started to panic. I tried everything I could think of, but couldn’t stop the bleeding. It was getting to be thousands of dollars and I was losing sleep and getting slow. I didn’t give up though. I rewrote the entire transaction processor from scratch and some how it worked. To this day I don’t know what the problem was. AND in addition to these stressors, Silk Road got its first press, the infamous Gawker article. When you look at the historical #s, you can see right when it happened. A huge spike in signups, and the beginning of an upward trend in commerce that would continue until the time of this writing, and hopefully for much longer. There was really a smattering of press at this time including the local news in FL! Most interestingly, two US senators came out against the site and against bitcoin. They made a big deal out of it and called for a shutdown of the site. I started to get into a bad state of mind. I was mentally taxed, and now I felt extremely vulnerable and scared. The US govt, my main enemy was aware of me and some of it’s members were calling for my destruction. This is the biggest force wielding organization on the planet. Eventually we got through it though and entered a more calm and harmonious phase, there were still the hackers and scammers, and occasional fuck ups by me when trying to add a feature of what not, but in general, working within the CI framework and getting a feel for linux allowed me to take it a little easier and get into a normal work rhythm. Some major advances were price pegging, vendor ranking, a more sophisticated feedback system, buyer stats, transaction logging, and building up the admin toolset. Most importantly, the market began it’s path to maturity. Vendors and buyers forged great relationships, more vendors came in to fill holes in the market, others competed and variety, customer service, and professionalism emerged. After making about $100k and up to a good $20-25k monthly, I decided it was time to bring in some hired guns to help me take the site to the next level. This would prove to be the biggest challenge I had ever faced. I actually got to see a fairly wide range of employee types. SYG, the schmoozer who winds up being a waste, DA, the model employee. Super enthusiastic, hard working, and trainable. Then there is utah, professional who does it for the money. Get’s the job done, but his heart isn’t always in it. First I put up an ad for a system administrator. I needed someone to help me take the back end to the next level in security. I had many candidates duke it out in the forum on many topics from os to isolation to software to security. In the end, I made what I thought was a wise decision. Looking back, I picked the most vocal one who also was on board ideologically. At first he was very good, giving me lots of advise and helping me upgrade the server’s security. We spent many hours on torchat configuring the server. We ran it on FreeBSD for the first time and it actually ran pretty well. Getting it set up was a total disaster, though. My host had suddenly stopped paying his upstream provider and dropped it on me that in a few days they would shut off the server. Luckily I had a backup and a spare server ready to go, so we decided to setup freebsd and run it. It was a trial by fire, but we eventually passed. The site was down for almost a week. You can see it die on the historical charts. For the next 3 months, SYG had my full attention. I was basically at his mercy because he knew FreeBSD and I didn’t. We kept trying to implement different solutions, but he just kept dragging on and on. He was trying to get his bitcoin exchange thing going through the site at the same time and he just wasn’t giving the site everything he had. In the end, he milked me for the last few weeks and eventually I had to let him go. It was a really painful lesson, but one I hopefully won’t need to learn again. I eventually moved the site back to ubuntu where I am comfortable. At around the time SYG was falling out of favor, I started looking for someone new and utah was there. I gave him more and more responsibility and he gave me good time estimates and followed through on them. I was still working with SYG, so utah was set to work on rewriting the site. Around this time, Variety Jones showed up. This was the biggest and strongest willed character I had met through the site thus far. He quickly proved to me that he had value by pointing out a major security hole in the site I was unaware of. It was an attack on bitcoind. We quickly began discussing every aspect of the site as well as future ideas. He convinced me of a server configuration paradigm that gave me the confidence to be the sole server administrator and not work with someone else at all. He has advised me on many technical aspect of what we are doing, helped me speed up the site and squeeze more out of my current servers. He also has helped me better interact with the community around Silk Road, delivering proclamations, handling troublesome characters, running a sale, changing my name, devising rules, and on and on. He also helped me get my head straight regarding legal protection, cover stories, devising a will, finding a successor, and so on. He’s been a real mentor. Shortly after I met VJ, I started looking for a right hand man, an administrative assistant of sorts. Someone to answer messages, manage the forum and wiki, and eventually even dispute resolution. I found that man in Digital Alchemy, who was one of the original members of the site, and had been modding the forums for pretty much the whole time. There were lots of applicants, but for some reason DA stuck out as promising, and he has turned out to be invaluable. He quickly learned how to respond to messages and keep things running smoothly. Before long he was managing the forums, the wiki, the messages, the resolution center, scam prevention, and odd jobs for me like mini research projects and tedious tasks. He works his ass off and will eventually get burnt out, so I need to find him some help at some point.


Chatted with VJ again today. Him coming onto the scene has reinspired me and given me direction on the SR project. He has helped me see a larger vision. A brand that people can come to trust and rally behind. Silk Road chat, Silk Road exchange, Silk Road credit union, Silk Road market, Silk Road everything! And it’s been amazing just talking to a guy who is so intelligent and in the same boat as me, to a certain degree at least. So, today we talked mostly about the exchange, what to charge, boundary conditions, etc. Then I went for a surf with Billy Becket. Caught a couple of good waves, chatted with him took some wipe outs and went in. Soon after, I ran around the city with Ashley and Kelly. We drank some beer, walked around the city and botanical gardens. I then went out with Jessica. Our conversation was somewhat deep. I felt compelled to reveal myself to her. It was terrible. I told her I have secrets. She already knows I work with bitcoin which is also terrible. I’m so stupid. Everyone knows I am working on a bitcoin exchange. I always thought honesty was the best policy and now I didn’t know what to do. I should have just told everyone I am a freelance programmer or something, but I had to tell half truths. It felt wrong to lie completely so I tried to tell the truth without revealing the bad part, but now I am in a jam. Everyone knows too much. Dammit.

January 1, 2012

Well, I’m choosing to write a journal for 2012. I imagine that some day I may have a story written about my life, and it would be good to have a detailed account of it. I did some work in the morning, can’t remember now exactly what it was, but it wasn’t long before I was responding to text messages and making plans to hang out on the beach. It was a holiday for everyone, so the beach was as packed as I’ve ever seen it. A teeming mass of humanity, helicopters flying overhead, waves crashing, a real spectacle. I was offered a ticket to a warehouse party by Nicole, but just couldn’t bring myself to accept. I just was not in the partying mood. George also invited me to join him camping for 2-3 nights. I wanted to go, but the swell is low and it’s just too much time away from Silk Road, and there is so much to do before the rents get here, and before I leave for Thailand. I need to get DigitalAlch set up handling the resolutions, and it just seems like Variety Jones gives my broad sweeping tasks on a daily basis. Emma, Jessica, Cally, Kim, Tim and a couple others, Mike, were all on the beach with me. Playing paddle ball and soaking up the sun. I’ve been thinking a bunch about what is next for me. I like my little life here in Bondi, but what if I love Thailand, or want to go on even further? I don’t want to go backwards, and while I could see a lot more in Australia, I’m not even taking the opportunities that are coming up as it is. I need to find a place I can work from. Cheap and off the beaten path.

03/20/2013someone posing as me managed to con 38 vendors out of 2 btc each with a fake message about a new silk road  posted about cartel formation and not mitigating vendor roundtable leaks.worked on database error handling in CI

03/21/2013main server was ddosed and taken offline by hostmet with person in tor irc who gave me info on having custom hs guards buying up servers to turn into hidden service guards

03/22/2013deployed 2 guards on forumadjusted check_deposit cron to look further back to catch txns that died with an error

03/23/2013 bought a couple of more servers from new hostsorganized local filesstripped out srsec db naming functionsintroduced at least two bugs doing this

03/24/2013 been slowly raising the cost of hedgingorgainzed local files and notes

03/25/2013server was ddosed, meaning someone knew the real IP. I assumed they obtained it by becoming a guard node. So, Imigrated to a new server and set up private guard nodes. There was significant downtime and someone has mentionedthat they discovered the IP via a leak from lighttpd.

03/26/2013 private guard nodes are working ok. still buying more servers so I can set up a more modular and redundant servercluster. redid login page.

03/27/2013set up servers

03/28/2013 being blackmailed with user info. talking with large distributor (hell’s angels).

03/29/2013commissioned hit on blackmailer with angels

04/01/2013got word that blackmailer was excuted created file upload scriptstarted to fix problem with bond refunds over 3 months old

04/03/2013spam scams have been gaining tracktion. limited namespace and locked current accounts.lots of delayed withdrawals. transactions taking a long time to be accepted into blockchain. Wallet was funded withsingle large transaction, so each subsequent transaction is requiring change to be verified. lesson: wallets must befunded in small pidgin chat working with inigo and mg

04/04/2013withdrawals all caught upmade a sign error when fixing the bond refund bug, so several vendors had very negative accounts.switched to direct connect for bitcoin instead of over ssh portforward received visual confirmation of blackmailers execution
04/05/2013a distributor of googleyed is publishing buyer infomapped out the ordering process on the wiki.gave angels access to chat server 
04/06/2013made sure backup crons are workinggave angels go ahead to find tony76cleaned up unused libraries on server added to forbidden username list to cover I <-> l scam
04/07/2013moved storage wallet to local machinerefactored mm page
04/08/2013sent payment to angels for hit on tony76 and his 3 associates began setting up hecho as standbyvery high load (300/16), took site offline and refactored main and category pages to be more efficient
04/09/2013 problem with load was that APC was set to only cache up to 32M of data. Changed to 5G and load is down to around5/16.ssbd considering joining my staff transferring standby data to hecho standby server 
04/10/2013some vendors using the hedge in a falling market to profit off of me by buying from themselves. turned of access log pruning so I can investigate later. market crashed today. being blackmailed again. someone says they have my ID, but hasn’t proven it.
04/11/2013set up tor relaysasked scout to go through all images on site looking for quickbuy scam remnantscimon told me of a possible ddos attack through tor and how to mitigate against it.guy blackmailing saying he has my id is bogus
04/12/2013removed last remnance of quickbuy scamimplemented new error controller rewrote userpage
04/13/2013inigo is in the hospital, so I covered his shift today. Zeroed everything and made changes to the site in about 5 hours
04/14/2013did support. inigo returned.started rewritting orders->buyer_cancel, been getting error reports about it.
04/15/2013day off 
04/16/2013rewrote buyer_cancel
04/17/2013rewrote settings view
04/18/2013modified PIN reset system
04/19/2013added as xrate source and modified update_xrate to use both and check for discrepancies and log.modified PIN reset system04/20/2013migrated to different host because current host would not connect to guards. Bandwidth limited and site very slowafter migration.
04/21 – 04/30/2013market and forums under sever DoS attack. Gave 10k btc ransom but attack continued. Gave smed server access.Switched to nginx on web/db server, added nginx reverse proxy running tor hs. reconfiged everything and eventuallywas able to absorb attack.
05/01/2013Symm starts working support today. Scout takes over forum support.
05/02/2013Attack continues. No word from attacker. Site is open, but occasionally tor crashes and has to be restarted.
05/03/2013helping smed fight off attacker. site is mostly down. I’m sick.Leaked IP of webserver to public and had to redeploy/shred  promoted gramgreen to mod, now named libertas
05/04/2013attacker agreed to stop if I give him the first $100k of revenue and $50k per week thereafter. He stopped, but thereappears to be another DoS attack still persisting.
05/05/2013Attack is fully stopped. regrouping and prioritizing next actions.
05/06/2013working with smed to put up more defenses against attack 
05/07/2013 paid $100k to attacker 
05/08/2013reconfigured nginx to not time out. almost all errors have disappeared.
05/10/2013started buying servers for intro/guard nodes
05/11/2012still buying servers
05/13/2013helping catch up supportsmed demo’ed multi address scheme for the forum
05/15/2013more servers
05/22/2013 paid the attacker $50k 
05/26/2013tried moving forum to multi .onion config, but leaked ip twice. Had to change servers, forum was down for a coupleof days.
05/28/2013finished rewritting silkroad.php controller 
05/29/2013rewrote orders page paid attacker $50k weekly ransom$2M was stolen from my mtgox account by DEAadded smed to payrollrewrote cart page
05/31/2013$50k xferred to cimon
06/01/2013someone claiming to be LE trying to infiltrate forum mods06/02/2013loaning $500k to r&w to start vending on SR.
06/03/2013 put cimon in charge of LE counter intel
06/04/2013rewrote reso center
09/19 – 09/25/2013red got in a jam and needed $500k to get out. ultimately he convinced me to give it to him, but I got his ID first andhad cimon send harry, his new soldier of fortune, to vancouver to get $800k in cash to cover it. red has been mainlyout of communication, but i haven’t lost hope. Atlantis shut down. I was messaged by one of their team who said theyshut down because of an FBI doc leaked to them detailing vulnerabilities in Tor.

I read this article recently, and I have an idea for how to solve the problem it presents. The article is about how WhatsApp and other platforms with end-to-end encryption are being used to spread pedophilia. End-to-end encryption is essential for online privacy. Without it, service providers are able to eavesdrop on your communications, see your pictures and piece together your whole life. That might be okay if you could trust them to keep your information private, but they won’t. They use it to categorize you, track you, and sell you to advertisers, or give you over to Big Brother.

However, as the article points out, some people are abusing that privacy. When their content is encrypted, there is no way to distinguish it from all the other encrypted content flowing through the system. If something is not done about it, we could lose this important privacy-enhancing tool in the name of going after these bad actors. What we need is a way to separate the harmful content from the rest without actually looking at any of it! I call this “the content problem.” On its face, this seems like an impossible task. However, through a combination of cryptography and artificial intelligence, there may be a way.


Platforms already deal with the content problem. Their users generate way too much content for their staff to look at and read everything that gets posted. So, they use algorithms to filter and categorize content so harmful content gets flagged or removed automatically. One algorithm they use is called an “artificial neural network” (ANN). ANNs are at the heart of machine learning and much of the recent advances in AI.

ANNs are inspired by the way brains work. They are made up of a bunch of simulated neurons connected to each other in a network. Each neuron is very simple. It fires a downstream signal to the neurons it is connected to, only if its upstream neurons fire strongly enough to it. How those neurons are connected — the topology of the network — is what gives rise to the complexity of the ANN and allows it to perform superhuman tasks, like quickly filtering through mountains of user content.

The topology is created by feeding lots of content into the ANN, rewarding it when it correctly identifies a piece of content and punishing it when it gets it wrong. The reward strengthens the neural connections that led to a correct outcome, while the punishment weakens the connections that led to an incorrect outcome. After many rounds of trial and error in a process called “training,” the ANN can then correctly identify new content. It has “learned” what should and should not get through its filter.

It is important to note that the ANN’s topology is essentially a black box. Just as we cannot read a person’s thoughts by looking at a brain scan, we do not know how ANNs make the decisions they make. This has been cited as a problem before. What if, for example, an ANN was trained on a dataset containing an unknown racial bias. It could then be making racist decisions and we would not know it. However, we can use this inability to scrutinize the inner workings of ANNs to our advantage as we solve the content problem.

The solution I propose involves a quasi-decentralized ANN and uses cryptography to ensure that no single node can see more than a tiny piece of the content being scrutinized. That piece is too small for the node to have any idea what the content is, yet as a whole the network can classify it. I call this construct a “zero knowledge artificial neural network,” or ZKANN (pronounced zee-can).

It starts by training an ANN the old-fashioned way: feeding lots of content into a new ANN until it can differentiate between harmful and normal content. It could be fruitful to partner in this task with law enforcement agencies that have seized and secured such content during investigations. Thankfully, no one need view the content as it is fed through the ANN, and the process could be performed in a secure facility. A wide variety of normal content should also be used for training so as to minimize false positives. Once the ANN is trained, it is released to the public so it can be used as the basis for ZKANNs.

Fig. 1

As seen in Figure 1, there are three types of participant in a ZKANN: the user, volunteer nodes and the signature authority (SA). Volunteer nodes are operated by independent volunteers who wish to contribute their idle computing resources to identifying harmful content online, and the signature authorities are widely trusted parties who sign content deemed “not harmful” by the ZKANN. We will first look at the case where all three participants are cooperating and playing their role as intended. Then, we will look at scenarios where they could deviate and try to game the system.

The process starts with the user selecting a SA and a public ANN. The SA responds that it is ready and node operators start volunteering to participate. Each one will play the role of an artificial neuron in the ANN being used.

Every ANN has what is known as an “input layer.” The nodes in the input layer accept as input a small piece of the content being analyzed. For example, each input-layer node could accept a number representing the color of an individual pixel from an image. If the image is made up of 100 pixels, there would be 100 input-layer nodes, one for each pixel.

The volunteer nodes in our ZKANN that wind up in the input layer will now each receive from the user a tiny piece of the content being analyzed. In Figure 1, the content (an image of a house) is only broken into four pieces. In practice, there would be many more and many more volunteer nodes in general. Because each node is operated independently, no single one has access to more than a tiny piece of the content and thus cannot determine what the content is.

Now, our input-layer nodes will perform two important operations. First, they will send a signal to their downstream node operators according to the topology of the public ANN being used (purple arrows). This signal carries some information about the tiny piece of content it is based on, but not enough for the downstream node to determine what the original content is. Second, the input-layer nodes will encrypt their tiny portion of the content with the key(s) used in the end-to-end encryption scheme and send it to the SA (red arrows). Once the SA has all the separately encrypted pieces, it bundles them and waits for the final signal from the output layer.

The output layer is the last set of nodes in the ZKANN. They send their downstream signals to the SA who uses those signals to make the final determination whether the original content is harmful or not. Because the ANN operates like a black box, there is no way for the SA — or any of the nodes — to independently work their way back to the original content. But, miraculously, the SA can say whether or not the content is harmful based on its incoming signals. If, based on those, the data is deemed “not harmful,” it cryptographically signs the encrypted bundle of content and sends it back to the user.

Now, without ever having revealed more than a tiny piece of content to any one participant, the user can show service providers that the content is not harmful and they can serve that user with a clear conscience.

Further Development

As a prisoner, I cannot build prototypes, research or develop ZKANNs, and there are some areas that need work. If you noticed, I was sure to make clear that the node operators must be independent. The ZKANN construct only works as intended if no single participant controls more than a small fraction of the volunteer nodes being used. If someone other than the user controlled all the input-layer nodes, for example, they could piece together the fragments of the content, and the user’s privacy would be lost. On the other hand, a malicious user controlling a large fraction of the volunteer nodes could send signals corresponding to normal content even if the original content was harmful and trick a SA into signing harmful content.

The way I see it, a service like WhatsApp could enlist the help of a handful of independent organizations who want to contribute to fighting harmful content online (e.g. Wikimedia, EFF, etc.) to act as SAs. Users could select the ones they want to use or just be paired at random. Then, the SA would be responsible for selecting independent nodes. This would require a degree of trust on the user’s part, but users of WhatsApp are already trusting the platform to encrypt their content in the first place. Perhaps someone can find a way to ensure node independence in a fully decentralized version of ZKANNs that does not require trust.

If we solved these problems (and others I have surely overlooked), we will have a powerful tool to fight harmful content online without violating people’s privacy. I ran the idea by some experts, and they believe it is novel and promising, but I can’t do much more with it from prison. Hopefully, someone out there will take an interest and run with it.

What ZKANNs make possible is censorship without loss of privacy. Both censorship and privacy are problematic if left unchecked, but ZKANNs pit one against the other, striking a balance that gives us the best of both worlds. Censorship without privacy can lead to loss of free speech and civilized dissent. On the other hand, as we have seen, privacy without censorship can lead to the proliferation of harmful content.

Without a technical solution, the debate over privacy and encryption will rage on, with both sides taking increasingly polarized and extreme positions. Privacy advocates have to ignore the content problem or rationalize that it is just an inevitable side-effect, outweighed by the greater good of privacy. Those on the other side say that privacy loss is a small price to pay in order to police content, or that only criminals would want privacy. Or is it that only tyrants would want a world without it?

If ZKANNs can be deployed successfully, both sides can have their cake and eat it too. The extreme anti- and pro-privacy arguments become moot. Let’s stop fighting and pop open a ZKANN.



I awoke in the fetal position with the sheet wrapped tight around me. My hip bone was sore where it pressed through the thin mattress to the metal bunk, but it wasn’t that—nor the ever-present fluorescent light—that woke me. The top of the mattress where my head laid at an awkward tilt was soaked through with icy water.

That cold—colder than the air I could not escape from—alerted my stupefied mind that something was wrong. I sat up and looked at the window that served as a headboard. It was dark outside, that much I could tell. Even if the window wasn’t frosted, there was so much condensation on the glass and bars that I couldn’t see out anyway. The water had pooled on the sill and run under the mattress.

I folded the mattress in half, too numb to be exasperated, and mopped the water with my already damp towel. Then, I sat on the folded mattress and wrapped myself again in my sheet as my eyes got used to being open.

The walls, floor and ceiling were grimy gray concrete, enclosing a space 8x10x8ft, a perfect man-made prism of straight lines and right angles. But etched on the walls, was all manner of chaos: gang names and numbers, neighborhoods and area codes, lewd sketches, threats, hate, and desperation. I had seen those artifacts of past inhabitants so many times, their meanings no longer registered.

From where I was perched on the top bunk, I could see the small stainless steel toilet and sink reflecting the too-bright fluorescent light mounted in the center of the ceiling. Strung across the opposite wall was a clothes line, a strip of sheet with a pair of bright orange pants and a bright orange rag draped across it. One end was tied to a stainless peg. The other was tied to a plastic spork that was jammed between the door frame and the heavy metal door that took up most of the far wall.

Looking at the door, I felt its weight upon me. The walls were different, inanimate. They could offer no relief even if they wanted to. But the door was my captor. It stood there—indifferent to my longings, my frustration and fear—unmoving, closed.

“You awake?” I said, and my voice caught up in my throat. I could see my breath.

“Yeah,” came the reply from below, from the bottom bunk.

“The damn condensation soaked through again.”

“It’s dripping down the wall down here.” My cellmate’s voice was low. He did not seem interested in talking, but he did not seem interested in not talking either.

“You know what time it is?” I asked.

“They brought the pill cart around about an hour ago, but I don’t think they’ve done the count yet.”

I held my head in my hands and began to doze again. How long had I been in this prison cell? Had it been three months yet? As a free man, my domain was limited only by my conscience and the laws of physics. I could go anywhere, do anything. A vision came to me of that time we hiked through the redwoods north of San Francisco. I could see for miles all around from the bluff we climbed. And that night, around the campfire, the stars went on forever, dimming into the ink of infinite space.

I was a non-violent, first-time drug offender, but I was given life without parole anyway. My life, my world, my space became very small that day I was sentenced. No longer the laws of Nature but the laws of man defined my domain. And now I was in the Hole: the prison within the prison. After months in here, it was easy to imagine there was nothing else. I was in a box, just drifting through emptiness.

The space of my outer experience was reduced to the bare minimum and stayed that way long enough that it no longer held my attention. Like the faint noises that can only be heard when all other noises die down, the inner space of my own mind took on great significance.

Memories and fantasies were far more vivid than anything my naked senses could perceive. The subtle stirring of my breath and the feelings of movement within me felt like great waves of experience. Every success, failure and missed opportunity I had ever had played itself out in the theater of my mind, that space where even Nature’s laws are not absolute. Alternate endings to those episodes and entirely new ones came from some as yet untapped creative spring. All I had to do was let myself be swept up in it.

I was back in Costa Rica where my father lived, surrounded by jungle, beaches and ocean. The salty air was fresh and full of life, the spring water a vital elixir. My wife was there, sitting next to me in the sand, and a little boy toddled up to us holding out a seashell. He looked like us. It was the son I never had, the family and life I never had. I held them both close to me, warm and soft, and listened to the waves crash on the beach.

“Hey cellie,” I heard from below and snapped back from my reverie.

“Turn around. I got to sit on the pot.”

Physical space, no matter how unwanted always found a way to reassert itself.



My future died that day in court when I was sentenced to life without parole. When I got back to the federal detention center, I did not go straight to my cell block as usual. This time, I was interviewed first to judge whether I was suicidal. I wasn’t, and thankfully, I convinced them I wasn’t, or I would have spent a few days in one of the dreaded “suicide watch” cells. I understand why they did that though. Lots of lifers are suicidal. There is no parole in the federal system, so life means your whole life. It is the same as a death sentence. It just takes longer.

At 29 years old, my own death had always been an abstraction, something far in the future. Now it was right in my face. As I looked around at the painted concrete and steel bars, a voice in my head pointed out to me, “This is it. This is it until you die.” I mourned the death of my future. I mourned the death of my freedom.

I never considered suicide. Early on, I resolved to put the thought out of my mind. For one, it would cause even more pain in those I love. (On top of the pain my imprisonment has caused them.) I would endure anything to avoid that. But even if all my loved ones were gone (and that’s very possible after a lifetime in prison), I resolved to go on living.

Deep down, I fear death. I fear it so much I don’t even want to think about it or acknowledge it. I pretend I have all the time in the world, that the days will just keep coming and coming as they always have. Normally they do just keep coming, year after year, decade after decade, and then one day, they don’t. Most people don’t prepare for that day. We don’t want to think about it. We cling to life until we are too weak to hold on. But coming to prison changed that for me. Suddenly the days didn’t just keep coming and coming, not like they used to.

Prison is a kind of afterlife. My life before — my life in freedom — feels like a distant dream now. My memories from before prison don’t even feel like my own. My family and friends mourned my loss of freedom in the same way they would have mourned my death.

But I am not dead. I have died without dying, and by going through this experience, I have been disabused of the illusion that my days are abundant. No, life is short indeed. I see that now. Every day I spend in this cage is a day lost, a day spent in death. I can fast forward in my mind the years and decades ahead of me until the day I breathe my last. I have met men who have been locked up continuously since the 1970s and 80s. That’s me in 2060, still here in the afterlife, in purgatory.

Then, I snap back to the present moment. The present always reasserts itself. No matter how much I resist or ignore it. The present moment is its own kind of death because each moment dies the instant it comes to be. This moment — the one right now as you read this — is both a birth and a death, something brand new that never existed before, and in the same instant, it is gone forever.

In that sense, I have died countless times already. Where is the boy who played in the creek with his dog and wanted to eat cereal instead of spinach? He is gone, and there is no getting him back. He is dead. My awkward teenage self is dead. My over-confident young adult self is dead. My self who wrote the words above just a moment ago, he is dead too. And your self who read them? Yep. Gone forever.

Even this notion of death is disturbing. I want to believe that the little boy is somehow still around, that I have continuity and permanence, that my memories represent something that still is. But this is not the case. Death permeates our lives. It is the constant cessation of what is to make room for what can be, for that next fleeting moment. It is only when I cling to these moments, to this illusion of a persistent self, that I fear death and struggle frantically to regain my life as it once was, to put the pieces back together.

Marcus Aurelius, the emperor and stoic, wrote: “Imagine you are dead. You have lived your life. Now take what’s left and live it properly.” No one makes it out alive. In the end, they put you in a hole in the ground and throw dirt in your face. But having accepted this, the question one must face is “now what?” Will you live this day as if life is just another thing to take for granted? Will you waste it bored and cynical? I never knew just how precious life is until I lost it. When I stop and look at myself, my life, the universe and everything, I am deeply humbled. I am grateful for what little I have left. I am grateful for this very moment.

“Imagine you are dead. You have lived your life. Now take what’s left and live it properly”— Aurelius | Oil on canvas by Ross Ulbricht

Death is coming. Make no mistake. And in a thousand years (probably much sooner) all of your problems will be less than petty. They will be forgotten. All you know will cease. Let this sink in. Let I disturb you. Let it disturb the self-centered illusions you live in. You are dead. Now what?

That is up to you. Being dead, there is nothing to lose. Being dead, there is nothing to fear. Even (perhaps especially) for a man condemned to die in a cage, that feels a bit like freedom.