 Hello everyone, I have just noticed that Timo sent a message yesterday or today saying that the meeting is cancelled for this week. So unfortunately I haven't connected yesterday, maybe I could take it over, but unfortunately as you can see we are only four people, but that's okay, see you next week then. Unless you want to discuss something with me, can you hear me? Your mic is a little bit low. Yeah, for me too, I cannot hear very well. Can you hear me? Better now, yes. Hello, can you hear me? Yes, yes. So actually how many people join in this meeting every week? We have four people right today. Yeah, because I guess that most people have seen the message in our Discord channel that the meeting was cancelled for this week. Usually we are about 15 to 20 more or less. So we can discuss something, right? If you want, yes. So I am from Bangladesh. So I'm interested about hyperlageries. So my question is, we are trying to backup and restore functionalities at SSI wallet. So is there any possible, is it possible to restore a credential from the outside to the wallet? Is it possible? In the case of IFCA. So first of all, mainly I backed up a credential from the wallet, right? In a database or something else anywhere. So after backup, I want to restore, okay. So after, is it possible to restore this credential in the same way like proof request words, everything works fine, right? Is it possible? We do have the, in the wallet module we have the export and import functionalities. So what you can do is to backup, to make a backup, you can call the export that will take an output path and an encryption key. So the backup will be encrypted with that key. And then you can, afterwards, you can do a, open a new instance of AFCA and then do a restore by calling the import method. Yeah, this currently works as far as I know, it works only when we are using SQLite as backend, which is the case of the mobile wallets, usually. I don't know, Plesio, are you, are you using that functionality in the VCGov wallet or it's not supported yet? So I am trying to actually adding the backup and restore functionalities, okay. First of all, whenever I have backed up credentials, in the credential we have a JSON object, right? Okay, so I backed up this JSON object, fully JSON objects stored in a database or something like that. So whenever I restore from this JSON object to the wallet after backup, after restoration, then it's not going to work actually perfectly. Whenever I am trying to prove a frequent functionalities after restoration, then it doesn't work. So is it possible or not? My question is, is it possible after restoration the backup function works or not actually? So I don't know. So I already created issues in the GitHub, is it possible or not? But there is no answer. I haven't seen, but in which you made these issues in Ares Framework Shower Script. Yeah, yeah. Yes. I cannot see. When did you open that issue? Because I cannot see that. Okay, I am trying to find it. Hello, am I audible? Excuse me just one minute, okay. So my issues is from the GitHub link, Ares Mobile Agent Reactive. My issues number actually five page three, right? Credential Render Error, OCL Hacker. You can see that it is already open, okay. Okay, so I think that that's that's more, more cliche feel, because yeah, the Mobile Agent is also called the Byfold Project. So that that's why I haven't seen it. So I don't, sorry, can you please link the issue? Can I text it in the Zoom link? Yes. I have sent it. Okay. It's been a long time since you opened it. Yeah, it's been five months actually, four and a half. So you're asking a question, what is the, what are you trying to add to the credential array? And then I have, I have solved this issue actually, we have changed in the last four years, I have changed, but this is another question. The question is, so I backed up the credential, right? So I have a decimal object, who's already showing in this GitHub link. So, sorry, sorry, backup and restore is not something that has been developed yet in Byfold, it's an open issue. Yeah, but I think, I think that what he's saying is what we're trying to do is to extract only a credential from the wallet, back it up somewhere. Yeah, exactly. And then copy it again in another wallet or whatever. Yeah, but only the credential record, that's what you're trying to do, right? Exactly, yeah. Okay, so for the moment, at least if we are, at least in the current release of Byfold, which is using the, which is based on the AFC033, which is using in the SDK as a backend. It's not possible to do that because what you are seeing there is only, let's say, the public part of the credential. And the other, and the private part is only, is stored internally by the in the SDK, so at the moment it's not possible to do that. Oh, I see what you're saying. Yeah, however, in the next release, which is based on the 04-0, where we are using the new components of AnonCrets, it is technically possible to extract the whole credential. And also to, because the credentials are, at least if you're talking about the AnonCrets or in the credential, which is the usual case, and this is the case that you are mentioning in your issue. All those credentials are issued by using something that is called the master secret or the link secret, which is something that is very internal of each wallet. So if you are going to extract or backup a single or a bunch of credentials, you will need also to extract the link secret. So it's not a process. I mean, it's not a very straightforward process. But it is, but it will be possible as soon as, I don't know, please, is it already merged? The DPR, no, not right. I mean, the DPR from that is using the shell components. No, it's not. Not yet. Yeah, because there were some issues on the migration script that the animal team is fixing. So in present release, there is no question, right? And for the moment, it's not possible to do that. But probably, probably we can, we can get a way of, or some guidance on how to do it, as soon as this project is based on the new components and the AnonCrets components. Yeah, so I think it is not possible to restore one credential, but at aerial point that out, you can backup and restore the whole wallet. Yeah, what is exactly, what is the use case for only restoring one credential? Sorry, can you repeat it? What is the use case for restoring only one credential? After actually searching this wallet, we have found that there is no mechanism. Sorry, you're breaking up. Can you hear me? Yeah. So suppose I have backed up a credential, right? I have a wallet, I have a phone and I have a credential and I already backed up. So some days later, I lost my phone. So I want to integrate this wallet again in this new phone. So I want to backup from any web database or something like that. So I want to restore the existing credential to my wallet, right? That's why I want to restore from anywhere else in my new phone so that I can search my existing credential from somewhere else where I already backed up, right? So these actually credentials, so I need this in future, right? So when I am backed up in anywhere else, then after I lost my phone, I want to restore another phone, right? So I want to restore it. So whenever I want to restore it, so I just backing up just JSON object like tags, okay? So, okay, connection ID credential, everything just not that you are showing exactly. So whenever I restore this credential, this is actually showing in the UI. But whenever I try to work as a proof of request, when I try to proof request, then it doesn't work because I think this is an exact way actually. So are you using the FJ backup and restore methods? We have our own way actually. So we are trying to our own way. So what do we have in my mind? Okay, so I would say try FJ backup and restore and see if that works. I don't know what's your own way, but Ariel pointed out there's a lot of details involved on backing up and restore. So FJ actually added backup and restore methods? I didn't know that actually. Yeah, actually it's import and export is the name we are using. But the problem is that you cannot export a single credential for the moment. You have to export the whole wallet and then in the new phone, let's say, you have to import the whole wallet and you will have not only the credential but also the connections and so on. Everything else, right? Yes, exactly. So as you're saying that recent release, present release, there are import and export functions, right? So I can use that. Yes. Yes. So can I link my own database system or anything else? So actually whenever import, import, export functions one, so where they store the credential? Cloud backup or anything else? Actually what is done in the export will simply create a new file in this case it's a mobile phone, right? In the file system and then you can choose to upload it whatever you want. I mean, a typical use case will be to upload it to Google Drive or Apple iCloud or whatever. So this is my own source, right? Sorry? That is my own choice, right? Yes. I can backup anywhere, okay? Yes. So that I can restore from whole wallet, right? Exactly, yes. Keep in mind that every time you export a wallet, you will provide a key. So the whole wallet will be encrypted by using that key. Okay, okay. Yeah. Thank you. That's my question actually. We have been trying to back many customers over the four or five months and we are interested in hyperlageries and we are trying to prove that actually. No, but it's interesting that it can exist in this use case where you only want to extract a part of the wallet. So I mean, this case of exporting a single credential, of course, it will need, in this case, it will need also that link secret because maybe you can, for instance, you can probably want to share a credential between all of those devices. I don't know. So maybe in those cases. You are telling about synchronization, right? Yeah, for instance. Sorry. Yeah. So you want to have a different connections in each device, but probably you want to share a credential between all of those devices. I don't know. So maybe in those cases. So for instance, I have a wallet, I have a credential and I have another wallet who have to be synchronized to wallet each other, right? Yeah, something like that. Maybe at a certain moment, it could be useful to have that flexibility. Yes. That's not possible at the moment. So I still don't understand what is your use case? What are you trying to do? As I said earlier, what I'm trying to do. So we have in this wallet, we have added two button, right? One is backup, one is register. Okay. So whenever I click the backup, so all my credentials are going to back up in somewhere else for whenever we are going to do about at any house where we want to use. Okay. So whenever suppose my phone or wallet is broken. So in my new phone, I want to restore this credential that I already stored already backed up in somewhere else. Okay. So that's why I'm using. Sorry, sorry. Pause. You want to backup and restart the whole wallet or. No, I'm just credential. Yeah. But whenever I just already backed up this credential. Why do you want it? Why do you want to restart just a credential? Actually, not just credential, credential and connection. Okay. So I have my proof because to ask for not that depends on the connection. Right. I have to already store my connection. Right. So mainly I have fastly I have stored my potential, but whenever I thought that just in this case credential doesn't work. We have to store connection. Right. After if you, if you notice your connection, then the proof because doesn't work. Right. So we have found that if we do not store the connection, then there is no meaning that we just store credential and your story. Okay. That doesn't mean anything. Okay. So we have to store backed up also a connection. Right. So that's why I am trying to tell you that how can I restore credential and connection in the same moment at the wallet so that it will functionally work at the same as before. Okay. So what we're recommending is that you use AFJ export and import that will export and import all the necessary objects to restore the wallet to the same level functionality at the moment. There's no way for you to pick and choose the objects. You can only backup and restore or import, export everything. Okay. So I have to back up everything that actually all in the wallet. Right. I have to back up everything. Right. Yes. What about suppose I already imported everything and somewhere else in my new phone I want to export. Right. So I have a new phone. So I want to export it who is already important. Right. I do it. Sorry, I don't understand a question. You're at it. Have a new phone and you want to export. Suppose in my phone I have already imported whole wallet. I have backed up a whole wallet. Okay. Okay. So in future I have a new phone. Okay. So I want to restore the whole work in my new. How can I do that? Okay. That's what I'm saying. You have old phone, new phone. You need to backup or export your wallet for the old phone and import into the new phone. Okay. So I think that's, that's the way I can do it. Great. Correct. Right now. Yes. Okay. The only option available right now is you do an import export in one side and import on the other side of the whole wall contents of the wallet. Yeah. I think that, that, that, that is not jets. Binded on, on the, on the by fault project. I mean, on the Iris mobile agent, but it is a feature that is supported on the underlying framework. It is using, which is this one in the AFC. Yeah. So you will, in your app, you will need to call those methods directly. Because functionality is not available yet in bifold. So again, you, you can add it, but I'm just directing you saying that AFJ only support import, the export import of the whole wallet. Okay. Thank you. Okay. So if you want to implement that you should, you, you can, but you are working within the constraints of what is provided in AFJ API. Okay. I got it. Okay. Thank you. No, no problem. Also, the GitHub issue is quite old from, from areas by fold repository. I'll probably going to close it because it's old one. There has been a lot of, there has been a lot of changes. Yeah. I'll recommend maybe whatever you're doing, try with a new, with a, with a new changes. If you're seeing the same error, you can reopen. Yeah. Okay. I am, I think I have to install the present release. Right. Sorry. You have to install one in the present release wallet. There is an important function. Right. No, if you're talking about in the, again, there's errors by fold. There is areas JavaScript frame share JavaScript framework. I'm talking about it is by fold. So if I, is available, is available in AFJ, but it's not available. It has not been implemented in by phone. Okay. So how, how, how it's going to be. So there is a, it's, there is an issue for backup and restart, but we have not gotten into that. So if you want to work on contributing that or creating your own code, you're probably going to be on your own because we have not touched that part yet. Oh, okay. I got you. Yeah. So it's not a feature that has been developed yet. Okay. From by fold perspective. The issue that may place you is mentioning. There is another issue. Back up and use. Actually is a good. I've mentioned something there comes in. You, you, you both are coworkers. Yes. Okay, okay. That's right. To join this meeting. It's our first meeting, by the way. Okay. Welcome. Yeah, I'm, I'm not, again, if, if you're interested in implementing the pack up and restart functionality. You have to work within the, within the AFJ limitations or constraints. So you mentioned that you're doing your own way that got me concerned. I don't know what that means. So you have to use AFJ import export to achieve the backup or start functionality. Okay, we got it. Firstly, as part of said that we already have done this, we successfully restore our credential, you see the single credential, but we have all those credentials we successfully restored by doing some changes in the note module, as you say, the AFJ note modules. But when we work, we find out that proof because it's not working. That is why we joined the meeting. Yeah. Yes. It will not work because in order to use it, the framework will will need to access that. Sorry, Ariel. Sorry, Ariel. So when you say the proof request is not working means that you have a connection that already existing in the wallet that you have restored. And that connection is trying to issue a proof request. No, we haven't. We haven't restored the connection yet. We just backup our credential and restore a credential when we find out that our proof because it's not working. That is the time when we find out that we also reassured. Sorry. Sorry, what do you mean by proof request is not working. Okay, sorry, again, what do you mean it's not working? Are you getting the proof request at all or you're not even getting the proof request? I'm getting the notification. So the issue or whatever the verifier is able to issue to send a proof request. You receive your wallet. Yeah. Is there where you're getting that OCA bundle error? No. Okay, so can you please explain to me what do you mean by not working? What is it that you're getting and where are you getting the start? Every credential we have a connection, right? Sorry, your mic volume go up and down. It's hard for me to understand you. Can you hear me? Yes. Fastly we have just backed up credential, right? So whatever, just credential, not connection or something else, just credential. We just backed up. Okay, okay, okay. You want to back up and restart just credentials not going to work. You need the connection. You need, you need everything. Yeah. So if I want to back up credential and its connection as same. Okay. So I backed up the credential and the connection. Okay. So I need to restore the connection and the credential. So you're saying that is it not going to work because this functionality is not implemented yet, right? So I need to hold back up all import, export, all wallet. I need to export them import to the another phone, right? Correct. You have actually what, what you are, what you are missing when, when doing so is that link secret or master secret that I mentioned. And that is use it when you are going to use that credential for a proof request. So I think that's the reason why it's failing. But. But I still don't understand where it's failing because again, if there is a connection established, we're talking about mobile wallet. Those route keys need to be registered with the mediator. I don't know where that is stopping. I still have, I still haven't understood the picture. So I think in the middle, there is an error. I guess we are not catching. That's why I think there is an error between us. So we are missing something. Right. That's why it is not working. Right. So, so there is the, the AFG export at import. Again, we have not tried that, that function because we have not implemented. But the question for me is when you do that export import. We have you successfully reconnect with the same mediator. Because the mediator needs to be there one for routing the, the messages. That includes a proof request that needs to be getting to the other side to the end point of your wallet. So this is implemented in AFG, but this is not in green wallet. Right. So import export implemented. Right. Again, backup and restore is not a trivial issue. It's not a trivial problem for mobile devices. There's a lot of moving parts. It's not just like you backup a database. Right. There is, there is other things that you need to, to make sure that your mediator knows that there's a new water. So technically, if you're back up and restore everything, you should be able to reconnect with same mediator. And then you're going to have the same routing keys. So that's why I'm saying that we do not support maybe not yet, maybe in the future we will individual credential or individual object, you restore everything. Because otherwise some metadata will be missing. Okay. But for the moment, what for, for your, for your use case, what, what you can do is to export and export and import and that will work. The other thing that you have to keep in mind is that there is, it's not implemented on the bifold or areas, mobile agent react native level. But if you, but this, I mean, in the, from react native, you can access to the agent instance. So you, what you can do is to get the agent dot wallet dot export, whatever you want. And agent dot wallet dot import. And you, you can simply import your wallet. And of course, you will need to reopen it with the, with the key you provided. And that's it. Okay. Got you. Okay. Thank you. So try that out and let us know how that goes. Okay. Yeah. Thank you. Awesome. Thank you. So is it going trend? Alas, do you have any other question? No, no, I don't. Thank you. Is the code, is the code you're working on also open source? No, no. Okay. Okay. No problem. All right then. Okay. Thank you. Thank you. Okay. Thank you guys. Okay. Well, see you next week. Yeah. Okay. Thank you.