with quieter, but it's not just a meme competition today. Of course, it's a mean meme competition. So you got the best people prepared here. We have people joining in, Diego left us, but we have Scott joining us, we have VTNerd. We have, of course, the National Security Agency giving their best memes today. So I guess before we start, I just wanna make sure that everyone is sort of set up and ready to go to the greatest extent and that yeah, I guess we can have time to introduce each other's too. This meme competition will be very similar to the meme competition that we did for Moneroversary. So if you saw that, you are ahead of the game. I will distribute meme templates for all of our participants to fill. And then after they fill, I will give a chance for the audience to vote. Instead of last time where we had a poll, I think we're just gonna do a thing where people mash their votes in the chat and we'll see how that goes. Because you only have 30 people watching. If we had thousands of people, then I think a poll would work. But we can just see how many people vote for which specific number in the chat. Among Lee and Scott, have you had a chance to review the instructions so far? Yeah, I read the read, sorry, but the read me, no issues, straight forward. All right, perfect, that's good news. Yes, I have all this. Thank you so much for joining us, perfect timing. Yeah, I think people are gonna be excited for this meme because why wouldn't you? Of course, everyone's gonna be excited. I am just getting everything situated on my end because I don't have anything to help me out. This is a very complicated process. Memes take a lot of work to get ready. Yeah, I'm super high tech. I use PowerPoint and everything, it's crazy. Just like last time, where we were using PowerPoint to arrange the memes for people to vote on. Nothing but the best for the community here. Okay, looks like I'm almost situated. Vic has not joined us yet, which is odd because he destroyed us last time. Vic will be joining us. He's probably busy sending out a tweet from the Monero memes account, I'm sure. Sorry, not Monero memes, the cake wallet account, which is basically a meme account too, I'm sure you're aware. So, title view, let's get everything going here. All right, I think everything is situated on my end now. I know you're all waiting for me. I guess, if it's just, oh, Vic, perfect timing. We were waiting for you. Sorry, I'm late. No, it's all good. Vic, have you had a chance to log into NextCloud and see all the files that are there? Yeah, I see nine folders. Okay, perfect, nine folders. And I did not peek. I did not peek. You did not peek. That's not why I'm late. If someone does suspiciously well, you can blame it on them cheating this time. They were given access to the ability to cheat this time. So, hopefully they didn't. We're gonna have to trust that the Monero community is a trustworthy bunch, otherwise, big problem. So, that being said, let us get started, shall we? I'll set a timer. People are sending messages, hey, all, yes, Vic. So, under the meme competition folder, which you're not able to see if you are just watching the live stream, but otherwise, you can go through under, yeah, the DEF CON 2020, you have a list of nine folders. I am now giving everyone permission to open up the first folder, folder number one, and there is an image in there. I am going to screen share this for everyone who is in the live chat. It is a meme. You have a few minutes to, yeah, you have a few minutes to make the best thing out of this meme that you can. Actually, screen one is actually the preferred. All right, so I'm sharing this with YouTube. You should be able to see, I might have to go back and forth here, of course, with my different streaming computer. Nope, never mind, it does appear properly, perfect. So, all right, so that's a meme that you're gonna be building on. You have five minutes, so let me start the timer, and then you will put the meme in the same exact folder that you did, sorry, you'll put the meme that you create in the same folder. Make sure you assign a random number to it. That's the one that the participants will vote on, and then, of course, include your name, so I know who ultimately wins. That way you can't take credit, even if you don't win, because that would be horrible, of course. All right, what are our first impressions of this meme? There's a lot that can go on here. I've never seen this meme, I have no idea what to do with it. Yeah, that's kind of the fun, I think. Sometimes it's funny, it is sometimes funny when everyone does a completely different meme and some of them aren't even funny or relevant. What do people in the audience think of this meme? What do we think of two guns, well, three guns in a car, one says something, other two guns turn around, and then the other one's silenced. So what format should it be saved in, the same JPEG? JPEG or PNG, whatever you want, and then upload it to the same folder, I will share it and arrange it such that people can see different numbers and vote on them and things. I hope the naming conventions. But make sure that you name the meme, the number one, colon, or random number, and then your name. Okay, Mac doesn't let me do colon, so I want file names. You can do a dash or a dot, doesn't, you know, maybe a period is fine too. We have no comments, there we go. Good meme, thank you, Andres. I appreciate you liking my meme choice here. We'll see if it's a good meme depending on what people submit. Of course, I'm wearing my putting the fun and fungibility shirt today. Saved the normal Monero one for Sunday when I'm giving a talk about mineral coin-based outputs, which are much less fun than memes, I would say, but so be it. This is a problem with the meme competition sometimes. It's all funny. Everyone will laugh when the memes are done, but in the moment, everyone's busy just working on them, trying to think of something good and they're all stressed out. I need a co-host on here just to do banter back for it. All right, that's submitted. Cool, I see yours. Now I get to do all the work of arranging them in a way where people can vote. Without giving too much away, Vic, this is a Monero meme you came up with. I couldn't think of anything Monero-related. I'll lose that one. I don't know how. Somebody makes that into a Monero meme, hats off to them. This is a, that's a tough one. So I just went the general route. Okay. Yeah, hold on. Somebody on Twitter just corrected somebody. It's just saying it's Verge currency, not it's at Verge currency, not at Verge, like it matters. Oh gosh, what did you, what did you do, Vic? Are you embarrassing us? No, I'm just reading. Is this from the cake wallet account? No, nothing to do with cake or my account, just random tweets. I know you're secretly making a Verge wallet in the background. I know your ultimate goal is to get the trust in our community. Exactly. Hopefully they'll accept me one day. You know, it's a very prestigious community. You got to build from the bottom up. You got to start with the basic stuff like Monero. You got to make wallets that anybody will use.  Eventually, with enough resistance. Welcoming to criticism. Anyway, let's not talk. Who's all on? Who is everybody? It looks like someone submitted what is the naming convention.png. Name it 01 dash or whatever and then put in a random number and then put in your actual name. The reason for the random number is because that's the number I'm going to give the audience to vote on. And that way, once I figure out which one wins, I'm able to figure out which one actually wins. And then I know the name then of who submitted it. Yeah, I was wondering where you saw the, what is naming convention? I mean, that was close enough. Who picks the winners? We're going to have to chat, spam the winner. And if no one votes, then it's just going to be me. Which is biased because I know the vote who picked the memes in, I guess. So people better vote. So you're saying this is centralized, huh? It is a very centralized. Well, that's why I thought we were just going to have a number and then no name.  I guess anybody could claim the number in the end though, but... Yeah. So this way, Justin can't pick favorites, huh? All right, Scott, how are you doing? Good, I am literally just a couple of clicks away from uploading one click away. In the meantime, look at this shirt I got from Cypher Market, Diego. Very nice. Diego is just with us. Walking all the noobs with how to use Monero. Did you say just use cake wallet? That's it. He went through the Monero GUI. He didn't go through the cake wallet. You said noobs and easy. He was complaining about the GUI as he was using this. I told you, for a cake wallet, I wanted a slogan to be four noobs by noobs. That's a good way of putting it. Force refreshing. Let's see. Oh, I see it. Download, it's fine. It's not named correctly, but it's fine. Okay, you have three numbers to choose from. You only need to get better at general. Oh, actually, Isthmus just submitted it, it's never mind. Right. Isthmus, okay. It's really difficult to arrange these, as you can imagine. I'm doing my best. Maybe I should specify our next time to do a two-digit number. That way it's not gonna take the entire slide. All right, oh goodness. Scott, did you take yours down again? No. Okay, one second. Well, this mine was deleted. Espionage within. It's fine. I assigned you a random number, so you're good. I remember which one of yours, it's all that matters. Okay, time to screen share. And if you are on Twitter, sorry, not Twitter. If you're on YouTube, get ready to spam which number you believe is the best. All right, so let me share the screen. All right, screen sharing right now. Option one, option, well, not one. Option two, I'm not shooting off my mouth. Wonder who made that one. Option 52, fungibility? Question mark? Option three, Manero would be better with proof of stake. Or 1337? Oh, I got the same one. That must have been Isthmus. Did I not get yours? Scott? I don't see mine on there. Oh, damn. Whoop. Just write a exploit move for I to program. Here, let me refresh. Oh my gosh. We may have a latecomer. Pretend you haven't read any of them. Course refresh here. Yeah, mine is there and the number one folder. We're doing for sync. I don't see it. One minute. Let me see if I can get it. Yeah, I'm not seeing it. Sorry, everybody. We'll figure this out. Probably like ran out of storage and yours is like, oh, no, I see it. Okay, that's good. Okay, it's fine. Let's see if I can copy this in. Copy. I mean, the meme not being visible to outside observers is pretty on brand from Manero. Last option, late submission from who knows whom. What if I were merge mind? Thankful for today's circa 2014 at the bottom there. All right, so you get to vote. You want option 252, 313, 37 or five. You need to vote in YouTube. Put it in the chat right now. No one has voted yet, so we will see. People are quiet today. Come on, put in a vote. It is essential. It's your civic duty to vote on memes. Hope you're able to see the memes well enough, given how I have to arrange these. I think we're gonna do a wide one next so I can try and fit them all better. Well, we have 24 people voting, but no one actually that's paying attention. They just have it all running on the background. I'm gonna give people five more seconds to vote. Otherwise, I'm gonna move on. And I'm just gonna choose one like the dictator I am. Like the dictator I am. Okay, oh, can't read the text. Okay, well, let's just crop the bottom of the meme, I guess, you see it in every single one. So Manero would be better with proof of stake, or is this one here? Manero would be better with proof of stake, 1337. I'm not shooting off my mouth, number two. Fungibility, question mark. You have, what if I emerge mind by thankful for today? Or Manero would be better with proof of stake, two. Really, Vic, you like your words? You said vote, so I'm trying to help you out here. Congrats. All right, since nobody has voted other than Vic. Don't count that obviously. I think I need to be the person to decide, and I think I'm gonna choose the, I think I'm gonna go with thankful for today's circuit for 2014, congrats Scott, you won the first round. It was okay, look, Manero would be better with proof of stake is really good admittedly, that's awesome too, Ismus. But just the fact that like, this is something that actually happened in Manero's past history, right? It just makes it super, super relevant. So what if I emerge mind by thankful for today? I think is the best choice, and Andres, sorry, Andres, you came in too late. What if I were merge mind? That was the winner, and that was by Scott. All right, done with this. Let's pull up the second meme now. You can now open up folder number two. That's a trendy meme right now. All right, that's Bonjour. So now we get everyone in five minutes to start working on this one now too. And then I'm gonna try and make the template be work, sorry, work better with four participants. All right, it's better for four participants now. So we're good, the easier for everyone to see. All right, I'm in. All right, you're very fast at making these. I was wondering why on the live stream it was all me. Let me check to see, is the stream coming through at HD? I hope so, looks like it. I mean, the stream will be in HD, I just wanna make sure the quality, and that's a standard, I don't know, hopefully it'll be HD when I stream. So you can read text in things. We have a custom Jitsie server, but for some reason it still sometimes falls back on lower resolution than would fit in a pipe. So I don't really know what's going on there. Wish on you. I have absolutely no idea what to do with this.  It's not always just a Bonjour one, but sometimes it's like goodbye and then hello, right? So sometimes they're paired together, sometimes it's just this one. Oh, okay, interesting, interesting. Yeah, mine has nothing to do with the Bonjour. My text is helping to do with the meme. It's just random thoughts of mine. Of course, if you're in chat, please comment what you would put too. You're welcome to put your text or the meme that goes with this. You can participate too. Vic's obviously paying close attention, so he's gonna steal your idea. All right, let's start to get those in. Let me force sync. Let's see who else is added. So far I think I only have Vic. Almost there, just screenshotting it real quick. I'm gonna grab a beer in the meantime. I'll be back. Instead of a beer, I'm having a strawberry bubbly. It's basically the same, except minus all the alcohol. Of course. Did anyone see that Topo Chico is going to make spiked seltzer next year? No, interesting. Yeah, some people on the ZCashico are just more furious because they're really into Topo Chico. I didn't know this actually. I was drinking their twist of lime during the first live stream that I hosted for their future developer fund, and I was drinking the twist of lime, and they're all there like, mm-hmm, yeah, nice. So that's how I instantly got some extra, some extra brownie points with them, is by having my Topo Chico. What is that Topo Chico? It's like, I don't know, it's some sparkling water. They sell literally just normal plain sparkling water, and they sell others that have a few flavors, like lime or a few things. They've really been expanding a lot. They're owned by Coca-Cola, of course, so. It's non-alcoholic, huh? Yeah, but they are making alcoholic ones next year. Justin, did you get paid for this? Basically, I will say, I have not been paid by Coca-Cola, but my brother loves it so much, he basically holds it as if it's an ad. It's kind of funny, and I'm like, I have to be like, this is not an ad. It's just Nathan, it's a very satisfied customer for some reason. But obviously, I don't drink, I don't waste my money, I drink my Pepsi bubbly. They're gonna get my mind no matter what. Overpriced water, how about that? I was gonna say, C3 has like basically an essentially endorsed like drinker of hackers drink. Did you submit yours, Scott? I'm seeing VTNerds and Vicks. Once again, yeah, I see mine, Sir Hacks and Vicks. I don't know why mine isn't showing. It shows it's fully uploaded, but... That's okay, it's not the end of the world, I can just go through and... Yeah, worst case I can always... Wait, Sir Hacks submitted one. Sir Hacks over another channel.  Right after I arranged my grid to work with four people, a fifth person shows up. Sorry, that was just me. Ismus, are you... Wait, that was you? Oh, okay. Ismus on behalf of Sir Hacks. Okay, I see. I couldn't figure out what to do with it. I didn't want that associated with me. You're just throwing another Manera contributor under the bus. Got away with it for a minute. I mean, you would have had access to figure out how to get this channel. So it is theoretically believable. Would have been shocking, but also, weirder things have happened. But not that shocking. All right, let me arrange these, you know, instead of... All this arranges, one, two, three, four. It's not very difficult to keep track of four people, as long as you name them. My computer's really lagging for some reason. It's not like in this, but that's okay. Almost done. Oh, look at this. One of these is a little different than the rest. All right, we got some good ones. Everyone who didn't know what to do with this, it's a good set of templates here. All right, let's see. Sharing my screen now. All right, here we go. Make sure if you are on YouTube, please vote if you have too much difficulty reading these. Let me know. So the first one, Lightning Network is private. Who needs Manero? Me? Bonjour. Actually, I should just number these one through four. Please continue to submit them the same way if you're participating, but we'll just have people vote on one, two, three, or four. All right, second one, Bonjour, Fungibility. Third one, if I use my Bitcoin from this hole, I become invisible. Take that, Manero. Bonjour. So we'll ask someone to explain that one later without giving it away. And then, fourth one, Manero releases new hard fork, ASIC company. Bonjour. Definitely a nice self-deprecating meme there. I like it. I like it. All right, so on today's- The last one actually makes sense. Now I get it. Now you get it. We're gonna have to start including an example that's not Manero related in this. So we have one vote so far on today's who's voting for number four. Anyone else, please, please put your vote in. But to some extent, this is almost like the OG Manero meme where someone was like, untraceable public ledger, or who needs privacy? And Manero bashes down the wall and is like, privacy matters, privacy first. Fungibility. So it's almost like this where you could be like, who needs, you have a Bitcoin person ranting at a meetup that's talking too loud about what type of privacy implementations are the best? And then you have Manero guy coming up from his whole being like, bonjour. Definitely a lot of scope for some other ones in this discussion. But I do like the self-deprecating ASIC company coming in with bonjour. Okay, apparently just one person is watching this stream. And so they get to determine which one is their favorite. I'll give it another five seconds or so here. But otherwise, Andres' vote for number four is going to be the victor. Clearly have to cater to their humor going forward. Yes. This person's a lot of sway. Vic, what happened? You're doing so well last time. I don't know, it hyped me up. These memes just don't work well for you, apparently. It's the memes, not me. Oh, we have a vote for number three, which I'm sure someone bribed them to come on and vote for number three. Wouldn't put a pass that person. All right, now we have a split vote. Do I need to choose again? Please tell me I don't need to choose again. Well, choose between two, right? What was that? You only have to pick between the two, right? Yeah, and have to pick between the two. Okay, so number one and number two are out. You can always roll like a dice. What's a dice to decide? I think it's good. Random number generator. Oh, do you need a random number? Four, four is a good number. Completely random. I am going to use extreme random. What's the name of that? Who's the one that does that? I'm going to use the super random. Although you're going to use Gavin and Driesen's thing? No, I'm going to use this Monero, sorry, this Google generator, but who's a person that, like, Walton Shane? Yeah, the Walton Shane. Congrats, I won to themselves for winning their own competition. That's a common. Oh, yeah, I remember that. Yeah, exactly. But I'm going to use the Google one instead, which is probably at least as good as a Walton Shane one. Three, three, one. Nice. All right. So that is officially Vic. Vic won that one. I don't know, I disagree. I like Scott's better. The eight-click one is... Science has spoken, science has spoken. Random number generator may forever be in your favor, Vic. How do we know Google isn't... Like, he could have Google in his pocket, too. I mean, this could be, like, this could be huge. This is a big conspiracy here. Yeah, you don't know my connections. Oh, that'd be intense. All right, so I need to put Vic down as the winner from number two. All right, just to prevent you from cheating, instead of doing number three, do not open that one. You shall go to number eight. What cheating scheme does that foil? Wait, there... Oh, there's somebody that... Did you already do this one, or what's going on in here? There's, like... There's two picks, and... Oh, did you combine them into one at the end? Yeah. Yeah, combine them into one, so you can just use the 0-8-1. Well, let's see how well this one will be received. It's like the opposite Kanye meme. Okay. At least one person likes it. Well, I'd like to include yourself. This could be dangerous, I don't know. Was that in the rules that we couldn't name you? Because we have to, like, implicitly... Well, now you can. Yeah. All right. There you go. I said you couldn't name people in other communities that weren't, like, super, super popular. Yeah, no genuinely harsh critique. Bonus points to whoever knows where that second screenshot was taken. Sorry, that second image was taken. I was not in a good mood. Is that, like, consensus or something? No, it wasn't consensus. It was a travel rule conference. I was on a panel with someone from Dash, someone from Zcash, a Bitcoin Core contributor, and I think that might have been it, actually. We're talking about travel rule. I don't know, I was just annoyed, as you can tell. Oh, well. First one's from Defconn last year. We'll see if there's backfires on me. It probably will. No, I'm not like someone from Rio will take that and then just run with it, so I should be careful. I'm starving. I'm looking forward to having dinner after this. Why did I schedule this at 6 p.m. Central? I'm... I'm surprised the NSA hasn't given a submission. They're just watching. No, that's my recording computer, so I thought it'd be more fun to actually include the logo on it. Just to prove to people that Manero has backdoors, of course. When we designed the Manero protocol, our first thought is how do we make sure they have the proper backdoor they need, so it's a critical part of the discussion. I genuinely do need someone else on here as a co-host to throw a banter backdoor. I really do. Where's Diego? Diego's like gone. Ruben from Zcoin's texting me. I can tell him he can still hop on, even if he just talks with me, just to make fun. You can still join if you want. Post anyway. Well, he might actually be hopping on. Oh, good. I think my life is easier and would end the suffering of everyone in the chat. They're dealing with some stuff. One of the best things that's helped prove to me, wow, the Manero community is really committed. They watched one of the... We tried a gaming livestream once when a lot of people in the Manero community played ZeroAD, which is like an open-source Age of Empires alternative. And everyone was too concentrated on the game and I only was able to share my own screen, so they were just watching a concentrated me play a game, and no one else was talking. And goodness. You're all alone, Justin. Yeah, but we had hundreds of hours of watch time on that video, and if people are willing to spend hundreds of hours watching this, then Manero has something going for it. By the way, I submitted it, but I'm sure I got the concept of the meme wrong again. I don't know. It's always funny when everyone has their own way of interpreting the meme. It really is.  It's going to be like, ah, Dad, you just didn't get it. Yeah, exactly. So Vicks comes every time. Let me see if anyone else... So we... talking about my daughter, when we wanted to name the wallet Cake, she's like, do you know what Cake means? And slang, don't do it. I think we've got all four now. I think so. I don't know why they're not syncing on my end, but it's fine. I can easily copy them from browser. It takes me like an extra half-second. Well, NSA ban has to catch up for you. That's what... True. I do have a lot of bandwidth going on over here. A lot of direct connections to people. Actually, I guess I don't need it all the way in the edge. Okay, one, two... I have three of them on here. I forgot to number mine. It's the last one down. It's fine. The most important thing, I guess, is that someone names it. I like all of these. They're all weird in their own way, but... And to be clear, I prefer if you don't actually look at them before the rest of the audience. That way you can save the surprise for everyone else. Otherwise, the stream is going to be worse. All right. Everybody ready? We have some good ones here. This is the best one so far, I think. Well, thank you, Ruben, for joining us. You're going to have to comment on some of these memes. I'm going to share them, and you're going to have to talk about which one you think is the best. I like your background, too, by the way. Maybe he should... Since he won't know. Yeah, he's clearly a natural. All right, let's... I'm going to share. Here we go. Three, two, one, sharing. All right. So the first one is, letting me do my 129th tweet about Zcash, and then bro, can you stick to Monero? The second one is, designing protocols to improve minor privacy, and then watching Mindful publish every payout transaction anyways.  The third one, Monero means money. Is that a real movie? And then the fourth one is, when you find out CLSat and Audit comes back great, and then when you find out CLSat won't be released until October. Your YouTube feed is just showing your Google search page. Is it because I see... I'm looking at YouTube right now, and I see the memes. What do you guys see? Oh, no. I see the old ones. That's weird. I guess I'm really behind. Are you behind? I guess I am. Yeah, I can put the live text to re-sync. Potentially, if it's not... Sorry about that. Go ahead. These are all really good. You all have did yourselves for these. Oh, sure. I can drop the link to the YouTube stream in here, so you all get it. So that's the YouTube stream. How old were you in the first picture, Justin? That was taken last year. Oh, what? I'm 22. Wow. And the second picture is around the same age as well. Yeah, it was in November. Yeah, I have to use that. That's one of my favorite photos, because I was just so angry about something, or just... It clearly went through to the photographer. Do you remember what you were angry about?  So we have two votes that have come in so far. Before I use those in the chat, Ruben, which one do you like of these four? I like the first one. The first one? Okay, okay.  And then sometimes I like some people through Zcash that are like, stick to your lane. Yeah. How deep are your connections, man? Another guy? Yeah. All those giveaways, you know, they want something back. That's awesome. So I just want to suspiciously say that when, when we're bringing in people who give a last minute vote, both times they're picking Vic. So... And Google random number here on Vic. So, but it looks like, you know, two out of the three votes that came in, including Rubens, went for the second option, number two. So the second option, I think that was who submitted that one. That was Ismus. Congratulations, Ismus. Thank you.  So it's funny that you were the one that made that. If there's, yeah, Ismus and I are the two people that... Vic, I see how it is in the YouTube chat, yelling at someone for not voting for him. I'm going to start bribing people there in the chat. You're going to start doing a giveaway for everyone. A random person who votes for me, it skits Manero. Yeah. Pre-staging Manero. It works. Yeah, it does. You're suddenly going to have hundreds of people voting in the chat instead of three. 3,000 votes for Vic. Exactly. Okay. So we currently have a three-way tie between Scott, Vic and Ismus. They each have one point each. Let me go through. Which meme do I want you all to do next? Speaking of which, Ruben, would you like to participate or do you want to just banter with me as we carry on your choice? I don't want to participate. You want to participate? Okay. In Telegram, I sent you a next cloud link. Okay, got it. Yeah.  I'll tell you a number. You can open up the folder and there's memes in there. So we already did number one, two and eight. Okay. Instead, let me do... Actually, we have to do this one because it's super, super popular right now. Open up number nine. Number nine. Let me share this on YouTube here. This one's a really popular current meme. All right. It's the Trump interview meme. It's a little different. I mean, I've seen different variations of this one. So let's treat the box on the middle right there as what's on the piece of paper the dude's reading. And how do we submit? Oh, I forgot to... You can submit by uploading it to the same folder. I forgot to prepare this. Did anyone actually use the... It looks like no one actually used the LibreOffice template. Did they? I did. Okay. Let me get that for you, actually. I'll give you a little extra time, Scott. I know I said I would have a template and then I didn't. So it's my bad. I can easily open up in Krita or whatever. It's not that big of a deal. Yeah.  Oh, it's...  I'm getting it. For those who are watching, LibreOfficeDraw is a very common tool to use for this because, you know, it's editable like PowerPoint or anything else, but anyone can have it without a license. So it's useful in that regard. Okay. Scott, in case you do want one, I did upload the template for you. You don't have to use it, of course. It's easier. Oh, I'm such a... Microsoft, I don't have open office. I have both, Ruben. I have both on all of my computers. At least on my Windows computers, I do need for work. So long as it's not 365 and you're paying Microsoft every month. I mean, I'm not paying 365 money, but some other people are paying 365 money. No. I am. So... Exactly. All right. BGC Laverra seems to like this one. They think this one's going to be funny. Let's see what Trump... Let's see what the word of Trump is. Oh, how do... Just a hint, you don't have to do this, of course. You might have a simple meme that only has something on the card. You may name who the participants are.  Sometimes simpler is better, sometimes complex carries across more clever memes. I'm trying to edit it with the insert tags. Here we go. Yay, my first submission. So you were able to upload there, okay, Ruben? Yeah, I think so. I'm in the download liberal office now. It takes a while.  Let's see. Okay, so I got one person. Actually, let me update mine real quick. I just thought of maybe something better. Oh, you haven't got to mine? Hmm. Okay, I see yours, Ruben. I'm not going to say which one, but one of these is a very... It's a very clever take on this meme that you would not typically see filled out in this fashion. Okay, I'm seeing submissions from Scott, Vic and Ruben. Is that correct? Yep. Did you say missing? No, I have your three. Submission. I'm working mine now. Give me 20 seconds. Got it? Yeah, I'm almost ready. I didn't know where to go with it until you said... Well, I still don't know where to go with it, but when you said we could name the characters, help. When you said I could do what? Name the characters. Oh yeah, you can either do or don't need to name the characters. Your choice. Okay, sorry, I uploaded the second version of mine. Okay, you have two... Okay. I thought something on this mark. Proceed to the context. Not an issue at all. I have no idea why yours are just not downloading on my computer, despite you obviously submitting. Yeah, I would say like maybe it's because I'm running over a VPN or something, but the progress bar shows it's fully uploaded, so... Hey, by the way guys, seeing the YouTube chat BTC Lavera, it says birthday today. Happy birthday. Or she, I don't know, it's their birthday. Hopefully this is a good birthday present, but I mean, I don't know if spending time with me counts as a birthday present. Maybe most people call that an annoyance. I have... Yeah, hold on. I feel like someone else had to do this one. So I have one, two... I have four submissions from people. I won from Ruben, Scott, Vic, and I don't know who... One of them is just called screenshot. Who's this screenshot? Who is that one, sorry? I renamed it, I don't know why I didn't stick that... Whoa, hold on. Okay. I like all of these, they're so good. It's really hard to fit five of these. I sketchy how I'm doing it now. So I'm just waiting on... Is it Lee? Mine should be in there now. I got yours. Okay, we're good. Give me one second here, we'll be... This doesn't fit very well, but it doesn't matter. All right, here we go. Time for me to share my screen. Here we go. You see, it's very awkward to fit five participants. So I'll have to read these again probably. You know, maybe I can just zoom in and scroll to the right. Oh gosh. The zooming worked for me. Ooh, PowerPoint hates me right now. Oh, that definitely does not work. Okay, it's fine. First one, I've downloaded and printed the complete Monero blockchain and you can see all of the transactions and then it's a blank sheet of paper. I would not have thought of this, but it is a very clever way to do it with the main part of the meme is just blank and it still works. Second one. The message passed is, Verge is the best, the very best. Look at this transaction graph here. And the guy too, it's like, what? Third one, Bitcoin's privacy set is larger than Monero's. What? Fourth, Trump represents a new comment every week handing some, a message to our Monero. Monero can have value because it has infinite supply. Our Monero being like, and then the last one is number five. TS, okay. I actually don't shield Trump coin. What's the, what's up with the first TS slash no. That's like. No, it's like top secret, no foreigners. It's like. Got it. People have clearance. Well, we do. This is a clearance only chat as you can tell. So just because the NSA van is here to help us. So we have, we have two votes that have come in. I'm sorry. Yeah, two votes that have come in, but they're. One new person. So BTC Valvera still needs to put theirs in. We have one vote from Febo. For number one. We have a vote from Andres. My take wasn't that far from number four. They vote for. I like all of these. They're all good. Look at Andre is trying to vote twice. That's not right. BTC Valvera. I'm waiting on you. You get to number one. Vic.  Hey, no influence. No, I didn't vote for you. Was it all three times? No, the last time they did it. They might not have heard it for me. Okay. Vic, you won with number one. I like all these. I would have voted for number four. We want to do one last one. Sure. Okay. Which one do I want? Open up number five. Number five. Number five. There's a folder in here that says do not use. It's very. Don't use that one. That was, I found out several versions of this meme. This isn't like the OG version, but it is really funny. And I had to just do it. But it's so tempting to open that folder anyway. It's like. You can open it. You can open and look at it. You just can't use it. I feel like there's something better in there. That one's just for Vic. You know, people that are going to win anyway. Just kidding. You can even look at it. It's the same time. It means this other one. I just thought was better. So I. But you know, on that last one, you didn't give names to anybody. So to those memes. So there's no way. Even though. BTC. Lera might be compromised. He couldn't vote for me. Which one always. I don't know. You just have a certain style, Vic. Oh, shoot. We don't have enough people participating for everyone to be a unique. Like everyone's a unique submission style. Yeah. Individuality. So is it worth looking up this meme to cheat a little or is it just like going to be funny if I just.  But like, I don't know how that would help you that much. Yeah. The bucket and the. The bucket is the. Bucket's a killer thing. Yeah. There's like five characters in this. My plots aren't that complex. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. I don't know. My plots aren't that complex. I want to know how long real beam generators like, you know, that people that start to use, they have probably like 12 hours of data. He mentioned like a meme. Sweatshot. Yeah. Oh man, you should have run a manero meme. Sweatshopper, the z coin, meme sweatshopper, which is competing against each other, like one of those old writer rooms. Just full of cigarette smoke see how do you do this it's not easy now if it's Mr. Scott meet you know win this one then we're gonna have a problem because then we're gonna have a tie again I won't win I have literally no clue what to do with this meme there's too many characters this is where we explore you know community how out of touch they are do you follow memes or something are you the one creating all these memes you've got the meme like a sweatshop going on that's what's going on you're like I just find these on meme templates official usually so there really is a meme on me something's coming up with templates and just putting it in man these yeah quite the operation means are quite a business yes well read every every morning read says daily meme templates yeah I don't know if you guys followed the meme competition we had on Twitter we had 300 submissions is insane 300 yeah how did you even choose there's only one was it a was it a random was it like which ones are a lot of them were just re a lot of them are repeats so just scrolled by yeah I did get help from one other person to go through them the kid looks like he has his underwear outside his pants but I think it's just oh yeah yeah what is that you have to zoom in on this one and see what's up no it's probably a shirt no it's the same as his collar you can tell it's the same style so it says undershirt underneath is like well his shirt underneath is like sweater whatever sweatshirt sweater I always mix them up and my mom yells at me but I don't know the difference between a sweater and a sweatshirt confusing sound safari in chat you got to be just transparent about boy where your interest lie hey guys I'm sorry to inform you I am gonna be winning this one I am that confident man that was well you've won all the other ones without even you know basically no confidence so Vic won the last one too we need some actual competition for Vic get some people from the doge going community real memers like for Channing get some real already gonna submit like a bunch of different variations of Pepe the frog and they're gonna be everyone did you do that I seriously doesn't make sense no comment I am a professional video host okay despite all evidence of the contrary no idea what to do with this Vicks also is like the first person submit you should you should have a clock you should have a shot clock see it's hard for me to enforce because I can't like just blast across all your screens I have like had my phone on the side but that's not as intimidating yeah so we need to have like move right a custom yeah okay honestly I would like to have this friend was epic I should put like a LED on the wall behind on the wall behind I would love to have like a jackbox style meme game that'd be great oh yeah they would coordinate all this stuff that way I'm not going between three different monitors and taking forever and you know the like someone took a screenshot yeah that's like wait what who's in my house that's like a say is that the sound for like the Ubuntu screenshot tool stuff that's gonna be tool someone was not using snipping tool no one's messing up to that this is tough a few more submissions coming in now I just woke up this is too early to do this stuff what time is it where you're at 8 a.m. not too bad I messed up the time I thought it was 8 a.m. but it was supposed to be 7 a.m. cropping is a little bit where it's not relevant just to try and make them a bit bigger I have either all of them or all but one for sure you maybe you guys gonna go ahead I'm struggling this is an interesting choice when I'm looking at right now I get to check all are you sure Ruben yeah go ahead okay okay so we only have four choices this time let me share my screen I'm glad this sharing screen seems to work really really well okay screen share okay option number one bannero chain Alice is in privacy option number two tiger and transparent ledger advocate I love how they just put tiger on top of tiger does someone want to explain themselves there I mean you're welcome to stay anonymous but I had to explain they're more scared of the transparent ledger advocate than the tiger okay that is funny but I just love the idea that you but I don't know that I'm not at the sweatshop of mean farms I don't know how this works it's I got more laughs out of you doing it that way than if you did so actually actually what happened to number one that was it cut off the was that intentional I'm like I mean what do you mean by cut off seems like the the tips of the rabbit ears are cut off and like there's a black bar you know what it is this this doesn't actually exist sorry I see what you're doing there Justin I was trying that's like one of the it's like a background trying to divide and things it's just I should have sent it as a template background but like that was too much work so I just they're all objects that overlap each other annoyingly you can see there's another one over here all right third choice undisclosed double spend and transaction with zero decoys someone else want to explain this one or should I go for it I always want to give the the the person who makes them mean the ability to explain there's if they want otherwise I'll go and then the fourth one ring size 11 ring size 15 and triptych they definitely cropped off the whole bottom they're staring at some undefined objects this smart cut off the rabbit yeah it kind of looks like they're about to fall off the so that's how you pronounce it votes coming in two people said number one one person said number two they said number two for the creative use of the word tiger it's just so absurd actually the worst part is actually covered up the tiger so you can't even see it like it's like it was just grass there it's just like basically waiting on BTC Lavera to determine who they are choosing for and of course anyone else but like sound safari are you gonna vote you've recently chatted I feel like number two is like such a amazing combination of like so bad is good but also good in more ways than one okay BTC is that a vote for number two for number one he said tigers I guess that's number two okay number two okay so we have three votes for number two and two votes for number one so ultimately number two is the winner Vic was that you know I was number one yeah you had to fail really hard but not fail exactly but you guys get it number one it makes sense right Manero we're pushing Bitcoin users to this nice fluffy thing innocent thing called privacy and they don't understand there's this this very tiger chain lines ready to eat you up yeah yeah it's not just the tiger over tiger though it took a little bit extra explanation I think but overall I still thought it was really funny that like the thing that they were being introduced to is the transparent ledger advocate like they're so scared of talking to address ledger advocate they'd rather they're more scared of a transparent ledger advocate than the tiger you should have put like the manero like manero users or something in our community for those two people I honestly didn't get it until he was explained I was like yeah pretty good now that it's planned it is very good all right well that concludes our manero meme competition so I appreciate everyone who came in and participated Vic is still the winner because ultimately Vic won twice Scott won once and to be clear Scott and Vic tied once but but I mean really the only reason Vic won was because of Google's die roll whatever it takes whatever so apologies Scott you put in all the work but didn't get any of the recognition there and then isthmus and pt nerd each one once each Ruben you didn't get a chance to point out why z-coins good no I'm not gonna she'll get like virtual tomatoes like I was expecting you to throw in some like really awesome why is he coins better meme good chance I like manero I mean I like other coins too but if I was brought into the group you gotta make a ruckus you gotta yeah I'm too nice all right so with the end of the manero meme competition that also concludes today's death con manero village entirely we will be back at 10 a.m. Pacific tomorrow on the same YouTube channel on the same twitch channel if you want to watch please come back and watch you know we'll have a lot of great events coming through to end tomorrow we will have a trivia night we'll have a quiz so we'll have another interactive event to finish finish off tomorrow evening and then on Sunday you know a bunch of other great talks too so keep an eye you can go to manero village dot org I'll put that in the chat here in case you have not been following the rest of the talks today and of course we're talk we're starting tomorrow at 10 a.m. with dr. Daniel Kim like we have talked started every day so always really great content from him so really really cool stuff going on so yeah thanks everyone who made it this long if you join just for the manero mean competition you join for the fun part maybe not the best part we can't we can't say that this is growth like useful in any way but it's fun and yeah we'll see you tomorrow so take care good job justin thanks justin


