 Hey, folks, it looks like there can somebody else talk to make sure I've got my speaker working here. Hi, hello. Okay, I guess not. All right, anybody else. Hello. Okay. At least I got it on my end. Thank you to shank. My speaker keeps on switching to alternative inputs. Sam. There's Justin. There's. Okay, great. As everybody hold it. No, okay. This is not a good shit for video. I always forget that little lined rule, but we'll just do a special more a pattern just to keep people interesting. Zoom bombing. Okay. So we didn't, I did not do, I ignored my reminder to myself on Friday about an agenda today. So I apologize. Start with status on where we are on the various working groups. Just copy and paste something from up above there. Yep. Yeah, I mean, we started having this conversation. We were at the party at our last call and then partly on Slack over. The end of last week. About snapshots. And this is on the notary V2 OCI thread. The V2 channel men Santiago's discussion, but that was a follow up from the discussion that we had previously. Which was really about how you, how you should, how you should represent the concept of a collection in a registry. If it's from how you would represent it in a file system and whether that. Whether that affects how we get able to build stuff in a registry. Yeah, I, I was trying to figure out because I mean I think like we're all busy. We all see things we all read skim some documents and then we make assumptions around what that content is. It is hard to keep up with everything, especially as OS projects. I've been trying to be extra careful to say the stuff we're doing with notary V2 is, and maybe the notary word carries more weight than or more meaning to some, but we're literally just trying to sign content. We don't really care what the content is if the content is these other things great, but, and that's what I try to capture in that picture of the in the scenarios document. I don't know if there's just because I see this scope creep conversation come up and everything. I'm trying to make sure that I don't think anybody is trying to scope creep here I think we had a healthy discussion early on around certain things from Providence and others, but I think we're hoping we found a good balance for that. And I think that stuff like, sorry, the tough stuff looks a little more downstream and if there's a way to represent that in a, in a tough document, whether it's a tough document an S bomb because I know those, the folks are working on that then, then great. But I guess I'm just trying to figure out are we, is there still confusion is just a matter of reading more I see Trisha because you're but I don't see Santiago. Father up. Yeah, I'm not sure about Marie. Sorry, sorry, sorry, sorry, sorry. Yeah, sorry, I'm just saying on the call. Yes, sorry. Yeah, I'm just checking this. Trisha and how often do you talk to Santiago I know you guys, at least used to work together pretty closely. Oh yeah, I mean, I wouldn't say like every day but you know, fairly often we keep in touch. Is there any concern you want me to relate to him or what's the what's the story. I'm just trying to make sure that there isn't a concern like I don't believe we are, you know, trying to do more than just signing content. And if one of the content is a tough document calling it a tough document but it's not the right term, an S bomb or other things. Then that's fine. And I'm not sure if Trisha Santiago feels we are trying to do more or or not so I was, I guess I was you for him. Yeah, go on Marina. Okay, well just my understanding from the discussion was that he was worried that you're only going to support the S bomb format, and you want to make sure like you know more general formats could also be supported by whatever we come up with. Yeah, if you look at that scenarios thing that I put the especially the visual part where I tried to pull it all together. And I was intentionally use SB lowercase o M because I know in the working group that him and Kate are working on they were specifically using uppercase O and it had a meaning. And I tried to put as much text in there and generalize the icons and everything to say, I don't care whether it's Vincent's S bomb format that he's doing with red hat and quay, or, you know, case and kates that goes like, I think we all have got, I think, and, you know, I'm looking at like Derek's picture doesn't not, you know, others that to see are we an agreement that we are just trying to figure out like here is something that we don't care what it is in the registry but just we do say that here is a signature that says this thing is still what it says it was. And I think that's important. I think I think the more important point that we should address at some point is, is concerned about the snapshot metadata which is there and tough for a reason. It's not really there in no three we want right every collection, every bundle or image or whatever you put in there will have its own snapshot metadata which is not great doesn't give you the state like for example doesn't tell you anything about dependencies right, which versions of things go along with which other versions. That's a discussion that we should have. We don't need to have it right now, but I think that's an important security point that has come up at least twice. Yeah, I mean that's the discussion that I was trying to have with Santiago and I think it was a big. I think there was some confusion and unscathed no lack of clarity about that but I think it isn't. To some extent the registry has to. I mean that the snapshot has to be something that registry I would to understand if it's going to. But does it I think that's the piece that I'm trying to figure out like. Is that an add on that says one of the things that you sign is this other metadata document if you will. And all we're saying is that document is still signed the key is still valid because there's no revocation happened. And then a tough tool chain for instance, can do that kind of verification because at least the content was moved between registries is still said to be secure. So is it going to eliminate tough from doing something unique that they want to do or let's say Docker wants to do something unique or Red Hat wants to do something unique. You. That was the original discussion we were having about see now with thin and thick manifests and you. See that you're expected to do things in a registry is such that everything you want to refer to in an item that the registry understands about I. Needs needs to be pointed out. I need to consist of things in the same repository. The same registry repository because of how the authentication or you turn authentication. Well, you to retrieve a to retrieve an object from a manifest, you just have a shower and it's an object in the same repository. It's not, it's not just any object in the same registry that you're referring to. Right, but I'm not make cross cross registry repository assertions about something and then signed them in the current ACI model. Well, but a manifest is a single item with multiple layers, but the single item. So I don't know how that would span multiple repos an index. So you can't make cross review assertions about, for example, dependencies for. The dependencies are in scope here. I mean, right now the image format doesn't have dependencies. Yeah, so that the discussion was about. So I'll go saying that if we couldn't support any kind of dependency, then, or any kind of collections Damon then it didn't to paraphrase it wasn't kind of very useful for making the kinds of security assertions he wants to make. So enthusiastic about signing arbitrary are artifacts. Then have a helm chart that is signed and that refers to all the images by digest and that gives you a single consistent snapshot. It doesn't have to be an image function. It's a way how to how you deploy those images those images are properly signed even if they are deployed in some other set of versions. Yeah, that was more or less in this specific configuration of party images in with five specific digest. Make that aspect separate artifact and that artifact can that refer to other repositories within the registry or two different registries directly there are no physical limitations anymore. But then there's opening yourself up to a lot of problems with that because you either do one of two things, both of which are bad you either directly pin everything to specific versions, which as soon as their security updates for anything than every person who's gone and directly pin everything to versions has to go and know to update their things which is bad. Or you say well just give me whatever version the repository happens to tell me they want to give me at this specific time and trusting the repository to do that and not give you an old vulnerable version of something is also a big problem because you know old vulnerable software in like tons and tons of cases. So what you want is you want something where you can say effectively give me the latest version of this you want to have a way to say that and not have a repository that is hacked be able to roll you back to sort of the beginning of time, which is the, you know, which is the property that you, you want out of out of this and just having the helm chart example doesn't, doesn't address that. Well, that's the time step such snapshot function of the snapshot function, the snapshot function and a home chart that in specific digits of the images. That's one to one actually all in this far as I can see, it's just a different way to stop that. So timestamp is is a little different time stamp tells you the last time anything in the collection of the repository has changed. It doesn't tell you what change it just tells you there was a change. And in the context of some large, like registry that's being run by Amazon or something then timestamp actually is fairly meaningless because effectively it's always going to be changing because everything it's really telling you is it's making sure that someone's not trying to replay old information that, you know, that that was from before but you know it will always change because you know you're getting however many updates a second in Well, because the timestamp is a repository scope could just as well be at image scope. So there's two things we need to distinguish here I think there's some confusion, which is that. So we have different repositories in the same registry right right now we have time stamp and snapshot per repository on the registry. What we're talking about is timestamp snapshot for everything on the registry. It gives you very different security properties. Right, and it's the security properties that I think you actually want to have. And there's a, there's a natural question that we can either talk about now or we can leave till later about, you know, is it feasible like what what are the feasibility or other issues with terms of performance and things which I think it can be done in a quite reasonable way without a lot of like fuss. But I think the important thing first of all is to make sure we're all on the same page that that, you know, that we get a lot by having security wise that's important that you get by having this property where someone can't just go and give you the oldest version of something that happens to be signed with, you know, happens to be signed by a trusted party. Well, I think the scope of what we're talking about here though because there's there's certainly products and projects that are trying to do exactly that. All we're saying from a notary perspective all we're saying is at this point when we pull content from a registry, there's no guarantee it is what it, you know, from the original author. And that's the scope of what we're trying to do here. So, for instance, if I wait, why, why is this the scope of that was signed on Monday of two weeks ago. If I pull it today, it may, I just want to know it is still the thing that Microsoft had put out. If there's, you know, vulnerabilities in it, that's a separate thing that looks at it. And as long as the key that Microsoft signed with is still valid, then that's a valid state because it's always well, it's very hard to find no vulnerabilities and software is better with those vulnerabilities are impactful or whether you approve those. So, all we're trying to say is here is a finite thing. It is a single item which is what manifests represents it's an index which is a collection of things. And then we but we don't really care what the thing is it's just a thing. One of the things could be a home chart, which it itself has ways to reference other artifacts. Or in that case it's images, but that's all we're trying to say. I think that's, I don't think that's that's a different argument. Sorry, Justin, you're going to step in, I think. Yeah, I think, I wouldn't agree that that's all we're trying to provide. I think the discussion around the threat model. I mean, I think, I think many of us would agree that providing something that provides, for example, rollback protection is a really good idea. Assumption there is the key has been compromised in some fashion. No, no, no, just assumption of like whether someone being able to persuade you to download Windows 7 and telling you this is the latest version of Windows is not a good idea. If so, let's let's a good example. Somebody could have hacked the text of the time. I think, and in that case you're right that that's a somebody either if they didn't steal the key they just somehow got credentials, because there's two parts right do I get credentials to push to a registry. And then my ability to sign that as the original entity. So, we screwed up before we pushed up things that should have been so in that case it's still signed by Microsoft it's still wrong, and then it should get rolled back if somebody has hacked something but the thing they pushed in is not signed by Microsoft. That's the detection. If somebody compromised our key, then not only should that key be revoked but yes, as well. The protection in that is useful in principle just because the latest tag is the default and it's so widespread in the correct community. But it's not essential in that enterprise deployments tend to pin versions anyway. And to pretty much number one requirement of this project is to have working disconnected support, in which case we are giving up on timestamps or at least fresh times for them anyway. So, I think it's useful to have the timestamps and grow back support in that as an option. I wouldn't say there is a mandatory part of the security model. So, I missed a word you said in there you said working something support. It's the most important thing is to have working what support I didn't understand our all back protection or times times the times the mechanism of stuff overall. Yeah, so you have to have rollback protection that's that's true. And I'm sorry I joined late because of all the zoom changes which God I hate the new zoom. So, I don't know if we're planning on using zoom for future meetings but I hope not. But let me go back and, and, and, and ask something I wanted to say is because I kind of missed the threat of the meeting but it feels like we're rehashing things that we discussed in detail in the threat modeling subgroup. And I don't know that it feels like, I was there like, or was the threat modeling group supposed to present something today or this was came out of sorry, this came out the discussion that me and Santiago were having on slack. And I'm going to go back to this review to because there seemed to be a bunch of confusion about really about collections and how they should be represented in a registry and what and this issue of what's feasible versus what we should be doing exactly. At the discussion we're having at the last call we had about what the differences between it to other differences with a registry versus file system significant in any way. Right. Okay. I think the best way to try to resolve some of this discussion is because I feel like we're, we're saying not quite the same things were like, I feel like, for example, the, the examples that I'm giving or not the same as examples that Steve is giving and we're kind of in some cases talking past each other, which I think the scenarios and at times has been helpful with resolving some of those issues. I don't know if there's a another way we could resolve this given. I don't think we're going to be able to discuss this out well in the next seven minutes and get everybody to say yeah, we should clearly be doing X or should we continue this in the threat modeling discussion and we have our next meeting for those that are interested in that. I mean, I would like to base this in the scenarios in the sense that hopefully we've captured the right scenarios. If there's additional ones or tweaks we should capture that so we do have a way hey in scenario foo. This is what we're trying to accomplish and this is what we haven't achieved, or hey we've realized we did not capture this other thing in the scenarios we should add that because when I think of collections from a registry. We only have one way to represent a collection, a collection of things we have a collection of layers but I don't consider that's a persistence model a manifest or as a thing and index doors a collection of things. Now there's other technologies like Helm charts, which has a way to reference other things, but all but and those are and those may be viable conversations we should have about what do we think about collections but today I only think of the registry having one collect as a generic right because we're not trying to say we're specializing in one artifact type index is the only thing that we have that's represents collections of things that could be signed. I mean we're jumping from like a high level scenario goal like very deep into a specific design you have in mind. And I think that's part of the problem because from a threat modeling standpoint. We're not trying to presuppose a design we're trying to figure out what we need to make the damn thing secure. And I think I think that's I think where some of this disconnect is is coming from, which I think is, it's hard to see how we can resolve that without. Like, effectively having either a straw man design that we would would go through which I think would be a big. I think would be quite premature now, or, you know, alternatively to get the threat model together discuss what we want to accomplish and then see how the pieces fit together. There's, there's a lot that's left on the table. If we give up a lot of these rollback protections and I think it would, you know, it these decisions are the ones that haunt your organizations and your security teams. Your perpetuity if done wrong. And so we absolutely at least want everyone to be very aware of the problems they would have if they make a pretty drastic choice here. You're right. There's a certain part where I try and be careful with the design. I would think there's more of constraint. Like we're rebuilding the bathroom because we want to be better right but it still has to fit within a certain amount of walls and there's some pushing you can do in places. So we are trying to fit the are signing solution into what is a registry today. Yeah, but I think that's not. Yeah, I think that we shouldn't necessarily, I mean, we're going to make some some changes. We could design you as much as the question is what's actually necessary. Right. Well, we want to run through this exercise. I mean, I know we don't want to finish all like the design and stuff up front, but we're trying to run through the exercise at least to know what kind of stuff we would need to add to the registry in the future. So it's kind of hard to do both at the same time, but I'm here because I'm interested actually in the threat model discussion, because I think a lot of that is relevant to figuring out like, like I know a lot about how the registry works, but I'm not quite sure how it's protecting against and how we should be thinking about some of these endpoints and other actions. Yeah, can I can add something on top of that, which is maybe it would be good idea to say our next meeting is going to be about threat model. We should hash out this issues. What do you guys think. Well, we did say this is going to be a status summary of some of the breakout so Yeah, I mean, yeah, we should definitely have a I think that makes sense. Okay, so we are two minutes left for what we said we reduce this purposely done a half an hour is to give times for other people to do the other breakouts. There's so one, Justin, thanks for joining. I, you had one comment on the scenarios if you could help me with what you're proposing there. I would like to get the scenarios closed down. So not that it's locked, we can certainly iterate, but there's a lot of changes that you would propose that I did a bunch of edits that I just like to get merged in. Likewise, if you guys can do something in the threat modeling working group that'd be awesome. And then we can, you know, kind of figure out here is what the different groups are coming. Hey, like we want to do this. We're working with this constraint of our registry but here's some things that we need to change and they're not radical changes that reasonable changes, and they have a great payoff. That's great conversation to have. We probably need to start figuring out about the UX experience as well because what I, you know, are we able to get this to a usable form. A little bit later but there's some constraints to that. So I think that we are obviously we're living through a pandemic it's difficult enough to do these kind of projects and put this on top of us. If there is, we're kind of now in the middle of this is going to be a long while it's not solving up next week we could hold our breath. So I don't know if there's an opportunity we can get more dedicated focus. I'm looking at around I see so I was able to join. I have some other folks that have been wanting to spend more time in this so I will make sure that those experts are more engaged in things like the threat model conversation and key management. But I'm hoping we can kind of get to a, you know, more regular focused ownership of particular areas and have here here our team debated this and this is what we came back with. It would be great if we can kind of start making that progress in these working groups. Is that reasonable at this point or is that the world just a little bit too crazy right now. I mean, I guess I'll say that, like personally, I've had a lot of recently I've been on well and had times like right now where I feel totally normal. But I can't, you know, say what is going to happen like tomorrow or how I'm going to be feeling the future. But I think, you know, yeah, just, we should continue to work together and be conscious that people might need more time than you would expect. You know, and don't, I would also say you don't be afraid to send a concern for someone's health ping to them, maybe more than a damn it why haven't you done this, whatever kind of thing and and people will often take that as a damn it why haven't you done this thing anyway but you know maybe that'll get them moving. Yeah, I hope you're doing well, Justin. Definitely there's that aspect of things. Last, I think it was a week or two ago. One of the things I was kind of putting out there is, we know people have challenges personally for various reasons health are just managing their family. And we want to be careful not to lock anybody out who's been busy that they will put some proposals out and give people a chance to read on their own time not that they have to achieve this call, what others so if there's somebody that is leading a particular working group that has to back out for whatever reason that they just hand off to somebody else so we could try to make some progress. While making sure that person still, you know, able to take care of their thing. That's our hope that we just we know that it's a difficult time. So, Cormack, I'm looking to you here you were taking that effort do you feel like you can get some more meetings going between Derek and others. Yeah, I think it's just my time table is a bit difficult at the moment because my, I tend to have too many meetings. Yeah, I can find some time. Yeah. I will sync on the channel for some times that work for people. Okay. Okay, why don't we do that. Well, let's for this working group. Let's get and we'll meet next week. Same time. Let's shoot for having some kind of status of the various breakouts sort of threat model key management threat model, aka key man, not a K but also key management was in that as well. Maybe there's this can start getting split out because I know there's some separate conversations happening there. And if we can close out the scenarios and just leave room for, you know, iteration, then at least we get to a place where I can look at one place and not have to consider PRs. And if we can start doing the same thing with the threat modeling, that'd be awesome. That's why people have a chance to know what they're reading on where we're at. So with that, we're a couple of minutes over. Let everybody get back to their crazy weeks. And Justin, I hope you're doing well just and for others that good point. If we're not seeing somebody expect to see maybe just reach out and make sure they're doing okay. Sounds good. See everybody later. Thanks, folks. Take care everyone by