Resistance to NSA-Level Global Adversaries With the Nym MixNet
3:56PM Jul 25, 2020
Hello And welcome back. We're here at hackers on planet earth hope 2020 the talking conference everything's going fantastic so far. Thanks for being part of it. Next is Anya Petro ska. Anya. Welcome.
It's great to have you here. According to the bio online, you did your PhD in anonymous communication systems at University College London, and worked a lot in the Tor area mixmaster these technologies. today's talk is about resistance to the NSA level global adverse adversaries in the nim mix net. And what we're going to do is play a video for about 20 minutes and then we'll come back with with Anya with Anya with with questions and answers. If you're in the live chat, you can put your questions there and we'll get to them a little later. Let's roll that video.
thank you for joining my talk.
Before interesting than the mix net, let's first look into why do we need it in the first place. Every time we send a message, visit the website make an online purchase or any other online activity will give a digital trace the so called network metadata. And as it turns out, this metadata, which is simply a set of all unique characteristics associated with our online communication reveals a lot of significant information about us. Even if we reach out for privacy enhancing technologies, like for example, end to end encryption, we only protect the content of our communication, but not the metadata. Similarly, if we use private coins, like z cash or Manero, such costs protect only our privacy on chain, but do not prevent metadata leakage. So any result the network adversary can Is retrace with whom are we communicating how often when and so on and so on.
So in response to the danger
of tracking the meta data of the internet communication services like VPN became popular. VPN simply built an encrypted tunnel between the client and the VPN server, which acts as a proxy that forwards the clients communication into the web. This allows the users to hide their IP location, enhance bypass, for example, censorship and geolocation blocks, however, or the VPNs offer enhanced internet privacy and protection against data hacking. They have several weaknesses due to their centralized nature. First of all, the VPN provider acts as a trusted proxy and hence knows about all of the website and in an individual is accessing. So we are not alone the most visibly the VPN provider and the VPN provider Others might keep the locks of our activities, although officially they promise not to in order to share them with third parties. Secondly, even if the VPN provider will behave honestly, users can still the anonymize can be still D anonymize by powerful network eavesdroppers who can simply track the routed network traffic based on the size and the timing of the data packets, and hence easily correlate IP address with the services were visiting. In contrast to a single proxy VPN, Tor builds upon a decentralized network of nodes run by volunteers, or forwards traffic where multi hop connections and each connected user opens. On Cliff circuit, which is a path builder, free hops, the entry guard, the middle relay, and the exit relay. And all of the users communication is now routed by this predetermine circuit in fixed size cells. Each data packet sent via the circuit is layer encrypted by the sender. And each relay upon receiving a packet removes a single layer of this encryption. search on encryption ensures that none of the relays has visibility on both the source of the traffic and the final destination. No question. course content. So without any doubt store is much better. So For anonymous communication and VPN However tall still Doesn't make ad traffic fully unknown. animals that don't realize forward the received packets in the first in, first out porting This means that an adversary watching traffic in the Tor network could perform an end to end correlation attack by watching packets entering Living the network and performing time correlation tooling. This packets how Or can defend on a local network adversaries who do not have visibility over the large part of the network, but it's not resistant to traffic analysis attacks. So dark and protect users against websites that track a user as Well as enemies that can observe only a small part of the network such as The AI space but does not protect Against attackers like the NSA. In addition to The lack of traffic analysis resist has a few more with a few Other weaknesses. First of all, although the Tor relays are run in a decentralized fashion The directory authorities are semi centralized. This means that they This is just a set of hand coded directory authorities which Collect and redistribute the view of the network and the measurement statistics. Another limitation is turnouts are voluntary driven, hence, suffer from the lack of economic incentive. This can lead to poor performance and even scaling problems. Another issue is the the exit note like Problem. Since the exit nodes connect directly with the open web, they users running those nodes risk that their machine will be used to transmit Possibly illegal network traffic and hence my face repercussions from the authorities.
So that's why I'm them technologies is building the first open source Open Source and incentivize mixed network which provides network metadata. Privacy and protects users communication and gains even more sophisticated traffic analysis Next Is the universe layer zero Foundation. For network metadata protection So Let's restart. follow a bit of background work. What makes sense really are the idea A mixed network exists already for a very long time, as the first design of a mixed network was pioneered by David Chang in the 80s and mixed networks is a decentralized network of relays that ensures the unlink ability of the network communication by hiding the distinctive patterns of the metadata In the traditional mix that The notes are altered in Fix cascade and issue packet is routed via each node from the first to the last one Sara As in Torah, By using multiple mixes with Distribute the trust among them. As long as a single mix in the car Escape is honest. The anonymity is pretty Similarly As in toward the packets route By the MCs that are only unencrypted. This is ensures that the packets cannot be tracked. Based on their binary representation What Make sense from Tara and other unlimited network designs is the copy The concept of mixing The traffic When the mix no droughts Users traffic that not collect a certain number of packets for traffic for some amount of time and then reorders the packet Following a secret permutation before forwarding them to the next note and we call such mixing Techniques the batch and reorder technique. By doing so, protect against an adversary that in observed The entire network and perform even the end to end Timing correlation attacks are Traffic analysis attacks. However, the enemy network designs had several significant limitations. First, the fixed cascade topology scales poorly And scalability is one of the key properties of anonymous communication networks is anonymity loves company. So It is very important for the MCs network to scale well Second limitation was that the public encryption operations are associated with onion encryption We're very time consuming. Also, using the batch and reorder mixing technique is limiting both from the perspective of anonymity and performance. The size of the batch is the size of the anonymity set offered by traditional makes sense On the other hand, we don't know in which patch or It will be accepted. Mixing so the end to end play As you have our packets can not be printed. it on top of that all the time Traditional mix sets were resistant to time. attacks. It turns out That they do not protect Against active attacks. In which the mix can drop them packets up. From denial of service attacks Also travel confirmation attacks in which they attack It observes both ends of the mix set and tries to match the traffic based on distinctive factors. And lastly and important trouble Back was that the view of the network was determined By central authority so in order to address the security issues of VPNs and Tor and the scalability and performance limit mutations of traditional mix networks name is building a normal mix net which is scalable and support both low and high latency traffic and hence can support the virus applicant. services and make sense is open source. And the notes are rewarded for their honesty. Like so Let's start. First of this guessing how to make the net It's scaled better once you Motion to approve It would be to run multiple cascade In pilot however, Although that would indeed allowed to scale the network is named I mean We can add more and more cascades as we as needed such service Have an important drawback When cascades independently The traffic is partitioned into disjoint sets. So it doesn't matter how large is the overall traffic flow into the network or anonymity. still limited by the anonymity set of a single cascade on the internet We could use peer to peer topology which scales of course very well. However, it appeared to topology offers quick and unlimited down cascades Because in peer to peer network It's my past by the same note, but never got married. Because they're flowing in different directions.
That's why nim mix net uses the stratified topology, and stratified topology nodes are grouped into layers. And each node in a given layer is connected with each node in the previous The next layer and traffic always flows in the same direction from the first to the last layer. So for example, in the network of free layers each note in the first layer is connected With each node in the second layer and each node in the second layer is connected with each node In the first layer, the packets are so sprouted And each packet is routed via Independent paths. So there are no more circuits like endure. And the path is composed by the sender by simply picking a single random node from each layer such as network topology allows us to scale the network easily. By adding more nodes in each layer. We increase the Overall capacity of the network. On the other hand, the packets are by independent routes, this hands this stratified topology ensures that paths interleave which with each other At some point in the network has the entire traffic is eventually made. together so we avoid the Problem of traffic partitioning. In order To improve the performance of onion encryption. We This Sphynx cryptographic packet format. Such packet format is for example used by the lightning network. strings ensures that all the packets are constant length cannot be put hence cannot be correlated based on their binary representation. There is a resistant to tagging or replay attacks. In addition to those features thanks ensures that the intermediate nodes, forwarding the packets Nothing about the other nodes in false In the path accepted predecessor and successor In the in addition to those security features swings is also compact and competition the efficient You can see The current timings of our last rust implementation which is yet to be optimized in terms of The mixing technique, then makes sense uses a variant of a so called stop and go mixing technique. As I said, traditionally Mixed network designs use the batch and reorder technique has the network must work in the synchronized rounds. Whereas in the stop and go technique, there is No need for synchronized rounds. So how this technique works There's no patching of the packets. Step each packet is delayed. But each by each hop for a random amount of time, this time how long the packet should be held by an owner. is selected by the center so the center when picking the mixed PAF also selects for each hop around, don't delay and hides it in the stream. Back delays are selected from the exponential distribution we described as the distribution with bye Return lambda which gives us Finish. What is the average time a packet will spend In the mix We use the exponential delays as mixing technique because it has two important properties. First of all says the sender picks the delays. You can estimate the end to end latency of his packets. More importantly, the use of exponential Distribution ensures a large anonymity set This is due to the fact that the act When national distribution has the so called Memorial as property. This property ensures that the probability that the packet leaves and makes at a certain time is independent. Have its arrival time. So the adversary cannot link the incoming and outgoing packets. And more importantly, the anonymity set is not any more limited by the size of the batch. Because each packet enter in the mix at any point in time. contributes to the anonymity set. So not anonymous just among a smaller group of other packets, but among all the projects Whichever entered the network
we can tune up and down The parameter of the exponential distribution and hence, we can support both low latency communication Highlighting Communication So So far, we'll discuss the network topology, the onion encryption scheme and the mixing technique. But what if the adversary can observe The endlinks have the mixed network meaning she can see the packets flowing. And out of the network if he says sudden burst of packets and by Allah And the sudden burst of packets received by Bob. He'll be able to figure out that Alice and Bob are communicating Hence in order to obfuscate the sending patterns of its use Users name introduces the cover traffic In particular, we use a special time Core traffic could look for traffic. Such local traffic is generated by the client and routed via the mixer. Back to this client. Importantly, Such current traffic is indistinguishable from a real traffic and we send it following the Poisson process. Which means that the adversary observing the clients activity Cannot infer which packets are real packets and which Look of packets. Hence we give The so called as Observe ability means The other side cannot tell When you're actually active When not Hence thanks to the Look cold traffic. We have escaped The sending patterns of the clients but actually we also escaped the receiving patterns of the clients since the past At arriving at the client can either be some real traffic from someone else or his own packet. In addition to the obfuscation of Activity patterns, the look of our traffic allows also to detect my snorts performing active attacks like For example, dropping of the packets We come from either use this to me The quality of service of the notes and piano malicious wire. While reward the honest one With Qantas mechanics Mixing but I will introduce in detail in future checkbox So just To summarize the key takeaways about the new mix it then named mix net is an open source decentralized mix network supporting various operating From messaging to crypto currencies to decentralized apps, etc, etc. The network is fully decentralized including that became To start in the blockchain they mix net ensures protection Both IP and metadata even against Traffic analysis techniques. So it gives Much better and unlimited on top. VPNs there There's no problem of law Since the only information Intermediate now can store is From coherus The packet and where he from But now More So there's No fear running an exit node since exit nodes do not connect directly. To the open web back to the service provider So they cannot be punished. by the authorities Finally, the Then mix it is permissionless and Mixed notes rewarded for your honest work.
So we have
our test net running where as of today we have around 50. notes. If you'd like to run your own node, please visit our website or the The documentation site in which we explain In data, how to spin it. Also our code base is open source so please feel free to take a look And thanks a lot for joining this talk and I'm happy to answer any questions? Okay
We are back. Hello It's a Real pleasure to hear such a interesting talk that covers a lot of ground. There's so many people in the hope community that are familiar with tour or at least are using Tor and yet clearly Tor is not the answer. Would you like to comment on that a little bit Anya and Talk. just summarize sort of where you see people making choices about what optimizer to use and maybe in practice As well as future Research Think Let's say that
So without a doubt this great Anonymous communication tool but I think that misunderstandings misconceptions Is that Torque gives you the No perfect traffic and the resist, resist It's not the case because those Never designed to actually do it. If you're gonna look at the poor white paper, which was published, you know, a few years ago, and you will see that they actually very clearly state that torrid doesn't aim to solve the end to end relation and problem and the traffic analysis problem. So, there is great but if you would like to be anonymous In the presence of very powerful adversaries like the NSA Then you need something more powerful like for example, the man separated. Of course that makes sense network which we're building is both for low and high high latency But I'm pretty sure some You know people listen Today to the talk myself I have this question whether like makes us Right now can replace store would say no makeup networks are for very simple decentralized apps messaging cryptocurrencies and so on. But they wouldn't be still the best for browsing the website, but this is still like work in progress. So I think Torah makes sense where they can actually exist together in Pilar.
Thank you Thank you. I think that's a very clear explanation. Um, one of the questions that came in on the chat They weren't To hear about the Loop cover traffic description but a basic question. I think is maybe you want to say a little more But a basic question There's weather, the weather Covered traffic is generated at node are on the clients As far
as a So both declines generate the local traffic and then those generate the local traffic. The look of traffic as I described It's almost like you're sending a packet to yourself. And this sending happens following the question process. Best way to intuitively think about that is that it means that the The way you're sending this local traffic Is is very natural It's not that you know, for example, every two minutes, you can And the local traffic or everything 30 seconds. No, you read this sent a certain average number of look covered traffic within some time you so for example, you you send 10 per minute or you send 20 per minute and so on. And similarly the the notes and both the notes and the clients and we do it because the liquid traffic on top of it of giving you know, giving you this obfuscation of your sending and receiving patterns and actually allow you to detect some active attacks. So for example, imagine that you as a boat or as a client You're under attack in which the adversary is trying to block the train. Coming to you because you're sending such requests. traffic to the south. You can very easily detect this type of attack because Southern you will notice that you're not receiving back loops, right so you can Realize that either there's something wrong going in the network. Someone is your target. Thank you. Without the look of your traffic You cannot detect that Because you never know whether someone wants To send you a message No. So In order to protect both the client And the notes they both are sending independ later on Traffic
I think that was
that was clear. Thank you. There's a question that I think might be related. It was a little bit of a detailed question but it was about denial of service.
Sorry. It was about denial of service or distributed denial of service? And the question is if the client is defining the amount of time or other characteristics and Could it be that the client could perform denial of service by overloading the servers in the network.
So one way to Stop this type of attacks and in general, the Sybil attacks is that the way the name makes that will be functioning That you eat. This is something that I was not covering in the talk because it's much more you know, taking are the days to add but if you want to use the mimics net you have have to have a credential and anonymous credential. allows you to use it. This is an A bit like your monthly subscription to use VPN So because you have this You know, subscription to Which allows you to use the mix set This stops a little bit the Then malicious users to try to perform this typo for no spamming. denial of service attack in the network. By just sending huge volumes of traffic. So although we are alive For discover travel to happen, we also have the mechanism Which can, you know, prevent the Sybil attacks in this denial of service from the clients The network Just to stop
Okay Yeah but thank you So We are Question about incentives. We actually had to separate question, someone really asking What was the end To run a node, you know Whether it's an exit node or just a note In the network and and even you know what, what sort of rewards might be built in, you know, sort of incentives to participate. Yeah. So,
in terms of the incentives, whoever wants
to run a mix
node needs to stake in them in the network and, and the this stake will be the base for everything. incentives. So because they make folks can stake they can either get penalized. If they're behaving in their malicious way and then their stake is being slashed or They can be rewarded if they act honestly and now In terms of the rewards what We do is the so called proof of Mixing so what we do, we have mechanism would check that if declared that you're running again. No twitch can support particular volume of traffic. We Expect you that you're going to do your best You know meet those requirements and we Check We check whether it is Notes actually are delivering the service which they're promising to deliver. And based on that, we're gonna share their work. rewards and of course their rewards will be will be proportional to the stake in the network.
And then in terms of
the proof of mixing how we do it, we actually use the look of a traffic for that and we combine it with vrF so the brief verifiable random functions and what we do, we send From time to time above the clients can do it and the notes again, something what you can think about like a trap message. So it's like a packet which is generated generated using the vrF and then we're gonna change Whether the MCs not processed correctly those packets if they did, then it means they act honestly. If they didn't, then this one They're trying to be malicious and we have no good argument to for example, penalize them by Especially the steak
Yeah swatting that those bad actors is obviously a kickass actor, you know exactly and
the rewards are distributed In the network, you know according to how much someone's take, but of course it doesn't matter whether you're running an exit node middle note or the note in the first layer.
Someone was asking. There's a lot of interesting The Loop cover traffic is As you can tell Someone was asking in the chat Question saying that the traffic through the nodes is going to be ordered. I think you mentioned that and how does that fit with the loop cover traffic looping back to the source. So I think they're looking at the stresses between the ordered traffic and you know unordered Traffic
I'm not sure
what the person made by ordered so maybe I will repeat this thing so the traffic is flowing from the first time They are second third and so on so on. So as many loads you have the traffic is flowing from Plus players. Now if the client is interested The look of a traffic it's very easy. It's like a normal packet. So it's gonna go through all the The layers in terms of them. Note Of course If this has to be done a In a way which cannot be you know, distinguished from how the other packets are behaving so if it makes note in the middle layer is sending a packet, a look of a packet then obviously He's gonna send the next layer right and this packet will have to go in this same ordering of the layer. So if for example it makes at layer two is sending a look packet, then he gonna send to layer for And then layer free to the next one and next one. Now it's very easy to start thought that there would be a small problem of the last layer right if you would have The last make the mixing the last layer sending the packet immediately. To the first academic In the first layer here probably the mix will be To realize that Wait a second. I'm ready. Think now a bucket from the last layer, but not from the So there is something wrong going on. And that's why we add for our mixed network The so called gateways which facility They, the the like they act like the entry points into the mixer network and the like exit notes from the mixer. So before the first minute In different domains in the first day we receive a packet. This packet will go for the gateway. So now When the client wants to send a packet, it's going to be client data. The first layer and the same Be in terms of the back exhibiting, they make setup so they go Go last layer gateway So service provider so Now Thanks to that, even if that makes any sense I'd say the last layer will send the loop cold traffic you're gonna give it to the gateway and the gateway can pass it to the first layer. So there's no problem that the MCs have somehow we'll be able to distinguish that this look packet belongs to a client or went out.
That makes a lot of sense. So the ordering is the is really handled very well by the by the whole network. Someone that was curious about The ability to use nim on mobile devices they are sort of focused on Battery use and you know data traffic Because we know it can get very expensive is this firewall do you think? Yes, I think this is an excellent
question. I don't have a precise answer for that question because this is actually something that I am very interested to measure and to see
Of course we have to
send some because of this cover traffic, some constant Armando. traffic into the network. However, our phones When we don't use them a lot of apps which we have still, even when we don't, when we don't use them, they try to connect to, for example, keep up to date with what's going on. They have to connect with the server service provider and so on. So, I think I wouldn't say that right now I can promise that name will be for sure good for the mobile clients, but this is something good We'll be definitely investigating and checking whether it is possible to have an implant on the mobile phone Because I think a question about the battery life is a very For a question, but this is something that we have to measure what Once you know we have everything running in place Thank you. Thank you
a question that is a little bit related. It sounds about energy use but it's about traffic. The question is about How does the overhead of loop Cover traffic you've been describing Compared to the overhead of free example an ITP node or each client is also a relay. So I think it's maybe looking for a comparison rather than an absolute traffic.
And I mean, they did the comparison between ITP and
Make sense? These are a bit different designs in terms of ISIS question overhead or flow traffic. I'm not sure I really understand what the question meant with the overhead of their IP To keynote, so I suggest the person who has that question if they can drop me an email Like, clarify a little bit what they meant and probably Be able to answer this question because now I don't understand it. fleet. I think part of it was
Really just comparing The extra inefficiency, I guess of loop cover versus other methods. Yeah, I mean they
the corner traffic, definitely no ads. A little bit of overhead however, and one very important property of the mix central equipment Using and also the reason why we decided to use the continuous time mix as and, you know cover traffic managed by the person process is that once the network grows And there are more real users who sent more real messages, what happens you can tune down the amount of covered traffic you're using, because the volume of the traffic going through the network is already so big that your anonymity is very good. We start with a covered traffic, you know, to increase the volume of traffic going into the network, just to make sure The DNA will be good. If there will be a lot of users using them, etc. you can tune it up and down depending like what the requirements for applications are.
Yeah, actually that's, that's I think a really good point. I think if I understand what you're really saying is that the the overhead really depends on how busy the network is because it's easier than theirs. Less overhead for them exactly exactly the
previous makes network designs very often assume that you have a constant volume of traffic which you have to send to make sure that your mix network really gives you anonymity at them. It's but different. We You know, when the number of users using the mixer is smaller than obviously we need a lot of cover traffic to like keep up the volume and you know, make sure that the anonymity will be good. But once there are more and more users joining and more and more real traffic going into the net Then you can just reduce the amount of covered traffic so you can reduce the overhead caused by that. Right? Yeah. Thank you. So
the Let's switch a little We had some questions concerning things. I think they're basically related to things concerning collusion. Also concerning bad actors even at a single node level. And so the question I'll read here is who ultimately handles the stake distribution and network so if a node is dishonest Or if two nodes are colluding, that type of thing then who is responsible or how is node reputation handled and how and I think a related question Sorry I'm getting a few points here. But I think a related question is If clients are able to report potential misuse, how do you know to trust the clients because they might be lying. Yes,
so what happens is that's also one reason why we use the VRS To generate the loop packets which will not be used to check the honesty of the mixers and by using In the vrF to generate those fluke packets, we're short that The clients, they cannot Try to find the mixdowns so they Both the client can prove that he sent actually a look message to check the, you know the honesty of the mix zones. But he cannot forge that pocket later in time right? So this is handled by the vrF. So this ensures that the honest clients can prove it The mixers are dishonest but this honest clients cannot frame on This makes sense. And in terms of the question of this tech distribution and The hook gets notified of that. That's why we use Chain. So what happens is Then mixed no They will have to from time to time Publish to the The clients that are the users of this Network some of you About what packets they observe flow for them and this information can be Then verified by the clients So the clients can see whether Measurements route packets which days Sent were really processed by those make sense and if Not then they can, you know, raise an alarm and we have to validate Data is for handling the blockchain. And if the client sees that oh my look packets which I sent to check the honesty of the mixers were not included in them. publish on the blockchain but they make sense. Then I can come, you know to the village Data is and make a complaint about the notes.
Is there a research on the the relative quantity of things like illusion or bad actors in I guess not so much in that maybe there isn't an in network but I think in the Tor network In other words, we know that that state level actors are our big concern that we want to protect against but we know There are more. You know, maybe innocuous or Eric, you know, like the script kiddie equivalent of bad actors, so do we know how much that goes on?
I mean you mean like
how many clients can be married To make sure that the network will be so okay or how many nodes can be mined Well, that's
that's actually probably a better thing to talk about because it's more on the technical side. I think I was more curious from your research, the extent to which bad actors are present in real networks. Words. Yeah, to be honest right now, we didn't
take such measurements. You know, to see how many actually Internet virus can be bad actors. This is for the future work what we've been rather simulating Then is how many nodes can be, you know how many nodes can be malicious In our network Yet we still can ensure the anonymity So here you're looking at two separate things. Big Swan topic is malicious. Notes open from active attacks. So for example, drop the packets The other question is this And malicious notes. So the notes which don't perform any active attacks. They just sit and observe the traffic flowing and the question you know, when you have the active malicious nodes, the proof of mixing will detect them. But the more tricky question is What if you have this silence? No With just look at the traffic, they don't perform any active attacks but they would like to try to trace their clients. So what we've been doing we've been simulating a little bit the second behavior looking like what if 50% of mixels is malicious What if percent of myxomatous malicious insider network. So save but looking at how many Actually nodes are malicious in like real deployed network. We didn't do it yet. You Tell us a
little bit more about the tests network or the you know if you have a code pace or something like this to do this testing and simulation and how those.
So the simulation for like testing of the you know, safe knows which Try to like trace the packet. This is done internally, we have like a simulator for the mix network. And for now we just do those simulations internally. In terms of the tester, there's obviously a test net running. If anyone wants to run a node, they can do it with that. Then try, you know any analysis in terms of attacks on our test net, just the internal one, the simulator and the simulator. What simply does is it mimics the behavior of them actually makes sense for which we'll be running in the future. So then we can always say we would like to simulate this many malicious nodes and see, for example how often it happens that When you pick a random path, it's a fully malicious path. So all the nodes are malicious right and we lose How often this happens given various percentage of the maliciousness.
Thank you. Yeah, this has been a fantastic discussion. initiate the presentation, the pre recorded part and also all these questions. And thank you to the audience. We have some fantastic questions happening in the matrix chat and I hope I'm doing Go pay john was conveying them to you later it will get more sophisticated in the program when we might invite some questions into the zoom. We're still warming up on that. That level of sophistication. So I think the only other thing I want to make sure you do is mention a website or email or anything else or papers, anything else where people would go to get further information about that. Yes, if
you would like to visit our website, it's limted dotnet On the website, you will find links or telegram room you're gonna find later Links to the documentation which can How to if you would like to spend a mix. Not on around you can find a link to our open source code base so everything is on the web We also have the medium account in which from time to time free posts on blog. So if you want to like you know They even more in depth look into how the nimac makes sense. It's working. And so So I invite you to do And of course if you have any questions, just feel free to send me an email or to ask me about telegram and I'm more than happy to to answer all your questions
thank you Well, thanks for being with us. Thank you for submitting your talk to hope. I know the audience has enjoyed it. I've been speaking with Anya matroska, who is someone who would done her PhD in anonymous communication systems. University College London and I think we've been hearing for a while now. is focused on resistance to NSA. Global adversaries within them mix now. It's been a true pleasure. Thank you for being with us, and we'll say much for having
me and thanks for the great, great questions to do that. It's been a pleasure and we'll be
back at the top of the hour.