So hello, welcome to my presentation on the topic security features for UBI FS My name is Richard Weinberger. I am co-founder of Sigma Star Game BH and do a lot of cornering and Linux consulting mostly in the area of low-level staff and security and As a topic says today I'm talking about security features on UBI FS namely encryption and file authentication So first of all what kind of encryption mechanisms do we already have on Linux? on current level we have the well-known DM script we have the Little bit older crypto loop. We have e-crypt FS and these days we have FS script Which I will talk later more on in user space. We have encrypt FS and Veracrypt it is the the fork of Truecrypt and in Linux it is implemented in user space So this is what we currently have and now let's stick into it a bit deeper the encrypt and crypto loop Both work on top of flock devices That's the first no go for UBI FS because on the wrong end layer. We don't have flock devices So in the encrypt each block on the storage is encrypted, but always with the same key That's a that's one of the most weak points of the encrypt that you are reusing the key all time But the good thing is since it's working on the block layer Namely the layer below device of them every single bit of device them is encrypted But of course if you really really want to you can also use this on on empty tea when you stack a Container file on a UBI FS and then you loop mount it using the DM script and then mount a block Fist them on top of it like x2. It kind of works. I have seen this in the wild But I would not recommend it Then Also heavily used is e-crypt FS It's a stack twice the system. That means you have your regular five system such as butter FS or x4 and your over mount e-crypt FS on top of it and e-crypt FS then And does the encryption and encryption of each file the good thing is about it. It has one key per file That means when the encryption key is broken for one file, then you still have all You still have only the key of one file Beside of file contents encryption. It's it does also encrypt the file names But of course not the file metadata, so just the file contents and the file name on Linux Files and stacking can be problematic mostly because of performance reasons and Memory pressure in the case of e-crypt FS Each file content would be twice in the page cache one time encrypted and one time unencrypted and on On low power devices as used for you be IFS Memory usually matters and you don't want that overhead But it is perfectly usable on you be IFS and many people are using it so there's one One solution that is okay so next slide Then as I said before we have NCFS and we are equipped these running user space also work on double flock devices But there's no that's usually not what you want on your embedded system I have never used them on an embedded device. Maybe it works like charm, but I doubt it So now on on FS script It's rather new It's it aims to be the successor of e-crypt FS it offers more or less the same feature set But with far less overhead It was added to x4 some time ago I think it already one year ago and the encryption feature is directly Implemented in the file stem So you don't need that the stacking of e-crypt FS and you don't have that much overhead But in FS script you have for each Directory a policy and then you can encrypt other sub directors So you don't have to encrypt the whole first one tree You can have multiple encryption from multiple directors the main the main use case was Google Android and Chrome OS For example in Chrome OS that the home directory from each user is encrypted so first when I thought about adding encryption to UBI FS I Thought it would be a good idea to implement something like the M-crypt for empty It shouldn't be a big thing just add a new pseudo empty device that sits between UBI FS in the real entity and it should do more or less the same like the M-crypt does But the downside is you have then again one single key for the whole empty So you don't have a key per file or not better Dynote then there are small corner cases for example on the end you have to deal with empty pages So you you you must not encrypt all the ff bytes and write them down That would be a problem Then again stacking when I add a new empty layer Then the stacking is deeper. So on a second thought it just didn't feel right and I Dropped it that idea again Then I finally concluded that it would be a good idea to implement it using FS script or FS script before that it was called FS script though and now it is called FS script So I always mix it up now a brief history on FS script as I said it was a Feature of X4 it was added in 4.1 It's its use case was replacing the M-crypt in in Android N and get more Facility for example, you can can encrypt each home directory or each each application directory Then It was still part of X4 Then later the F2FS guys thought it would be a good idea to support file encryption too and then they copy pasted the X4 crypto stuff in territory and then I asked on a middle list whether it would be a good idea when I do a third copy Then I said no, let's do it in a generic way and then It's got moved out into the FS script or sub directory And now it is a generic framework where you can implement FS script of FS script for your file system So now a little bit more on the features as I said you can apply on each directory a policy This policy describes with with what key and with what cypher modes Every single sub directory and sub file is being encrypted and You you load a master key for each policy and then for each I note from the master key a new key is derived So we have for each file a new key that makes the next attack vector using Requee attacks much harder And a master key is provided by user space using the keys kernel sub system Maybe you don't know it and the kernel has a sub system that is called keys. It's a really huge subsystem where you can manage encryption keys and also generic keys you can Load a key from user space and then you can divide and then I can define Which threads or other users are able to use that key in what way and FS script is using this Framework and there's a system call. It's called key control and there's also a user space tool It's also called key control where you can carry Update and manage your keys One interesting property of FS script is That it also works when the key is not present. So when you would Do a read directory on an encrypted directory and you don't have the key Then you still get that vector listing, but you see only the encrypted file names and When and with proper permissions, you're even allowed to unlink that files The use case is rather simple and on Google Chrome OS You want the this admin being able to delete a user home directory even when you don't know the password That's where this feature came from And this little feature made it for you by FS really hard, but I will Explain later in much more detail So and also a good thing is We have XFS tests for FS script and we found really a lot of issues between UBI FS X4 and and F2FS where they all implemented FS script in a little different way For example, we have new new return codes for example E no key So when you try to do read a file where we don't have the key then the first time Returns E no key, but it could also return a excess a perm and whatever and it would be a good thing when all five systems Would return the same value. Otherwise, they confuse user space in a hundred ways As I said, we have for each. Oh, sorry. We have for each node a new key Much more better than using a single key here The downside is Currently only file contents are encrypted not the metadata that also means not the extended attributes We could add this shouldn't be a big deal, but we should get a general concerns I can do it for UBI FS, but then X4 should also do it and also F2FS so it should be defined what to do and No identification of data, but I will Talk later on that in much more detail by default if F crypto just supported AS AES 25 256 in XDS mode and for file names in in cyber text stealing mode This works perfectly fine for the Google use case But didn't in my embedded use case because on the small low power devices Doing a yes in XDS mode has to be done in software. It's really slow. So We added a new mode and 128 a CPC as if mode Because this candy off can be offloaded the most harder offload of you have on the embedded devices for example on the Friscale common devices or art mail and then the encryption is reasonable and fast. I Hope that there will be Support for more cipher mode soon, but currently we have only these two so as I said file name encryption Usually when you have a string and you encrypt it then the result of the encryption is is not a string It's just binary clever rash When read here and look up Get binary they won't make they won't be very happy Example when you're when you're a last tool in the command line returns binary. That's not a good thing so effort script Encodes the file name is in base 64 When you don't have the key that works perfectly fine, but encoding something in base 64 Bloats the string because you're only using seven bits instead of eight bits And now guess what will happen when I have a file name that has already the maximum supported file name length and I'm in trouble For example, he could FS ignore that use case and we just Junk hitting that the file name when you have a file name. It is too long. It just doesn't work in Fscript. They decided no we then we represent to the user a cookie and then during lookup time we don't use the The file name will use that that that cookie Because reader is supposed to return a cookie and everything is fine Then a little bit more on the user space API. It is actually rather simple We have just two IO controls these are your controls are better for a system Well, I can get and receive the policy so you can Can open a directory on your on your ex ubi FS or F2 FS and then run that IO control to apply a policy And they can also and read the policy back to double check whether it works And then we have the key control system call where you can load the master key and everything works fine The key has to be type of log on this is an interesting property I will tell later more about and Usually it's a log on key in your session keeping They're using the log on key because user space can only set it but not read it back There are many tools how to deal with FS script. The oldest one is e4 script It's just a testing tool for x4. It also works only with x4. There's FS script It's really large one and written in go For example, it does also a key duration for you Usually using the kernel interface you load the raw key into so the kernel doesn't care What you learn load an FS script the tool derives from your bus race or your whatever key that the master key But since it's written in go is rather large and for the embedded use case not really suitable So there's also a tool. It's called after script control. It's written in C and rather minimal that can be used on the embedded use case or just do your own We have written such tools in hundred lines of C code. So it's really not a big deal Usually you run it in the initial realm disk, which has to have nothing and I Hope that we get such a tools and sooner or later in busy box Maybe I do it myself depends on my time And now finally you be if I support it was done by David and me It's in since 4.10. Of course, it was much more work than I expected We had to change ubi fs and fs script and now we'll go in detail what happened to us So usually ubi fs internally assumes that file names are strings When as I said when I encrypt a string Then the result is no longer a string is just binary Now we had to change ubi fs to deal with the fact that they that stored file names are no longer strings And it was much more work than just such a replace Because there are many many places in ubi fs that assumed Implicitly that is this a string for example, there are places where it just randomly assigns an albide An albide because it's being a string and there has to be an albide and we had to find all these places Then the the hugest part was cookie support for reader Ubi fs has only support for six for 32 bit Hashes, that's usually not the big deal because when you face a hash collision You can just do a string compare and find the real hit but with fs script When I don't have the key I get from reader the cookie and then I have to do the full lookup Just with the cookie That's why we had to extend the internal hash by another 32 bits to get a larger hash where we don't collide and a Byproduct was now we have proper security and deltia support and being able to do export fs and in an improper colonel colonel nfs support this dissolution was When we compute the 32 bits hash, then we just apply another 32 bits and random number and that way we get a Long enough hash value We could also have used a second hash function, but it doesn't really matter for example x4 does double md4 It has a matter of taste. It doesn't make make the hash much better another small thing for The whole fs scripts subsystem was designed for x4 and assume that all IO paths are like the x4 IO path and Ubi effects works slightly different and so we had to teach fs script that not everything deals with bios and Now we have a second IO path in ubi in fs scripts that deals with plain buffers Now, how can you use this encryption feature in ubi fs? It's actually rather easy Just enable the config option config ubi fs fs encryption Then using one of the tools I manage apply a policy to a directory You can also apply it with a root directory to encrypt the whole phystem root. That's actually the main use case and then when you when you run linux Then you have to load the master key usually you do you do this in the initial realm disk when the whole root phystem Is encrypted or when it's just the home directory doing using palm during the lock on That's all we even have support for for for mcrfs But I didn't have the time yet to clean up the batches and push them to the waiting list But there is a batch that then it can create a properly encrypted ubi fs image with the mcrfs tool so you don't have to to build the root fs Doing runtime Now I will Show you a few bitfalls. They are just made up. I never Felt into them What usually is a problem for example when we have two users on our system food and bar and And the user bar has a secret file. It is being encrypted Then food can be still be able to read that file namely when When bar loaded his key and read this file and Food has the has the unit's permissions to read that file Then the file is in the D entry cache So we get the file name and this is also in the bridge has we get a contents And this is something you have to keep in mind That means even when you encrypt the home directory is using fs script. You still have to set up proper permissions This can be confusing or even better Doing log on time create for each home directory a new private mount point of a new private mount namespace so that the So that that the mount is completely hidden. It depends on a setup then One thing that hit us really hard is that the is the bomb key needs module usually The session key ring is being shared across all processes. It works perfectly fine But there's a bomb module That is enabled by many distros by default when you log in then this module Creates a new lock in session and creates also a new locking key ring a session key ring Sorry, it's a key type of type login and the key ring of type session and This module creates a new session key ring. That means suddenly the new locked in user Is not being able to use the key and all files are No longer no longer reliable This is a main problem in fscript and is is also known to the fscript maintainers That's the the idea to create a new key ring types, especially for fscript or Or just drop the keys support in general and use IO control It doesn't matter. We will see what the outcome is, but currently just disabled this this bomb module There's also an interesting deadlock Namely when the whole root file system is encrypted and in your initial realm disk You do the key set up and do a switch road then system can deadlock it can deadlock because of the following reason Up on first first access Of for example mod proper. There's a type where it should be off of the first file access of mod prop then And the IO path goes to the fscript code and of course when the root file system is being encrypted then mod prop needs Decrypted first then we go into the fscript path Where it is requesting the ciphers The cipher request goes into the crypto subsystem the crypto subsystem CSO. We have a yes awesome But maybe there's a better as implementation. Let's ask more prop again Then while while decrypting mod prop because mod prop for decrypting mod prop and it will deadlock But the workaround is rather simple just make sure that before first access you load that that ciphers a Workaround is starting the mod prop file in the new path before you before you switch route and The issue is gone and instead and the internet fact is also that this happens also when all Crypto modules are built in but We reported the problem and it's known and there is even a patch to get this fixed But I bet you will use it on slightly older kernels and backboard it so Keep this in mind And there's another problem For file name encryption Fscript is using the ciphertext stealing mode. There's a special encryption mode for as where the Where the result of the decryption is always equally long than the than the input Because for file names. We don't want to bet to the next block size. So we use ciphertext stealing this this mod is rather uncommon and not that often used and We found that a common driver had a bug and It didn't work, but it was fixed and I think two weeks ago Someone reported me that that you buy encryption doesn't work on his platform Then we found out he's using the admin crypto offloader and This driver had the same bug. So if the file names same as a suddenly in Klingon, let's please Retry without it the offloaders. I bet there are much more drivers broken We have in the crypto sub system a test case for that but to run the test case you need the hardware So that was on file encryption This this already is in mainland and works as expected now. We'll talk a little bit more about file identification and These are things that are not really mainline, but first we need to ask us when we talk about Talk about identification What do we really want to be authenticated? usually You have some strange compliance paper It says encrypt your files and authenticate them, but what does this mean? Does this mean just the file contents also the attributes for example the Timestamps or extend the attributes also that like to a structure. So Maybe when two files are properly signed can you swap them? Do you want to to have the whole file same authenticated or even the storage? It depends on the use case, but everyone talking about that means something different So there's no no channel of consents Currently we have on linux as I know three possible solutions Maybe there are more but I think it's just three that's them the integrity management measurement architecture email This is a system where you can sign your file contents and and store that Signature in the extended attributes and when the file was was changed without updating the signature you will notice Then we have two solutions on the block layer deem and integrity and where and verity Deem in the team Integrity is rather new it works in combination with the encrypt and it stores besides of the encrypted block Hashtag value I'm and I know that hashtag and HMAC for each block And you can you can find out when blocks have been changed without having the key Downside you need for each block an extra few bytes to store that HMAC Then we have verity. It works as far as I know only on read only storage devices So first of all, let's look at the M solutions as I said device mapper Assumes a block device so we cannot really use it on empty D Okay, we can stack but that's not so good, but we can use email on UBFS and it needs a few small patches So thanks to to Shasha and Oleski from Pengatronics who's for sending me these patches. You were faster than me. We're fixing that So this works rather well, but email has a few downsides for example You can still sign a file, but file file swapping is not always being detected And I think write support is also rather slow so my plan is a dream is Having the whole identification done in FScript such as UBI FS can use it in a generic way Because we want also file identification on on on X4 or a butter FS So I'm really not not a fan of an of an ad hoc solution Having fire identification was actually one of the goals of FScript, but it didn't really materialize us They just added encryption And nothing more happens. So we could use for example a yes go like counter mode to Have file contents encrypted and audificated That's easy Or is it's not that easy because it will blow the the file lengths and then when when storing in the in a right back Bath, we have to do a different space accounting, but it's still doable But it's just the file contents. We want something generic also for a minimum Protect files to the direct files whopping. So one possible solution is Just add an HMAC to each UBI FS node We have in UBI FS this common header each UBI FS node has this common header and in the UBI FS write bath Just sign every file system node and then we can authenticate the whole system. That's actually easily doable But it has a few downsides a Reasonable strong HMAC has 64 bytes and bloating each single UBI FS node by 64 bytes It's not really something I want to do usually the UBI FS nodes are rather small just a few bytes except for the data nodes these are these are larger one But this is a bloating I don't want to have and One downside we have in UBI FS and support for feature flex and different versions but there's a Let's name it design and it better the The UBI FS superblock that contains the UBI FS feature flex and versions also contains the common header and when the common header is Suddenly larger then we have the then we have the version field and a different offset and then in an old UBI FS Version will fail badly. Usually I want to bring something like okay. This is too new. I won't mount it and not a random oops But we can add a common footer for example As I said, I've actually this is a solution. I want don't want to have mainline. I want something with F script One idea is that we Use FS script so we we reuse the whole key management That we can that that we just have to load one master key and then derive from that key the Encryption keys for the files and also derive the the keys for the file identification and We just signed the the UBI FS index tree Because when the index tree is signed then we have the whole structure in a secure way and can detect modifications such as file swapping This idea looks promising But I need to do a prototype and see what the the downsides are because when we sign all UBI FS branch nodes, we have to compute a checksum after leaf nodes and Currently we can add leaf nodes to a branch without And rewriting the whole tree But when we now have the whole branch signed we have to recompute the checksum And then we have to rewrite that tree much more often that means we have to to call often the UBI FS commit Operation and it will wear down the the flash much more faster, but it needs some testing and we will see One thing that's often forgotten is the VFFs in the declaration For example when you have a butter FS and butter FS finds that your file is corrupt It will just return EIO and write some Interesting stuff in a d-message But actually what I want is a user space interface and I can ask for the state of a file Is this file signed and good and when it's not good, please tell me why Are there just a few bit flips was it replaced? So we need a better interface And that's something we need to talk with the VFS guys Maybe we can come up with a common IO control to decorate that state But that's also have to be kept in mind and And for butter fs we have already checked something and this needs to be fixed there, too so that was my presentation on UBI FS crypto and Stuff we have a few minutes left for questions. Are there any no questions? That's awesome. Yes, and thank you and if you have questions, I will be around the whole day