KZG Ceremony Breakout #7
KZG Ceremony Breakout · 1 Sept 2022 · 1:28:38
KZG Ceremony Breakout #7, held on 1 September 2022. Researchers and developers working on the KZG ceremony, the trusted setup that EIP-4844 relies on, meet every two weeks on its progress. This call covers progress updates from the last two weeks and next steps for the ceremony.
Topics
From KZG Ceremony Breakout, hosted by Ethereum Foundation.
Transcript
hello everyone welcome to the seventh kcg ceremony call we can just jump right into it does anybody have an update they want to start with in the last two weeks or i guess four weeks because i was gone last week or last time we met so appreciate the notes kev for putting those together that was really helpful uh but uh anybody have any respects maybe we could start with the audit that's wrapping up this week kev if you want to give a perspective on where that's at and your thoughts on everything uh yeah sure so the audit has finished and they're looking to write up the report they gave a list of things that they've
noted uh in the implementation it's mostly just uh cleaning up uh stuff like there's unused functions um i think it was from the from bites because we wasn't sure if we was going to still use from bytes or json uh there was one issue which they said that we should fix or we focused on which is where i assumed that the srs was going to be more than two so for us this is the case um but if someone else tries to use a library and for some reason they don't check the srs is like more than two in size they would get a like a panic um so
we're gonna fix that uh i think that was mainly the only issue that came up for the audit that at least for the implementation uh there were some other notes on spec consistency with the code and i think carl is gonna probably modify those um yeah and that's mostly it from the audit so it was looking uh good there's like nothing nothing nothing like uh big came up uh that's good yeah nothing major is um good news yeah
um yeah i guess i've been looking over the coordination server and the specs for that um i don't know if i should talk about it now if i should wait for everyone else to give an update um any i guess you're the only one really engaged in the audit so we can probably wrap up there unless anybody has any questions i guess next steps would be they're going to produce a report uh if we haven't already will respond to what they've written up and they'll include any of the changes in their final report and that'll happen over if it hasn't already in the next week or so right ken
yeah exactly yeah but it doesn't seem like there's anything that would change how uh that would significantly change the other components like the coordinator or the interface and right right exactly um yeah there's nothing sort of major changing or anything like this we can sort of just continue on and just wait for them to publish the report and just make the changes that they requested okay great um yeah then we can move on to the other components um if you want to talk about the coordinator and then yeah we can jeff can talk about what he's done and we'll cycle through everybody
uh yeah so i was looking over the coordinator stuff just to see the scope of work and um sort of what issues we're gonna run into when uh when i was looking at the specs i guess the main issue that i saw was uh jwt token usage it seems that we should probably just use a session id like i tried to implement it with um using just jwt tokens and because you can't revoke them you sort of get into these clumsy edge cases where you sort of just doing a clumsier version of
uh sessions so yeah this morning i've just looked into try to use sessions instead of jwt tokens and most of the edge cases sort of just disappear i also modified the way that we do the cueing i did speak to jeff about it just basically on the coordinator not needing everybody in the queue to ping so we only care about like k participants being um online at a specific time where k can be like 100 for example so i added that change in um
yeah that's mostly it on my part uh i can go into any other uh if you if anyone has any questions i can go into uh more details uh yeah i did also look at the clay which i thought was going to be a bit difficult um because essentially we don't really want people to copy and paste uh if they want to use the client we don't want them to copy and paste the link into the browser but this is actually an easy issue to fix where the client will just pop up a web browser with a sign in and uh they just sign in and then it sort of disappears goes back to the client and then they just continue on uh sort of contributing so that was pretty nice to see that
the ux for that is not actually too bad um yeah that was mainly it great yeah and it assumes if you've talked to jeff then that's probably the person i'd want most of that information to go to so um if you've already yeah that's great um so that was the issue a bit um i think what we landed on is if if we only ask people to to check in when they're in the last two hours of the of the queue in in the case where the queue is longer than that is that what we're talking about kev yeah so one i posted in the public kcg ceremony
so the coordinator base just basically says um i only care about the first 100 or thousand people in the queue um and we only need them to ping i also took off the exponent i don't know if it was exponential but the time back off so each person just pings like every three minutes which is roughly the time the upper bound that we give each participant so like uh the coordinator the people that he's watching he knows that for the last at least for the last three minutes they've been online so it's like simpler to implement because we just need to check every three minutes or whatever the upper
bound is so like the person second in line i know that they was online three minutes ago at least um yep yep okay there's probably something there i haven't checked out but um i didn't get that three minutes but that's that's okay where did you say you posted that uh it was in the kzg ceremony public uh when i was look i think i posted a while back uh sorry to three minutes um it was just the upper bound i don't actually know if it's three minutes but each participant has x amount of time before
uh they're just taking that they're just taking too long and we have to sort of push them out of the yeah yeah um yes everybody checks in for this amount of time for example i don't know if it's actually three minutes uh so yeah okay go gotcha i'll check that out um yeah i did i did um make sure that eight hour thing was in the spec not the area the two-hour thing they're only checking in for the last two hours yeah i guess i couldn't um like i i guess estimating time seemed to be a bit erroneous because uh i did i didn't know how to sort of
estimate two hours unless we sort of just put an upper bound and just say each participant three minutes [Music] yeah so i don't i don't know how we would estimate the two hours sort of accurately um yeah but the point is it doesn't have to be too accurate because in two hours you're gonna get maybe a couple of hundred contributions and there'll be enough you know there'll be a sort of normal distribution so the average will be you know it won't be too far away from the average contribution time
so so then they go once they hit the two hours they start going into a more frequent cadence um and it gets more and more accurate the closer they get to the to the deadline right but how do you estimate the two hours because like two people could be in the queue and one person could take like 12 seconds and the other could take like three minutes to contribute yeah but if you're two hours away there's going to be 200 of those people and it'll you know chances are it's going to be uh it's going to smooth it the average it's going to converge to the average right but how do you so it's not going to be an hour out is it
um i guess i don't know how you'd say this is gonna take two hours or roughly two hours by looking at the cube because each person takes a different amount of time yeah it's true but but but it's it's a like a log normal distribution so it's not going to be too um too unpredictable um right i i guess how how do you determine how long one person like one person takes like if i pretend like i have this two hour parameter uh and somebody's one falven is like the one thousand person how do you sort of roughly
estimate how long uh like it's going to take for them like do you well if they've got a thousand people in front of them and it's going to be even more more likely to converge converge to the average um [Music] so you know as long as we get within a couple of hours we're good uh because um it's it's unlikely to be that far away from that from the estimate um maybe i should ask my question by giving what i think the answer is uh so i think you take the last 100 participants and then see what their average is
uh like if they all took like three minutes then the average is three minutes and then that's how you figure out uh how long everyone else is going to take oh yeah yeah yeah that was that something like that was implicit in my yeah i was assuming something like that that we would know what the average is based on some kind of history okay yeah um yeah i don't know they both seem like good ideas you can take the average or you can just set a parameter for like 200.
um i think two hours would probably be better i see so like yeah if it's 200 we'd know exactly when they're 200 so yeah no estimating involved right might make more sense um i was going to say something time would be better but uh yeah maybe we should take the offline because i think no yeah yeah we still need to estimate the time though because we need to give them the time to check uh time to check in when when they first log in we'll know what position they are on the
queue but we won't we'll have to tell them when to check in again and if they're eight hours away from from the deadline then there's no point checking in for the for the next six hours kind of thing right my assumption was that they would sort of just keep pulling the coordinator to see where they are in the q and once they get into the 200 200 position uh then they'd need to start picking the coordinator to check in so anything more than 200 you just don't need to check in at all okay so they they they pull but they don't actually check in right right there's no equipment yeah no requirement
to improve their life okay that's an idea yeah uh yeah so the coordinator uh they don't they don't need to scale with the amount of people in the queue uh it's just the first 200 that they really care about yeah yeah but yeah yeah it'd be good to discuss the pros and cons of both of them um i i did have a pro for the time but i can't remember what it is now um so yeah take it offline sure yeah the other thing you mentioned um session ids um okay so so
we just we just uh we just hand it a a random session id that is good for the is good until they log off right right exactly yeah um i tried to do the jwt tokens um way and uh well the first thing is you can't have a j you can't have a jwt that lives for a long time but it's just not um sort of recommended it's usually you have a short-lived jwt and a long-lived uh reef sorry a short-lived access token and a
long-lived uh refresh token um but then you sometimes get into these sort of edge cases where the person is finished you don't want to give them access to the api anymore because you can't revoke access to a jwt access token you just have to wait for it to expire you sort of have these edge cases where the coordinator has to sort of store this state to say that although it hasn't expired you're not allowed access anymore and uh this this is like basically you might as well just do sessions and just have a coordinator sort of state um so yeah i was i kept bumping into these
sort of edge cases and yeah it seems session ids would just be a bit easier um because of both strategies the client is going to need to hold something that if it gets leaked someone can just impersonate them even with the access token yeah um okay yeah i'll i need to uh see if there's any implications there um so we'll discuss it with nico and takamiti if you've got anything uh any comment on that that you can think of then let us know
okay i will um yeah take a look into the tokens yep yeah it might be more of a knicker thing i just want to see because with there was something nico's doing with the authorization especially for github and i think he needed that jwt but right i don't know their details um yeah so i implemented the off server and for the off server they do need jwt tokens but you take the jwt as the coordinator and then you you sort of issue a session id plus the id token
okay yeah you off with github what we really need is an id token not an access token to access github we just need the id information yeah okay that's right um yeah so without sessions i was sort of taking the id token then you can give them a coordinator access token so an access token to access the coordinator api um so yeah so i just swapped it out to give them a session id instead but yeah i can yeah if nico can ping me on the public channel that'd be good to talk about that
um yeah i guess the off stuff was um easier than expected uh just because there's uh like third-party um services that just basically allow you to click buttons and just do ads sign in with ethereum add github and stuff like this um so that part was quite easy i was expecting us to sort of need in to implement the sign in with ethereum stuff uh from scratch or something like this are you using this bruce ide yeah exactly the off zero that's that's pretty that's a pretty awesome confluence i would i haven't like i've been involved in like helping them with various like random bits of their project so it's really cool to see
everyone else starting to to use it like you know like it was intended to be that's great to hear yeah it's really nice that they've made that they've made that and uh yeah you don't need to i think they just extract the public key from having you sign some sort of message uh so yeah it's really nice that what they've done i didn't add the checks that are needed um as i understand there's a check for um ethereum addresses non-smart and free and github addresses um i think i can't remember what a github track was um but yeah yeah so it's really nice that
the the api that they have awesome also i don't think niko's on this call uh yeah exactly yeah so probably have to take it off line if jeff can yeah yeah i'll i'll get in touch with him uh one question i did have just related to that is uh did we choose github and ethereum just because they were easier or is it possible to add different uh ones yeah i think it was really just uh it seemed to be the well ethereum was a natural call and then somewhere someone said uh we should have github as an alternative
right that was like the second most natural thing to go to uh there's no reason why we couldn't expand it to other social ideas or whatever right right um but it's all uh yeah gotta balance the the development and effort and everything but i know with author it's quite easy to just add a new yeah new source isn't it yeah but then are we gonna get more participants by doing that in huge numbers and what sort of what sort of um you know each one we'd have to devise a filter to make to make sure you know the anti-civil
properties are still being maintained yeah yeah exactly um yeah i guess if i was to say we like if i was to suggest a different one to add probably discord but then i think there's a lot of bots on this chord i'm not really sure how they yeah i'm not really sure about discord actually yeah i'd say that the two we have are probably pretty solid i mean i'd even lean towards doing just one but um it seems like there are some people yeah yeah there's some people interested in having github as a sign-in so
uh i think that's fine okay yeah cool yeah yeah the justification was it was again that uh thing that we called you cold wallet was the one with the knots greater than three so people might be reluctant to get that out of cold storage and um so they want to use the github instead yeah okay yeah that makes sense yeah um question do we have any way of if somebody uses github to sign in we don't get any information about their ethereum address do we no no
just like hub id and i think their nickname okay yeah i'm just thinking about when we issue the pull up after the fact once the submissions are over those that'll be something to call out in the ui i guess oh i see um you have a bit of like two different user paths yeah depending on the author the auth type right um not not the end of the world but you know just something to think about yeah i think it's i think it's manageable that problem we can just issue a code and tell them to sign in with the github to clean the code
something like that oh oh you can still do it yeah yeah after the fact right yeah um i think we can also just uh tell them to pass in an ethereum address along with the authorization code uh because when they sign in with github oh i see they get an auth code and then the off code gets sent to the uh coordination server so if they send the off code plus an ethereum address we can just uh sort of put them together like that got it okay um so yeah yeah i don't really know how the poep
stuff is gonna work if it's another sign in with x then it might be uh to do what jeff said and just have them sign in with github again but i don't know how it works um okay yeah definitely something to start thinking about obviously it's not like this isn't the most important part of the whole thing but it would be a nice feature to have uh as part of the entire ceremony yeah um yeah i was gonna quickly say jeff i implemented a client that calls the
coordination server and it seemed the best way to do it was to have like a proxy server that calls the coordinator uh then you can sort of hide all of the http uh cookies you can just hide them from the front end is that what you guys also did no i said the front no yeah no no i i don't quite get get your where's the proxy um uh so like on the front end there's the express js server that gets launched yeah the that like all those the roots
of the express js server called uh um like the coordinator so like you can do slash off and then it's called like slash coordinator slash off so then okay yeah yeah yeah that is what we're doing okay yeah cool yeah yeah yeah and then the cookies i guess http only so then the frontend never actually accesses them um i thought we were doing without cookies um i think you need
cookies to [Music] oh wait did we remove cookies uh currently i'm saying i'm saving i think i think we removed cookies um at carl's suggestion he doesn't uh he thinks there might be a suggestion that we're we're um [Music] saving secrets or something and just we want to avoid any possible appearance of that kind of thing oh um so if we are avoiding cookies and we can't do sessions uh [Music] because the session the cookies are the
session id is stored inside of the cookie um [Music] that yeah i didn't know that i wasn't sure if we concluded to remove cookies because you said something about it being beneficial um oh yeah just for that edge case where they have to sign where they want to sign in sign back in or in an avoid having to go through the signing [Music] signing with their ethereum address again but then you know i think kyle did have a good point about um you know trying to avoid appearances of
of saving private data right um yeah so if we can't use cookies then i think we're back to the sort of stateless approach um wait so then if you can't use cookies how do how do i ping the coordination server and he knows who i am i guess you just save it yeah so
coordinators issued you a session id you remember that in memory for this for the duration of the session if you do close the browser or something you're gone you have to sign in again oh i see and then if i wait that means that if i leave and then i don't know that's fine no yeah i don't think that's unless i'm like missing some of the nuance i i think that's okay if you close the browser have to sign in again yeah i think that [Music] okay yeah i think that's actually fine actually
yeah so we can still do the session way we just have to store it in memory instead and um so if i log out the coordination server has to eventually clean up my session the previous session that i had so if i close the browser he has to eventually clean out that session and i can sign in i'm not allowed to wait can i sign in because i can't be added to the queue again until he's cleaned up my previous session right oh well um so as long as you uh as long as you're not away
uh for longer than your your check-in duration so as long as you you do sign in and check in before before your check-in duration then you can retain your position in the queue but then you've got to um currently the logic that i'm going by is that once you're added to the queue you i'm gonna stay learned um will not stay alive but you sort of have to remember your qid i guess which is the session id in this case this could be linked to a user id right but then if you log out you're already
in the queue with a different session id uh well if if someone logs in and they're already in the we can determine that they're already in the queue and and automatically refresh the session id right like that's the trigger to actually clear that session that old session id right okay yeah that's fine yeah yeah right yeah okay yeah i think i think that's fine then yeah
um if it's all right i just want to jump to uh the other components of this and then we can get back into any other discussion um so chiali or chali actually i don't know how to pronounce your name and takamichi if you want to give an intro i act it's good to meet you both verbally but if you want to just uh i don't know if you were on the call last week but talk about what you've been working on and i keep saying last week it was two weeks ago um just give a quick update to anything you've been working on should i go first sure yeah
yeah uh hello uh i'm takamiji and i've joined this kcg trusted setup team from this week actually and i am working on a front-end client for the um mvp of the dashboard and stuff yeah and yeah i um now um dig into the the existing code base and try to catch up all the things um yeah uh nice meeting you guys so this is going to be the interface for the front end that
people actually use to interact with the coordinator great hi so yeah i'm charlie [Music] uh i think last week i kind of tried to show off my design with a couple of engineers and i [Music] i just realized i need to make an mvp version and i have a kind of good flow for now for the mvp and it's in the figma if anyone wanna see it i have a question now the last week i think when i met
carl and cave we were talking about the intro p and we say we need to have input for user to um to enter some random secret in the design i put just eight digit is that okay or enough should we have more string or um i think preferably it should be like uh unlimited and then we can sort of just apply some maybe hash function on top of it or something like this okay yeah because i'm thinking like uh i don't have a bit directive for
to the user if we ask like they've typed anything then i'm i'm kind of feel like they will have fall into this rabbit hole like what do i type yeah yeah we can prompt them to just type a random string we can make it pretty explicit and uh like they don't have to type out a story or anything about themselves personally but um we can we can guide them along the path of generate something random that's not easy to remember and yeah hopefully they don't think too hard about making something random okay and so those random you can have it doesn't matter what kind of
character right like it can be special character or space whatsoever right uh yeah i think that any character should be fine um we probably just reinterpreted as bytes anyways okay yeah so that's my update and i don't know if if we want to have a design review at some point or [Music] how do you guys prefer that um i think i'll just keep working on you at least today and tomorrow or for the next
few days about refining some of the imagery um and then maybe on the next i don't know if it makes sense to have a separate call just for design but i'm curious what other people think is this design review of the mvp um yeah maybe we can fit it into these calls i don't know how um sort of how long it would take but um do you think it's possible to fit it into these calls or would it need like a whole separate
um i was i was thinking that maybe if today after everyone's discussion if we have like uh 15 minutes i can add this work we'll choose some design thinking and then maybe we can do async for now and if we kind of feel like okay everybody's talking about different things maybe you can uh schedule a like refocus design review i'm fine with that i can i can stick around i know jeff is uh heading towards bed but i'm happy to provide feedback today okay
yeah same okay so that's my update thank you great um ahmet are you just listening in or are you planning to work on something yeah i just i'm just here for um see um to see how um you guys building a good ceremony so i prefer to listening to you okay you're welcome to listen uh one thing that came to mind do we need uh i'm forgetting the name of the library
but a while back we were talking about the hermes team updating a library that we needed to use is that still the case or did they update it for our use case already uh so yeah that was snap js um we we've gone with kev's rust uh rust code for that right okay so we don't we don't even need it anymore so yeah that's not in our critical path for them to do for sure good um let's see i should probably
update you with the other things um sure go ahead um so um the client api i think is is kind of settled now there's obviously a couple of things like the things that i was talking about earlier with curve the few things going to change but basically it's been uh it's been merged into this into the specs you can find it in the in the kzg ceremony repo um and yeah expecting just sort of minor changes from here um nika has been progressing on on developing that api uh
it's going pretty well we've got a server under construction we have to have have to be releasing something well it's sometime soon but um before the next one of these meetings we should be able to have something to to release for test purposes um what else yeah in the design thing so charlie organized meetings on the design function so there was input from several of us and that sort of spun off a lot of other discussions too
um some of which we've already talked about yeah so that's my update great thank you uh and i don't know if it was talked about or at least broached but the the goal here for at least timelines um is that we'd want to be able to do uh contributions at defcon so that's in mid-october uh that gives us a month and a half exactly and so a few weeks out from devcon we'd need to at least
have something stable that we can be running initial contributions through to make sure there isn't a you know catastrophic bug or something that we missed that requires refactoring something like that so if we work backwards from defcon um a couple weeks out so like i'd say the third in three weeks third week of september we should probably have something that we are putting contributions through and uh is reasonably stable does this seem feasible to everybody it's it's great that we have new people joining but um i just want to make sure that there's actually enough time to complete this or whether it's even feasible
so i'm curious what other people think um could you clarify on the front end part so uh for the for the dev for devcon i guess we just need the mvp front end to be done which is really simple um i guess charlie can comment on that part for the coordination server i think it should be feasible i'm thinking maybe two weeks out we should have i mean two weeks from today we should have a like a coordination server sort of up um maybe a week and a half
i feel like we need to sort of battle test this a tiny bit before it even goes out sure um so yes on the front end i guess charlie if you could uh comment on that um jeff on the coordination server is does the timeline seem feasible yeah yeah it does um and uh you know testing wiser i've asked nika to to generate lots of sort of automatic testing with you know big big numbers of you know hits um to try and do automated
battle testing but then yeah we probably need some real life testing as well um but yeah i think i think timeline's very clear uh does this also include the sort of task of separating the client from the the the front end from the coordination side or the client from the coordination server the client will use the api right so it is quite separate from separate from the databases it doesn't touch the database right but i thought that currently the
state was that there was a we had the github in and it had the client code which was somewhat coupled to the um coordination server code is that yes yes so yeah that will that that separation will disappear and it'll be quite independent and we'll we'll put it in into a separate repo in fact it's already in a separate repo as it's being developed now right so this will be done with in line for the devcon thing that we spoke about yeah right um okay yeah that makes sense
um takamichi said i don't know if people can see the recording on zoom um [Music] i'm mostly writing front-end code uh takamichi do you think that the mvp will be for the front-end will be done by um the times listed so i guess roughly two weeks we can say two three weeks i think um the base the basic functionalities can be uh in time but before you know we need some time to like actually testing it using the um
um like integration wise um testing like 3d different and to the back end and coordinator so yeah i think if we can um take enough time to test it and maybe fixing the you know issues then i think the most mostly right um code freeze around september 23.
right i guess since it's just the front end you could just spec out the actual information that's gonna be there like you don't you don't need the data to be there right [Music] in terms of testing and so i guess as long as the front-end ux uses the same structures as the uh the client is using then it should be okay okay um i think um since the it's quite predictable what information you're going to be getting
um but sorry um but yeah maybe there's stuff around timeouts and stuff like this that needs to be expect um yeah so i guess in two three weeks it seems feasible for everybody and the mvp is avoiding everything around the transcript and you know all the sort of scaffolding around the experience or anything beyond just making a basic
contribution right correct yeah um i think it would include the transcript and the coordination the coordinator would need to save it somewhere where everyone can see it um oh okay so that you do think that it's part of the mvp uh yeah like the tron i think the transcript should ideally be a part of it uh when i was doing the the coordination server for the most part you can implement it without even by abstracting the transcript so it's something that you can sort of just put in last minute um so i don't think it should be too bad um to add it in uh jeff could you
could you like confirm that uh sorry what are we adding in uh so for the contributions the transcripts uh stuff would be included sorry for the mvp yeah like yeah yeah the things that are not included maybe not not a fancy dashboard and um yeah yeah some of some of the other frills right um so the mvp will basically just be cutting out on uh ui okay that leads me to the question of do
we have all of the tasks or features that we want to include written down anywhere is this is the mvp written down anywhere that's a good question i don't think it is um that's fine and we can just write it down or charlie has it charlie's figma document is kind of where that's being developed oh the other the other text document i've said there are two right i think more the actual design file the sigma one
um i don't have like a condensed leaves but i kind of feel i already expressed all we need for the mvp in my design so oh okay yeah but this transcript sorry this transcript thing is the uh is it the same thing as the hash jeff uh oh yeah well a hash is what we used to use i think we're calling it like a public key in the specs um so that's not really transcript now okay so this transcript will only available
when the contribution complete right yeah okay so i can i can add about and so is it for people to download or it's for people to see yeah what do we actually need for an mvp for a user to to access i mean the coordinator will be keeping that the transcript but um for an mvp what do we really need to use it to [Music] i guess it depends on the mvp is going to be running after
devcon as well and a lot of people who are going to be in the mvp will they be basically a small group of people um if the mvp is just for devcon um then we'd need to also show how to verify it after like it's finished so we show people contributings then it stops and then we sort of show how to verify your contribution after the fact um if it's only a closed group set of people then i think the queuing mechanism can be simplified by just not kicking people out because we just know where like you're right there like yeah the cueing mechanism wouldn't need to be as um
complicated because we don't need to sort of account for bad actors so i guess it depends on those two it'll be a closed group leading up to defcon and even at defcon i don't think we're going to be we're not going to have mass contributions the the main goal so for anybody who wasn't aware didn't have this relayed we are planning to do ideally there would be a contribution live on the main stage during uh one of the kickoff keynotes and we already have a slot scheduled and the main the main goal for why we want to do this is to just get people aware of it give a very very basic intro to what this ceremony is and that people can
expect it to go live for public contributions in november and december roughly um but yeah there there won't be we won't like be accepting contributions from the broad broader community it'll just be like a single it'd be like danny or aya on stage walking through it and somehow we'll get some some crowd generated randomness into this uh interface yeah mainly mainly just an educational introduction tool about like what this thing is why it's important probably no more than 10 minutes 10 or 15 minutes i'd say um but yeah that's that's the main goal
of why we want this for devcon is so we can introduce the broader community to why it's important and when they can expect to contribute right um yeah so if that's the case for the mvp you could have a simpler queue and mechanism because you can just assume there's not going to be any sort of bad participants people trying to dos it or anything um right and it could be gated by a i think shall we have this in the mvp could gate it with a passcode or something yeah
yeah i think you can create like um a username and password and give it out to people like just spray like 100 or something i don't know how many clothes how big the crow's group is but i think you can do something like that all right we're in the last five minutes um [Music] does anybody else have anything before i guess jeff drops off or other people leave uh yeah i might stay on for the further discussion but there's one thing okay came up um one thing that came up uh was my discussion i had a call with the guys from cryptosat
one of the founders from cryptoset um and just to see if you know the kind of thing we're doing is the kind of thing they do if there's some kind of fit seems like there is it's basically the reason for their existence is doing this kind of thing uh they do trusted setups for all kinds of situations and they do like signing for root certificates and that kind of thing so um [Music] so i guess it comes down to you know is this service going to be [Music] uh going to add something to this ceremony and is it worth the price um
uh and it's i guess that would fall into our like uh crazy ideas phase which is probably you know towards the end of the year um after the public contributions um but the the the suggestion from from yan who is the founder i talked to there um was get get uh start the discussion early um because it's it it gets a bit complicated and might take a while to work through um but yeah if we do have any interest in that then um yeah
well i can i can you know um continue that discussion with them or we'll have it have it move on somehow but um yeah i think we would probably need to first get an idea is it is it of value to us uh is it going to add a lot of security well i mean like each of these mark each of these um unique ceremony contributions when we're doing this like you said the the crazy ideas or the when we're giving
out grants for this stuff i guess the additional marginal security isn't like that significant but it's more these are situations which are part of the spectacle and part of the um the larger process so i mean i'm definitely not opposed to it it's um i'm curious what did they give you any sort of price range all right afraid no oh okay yeah that'd be the first thing i'd be curious about um but yeah we can still start talking to them and yeah it's a good reminder um if we do need to start moving earlier on
this then then that should happen soon uh wait what what are they offering um yeah they have they have satellites they're um like there's uh cubesats and they've currently got one up in space so it's a totally isolated environment we would give them code and and test test the code on the ground and then they upload it to the satellite we book some time and then at that time we upload our transcript and and get them to do the contribution and they download the
contribution all those communications up are public so we know there's no sort of um secrets uh being siphoned off or something um and there's no chance of any uh side channel attacks and that kind of thing so that's that's the selling proposition uh yeah i guess it'd be good to also figure out how they're sort of getting the randomness in the satellite yeah but assuming they do this all the time that they'd have a way of solving their problem [Music]
yeah okay yeah that seems really interesting yeah i'd also be interested in the price for something like this it seems pretty expensive all right is there anything else related to general ceremony things that we should be aware of over the next few weeks um it sounds like everybody's on a pretty good path towards getting an mvp interface stood up with all the the back end plugging into it um so that's exciting uh and if there's nothing else we can move into the design review for another 15 or so minutes
all right i'll let you if you want to share your screen shall we yeah okay um if you guys prefer a figma file there's a link that just paste in the chat uh may i have the permission to share screen let me know if that works oh no i need to grab my sorry i need to grab my uh do you have to restart zoom or something
yeah is it like is that okay you guys come to figma would that be easier um oh you mean just yeah just do it verbally i don't know if anybody's on mobile i guess that might be harder oh yeah jeffy's on okay just give me let me if you need to restart zoom that's okay okay i'm gonna take a second yeah i'm leaving now all right hello i'm back
um let's try perfect okay i'm just kind of lost my oh my things okay that's fine um so uh after last week's uh kind of quick design meeting i uh removed a lot of things so basically just a single page um i'm thinking and we talked about how to get this experience and there's couple ideas surface like invitation call or white list or sooner we talk about username or password so i think we kind of need to uh have a settlement here
because we need to kind of like have a build a logic here and then when user uh then on this landing page uh for example if they are in mobile basically telling them this experience only young this time so kind of like not continue from here and the landing page you can you can see a bit similar like last time last week uh i do i did add the coordinator online just kind of status here and some kind of uh copy need to refine and the someone like not nice so have two people in the queue and approach cannot give a user how long
they have to wait and talk about how impactful about this ceremony more detail in here instead of like just great vibe text after that kind of showing how does the ceremony work and kabul affect you so this is the landing page so imagine user either sign or get started so i will kind of go to this flow or kind of open this kind of full screen model if user wanna go by they can click the logo to go back and they can choose signing ethereum or github uh so saying interior
you have two choice or you open the guitar alt model uh let's say today i'm saying with metamask and then i need to sign my signature and here kinda have a feedback like okay it's uh it's checking once user uh sign we will kind of transit to this page uh just kind of inform again there's two people in the queue and are they ready to uh to contribute uh so this is the question i ask sooner once they click this ready to go they will get into this screen where we ask that kind of random secret string or whatever we want to call it and here i add a message that
it's very important to be online for a certain period of time and stuff like that and once they enter the secret message or whatever they will enter queue so when they click this enter queue they actually go back to this home page so there will be a couple of css animation i imagine and takamiji can give me a lot that don't worry so here uh we kind of have the wallet just showing here and user is in the queue so this can act as a progress bar so those are 20 whatever once uh it's uh two users um turn then this will kind of
starting initiative contribution and actually this will uh also transit to this screen where uh i've kind of progressed by here or something i'm kind of thinking make a nice animation with a couple ice images here but i'm not sure what to do yet start and then when you complete just change your text again and show so previously we have this view the hash and sooner we talk about transcript is this word supposed to happen or um
i'm not sure what the hash is referring to um yeah that that'll be public key you know terminology i think okay yeah so that wouldn't be the transcript so it would be the public key it's their it's their individual contribution right yeah okay a public key that is associated with their contribution um oh so is it literally just the public key of well if they're signing with github is that not exposed oh so i think here it's the public key that they used to contribute to the
ceremony so um the randomness that they generated there's okay yeah okay and the transcript is everyone's public keys strung together in a some sort of specific format uh that's what it used to be but now it's basically just the srs so just the powers of tao ah okay um well either way i'm i'm digressing a little oh this one this transcript will be used for verify your contribution if i understand correctly
um yeah so there's gonna be one transcript at the end with a bunch of these um [Music] how do i say like you're going to have a bunch of uh public keys plus a final transcript plus the initial transcript um and plus uh something from each transcript the intermediate transcripts and that's how you verify okay does that make sense so like if all of us contributed i contribute with a transcript uh i i contribute and then i send the transcript and the coordinator basically takes one thing from it
um and then he sends maybe trent the next transcript trent contributes and modifies it then he sort of takes uh something from there as well so he's sort of taking the summary of each transcript except for the last one um yeah and it's this um i remember we talked about the ceremony supposed to run uh like three months or so is the verification supposed to be the end of ceremony or during the ceremony because this kind of just mvp just to have let people aware about this it's the verify
uh needed here because uh if we if we rewind to the full blown version uh there was where user come back and verify and then claim the pull up that's kind of what we said last week is this transcript need to be in the this like very simple mvp version or um i think if we're gonna show the the uh the ceremony ending at devcon then uh people wanna probably see like how do we verify like how do we do the verification
process or some way to verify um because uh the the security is sort of not just based on someone contributing they sort of have to verify that their contribution was included okay so so this um this um uh give me a bit confusion here the um the mvp we doing for devcon is it kind of just a prototype version or it's going to be continuously used to become an official ceremony is it just a demo app or is it
that i would continue to build and become an official version yeah i uh i was thinking along along the lines it would just be a uh an early version of the one we end up with yeah i have this uh in my uh and i i feel this transcript does demonstrate the importance here uh it just it just if we close it feel like just uh this is gonna end up as a demo and then i don't know i i i'm just putting my two server you guys uh tell me how to do it
right um i guess if you're verifying after the fact uh one way you could do is just have like a um a text box and then it says search for this person's github or search for this person's ethereum address and then that just makes an api call to the coordinator and then the coordinator just says yeah this is and this is the public key that was so this person contributed here's the public key it was at this position and then that's it like for example so just a simple text box that you can sort of say github or ethereum and then it just acts as the coordinator did this
person contribute uh after the ceremonies done um freddie mvp i think for the front end that would be pretty i don't want to say i don't know if you don't want to jump to conclusions but maybe that'll be easy to do like just i guess just like a text box in the middle or even like uh even here where it says contributing completed i guess if the ceremony is done then another button just there that says verify contribution um [Music] because uh yeah in my head i feel like the verification part is also quite important even for the mvp
um it doesn't really need to look good in my opinion just the information is there to say it's been verified and so how about we um uh i think in the very previous version we have a kind of like at least a table uh after somebody complete uh it's is this just good enough for our mvp for defcon um i guess for the mvp uh this is sort of something a bit different these are sort of
oh it just stores the transcripts um [Music] i guess so it's just that once this is completed there's sort of a final transcript that everyone says this is the one and those things that you just showed don't need to be included in it which is why they usually check after the fact um yeah but in these screens there is there's a hash column and it if we take that as the equivalent of the public key [Music] like in in the screens we're looking at for for that zika one that hash would be the thing they're looking up in that in in
the history to make sure it's there in the history and it's made it into the final transcript um so our equivalent is to use the public key for that purpose right i was saying that i think we need the functionality to actually check that it was in the final output so we could have this this table here but i think we still need to check that whatever the finalized thing is like these contributions were included um so we should add the table and have a
button to verify is that to simplify my total lease i'm sorry i mean yeah i think it wouldn't wouldn't be a table like this it's just a like a separate page where um it would accept it's like a search and accept either a github idea or an ethereum address and search for my for that for that identity and return the public key for that identity okay so we should have a kind of a a record page uh yeah it's like a request page okay yeah
okay yeah but no and no frills version of that okay that much simpler version this is kind of the more like yeah uh then i i think i will i will throw back to takami it's that feasible because yeah i think yeah the i think uh only by using the text box and uh like um ask to the coordinator is the simplest way to do it so yeah definitely it's visible okay so right so i'm gonna add a page and then the home page will resurface
[Music] kind of communication and enable people to start contributing and if they want to kind of verify or should see a record they have another page to for that and i'm gonna keep that page super simple and um so i i guess i draw back the question to you guys like how to how do you guys point to the uh the gated for
defcon can take offline but it's up to you guys i need to mark our screen that's all i think if we just give a give out a code there's like a string random letters and numbers that's fine or some sort of password dating is totally fine it doesn't have to be a we don't have to have username and passwords that we preset as a whitelist or anything okay um and then we can just make sure that we have the ability to change it so somebody needs to have a validation of this code right we need to build that right yeah
yeah um i guess the coordinator could just store a bunch of codes like probably 300 like 200 i don't know how many people maybe 100 is good enough um yeah so those are the uh mvp design i have uh for now i haven't i
haven't finished the graphic yet but kind of like those type of library simple lines and yeah i haven't finished uh folding it yeah i mean i was telling you i think it's great to just be able to see each of the steps it's really helpful for me and then i'm going to help you um work through what the languages are or how what the connection between each step in the processes and how we write a nice story thank you to fill that in yeah appreciate it thank you um
any other comment or fema i guess at the end we will need some language it uh about the pull-up of like people will be like oh what do i do when do i come back claim this um so we will need some language there and then also um it might be nice to have a twitter a prompt to share on twitter like share your contribution or invite others to contribute and then it can be like a pre-filled pre-filled tweet or something um but in the dev kanga we plan to let those uh invite you to share and then it might cost like other people want to contribute but
they got blocked right yeah yeah this yeah for like the public contribution we'd want to have um some sort of call to action at the end just to make sure the meme is getting spread properly right uh look at this yeah so [Music] there was um i remember in in the current one we have a template like like this probably need to rewrite a bit uh more detail or something it is this feel very vague so that pre-made template need to revisit as well i think
yeah i mean the general idea is there i guess we wouldn't have an attestation exactly like some things are going to be different but um for people who are signing him with ethereum but yeah something like this would be perfect okay okay oh my gosh any other thing i should include or i forgot or great work thank you anybody else
okay i'll take that as a no it's too good that's why yes yeah yeah it's the quality is yeah excellent okay uh there's a question from ahmet is the transcript a set of messages that are sent between the participating coordinator no the transcript would be the output of the entire ceremony so at the end once we've stopped accepting new contributions the transcript is sort of a summary of um everyone's linked randomness or the output of their contribution
that anybody can verify after the fact is that correct somebody somebody double check my plan uh yeah i think i think that's correct i also think it is a set of messages um so i think it's both yeah so i think it's also a set of messages um it's just one message i guess you can think of it as but may yeah i think we do have okay i thought he they were asking about uh like the back and forth between an individual participant and a coordinator or something but yeah i guess you if you look at it a different way it might also be yeah yeah it could be both things
depending on how you look at it okay yeah that makes sense yeah i think we are we might rename the transcript and the specs if i remember correctly um [Music] yeah don't know me yeah i have to check off carl i think we're renaming that but we name it probably just srs oh so less less uh accessible language yeah yeah i think carl did say something like that yeah i don't know i don't know yeah all right we'll figure out a name yeah
if there's nothing else we can wrap up here thanks everybody for sticking around another 30 minutes to help with the design review and charlie for presenting um i guess oh one thing real quick before we wrap up is just like what are people going to be working on the next two weeks i can start um given given uh this is you know sort of the crunch time where we've got a defined milestone we want to get to presenting the mvp at devcon and then working back from it this is sort of like we're we had maybe a little bit more time flexibility early when this project started over the last few months but now we're getting into the area where we really
need to um not that the work hasn't been getting done but just be mindful that like the deadline is approaching and we've just got to be conscious of how quickly we're getting things done so i'm going to be helping charlie with the uh the language and some of the graphics um just helping to shape that a little bit better on the interface um there's some payment stuff for the first audit that needs to be wrapped up um and i will also be making sure we're better prepared for the coordinator audit with sigma prime which is scheduled to start in october uh those are the main things i'll be
working on making sure where we have a good idea of what's going to happen at defcon and i think that might be it for me but that'll be the few things i'm working on over the next few weeks before the next call anybody want to go next uh yeah uh um yeah uh so i'll be um just uh uh touching up the client api specs uh working on the with the developers on that uh working on with uh many with nico on on getting a test uh
server running um and uh oh continue reviewing uh design specs and issues along those lines as they come up great okay uh yes i'll just continue refactoring the coordinator code um just mainly because i think we might still want to have multiple coordinators so it'd be good to have two different code bases either way probably after that i might start going on to the command line interface to interact with the coordinator
right now we're sort of focused on the website being a client but i think we also probably want a cly cli command line interface to be um to be able to interact with the coordinator as well um yeah i figured out how to do it but i just haven't implemented um sort of anything regarding that just yet um yeah and i'd probably just be speaking with jeff and i guess nico about this specs some more mostly in the public channel just so everyone can chip in um yeah that's it great yeah the cli is something that i would have forgotten about so good
good remembering that there are definitely going to be some contributors who want to not use the interface they want to do it on their own you know especially for the um the special contribution period i think people will be interested in that very much then yeah so i will continue on the mvp and fill out the imagery and the uh cable iteration there they were and supported i will be uh mostly working on the uh coding of the front-end um
stuff and mostly i think we'll talk into nico and shelly about the designs and maybe jeff about it yeah so that we can show the fancy demo mvp to uh um buy that at the dev con yeah excellent and remind me which time zone you're in i can need you um i'm in jst uh it's i think utc plus nine okay so you're heading into your evening now yes it's it's 10 p.m no got it that's
that's good to know uh all right thank you everybody for coming those good updates and i think really clear picture of what's gonna happen over the next two weeks so um [Music] i think that's it and uh yeah everyone will be in the discord channel so feel free to drop any questions there if people are unsure about a specific thing and by discord i mean the the ether and the discord it's where the public channel is we want to make sure we're putting messages there okay thank you everyone and we'll talk in two weeks and on the discord thank you
bye thank you bye