 We have started the recording. Good morning, guys. We'll give a couple of more minutes and we'll get started. This will get seen by lots of people on YouTube, right? While we wait for people to join in. So, for those of you who already don't know, there is a hyperlegium internship program currently going on and the proposal for which is still open. It's open till March 15th. So you get opportunity to propose a project and if your project gets through, then you get to work with mentees. You get to mentor the new mentees at Hyperlegium Foundation. And this is also opportunity for you to get involved or probably propose the ideas that you have been holding on the ideas that you may have with you. That you feel like, hey, this is probably a good idea to get involved and probably I need a feature like this in this project. It could be Fabric, it could be Bevel. I know we have a lot of many people using Basu as well in the India community. So this probably is a better opportunity for you to get involved. So do reach out to anybody who you know from the chapter. They will guide you. We'll get started in one more minute. Alright, I think we can get started now. Hey, hello all. Good morning again. Welcome to Hyperlegia India chapters. Hyperlegia Connect India 2023. I know we have been quiet for some period for last two, three months. But I think we are, we were holding on our best sessions and best technical papers and best presentations for this occasion. And today we have our esteemed guests. And I think we don't need more introduction to this person. And he has been helping with all our events. And anytime we have any request, we just need to send an email or ask. And it's always coming with much more, I don't know, with all the help needed and with anything that we request for. So it's none other than Julian Gordon, of course. And all of you already know probably. And thanks Julian again for honoring us and joining us today on a weekend. And with us joining today, we also have Daniela Barbosa, who is general manager for blockchain and identity attack. And she's executive for Hyperlegia Foundation. And she holds a larger portfolio as well. That's what I learned from Julian recently. And thanks Daniela for joining in. I know it's late night for you. And thanks for always helping us, supporting us and the Ledger India chapter. And with that, today we'll be having, today we have a good big announcement coming up. So we are, you will all learn about what's happening at Hyperlegia India chapter and how you all can be involved. And there is this more space, there is more room for you all to be involved and engage yourself every day. And apart from that, we are going to learn great presentations today. And today we have Ravi, who will be sharing his mentorship experience with all of us. And we have Aditya, who will be sharing how we can use a pluggable CA, which is non Hyperlegia Fabric CA, right? So that's going to be interesting technical topic as well. And the following we have team from Z who will be sharing how somebody can use Hyperlegia Fabric and set up in their enterprise networks. So I know it's a, it's a jump packed agenda for the day. And looking forward to hearing all the sessions and to kick it off. I think now I'd like to welcome Julian to speak a few words. I first have to get off mute. Well, thank you, and thank you for everything that you've done, right? So, which we'll cover a little bit in a bit, right? But welcome everybody to this Indian chapter event. I'm going to go through a few slides. So, Vikram, do you want to show the slides or, or, or should I go through the slides? You have, you have the latest slides, right? Do you want to present them? Sure, I can do that. Or do you want to give them to me? Yeah. Oh, they are there. Did you wear it? Where did you? Sorry. Just give me a sec. Just that. Yep. I'm dead now. Excellent. Okay. So I'm going to talk a little about the Indian chapter today. So let's go. And as we know today, we have two, two leaders. I'm going to talk a little bit. But I think it's, it's going to be a good question. I think, somebody else is going to be joined in this alumni, this, you know, a reptile alumni of retired chapter chairs. We have a more who we've started this all with back in, I think, 2018, who now at Dragonfoot AI and AJ also then also took that on as a joint leadership. So I firstly, I think we'd have to say thank you to the retired chapter chairs and may we have another one maybe soon. soon. So as, as, as this says, to be honest, I can't read it all. But the world is one family and and all are welcome at Hyperledger. And that is a mantra that we have said since the very beginning, our diversity is our strength. And we may think global, we truly act global, right? So thank you, the community for doing that. So, hello, well, so next, we have read many regional chapters. So the India chapter was the first one. And I think next slide talks a little bit to that. But the model that was created here at in India, as the model that has gone, you know, gone around the world, right? And as you saw, we have many Italy, we have Latin America, we have the Italian chapter in Africa, and many other places around the world, right? So I'm very vibrant communities. If you go back to the one before. So, no, next one. So basically, this was proposed in 2018. I remember when, actually, I think I did the technical steering chair, it came out of the ideas of a mall, it came out of the ideas that we had many meetups. But how do we as India come together to do something more significant than even we're doing at a regional? So this is to pull together India, which as we know India, some of the most best developers, some of the best developers in the world, right? And some of the greatest communities that we wanted to empower to get involved and lead many things that we're doing at Hyperledger. It's proposed in mid 2018, started in 2019. We've just had our fourth anniversary, which you all may have joined earlier. And now we're just going from growth to growth, right? Next slide. So the goals, and these came from the very beginning. And by the way, this is, as I said, the slide, it's open to everyone. We do have weekly calls every Thursday at 3 p.m. IST. So please do get involved. It's very easy to get involved. There's many materials that you can help you do that. It's really to help the adoption of Hyperledger projects, which as you know, we have many, many projects, and we also have many labs. So we want to help promote the adoption of those to help accelerate blockchain technology and blockchain for business for all of us, grow the user and developer community in India, and promote technical contributions. So a lot of people consume open source, but how do you contribute back technically and also in other ways, like we're going to hear about the leadership here or contributing to the community through many other means, and then provide a platform guidance for support and collaboration of the community very much driven by the leadership and our members and others in India. So please, anyone watching who hasn't got involved, you can easily get involved, and you can do that through our calls at 3 p.m. IST regularly every Thursday. And just connect with anyone here is always going to help you and guide you. Next step, next slide. So yeah, we have, and this was set up, I think, two years ago, the Hyperledger India Chapter Student Society. So we understand that the necessity, not the opportunity of working with universities or the new talent and new developers and new ideas, and we want to much want to help them get involved in what we're doing and contribute to this global community. So the Student Society, if you're a student, please do get involved. We have that there specifically for you. And I think that is just growing and growing as well, right? And we've got some leadership we're going to talk today, who are going to take the mantle and help drive that and help grow that forward the community and for the benefit of the community. Next slide. Yeah, you can watch everything that we do here and go back in history. If you want to become, I don't know, there'll ever be a history book on the chapter, who knows, but we have it all documented out there. And you can see the stuff you can see that the events activities, actually, a lot of stuff was done during the pandemic, right? I think Indian chapter really adapted. We even did online hackathons, really, and this innovative stuff to help keep the community going through some of those challenging times we had through COVID. But all the content is there, very rich in contact. And please, like today's video, you'll be able to see that on Hyperledger's YouTube. Okay, next slide. I think I'm now going to hand over to my boss and the general manager and the executive director of Hyperledger. I'm going to hand over to Daniela, who's up in the middle of the night. Thank you very much for being hand Daniela. I'm going to pass to you. Thank you. It's still early. It's 9 p.m. on a Friday night. And, you know, I've said this a million times. This is one of my favorite things is talking to our community. So, Julian, thank you for all your support and your continued leadership for the community there in India. You know, I have to say that, you know, one of the highlights and one of the things that I talk about all the time is the community that the India chapter has grown over the last few years. You know, starting in 2019, as Julian mentioned, from 2020 to 2022, we actually saw 24% growth in the India regional chapter community. So, across all of India with all the meetups and all the work that we've done, we've seen an increase in Hyperledger members joining from the region. And we thank all the members that have joined us to help support the work that the Hyperledger Foundation has done. And today, I think we're close to 15,000 community members, at least in the meetup community world. And that's pretty amazing. And the way that we see growth in the India chapter and in the developers and in the interest that we're seeing in the marketplace, I think is really truly because of all of you, all of the work that everyone that has been participating that has been contributing to the India regional chapter has done. So, you know, first, I want to thank everybody who has done such a fantastic work in growing our community, in keeping in place. For those of you who are might be new to our community, last year, we also published an ebook that really highlighted what was going on with the India regional community. And I'll put it on the chat, you can download it there. But it's really spectacular. And it's not just about events. And, you know, I have to say, I do watch these events very often on a Saturday morning when I go for my long walks down to the beach. I might listen to some of these events. And I love the presentations and the work that everyone does. And I think that, you know, we need to keep in mind that there are people watching from around the world what the developer community is doing in India, the contributions, the mentorship programs. Arun mentioned very early on the mentorship programs that we have, you know, it is not just about, you know, showing up at meetups, but actually contributing. And I want to once again thank you. But, you know, overall, as we look through the last few years, you know, I want to thank Arun specifically, who has been one of the India chapter leads working with the rest of the community for really being a leader in not only the regional chapter, but globally as well. So Arun hats off to you. I am so excited. I'm not going to have to wake up in the middle of the night to talk to you any longer and vice versa, since you're now stateside. And I think, you know, you'll continue to be a leader. Obviously, Arun, for those of you don't know, is currently part of the hyper ledger technical oversight committee. So he's one of our leaders in our technical governance committee. And I think it's fantastic. So Arun, thank you for everything that you've done over the years for the hyper ledger India chapter. And I am sure we're going to continue seeing some great, great stuff with you. But with that, you know, there's new leadership and a great opportunity. And I'm just delighted to see the kind of leadership that we're seeing with the new chapter leads and the different committees that we've set up for the hyper ledger India chapter. And I thank, you know, Arun and Kamlesh and the rest of you for working together over the last few weeks to come together and put together this leadership team. And it's really fantastic. And I look forward, I look forward to working with every single one of you. So first, and we're going to go Kamlesh in a little bit is going to give us an overview, a little bit more detail of everybody's background. But let's talk a little bit about who our new hyper ledger India chapter leads are. So Kamlesh is going to continue to be leading our India chapter, as well as other other groups within the hyper ledger foundation. So Kamlesh, thank you so much for all that you do. Excited to see Vikram, who also has been contributing to the community for a long time, taking on a new leadership role as part of a chapter leads for the chapter. So thank you, Vikram, for all that you've done in the past and your continued leadership as well. And I'm very, very much delighted to see Deepka, who I had the pleasure of meeting this year at the hyper ledger global forum in Dublin, when she came to really represent what the India regional community has been doing. And more importantly, what developers in the region and globally have been participate, how they have been participating in hyper ledger. Deepka, it's an honor and I'm so excited to see you taking on a leadership role here at the hyper ledger foundation. And I'm just extremely excited to, you know, hopefully be able to work with you even more closely as we move forward. So congratulations. And I think there's a little clap sign on this Zoom. Let me do that. Congratulations through the new chapter leads and myself and Julian and the rest of the hyper ledger staff are looking forward to working with all of you. So thank you so much for stepping up and for volunteering your time and your resources to the foundation as well. So thank you so much. And we'll get more details about all these great folks. So next slide please. This year, we're also doing some leads in the India chapter. And not only do I support this, I think that is so important as this community continues to grow that leadership is very targeted in different domains and how we assist and how we support our communities. So congratulations and a welcome to our new event and engagement leads. Then we got Rajesh and Ritu. We're looking forward to working with you and making sure that you're successful in the work that you're going to do in the community. And once again, you know, a community of over 15,000 people doing events and engagements like we are doing this evening or this morning for you all is really important. So I really am looking forward to the contributions that these leads will have for our chapter. So welcome. Obviously, you know, not just in India but worldwide, the academic community is so special to us. And we want to continue to support and provide resources to it. So I want to welcome our new Student Society leads for the India regional chapter, Ravi and Pramod. Thank you. As I said before, the academic community and students are our future. And we want to make sure that we're providing the resources and the opportunities for them to step up through things like, for example, our mentorship programs and other ways that students around the world can really participate and contribute to our project. So thank you Ravi and Pramod for taking on this leadership role as well. With developers, we are developer ecosystem and having developer advocates that really, you know, over, you know, the India chapter events, the different things that the group does, you know, making sure that we have developers advocates that reach out to the developer ecosystem. So I'm very happy with this category. And I think it's a great opportunity for these three new leaders to take on responsibilities and roles that will really help continue to grow our developer ecosystem. So Karpki and Adika and Niti, welcome to the Hyperledger Foundation. And we're very excited to have you as part of the developer advocate team and to see the kind of work that our community can continue to grow. And maybe that I can come in next year and say, hey, we grow from 50,000 community members to 20,000 community members. And I think the developer advocate work is going to really, really assist us with that. So thank you so much for volunteering and for taking a leadership role in our foundation. All right. So once again, I just want to thank everybody and I do listen to many of your presentations. You know, I am looking forward to visiting India this year. We will be sharing over the next few months, when, when and how. But I think it's long overdue that our team here, our staff goes to India. So I look forward to meeting everyone when I do come out. And I want to thank everybody for their continued support and contributions to the Hyperledger Foundation. So I'd like to introduce Kamlesh, one of our chapter leads here for the India chapter to take us through a little bit about who the leaders are and how we can look at them and kind of help assist them. It's all of us together in helping assist our leadership in being successful in this new chapter of the India chapter. So Kamlesh, once again, thank you for everything that you do across the Hyperledger Foundation and over to you. Yeah, I guess, you know, before Kamlesh starts, you know, I'll introduce Kamlesh and then, you know, Kamlesh can probably introduce the rest of us. All right, well, then let me try that again. Vikram, sorry, I didn't take the cue. Thank you. Thank you for working on the slides as well. And Vikram, go ahead. If you can introduce Kamlesh and thanks again for your leadership. Go ahead, Vikram. Sure, thanks. So essentially, you know, Kamlesh needs no introduction, you know, he is a TEDx speaker and, you know, he is CTO art, you know, for blockchain art, you know, snapper future tech. He is, you know, one of the, you know, most influential peoples, you know, especially in the blockchain community, he is among the top 30, right? He is, you know, currently, you know, he's already a lead of India chapter and he, you know, he'll continue being that. And previously, he was also a member of, you know, Hyperledger technical sharing committee, you know, till last year. And he has been, you know, playing active role across the hyperledger community and the blockchain community. I see him every day, you know, contributing to blockchain and, you know, adoption of blockchain and, you know, you know, making sure that, you know, blockchain reaches, you know, the masses, right? So I've seen him, you know, do so much and, you know, make sure, you know, the newsletters are out, make sure that, you know, everyone, you know, has what they need to, you know, contribute towards blockchain and its adoption, right? And he is currently also, you know, the vice chair for, you know, Hyperledger Climate Action and Accounting SIG. He is also part of, you know, Trade Finance SIG and, you know, Hyperledger Global Forum, you know, committee member as well. You know, he has went to that APR, you know, blockchain COE and as, you know, as previously, you know, Hyperledger mentor as well in last year, you know, he mentored, you know, multiple such, you know, projects as part of that mentorship forum, right? So thank you, Kamlesh, for all the contributions that you have done and, you know, looking forward to working with you. So over to you Kamlesh now. Yeah, so thank you Vikram for the introduction. So before going to the new team structure, I would like to thank Naila and Julian for joining us and helping Indian community to grow at this scale. And last but not least, thank you to Arun from the last two years, how we drive the community and contributing and getting together out of the community. And now we are, we need the community to grow at the different level. So, and because, and that's their purpose, we come with a new structure which Arun suggested that we should have different roles because as a two leads and two person can't lead the community, we need the community architect and community, the other community behind to make it the next level. So for this we started to think about like what are the different roles and things we can do. So Arun, next slide. So for the addition of the India chapter lead, so we added Vikram. So Vikram is a active community participant from last three, four years is handling the currently event management or even lead and directly working with Julian and David and all about events in India chapter and is quite active. So currently he is a part of the HCL take is a HCL technology is a blockchain practice lead and quite active in the blockchain community in India. And Vikram is also has been mentored to the blockchain for blockchain at Hyperlegium and mentorship programs. So, welcome Vikram to the India chapter league. Yes, thank you Kamlesh and Deepika is our new face. So, because we need someone young lady to drive the blockchain and drive the Indian community at the different level in different parts because we need the same new brand and new thought process of what can be done. So, Deepika is part of the Walmart global take India. She is colleague of Arun and active member of the Hyperlegium globally and he has been there in the global forum last year and presenting the Indian community and leading the women in blockchain events in India. And that's the reason we included her to lead the India chapter and her new thoughts and new vision maybe we could take the new level. So, Kamlesh looking forward to working with everyone. Yeah, next slide. Okay. So, like suppose we as a different meetups and different events there's a plan in India and we keep doing in Indian community. So, to do this thing individually and as a broader level as the next level, we added two different leads to drive this particular this particular segment. So, Rajesh Krishnan with the part of the Dell Technology in India distinctions engineer there and he has been in the community from quite some time and contributing in in terms of managing events or contributing to the Indian community. And so, and has been mentored to the Hyperlegium and Hyperlegium mentorship program last year. So, welcome Rajesh to the Indian community. Thank you. We think forward to connect more events and meet the target of Daniela that she has said 20k. Yeah, next one. So, Ritu is quite active. So, Ritu is currently already heading and leading some Hyperlegium Hedrabad events with Karthike and she has been active in the community like other member and and that is the basis of involving and giving us a new response duty to take this forward. C has been as associate director is a big loss of big loss of Indian mentality company and C has been active in the blockchain community as a speaker is a Hyperlegium Challenge program and Hyperlegium Ambassador program. So, welcome to Ritu Indian team. Thank you. Looking forward to work with everybody. Thank you. Yeah, thank you. And because Arun and Senget and we started a student chapter society I think two years before and it is needed some kind of boost up to take this number because in Indian community there are millions of students, engineering students we can say and we can reach out to them and get involved in the Hyperlegium community and it's basically a developer community but currently every university in India looking forward to be getting engaged with the open source and developer community. I see many engineering colleges and universities so everybody having the IEEE chapters of Google developer community so I think it's a good place to be having a Hyperlegium India chapter experience society at the each engineering colleges in India and when we reach out we could not just 20k we could maybe have a million dollar sorry million Yeah, dollars. Millions of people in India. So, Ravi Pratap who is already involved in the Indian chapter community and already driving some of the initiative in the student chapter so currently even he is in discussion with a few universities to be being one board the students of the society so welcome Ravi. Thank you. One more one more call out with Ravi so I think since he's an example right so how you all can be he can be involved and then how you can also start leading the opportunities so Ravi was one of the mentee at Hyperlegium so he went through the process of starting from zero he started contributing to projects he became a mentee he went through that phase and now he's helping others drive the community and taking on leadership roles so he's an example of recent example that you all can refer and Ravi can maybe talk about more in the next session that he's going to talk about. Yeah, yeah he's definitely an inspiration yeah and you know has quite a dynamic personality okay yeah so next slide and Pramod Malvi he's the head of transmission of IT at Big FMB radio broadcasting company FMB FM radio and he's a technology head there and he has a more than 35 years of experience and work with global MNC companies like IBM SRT, VNBFS Global and he has been he is in the Hyperlegium Mumbai and Pune chapter leads even before joining me and due to some other reasons he was stripped out during that period in during the cold period but from last six months he is showing interest and he would like to take the lead and and he started again engaging with the Hyperlegium India Company or Hyperlegium community via the Mumbai chapter and involving the India individual community so and he has a very good network with the university because he has he has been part of the tech community from last 35 years so he's a good addition to the Student Chapter Society to tech to the next level so welcome Pramod team. Thank you thank you everybody and I look forward to contributing from my side. Yeah and I think this about this developer advocate because I am watching other other blockchain community like Polygon like like R3 and they have a separate segment for the developer advocate so developer advocate is the person is the investor or the technologies who could who could drive or you know kind of kind of involve the developer communities and India is the largest developer community in the bird so engaging all the developers who are building some solution or some other programming we as a developer community should involve all the developers to be work on Hyperlegium projects Hyperlegium community or contribute to the Hyperlegium projects and adding the person like Karthike and Aditya and Nidhi because they are there a developer face in the blockchain community face in the in the developer community who adding all these three people in the in the this segment they can drive and kind of motivate the developer out there to to be become a Hyperlegium Hyperlegium developer or contribute back to the Hyperlegium project and contribute to the open source project we can we can take to the Hyperlegium foundation to the next level and this is the this is the my thought process to end the developer advocate in the in the segment because other other open source community driving the open source community via the developer advocate channels so and so Karthike and Aditya Joshi and Nidhi is part of the developer advocate team to lead the specific developer advocate community in India so about Karthike Karthike is a part of the Hyperlegium community and especially Hyperlegium Hyderabad chapter he is the leader for Hyperlegium Hyderabad chapter and he is very engaging in the community and even yesterday he is part of the one university session and every week is something he planned in the Hyperlegium chapter and he is working with KPMG, KPMG is working with couple of CBT's here in the blockchain projects globally and he is one of the inner consentant there so welcome to in the sector. Thank you looking forward thank you very much. Aditya so even Aditya no introduction required especially in the developer community so everyone who learning the Hyperlegium Fabric deployment on Kubernetes or other kind of deployment is specific everyone follows his YouTube channel his courses and even my team my company also uses his YouTube videos and YouTube open source GitHub repository to deploying the production deployment so and I think it is a great addition to this kind of person to the developer community to attract the developer out there to get involved in the blockchain community and so welcome Aditya, Aditya is a part of our global tech team India. Thank you looking forward to it. So even Aditya I know from last five years so she has been earlier part of the GEO platform GEO is a GEO platform is working on a working on a just try blockchain and other blockchain implementation in the telecom industry and she's been one of the developer to those big, big Hyperlegium Fabric projects and currently she's part of the Walmart global tech India and she has been active in the community as a contributor as a participant she has been a winner in a high company so 21 I know many technologies and also the finders for the NPC are decently which my company conducted and like Aditya and Patrick is also the global face in the developer community so welcome to the team and looking forward to take to the India to the next level maybe we can create a 50,000 developer community in the next one year. 15 to 50. All right I'm waiting I'll be waiting I'll be here to help you Nithi and the rest of you. Thank you Danny. Yeah so congratulations everyone and looking forward to let's see how we can get 15, K to 50 K in next one year and all the best so and you can involve you can join our weekly meetings every Thursday and now we have a broader team and extended team we can plan and with everyone like what what can be done to take it 15 to 50 K and what what others if we can do because as a now we have a 10 to 15 mile together so take the different thought process and take it to the next level so and we will be needing help from Julian and Hyperlegia foundation in Denida and Arun from the community to take this forward and everyone out there with Hyperlegia, devil, maintenance, facilities and so on and I do research people drama and I think many out there in Indian community who are working in blockchain projects from East end of community in India. So yeah thank you and congratulate everyone pick it up over to you. Thank you I would you know probably say thank you to everyone for you know especially you know Danila and you know Julian for you know putting the trust in me and so we'll definitely you know take you know take your vision of you know increasing this community and we'll definitely you know aim for 50,000 let's say you know where we reach out by the end of you know this year right when the next time we meet at Hyperlegia connect so we'll definitely take it forward and I you know look forward to working with this extended team right working you know but I've been working with Arun in Kamlesh for last three four years now you know I got hooked with you know when we start the Hyperhack 2020 you know I got hooked with that and since then you know I'm trying to you know contribute and you know we'll continue doing so with the with this whole team and I'm definitely sure that these are all the champions that you know we needed to you know make this in a community a success. Yeah looking forward to working with you all. So we can hear if you want to address something or maybe anyone. Yeah definitely so I mean I started exploring blockchain with a simple hackathon just for the fun of it and from there you know my journey started with writing blogs and then of course I got involved with Hyperlegia. I wasn't even in the blockchain even when I incidentally met Arun in one of those hackathons that he was also part competing against me and I converted him into my mentor which is a very cool story but that's where the kind you know blockchain journey kind of started and to see you know that kind of growth from Feb or Chan of last year to Feb and March of this year. It's been a really really crazy journey and I'm very very excited to be working with all of you. I've worked with Kamlesh, I've you know I've been up all the Hyperlegia and he kind of gave me the kind of discussions ideas that we have. I've also part of the Hyperlegia challenge where a lot of things across the world presented really cool ideas. So to be involved in this kind of community where everyone is trying to and build projects together, it really excites me and I'm sure we have a big team and I have really big shoes to fill like I was just telling people earlier. Arun is a hackathon huge and I hope I can do justice to this role and I'm really looking forward to it. Sure, thanks Deepika. I think you know in the interest of time I would recommend that you know we start with the the next presentation that we have you know also Ravi as Amenti you know wanted to share his experiences so we had planned for that. So in the interest of time you know we are already running behind time so I would request that. So shall we go ahead with this with the presentations? Yeah I think we can do it. Okay, so Ravi so I'll you know hand over to you to share your experiences as Amenti that you know how you felt you know how you started your journey, how you felt and you know however you reached you know this place where you know you are you know engaging more and more people in getting them you know into our community. Yeah sure so shall I screen share my screen? Sure sure please go ahead. Okay so is it visible? Not yet. Not yet. Okay. Yep now we can see your screen. Okay yes so hello everyone I am Ravi Patapsing. So today I'm about to share some of my experience during last mentorship session in Hyperledger Foundation which I finished in this December this year. So I will be talking something about how it started with me regarding thinking about mentorship and doing the mentorship and what I am doing at the end of this mentorship. So I'll I'll make the presentation quick sort because even I have been in a lot of 15 years time but I will try to finish in 10 minutes. So when I look back at open source software ecosystem so in this ecosystem actually there are so many participants but the basic idea is around a standard entity that is developer and every every time if community wanted to grow from current knowledge knowledge base to the extended one so it needs some more participation from developers because they are the core in this ecosystem. So when any particular individual who is wanted to be a prospective developer if he or she is in college so around at the end of third or fourth year she start thinking that okay how to start contributing to open source community or project even though she or he has many questions like do I know good enough will I be just by the community or how do I fit myself in the overall objective of the community at at such to fulfill this gap or to make it more engaging the Hyperledger Foundation has mentorship let's say a scholarship organization which consists kind of one-to-one interpersonal relationship between a mentor who is already experienced contributor in the open source community and an inexperienced mentee and what it does that during the mentorship what I experienced that it's kind of structured hands-on learning opportunity and you can work remotely you get paid well I mean as per Indian standard and you get regular feedback from your mentor you have you have kind of opportunity to travel also during the mentor separation if there is any opportunity kind of conference or face-to-face meet-up etc and on that line the Hyperledger Foundation support the mentees to achieve that objective so how it started for me so basically mentorship has standard three-way approach that every year there are so many projects so you see the projects and you are eligible to apply maximum three projects in a particular call so I replied for three calls then based on your application or whatever information you put or a skill set you have demonstrated you will be shorted for the interview and I mean what I applied for three projects I got an interview call from from two projects actually but it was fortunate enough that I got an opportunity with one of mentor in Europe regarding this SLA development so this is about how you boarded once you boarded then during the mentorship it was the first call with mentors so basically we started having casual conversation okay from where to start what are the resources what is your skill set and how much time you can contribute and here I wanted to mention that even though this mentorship program is very structured but it is flexible also because initially I thought that I'll finish in three months full-time but some or other way I had some time issue timing issues so I requested the project manager that okay I wanted to make it half-time is it possible so including my mentor recommended that yes we can move it from full-time to half-time kind of so on that on that line we set up everything what are the expectations how we can communicate how we can communicate with the community and I mean how to go forward so actually we we make a project plan kind of then on that project plan our the technical aspects were I will try to finish in three minutes technical aspects that we wanted to develop a SLA agreement tool or just a test case and the specific test case was that there are so many let's example service providers especially in cloud so there is always two parties one is user one is the service provider so in between these two parties there are some kind of agreement is it possible to have that agreement inside the blockchain space so that we can have transparency and accountability in the both both parties so what we we were trying to do that we wanted to interface the existing hypervisor fabric with FPC fabric private chain code we choose especially the FPC because it shows it shows a route route or a solution that okay in traditional approaches every participant is able to access the information but we do not want to disclose these all this information so we opted that okay we will try to link the hypervisor fabric private chain code with our implementation so this was kind of scheme and during mentorship actually we did deliver deliver something that there was actually three spaces that we wanted to set up standard fabric network and then is it possible to have a GUI from administrative point of view admin point of view so we integrated that with the hypervisor explorer and test our use case with SLA contract so we were able to I would not say that we were able to succeed at 100% but yes close to 60 plus percent so I mean the if somebody wanted to explore then PPTNs a video demonstration and project repository is mentioned here kind of during this as I mentioned that global sorry the hypervisor foundation during mentorship especially for mentors if you wanted to explore our other avenues like face-to-face meet-up with the community or you wanted to participate in any conference then you can apply for hypervisor foundation table travel scholarships I replied for it and I was fortunate enough to get the scholarship so it was kind of you get travel expenses accommodation expansion and in-person registration fees so it's kind of a good opportunity for me and apart from them if somebody did not qualify or did not had a scholarship at the end even though he or she have got complementary access to the global forum live sessions especially for mentees in 2022 so what I did that it was kind of let's say I wanted to meet my mentor so there I met mentor I met the community project let's say contributor and maintainers and it was really fun having exploring people from different places even though I have been to Europe for last four five years but meeting them after this COVID after two and a half year it was really exciting and fun so it's good and one specific incident that even though we are talking about open source but what happened that during this event we wanted to travel certain places so we planned me especially we planned to visit a place or some other way I mean that plan did not work out so actually we were standing on across the road and there were few people also they were having similar plans I don't know what happened but just like community we interacted with them and within 10 minutes we had a plan that okay if there is no public transport we are unable to go through as per plan then we can have like what they say contingency plan so on the spot we interacted with them we had makeup a full plan and within half an hour we proceed so it was also kind of a life skill experience for me as well after the mentorship because initially I started applied governorship did some technical works but this is not only about technical works there are so many things which you can do after the mentorship like after mentorship I am trying to get involved in hypervisor in the chapter and because I have I wanted to contribute on that day and I'm also trying to contribute hypervisor blockchain external lab and of course the fabric private chain code and we were trying to we are trying to put some project proposal for extension of I wanted to extend whatever I did in the last mentorship sessions so this is something really exciting and what I did learn during the mentorship and a special thing is that I get to know the process especially in open source project how to start what are the pitfalls and what are the nativities what you have to do what is the standard process there are so many things which are especially designed in the open source community so it's kind of process of self-learning and how you can continuously improve and make your contribution visible in the open source community so at last I would like to say that if somebody somebody or I mean not only the college student but if somebody is on the kind of different track he wanted to get involved in the hypervisor or any in general open source project then mentor situations are really helpful for them to open or break that barrier and have a one-to-one start from one-to-one engagement and once you are inside the community then your responsibility sits from being trained to help other to get inside the community so on that line I'm currently engaging in the student chapter student society engagement and I would like to work with the I mean India chapter team and make sure that my contribution count in the community thank you. Thanks a lot Ravi and definitely you know hyper ledger you know hyper ledger forums and you know the meetups they definitely bring the community together and you know give them chance to explore and you know new ways of you know looking at blockchain and new ways of connecting right so thank you hyper ledger for you know organizing such you know great events and you know getting us you know a chance to be together you know I also was you know I've been working with Arun Kamlesh you know for few for many years now right but hyper ledger global forum was the first point when we all met yeah so same way I met Ravi as well there right so yeah so thank you Ravi thanks a lot for you know sharing your experiences and we definitely understand that you know hyper ledger mentorship is a you know great program you know where you know where one gets to experiment with blockchain and you know also the mentees who get to learn new things and you know contribute to the community right and that too you know this is a paid exercise that they got so thank you thanks a lot you know hyper ledger foundation for such great opportunities for you know the upcoming for the you know the students and you know others who are trying to adopt blockchain with that you know I would move to Aditya so Aditya again you know is a known face and he's our developer advocate and now you know he's going to present how we can leverage you know pluggable CA with hyper ledger fabric and it's a known problem you know for anyone who is trying to implement blockchain and you know hyper ledger fabric that you know how do I manage my certificates how do I rotate the keys so with that you know without you know further ado you know handing over to Aditya to go over you know how we can you know do you know this you know brilliant stuff adding to adding to what Vikram just said right so we are actually moving from one mentee to another mentee so Aditya was also one of the mentee at hyper ledger foundation and it's great to see you contribute right thanks Aditya thanks sir okay so for the presentation I'll move to my screen so please let me know if it is visible to you guys thank you okay so this session is about how we can leverage or how we can add pluggable or custom CA's with the fabric blockchain and this is a known problem in the industry like right now fabric when you go and look at the various example present on the internet about like using certificate how do you will find either fabric CA or crypto gen for generating those identities but there is a bigger problem when you know well-established organizations they have their own certificate thought is which they might be using for from years and now they want to use the same certificate authorities to issue identities to the fabric nodes or the users of the fabric blockchain and bootstrap those networks so before jumping into the presentation I would like to introduce myself I am Aditya I am a software engineer at Walmart and also an instructor at Udini I'm an open source enthusiast and contributing and maintaining some of the projects at the hyper ledger foundation now let's talk about some of the features of the fabric before actually jumping into the problem statement so we know that fabric is quite flexible in terms of some of the concept stated brings like the one of the important or extension that it provides is the plugability you it allows you to plug multiple consensus algorithm you can basically bootstrap the network at different different places or different different infrastructures and these are some of the features that I have listed here like it supports you know transactions at permissioning like who can endorse the transactions who can be the part of the transactions you it also supports richer queries with the help of state database so it also provides a plugability where you can attach the couch dv as a state database and you can do flexible or rich queries on the top of that database now one more key feature that it provides is supporting from for bring your own identity like it provides you a feature where you can provide or bootstrap the networks using your own identities or your your custom identities and these entities can be coming from any source you can use either fabric ca you can use cryptogen you can use well establish your organization level certificate authorities you can use open excel for issuing of the certificates you can use any kind of certificate authority because at the end of the day the fabric nodes or the fabric components required the certificates which can be verified and which are in the required format to establish or to run the network now fabric to run the fabric nodes we need two kind of certificates so first is the enrollment certificate which is used for signing up the transactions which needs to be there whenever you are signing up the transaction and second time of certificate that is needed which is a TLS certificate which is used for setting up the TLS communication amongst the node so when we talk about enrollment certificates we need to there are there multiple roles or multiple components in the fabric network for them we need the these enrollment certificates so a few of the roles are like admin is one of the role then peer is one of the component order and client and these all need certificates to run the node or to sign the transaction so admin admin need the those certificates those enrollment certificates to make change to the network let's say there is some update that you want to make to the channel then or to the network then you will be needing the admin certificate let's say there is a peer node so peer node in itself needs some certificates to bootstrap itself and similarly for order else when we need those certificates to bootstrap them and in order to you know sign the transactions and send those blocks to the to the peer nodes so and when we talk about the TLS certificate so we have majorly two primary usage for TLS certificates so one is the you know end-to-end encryption or TLS communication amongst the nodes clients like all the components that are there in the fabric network and second one is like when you want to have the communication to the channel then at the time as well you need the valid TLS certificates and these valid certificates are are provision or not not either provision but managed by something called MSP so I have seen like people getting very confused with the MSP like what MSP is most of them think that it's a service that is running onto the blockchain or running into the PN node but it's actually not any kind of a service it's not a program or not a process or not a worker which is running inside your nodes and maintaining or ensuring the memberships of the node again it's not a provider it's not any kind of provider like OAuth or LDAP that will issue of the certificates for you it's it's just a naming convention that is given and apart from that apart from the naming it doesn't have anything significance to do with the what exactly it means but there is one important thing or what then what exactly MSP is so MSP is nothing but it is just a set of folder structures that needs to be there in order to bootstrap your network and remember like when I when I say the structure I literally mean that you need to follow the right structure that we'll see in some of the upcoming slides but before jumping into that I want to talk more on the types of MSPs that are there in the fabric network so we have local MSPs or you might find them in your local file systems whenever you bootstrap the network whenever you generate the certificates you will see them in your local file system like you will see the folders getting created and you will see all the certificates present into those folders and every node must have a its local MSP defined if whether it is a PA node or an ordering node it is required for them to have a valid MSP setup the second kind of MSP is the channel MSP and in case of channel MSP the certificates or the details are present in the channel configuration and all the organization or all the nodes who are participating if all who are joining the channel their MSPs or their certificate must be present in the channel in order to function okay so remember I talked about the structure about the MSP structure or MSP is just a set of directories and when I set like the structure so structure doesn't matter you cannot escape or you cannot change the structure of the MSP directories or the folders that are needed to set up the MSPs so this is how your local MSP structure looks like you will see a bunch of folders getting created inside the MSP folder yeah and you so you will see a bunch of folders like CA certificate where your certificate of the CA would be present then you will have these stores and the science cert where you will be storing up the public key and the private key for that particular identity and then you will see the TLS CA certificate where you have to provide the TLS certificate of the certificate authority and then you will see a bunch of other folders if you are using intermediate certificate authorities or if you are using chainings then you have to provide those certificates in the respective directory but in case of channel MSP the structure is kind of different because all those certificates or identities should be present at the channel level so here I have decoded one of the channel one of the block from the channel and I have highlighted the MSP part so here in this white block you can see that I have highlighted two organizations and their MSPs and inside these inside this JSON structure you will see the certificate for this particular organization who is the part of this particular channel okay so now I like to talk about the utility tool that we'll use in today's demo to generate or to issue the certificates and in your case it can be any kind of a tool which supports some of the prerequisites that are there for the fabric nodes to accept those certificates and in today's session we will be using the tool CFSSL which is a complete PKI provided by the Cloudflare team they are they were using this utility tool for a quite long in their internal projects for issuing of the certificates and managing them and I have listed some of the features for that is provided by the CFSSL tool it's an entire PKI tool so you will get all the features that are provided by the PKI like the certificate rotation the certificate renewal all those features you can you can find with this tool it also support RSA and ECBSA algorithm so fabric nodes need they accept the certificate which are generated using the ECBSA algorithm and if you try to provide the RSA signed or RSA based certificates then fabric nodes will not be able to understand them and they will never be get bootstrapped this tool also provide database integration so just like if you have ever used fabric CA you might have seen that fabric CA also provide some of the database integration like you can use postgres you can use mysql and by the default implementation that it gives is for the sqlite similarly for CFSSL as well you can use you can use external databases and then your certificates that are issued to you they will be stored into those databases and this tool can learn in CLI and as well as server mode and what I meant by CLI and the server mode is you can so this thus the CFSSL binary can be run in a standalone mode where you don't need to run it in our server mode and if you try to run the server the CFSSL binary in the server mode then you can leverage the REST APIs that are provided along with the CFSSL tool and you can use this tool or integrate this tool along with your workflows where you want to generate the identities on the runtime and maybe you want to do some transactions or any kind of action that you want to take on the network using those identities so for today's demo I want to highlight how the structure will look like or how the components will look like when you go with the Fabric CA so for this today's demo we will be having three organizations and we will have two peer organizations and one ordering organization which is org one and org two these are the peer organization and then we have one ordering organization which is going to have one order and all these three organizations will be issuing up the certificates or they will be getting up the certificate from the Fabric CA and this is how the typical workflow looks like when you go with the Fabric CA you ask the identities from the Fabric CA and you provide those entities the nodes and to the to the organization and then you bootstrap the network so the flow will be exactly similar when you go with the CFSSL again this time as well you will be using the CFSSL tool either it might be running in the server mode or you might be running in the CLM mode and you will be getting up the certificate and the nodes will be bootstrapped using those certificates one thing to remember is that at the end of the day the expectation of the these peer nodes and ordering node is to have the valid certificates and it doesn't matter like from where you are getting the certificate if you are able to set up the proper memberships among those certificates or proper chain or establishment among those certificates then you are good to go and you can bootstrap the node your network using using those certificates so in today's demo we will have all the organizations running in a single system in a single machine we will have two organizations and each of the organization will have one peer and one CFSSL as the certificate topic we'll have one order that will be having its own organization which is order of and all the components are going to be running in docker container so the entire application is containerized okay so now let's talk about the process like what is the exactly the process that you need to follow when you are using any certificate authority for your network to bootstrap so the very first thing is you need to have the valid server valid CA server key pair you need to have the valid signing certificate and from the CA itself then you need to issue the signing certificates and remember when you are using or whenever you are issuing other signing certificate you have to provide the signing profiles now what I meant by signing profile is so your certificate should contain the details that it did it is meant to be for the signing not for any other purpose and when you want to issue the tls certificate then you have to use the tls profile which you will be able to see whenever you will to open necessarily the you know at decode on those certificates and you will be able to see that whether this certificate is meant for signing purpose or whether it is meant for tls handshake purpose and the one of the important requirement from the fabric nodes is that it supports only ecdsa algorithms so your certificate must be generated using the ecdsa algorithm okay so I'll wait for some questions if there is any question then probably we can jump on to the demo okay enough talking I think now we can directly jump into the implementation how I exactly implemented these things okay let me close my presentation okay so hope this screen is visible to you and the font is readable to everyone if needed I can just increase the font size yeah it's okay you can go okay so what I have done for this implementation is I am I am maintaining a repository of fabric samples advance topics and for this implementation I had made minimal changes and I wanted to make it happen like that like having minimal changes not modifying much of the existing workflows or existing strips and to get the things going on so before actually you know seeing the demo I just want to make you a walk through the the changes that I have made in order to use this CFSSL as your certificate so this is the existing fabric sample this is coming from the fabric samples repo and I have added one more flag here like if you pass whenever you are bootstrapping the network if you pass this flag CFSSL then it will start using the CFSSL binary to bootstrap your or to generate the certificates this is the first thing that I have made then I have made change at at the network up face where yeah so when we are actually creating of the certificates either earlier this script used to support only crypto gen and certainly without like the fabric see it but I have added one more flag here which is which will be triggered when you pass the hyphen CFSSL as the flag when you bootstrap the network I am sourced I am just you know loading one script I have created a script and and the script is present in this CFSSL folder and here I am calling some bunch of functions from the script to issue of the identity so these are the functions that are present in the in that script in this written script and so here I am trying to get the certificate for the this particular identity which is pr0 of org1.example.com and then this is the org name and then in the next line I am trying to create the identity for the admin again I have given the cert type as admin so here you can see I have written the definition or what these parameters are used for so the first parameter is the cert type the second parameter is the common name like for which you want to issue the identity and third is the org name similar you can see here the cert type is either pr or admin for the for this particular function the common name is this like in this case I want to issue of the certificate for pr0.example.com and this is the org like org1 and org2 the same goes for here as well like I am just changing out the common names and just flipping the organization so that I can get the certificate for this particular node as well then I am issuing of the certificate for ordering node as well and since I have only one ordering organization so the third parameter which was supposed to be order that is already present in the script so in this case you need to provide only two parameters like the cert type and then you need to provide the common name for which you want to issue of the certificates so for ordering organization I am issuing a two certificate one is itself for the order and second it is for the admin which we will be using for doing any kind of transactions now I was talking about the script which is actually doing all these things and if I go to this organization directory and so previously there were these two folders like cryptogen and fabric CA and they have their required set of files which were needed to generate the certificate using these two tools but what I have done is I have added one more folder here which is CFSSL and inside the CFSSL you can see my script which is the register and enroll.sh and this is the script where I am issuing of the certificates from the CFSSL binary so you can see that function that I was calling in network.sx script these are listed here and these are the internal function that are used by these scripts let me show you how exactly the cert generation happens is so if you remember like I was emphasizing on the directory structure of the MSPs and that is very much needed so here I am trying to create the directory structure first I am trying to set up the proper directory structure whatever is needed I am just looping on the these directories and creating the required set of folders after that I give you some of the templates which are needed when you which are basically the CSRs or certificate signing request that will basically hold the information like how what all the details should be present in your certificate I will come to those scripts or those files and what essentially I am also doing is before running the script I am making sure if my CA identity is issued for this particular org or not and I am doing by this I am doing just by a check like I am doing a check here and if the if the CA keys is already present then I am moving with I had with the creation of identities for the required components but if it is not then I am generating the CA certificate itself so here you can see I am using the CA as a cell binary and I am doing the init CA which will going to give me the CA certificate for whatever information I am providing and I am using some of the template files to issue of the identities let us go and see some of the template files so this one of the template file which is CA-PA.json and this is the template file which is used for bootstrapping or issue of the certificate for the CA itself so whenever we our CA will be bootstrapped for the peer organization it should have all these details and remember like I told that fabrics support only ECDSA algorithm so I am explicitly providing the ECDSA algorithm but if you not pass then by default this tool assumes that the algorithm is RSA in the case I am providing some bunch of so these are nothing these are the identifier or the subjects that you see on the certificates and these are the hosts that you can provide like for which this certificate is going to be issued. Similarly I have one more file which is for the ordering node or you can call it as the CA for ordering omniscient pretty much similar the same similar details just I am changing the common name here for the differentiation now there is one more important file that I want to highlight is if you remember in my presentation I was talking about the profiles like the signing profile you or the TS profile that you need to provide whenever you are issuing the certificate and if you have ever tried to decode the certificate that are issued by fabrics or you know a cryptogen you will see that it contains some identifiers or some details that makes it easily differentiable that it is a TLS certificate or is it a signing certificate so similarly I have added two profiles here this is one of the default parameters that I have set for the profile and here you can see I have two profiles defined like one is the signing profile and second one is the TS profile and the signing profile this is this was the part which I was you know emphasizing like what should be present in the certificate to make it differentiable whether it is a signing certificate or is it a TLS certificate so in case of signing certificate you need to provide these set of uses like how this certificate can be used and I am additionally passing the expiry here like whatever the certificate will be issued with this profile this will have the expiry as this much number of hours for TLS profile again the usage is much more important and here you can see that I am using in the usage section I am using server auth and client auth which means that these certificates are meant for the TLS communication and you will be able to see that they are used for the TLS or you will see the TLS identity file in those certificates whenever you will try to decode those certificates so this is the profile that I am using while generating of the certificate then I have bunch of some CSRs created for specific type of certificate that I want to issue like so this this CSR if you see this is the for each of the admin certificate and I have set the OUS admin and you can see that I am passing some of the template variables here and these values will be replaced on the runtime since it's a template I want to reuse this template for every other certificate that I am creating for admin so that's why I have passed the templates here and these the values will be substituted here on the runtime let's see the order certificate as well so it's pretty much same the only difference is I am passing the OU or the organization unit here as order and in case of peer you might see that the OU is peer but the rest of the things are pretty much same and if I show you the serve generation process since I am running this in the CLI mode so you might see me running commands from the CLI something like this something like this where I am generating of the certificate and here I have to pass the root CA certificate for this per whenever I'm issuing the certificate I'm also passing the key and I'm also passing the configuration like and this is the same configuration where I would defile the profiles the signing profiles then I have to give the common name I have to give the host and this is the profile that I was talking about so this profile is present in this signing in this file which is third signing-config.json and you need to provide the required profile whenever you are generating of the certificate so here you can see I'm using the TLS as a profile but somewhere in above section you might see me using at the signing profile so here you can see that first I generate of the certificate for the signing purpose or the environment certificate and next time I was generating of the certificate for the TLS purpose and for every node or for every component I'm generating both the signing certificate and the TLS certificate and that you can see in the in these functions right so now I can show you the demo so I can just quickly run the couple of scripts and we should be good to go with them so I'll show you let me move to the required directory which is test network and okay now let's try to see what all options comes with this network.sh script so I have added one example here so earlier there were examples for using you know fabric CA as the certificate so if you see this example command if you pass the hyphen CA flag then it is supposed to be using fabric CA for bootstrapping or generating of your identities but in but in my case I'll be using CFSSL so I'll be passing this kind of flag when I'm bootstrapping or when I'm generating the certificate so I quickly generate the certificates and I'm passing my CFSSL flag so this should generate the CFSSL issued certificate and one more thing to remember is like I have already installed the CFSSL binary in my system and I have added those details like how you can install them in the readme so if you if I show you that snap it here so you can see I am I obviously added command like how you can install in the linux and how you can install them in the macOS like the CFSSL binary so now I already have the binary what I'll do I'll just simply run the script wait I think I think I was passing there was some typo here so when I pass the CFSSL as my flag so you can see I am getting the certificate generate here so these are my certificates getting generated so first it generated the identities for the org one and then it generated the identities for the org two it tried to generate the identities like for all the components or whatever we have defined in the script and then it generated the identities for the order organization and then it started all the three nodes like we had two peers and one ordering node so it started all the components and now let's try to see whether the certs were actually generated or not so the certs were supposed to be generated in this in this directory inside test network we have this organization directory and inside organization we have order organization and peer organization as well so I think yeah cool we can see some of the certificates that are generated here and similarly for both like order and peer organization and we can see the certificate let's try to decode the certificate for this particular this particular let's try to decode this separate particular certificate so I'll do open excel pop open excel is installed in this machine yep so open excel installed and you can see that this was the issuer for the certificate and since it was a cs certificate so the issuer and the subjects were supposed to be same in this case you can see that this was the information that I provided in my in my csr file for this but for the peer see it and you can see like the expiry time like whatever expiry time of this is the default expiry time that is coming I have not explicitly configured the expiry time so by default it's like five years of expiry time and you can see that the key that the algorithm that was used for for this particular certificate is ec ecds algorithm which is a 256 bit algorithm and you can see that this is a signing certificate so whatever details you will you will you can see the usage here like this so it can be used for only signing purpose and you can see the certificate itself here let's similarly do a tls certificate as well and for the tls let's try to do the tls certificate for pn node so I'll go to the peer I'll I'll go to the this tls folder and here you can see that we have the cs certificate tls cs certificate and I have the server dot crt which is the certificate tls certificate for this peer which is prd0.org1.example.com and copy the path let's do open as a cell again and let's see the text out of it so this time you can see so you can see the signature algorithm which is fine you can see the issue like who issued this identity so this issued was the certificate was issued by this particular CA which has this particular command then the certificate was issued to this particular identity or this particular user so in this case it is pr0.example.com and then I have given some bunch of identifiers like some country as India, state as Delhi and then location as aero city and you can see that this is in tls certificate you can see that the identifier that we or the uses that we provided in the in the csr that is present here and which means that it can be used for signing it can be used for tls communication and these are some of the subject alternative or sands that I provided in my csr file that has these properties like localhost and ip address as 127.0.0.1 okay I think cool we were able to successfully generate the certificate let's see if our nodes are actually you know running fine with these certificates are not they're happy with these certificates or not so I will do docker logs since these are you know running inside the container I'll do docker logs and let's see the logs of pr0 of org1 okay so I'm not tailing up the logs here just to make it less cumbersome so we can see that the certificate are loaded here successfully we can see this was I think if you if you remember the the cert x decode that I just did it was having this as your expiry date and you can see that certs were loaded we don't see any errors here the node is quite happy with the certificate and right now since we have not created any channel so this node says that there is no active channel and all the system level chain codes were also loaded in this node like the lscc and csc and qscc all these chain codes were loaded successfully let's see the ordering little logs as well like the logs from ordering node so I think it is order yeah so this node is also looking fine I mean I don't see any error sign here certificates are loaded successfully and the nodes are pretty much happy with that now let's try to create a channel and I'll create a channel I'll call it as let's call it as test channel okay so so we created the channel and what happened is order also joined the channel we can see or by the way like order is using the channel participation API so this is what running on version 2.4 which supports channel participation API so I'm using channel participation API for order to join the channel we can see that the challenge that the join was successful and we can see that it was that the order joined as a concentra in the chain we can also see that we are trying to join the channel for first organization or the first node which is oxy which is PL0 coming from org1 it also joined successfully and then we second peer which was from org2 also joined the channel then we were doing the anchor peer update and the anchor peer update was also successful I'll not go on to the logs detail here just showing up the result like the anchor peer update was also successful and now let's try to set up our CLI so what I'll do is I have to set some environment variables so that so that I can access the peer CLI and make some transactions so I have exported some of the environment variable now I can do set global which is which is nothing just a function coming from one of the scripts and basically this function will help me setting up the environment variable so I'm setting up the environment variable for org1 and now all the environments variable that I needed for doing up the transaction they are properly configured if I do peer channel list so I should be able to see the channels that are there in the that this peer has joined and I'm talking about the peer 0 of org1 because I have set the flags for first organization so we can see that channel join was successful and our CLI is also working fine which means that CLI is also using those certificates that were issued by the CFSL like the TLS certificate and the signing certificate and let's try to see how many blocks we have so I can do peer channel get info and I want to see information on my test channel and if I run this command I should see the height of the block or the height of the chain so right now we have only three blocks and these you can see the current hash and the previous hash of the latest block so these things are working fine let's try to do one more thing let's try to basically install the chain code and let's try to see if we are able to you know invoke the chain code with the help of these new certificates that are issued by the CFSL so I have okay I'll just quickly run the help command again and for the demonstration I'm using to install a JavaScript chain code which is an asset transfer chain code which has four functions I guess which are for creating a pie asset and then transferring the ownership of asset and reading the properties from the account from the database so I'll deploy the chain code the CCN flag is the chain code name I'm getting the chain code name is basic the CCP is the chain code path so the chain code is present at this particular location and the language on this with chain code is written as JavaScript I have to pass the channel name as well because right because the default channel that this script assume is the my channel and we have created a channel with name test channel so I'll pass the test channel and this should ideally install the chain code on all on both the peers so right now it's trying to include the packaging and installing of the chain code so it packaged the chain code successfully here you can see it carried the package ID and the chain code was packaged then it will now try to install the chain code on the first peer and then similarly it will do on the second peer then it will go for the approval phase the chain code approval phase and then finally the commit fail commit phase will happen and once the commit phase is successful we can use the chain code chain code is ready for use and the source code is present on my on my git repo and I'm planning to soon have the source code or this implementation in the fabric samples official repository so people can refer from that as well but meanwhile since that code is not present there you can just refer this particular repository okay now the approval phase is going on we can see that we got the approval from one org which is from org one and then we also got the approval from second org and then now the commit phase should happen yeah so here we can see that it was committed successfully and we got the transaction ID for that for that commit transaction that happened okay so now chain code is also installed let's try to see actually all these certificates work or not so I will try to invoke a chain code so what I'll do I'll call one of the function from the from this chain code so this chain code has couple of function and one of the function is init ledger I just quickly pasted the command from my other screen and I'm doing a peer chain code invoke passing some passing the endpoint for the ordering node and I'm passing the tls certificates and giving the chain code name as basic and then I have to get the peer addresses and who are the part of endorsement so since it uses the and endorsement policy so I have to give the peer addresses for both the nodes and I'm calling this init ledger function which is there in the chain code so I just invoke the chain code and I got the result as 200 let's see if this we can actually get the results from chain code or not so I'll call a query I'll do a query on the chain code and let's see if we get the results or not so we got something not really developed let me just pipe this to jq yeah so we can see we got some records returned from the chain code and this init ledger function that we just you know invoked this was supposed to add few of few like few records in the ledger and it added these records like it added I think five records or six records into the ledger and we can see all these details here let's do one more invocation and what I'll do is I'll try to create one record onto the ledger so let's so here I'm calling the create asset function again this function is present in the chain code this function accepts five arguments so I'm giving the five arguments the first argument is the asset ID second argument is the asset color third is the size fourth is the owner and fifth is the praised value we can go through the chain code as well just for accurate lamps so the chain code must be present in this asset transfer directory and chain code JavaScript inside lib you have this asset transfer.js and let me just hold this yeah so remember the init ledger function that we invoked just few seconds ago we can see it was creating up some assets onto the ledger and this is an array of asset it was looping on the top of that array writing it to the ledger then the second function that we'll call is create asset and this expects five parameters that I have you know listed here like the ID color size and owner and all those parameters I have listed here and it will basically create that record into the ledger let's try to run this so it the invoke was successful and it returned as the response as well because we were trying to return the response from here you can see the return is response so that's why it returned as the whatever we try to write into the ledger so now let's try to do query once what all assets we have and this this time we should see seven records into the ledger so we can see the fresh asset that I created or the fresh record that I created this is also coming from the ledger and now let's try to invoke one last function from this chain code which is asset transfer and this expects two parameter like the ID and the new owner of that asset so I'll try to transfer this for the asset that I just created which has an ID as 100 and the owner as the ledger and I'll try to transfer this asset to some other user so let me just clear up this let's expand it and here I'm trying to again do the chain code invoke location the function that I'm going to call is transfer asset the ID of that asset is 100 and the new owner is going to be nithin so this this asset will be transferred to nithin on the end when you when we'll see the all the assets in the from the ledger we'll see that the asset is transferred to nithin or the new owner is nithin so the invoke was successful let's try to do a query again and if we see here so this this was the asset that we just transferred the ID was 100 color and other details are same what it used to be earlier and the new owner is nithin and yeah and this data is coming from the state DB we are not or we are not trying to get the history of that asset so that's why you see the latest state which is there for that particular record yeah I think yeah I think yeah this is what I wanted to show in this today's session and I'm happy for questions if there is any now. Is the TLS which is generated is it self-signed or no. So TLS certificate is also it's not self-signed it is also again issued from the CFSSL in this case and we have to when we issue the certificate space I'm talking here talking in terms of this binary that I am using so when you issue of the certificate you need to provide the profile and if you not provide the valid profile so I when I was experimenting with this tool I was not paying attention to the profile part and it was kind of not working for me because the profile has the detail for the signing certificate so it was not working so you will explicitly provide the profiles whenever you are generating the search. But if I would like to bring up the you know SSL from like good idea name chief. Yes that will also work that should also work. So you can you can have some combination like this where you might be using you know this binary or utility for just for signing certificate but for TLS you want to use some you know CAs global CAs like the cloudflare or the go ready like any kind of CAs you can use for getting the TLS certificate. So any extra advantages on top of the fabric CAs to take it this so so so one advantage I can say is not not not specifically on the on the on the on this CA because again they both are CA they both are doing similar kind of a job and at the end of the day the expectation from the we have some set of expectations from the CAs like the issuing of the certificate the cert management revocation part all these parameters are you know fulfilled by both the certificate of these. So one one advantage that I see with this particular CAs like it basically completely exposes REST APIs and you know you can you can plug it with any kind of a database that you are running and this can be leveraged for for generating of the certificate let's say let's say you have a certificate that which are coming from well established you know certificate authority and you can basically instead of using CFSL generated certificate as the as the root certificate for following certificate issuance you can use the that particular CA certificate and issuing of the certificate. So I see advantage in when you want to you know do things programmatically because it has a good support on the API's part as well you can issue up the certificate on the fly with the help of REST APIs. And one more last question does it have features like auto renewal of the certificate and integrated with the world? So these are the features that you that I mean so one thing is that these two systems are completely independent systems. We need to remember this thing that the CAs in the independent system and that is how we are able to achieve the plugability for the for the certificates like if you will do a tight coupling between these between these components then definitely you will be able to achieve the cert rotation and all those things like the management can be much smoother but then you will lose the you you lose the plugability like you will never be able to use you know any other other CAs because then the coupling is kind of quite tight. So again that the problem still is there of the cert manager and that again you have to do it by yourself because these are independent systems. There is no integration and if you if you saw this initial part of the demo I generated of the certificate in a you know before actually bootstrapping of the network. So at the end of the day then requirement from the notice you provide them a valid certificate uh into valid in terms of the algorithm that is used valid in terms of the membership or the if there is a chaining that is properly followed valid in terms of the usage that is needed like the signing usage or the TLS usage you provide all these parameters or you know capabilities that is needed and you are good to go to bootstrap your network. Yeah I got yeah it's a really good presentation to know extend CA capabilities in the fabric. Right yeah I just wanted to you know bring this to a larger audience this presentation or this this kind of a topic because I see that there are not much information available on the internet around around having or how you can actually use the multiple or different CAs how you can do the chaining. So I think yeah my intention was this only to have this presentation among the audience. Yeah only the structure which we need to maintain so that any CA can bring into the fabric so that you know we cannot you know leverage the existing network structure. Right so it's a requirement coming from the node itself if you not provide the certificates in the in the in the valid directly on the required please uh again you will not be able to bootstrap the network because uh nodes are internally using those directories to identify like where exactly the key is present where exactly is the sign certificate present uh yeah. Right okay so thank you thanks a lot Aditya for this you know insightful and you know interesting session so with that you know I you know in the interest of time I'll you know hand it over to Lakshya so we have Lakshya you know representing Zeep so they'll you know go through how we can set up an enterprise you know network right enterprise great network in hyper ledger fabric so I think you know it's in continuation and you know some of the things probably you know would be some of your questions might be answered over there as well. So for that for the next interesting session handing over to Ravi and sorry Ravi and you know Lakshya from Zeep over to you. Hi everyone so my name is Ravi I'm the co-founder CEO of Zeep and before I hand it over to Lakshya for demonstrating the whole platform I'll just give a quick 10 minutes overview of what what Zeep is and what what we are doing in the infraspace. So we have been into blockchain space for more than five years and we have been building the Zeep no code platform for last two and a half years. We support almost 30 plus protocols today and we have a very good traction in terms of 18,000 plus developers that are using the platform with 30 plus large enterprises and we have we are a team of now 100 plus people and and we continue to add more and more protocols and we are very excited we are very uniquely positioned for enterprise blockchains and we provide complete automation of enterprise blockchain frameworks. So now briefly about you know what are the challenges while managing blockchain infrastructure. So one doing it manually is very time consuming and at the same time it's very difficult to ascertain the cost of not just the deployments but ongoing maintenance of blockchain infrastructure. So in infrastructure which are being driven by one organization it's still comparatively easier but when we talk about consortiums the infrastructure management become very difficult and especially you know a consortium may have stakeholders with preferences of different cloud environments so it adds to the complexity and how to bring in or onboard a stakeholder when the network is up and running that again is a is a very big challenge to serve and then of course you know cost optimization etc becomes even much more important you do not want to waste precious cloud resources so how to manage those optimization on the fly scaling up scaling down and moreover you know right now the whole manually deployment of blockchain infrastructure is based on whatever scripts etc are available in the market but then is that the best way to do is more standardized way to do it that again requires a lot of know-how and expertise and lastly but most important is there's a lack of standardization in terms of security or optimization or managing compliance and regulations within the network whether it be data resiliency or privacy or security etc. So these are some of the challenges that we have seen enterprises or the three startups they struggle with and so what what is required to manage this so one you know there needs to be a very high level of automation which gives you a lot of configurable choices while setting up a network or as simple as a public protocol node but when we talk about hyper ledger fabric or base who are free coda of course the complexity becomes much much more because you're setting up a network different kind of nodes channels organizations all kind of configurations are required and then of course you know you require security of the RPC endpoints you need to ensure there's a privacy and security as per the guidelines of the enterprise that again becomes very important and then for consortium again the whole process needs to be as simple as so if an organization start a consortium maybe you know choosing AWS as the private cloud environment but then other stakeholders may have a different cloud preference so there should be a very easy way of allowing the stakeholders to deploy on different clouds connect to the same network follow all the policies of the network whether it be related to governance or privacy or security so that should be comparatively very easy so that you know infrastructure itself does not become a major challenge to grow or scale a consortium and then you know from a decentralization perspective also having different clouds coming together and in fact on premise also because there would be certain nodes people would prefer to put in on premise again based on their security data security etc basis and a lot of choice to the consortium partners and then post deployment as we are very used to in the web-to-space we require very sophisticated analytics proactive monitoring across the resources whether it be underlying cloud resources or whether it be blockchain resources so both becomes very important so there needs to be a very cool dashboard which provides you all kind of alerts notifications and in fact using AI you know automate some of the problem solving pieces like self-healing nodes and that is where you know Ziv comes in it's a low-code to no-code blockchain as a service infrastructure as a service platform which is enterprise grade we support almost 30 plus blockchain protocols including all the major permission ones we started our journey with Hyperledger and we today support the most configurable platform for Hyperledger fabric and now we are extending in Q2 with Hyperledger Basu and Aries and we continue to add other suite of products onto the platform and then we support heterogeneous cloud deployments we have native support for six clouds today AWS, Microsoft Azure, Google Cloud, Digital Ocean, Linode and Tencent Tencent is the latest one that we have launched and now we are adding a few more cloud environments into the platform again to provide decentralization in large consortiums and at the same time you know give cost advantage because different cloud has got cost advantage across different kind of resources and sometimes from use cases perspective comfort what kind of DevOps or developers are comfortable with so it gives a lot of choices with heterogeneous cloud deployments and we provide a monitoring dashboard where you can see and monitor not just the cloud resources but also blockchain resources and in the case of some custom smart contract data also that can be managed on the platform plus there are proactive alerts and notification so that the platform ensures that the infrastructure is up and running and then we have automated CICT pipelines native integration with GitHub and various other repos and we continue to add more and more API integrations with various DevOps tool sets to make the life easier for a developer or a startup to build their applications. So in the nutshell it provides you know huge amount of cost saving not just for the initial deployments but ongoing monitoring of the networks faster time to market because if it takes two to three weeks to set up a network with proper security, confliances, standardization etc with Ziv you can do it in minutes and that becomes very handy while you are developing because you may need to set up the network you know terminate it and reset it up so in minutes you can do that. So these are some of the extensive features like multiple cloud provisioning, one-click node deployments, unified dashboard and then we provide a few value-added services like decentralized storage as a service which is IPFS based service but you can simply use the service rather than you know deploying your own IPFS nodes similarly we have extended to IoT as a service and then we are working on trusted execution environment and then asset tokenization, secure key vault for managing your keys etc. So there are quite a few so we're trying to cover the whole gamut of services which typically a DAB developer would need while building a blockchain application. So in terms of value proposition from manual deployments to no-code deployments, faster time to market saves huge cost and then you know manual deployments sometimes you know it's not very standardized what kind of orchestration to use whether it's most optimized from a blockchain protocol perspective as well as from a cost and time perspective. Ziv you get full error free deployments with all proactive monitoring and then in Q2 we are coming up with self-healing nodes which will solve quite a few challenges within the network, proactively monitor it and solve it also and then we take care of all the security and compliances. We are ISO 27001 and SOP2 compliant and we do the server hardening and all the hard work on this on the security side so don't need to worry about whether the server has been configured or set it up or set up based on the best security guidelines so we use all the best practices of security. So we provide you know developer nodes and archive nodes we provide shared APIs for public protocols, we provide you know staking node infrastructure and then completes a setup of network whether it be Hyperledger Fabric, R3 Coda, Avalon Subnets, Polygon Edge and various other enterprise protocols. So in terms of early traction we have some of the large customers like Vodafone, DCB Bank, Energiva Foundation and a lot of hundreds of the three startups who are using the platform. In terms of partnership we are part of the Hyperledger Foundation, we are also a member of Enterprise Ethereum Alliance, we are partner with AWS, R3 Coda and Flurry which is a distributed database and then we work with quite a few system integrators and consulting companies. That's also I'll pass over to Luxe who will run through the demo and if there would be any questions I'm here to answer that. Sure thank you for the presentation Dr. Ravi. I'll start sharing my screen and then we can all go through the demonstration. I hope my screen is visible. All right so I'm at Zeef's website it's Zeef.io where you can look up all the public protocols and all the enterprise protocols that we support. Along with the protocols you'll also find some documentations and tutorial videos to help you start with the network creation and your account setup, different ways to spin up a network, different ways to authorize your cloud account and if you want to skip authorization for a cloud account how you can create a Zeef network or a blockchain network without having a cloud account. So all that information is present in the website itself, a bunch of pricing that you can look for and then login sign up to start using your account. So I'll be using this demonstration account for this presentation. Other than you know having your own email ID you can also use other social handles like GitHub or Google to start with your account. All right let's start from the dashboard. So once you log into the Zeef platform you'll see a bunch of information, different components that helps you as a blockchain engineer, as a DevOps engineer who's working with blockchain services to understand you know different parts of your network. So first part that we want to look at is the cloud user distribution that I've spanned across my networks and services into. So if you see in my account you'll see that most of the networks have been deployed in AWS and some of the services are running in DigitalOcean as well but I do have the cloud account associated with my Zeef account which includes GCP and Tencent. So we'll take a look at cloud authorization piece as well. So after that you'll see different components that Zeef creates for you. Some of them are workspaces where you can encapsulate your network into one department or into one environment. It could be you know staging, development or production. Same it shows you a total number of networks that you've created in your Zeef account. A number of nodes and any RPC endpoints that you're consuming as of now, cloud accounts that you've authorized with Zeef. And then there is protocol is distribution of your networks. So far I've only created one fabric network. And if I had more networks it would be coming here. And then we have system health information to help you understand your account usage and you know different warnings alerts if there are any. So if you had any fatal issues or warnings that your nodes are coming up with you can look them up and in future releases you'll see you know these nodes healing themselves like Dr. Ravi explained in the presentation. For now you'll see the warnings, you'll see the alerts and you can you know go to Zeef panels and you can also auto scale your nodes and services and infrastructure services where your blockchain services are running. Now let's look at setting section to understand how as a as an enterprise or as a individual user how I can authorize my own cloud account to allow Zeef to create networks and then hold the data storage or hold the infrastructure at my end. So if you come to settings and you go to my cloud section you'll see the cloud accounts that are supported as of now. So once you click on AWS you'll see there is that AWS cloud button. Once you click on it you'll see this small form which is going to ask you some details. So you can put the name of your authorization that you're going to provide here and then you can provide your access here and secret key which you can generate using IM section of AWS and you can provide limited permissions to the type of deployment that you're going to do through Zeef and then there is credential label. So deployment types are different according to the blockchain protocol you choose for your network creation. For enterprise networks, high reliability is a concern for individual or public networks. Correctivity and cost is a concern. So I have one account here. I can add more accounts according to my need and then I can also add digital ocean and same way I have GCP authorized with my Zeef account with GCP. I can also authorize a bunch of projects that I have inside my organization GCP and same goes for Tencent if I have so Tencent registration is not here but I can add Tencent and it will take me to all the other settings there. Other than interacting with Zeef platform as a web console, you can also utilize Zeef CLI to automate your smart contract deployments and smart contract migrations onto your networks. So imagine, you know, creating, running a fabric network and then there are smart contract updates or chain code updates that you want to do regularly on your network. So that can be done using Zeef CLI. You can imagine creating pipelines for your different environments in different branches and Zeef CLI will help you automate all the operations that goes along with along with the life cycle of the chain code itself. So we'll look at it in a few minutes once we cover the presentation here. So if you want to create an API credential, you can click on API credentials here and then go to create key section. And then you have to provide a few details like provided a key name and the type of service that you want to create this key for. So there is Zeef's DFS which is a different thing we'll see in the coming session as well. You can select networks from the networks list. If I had more networks, you'll see them here and then I can select the networks that I want this key to be authorized for. Similarly, I can provide more permissions to my key. I can decide if I just want this key to run pipeline or if I want this key to done to do more operation. So I can allow it more permissions in the permission section here. Once I allow permission, once I click create, it will generate one secret key and one access key for me that can be used along with Zeef's CLI to run automation pieces for me. After that, once you've authorized your cloud account, then there is a workspace creation that you can look into where you can create a first workspace. Now, workspaces have different advantages over your network. So you can couple your networks into one workspace. You can also allow different team members into workspaces. You can allow them a bunch of permissions to just have read permissions or have them write permissions onto a network. If there are any specific actions that you want to allow, that would be applied workspace-wise and then up to the networks that are deployed inside the workspace. So I have a bunch of workspaces here. Then I have one workspace for my fabric networks here. Same way, if I go to my fabric network workspace, I'll see there is one network running already. Now, if I want to add a network in my fresh Zeef account, I won't see this network here. I would have to do add network. And then I would see the subscriptions that I've bought for my Zeef account. So my account has a bunch of subscriptions here. Same way, you can buy different subscriptions for different cloud accounts that you want to authorize. And if I want to buy a subscription for other protocols, I can do so using subscription section or marketplace section here. So there is public protocols that we support bunch of public protocols and then some permissive protocols that we support. So there's R3 Corda, there's Fabric and then there's Polygon Edge. So I wanted to use Fabric. I click on Fabric and then inside Fabric, I'll see subscription options here. So there is one more option which provides you a free tier trial subscription where you don't have to buy the subscription or pay the pricing. As of now, you do BYOC approach and then you select the number of orders and peers that are pre-selected and you get to deploy one order and one peer into your network. For enterprises, they can select BYOC and then they can select the cloud account that you want to go for and then select the node types and the card or node service that they're going to select that they're going to deploy. If you don't want to deploy or integrate your own cloud account, Zeef allows you to create managed account settings where you don't have to worry about the cloud costs and infrastructure. Zeef will take care of it all and you can just create the network and you can start using the services once they are created. So let's look at how easily we can create a Fabric network. I'll go to the dedicated node section here and then I can go to add network and from add network itself, I can select the subscription that is there for my account and then we'll see the different steps and forms that are there for to create a Fabric network. Now, the entire Fabric network creation is divided into four steps. Last step is to decide my cloud configuration and other three steps are just for Fabric settings. So first step is to decide my Fabric version. If I want to go with 2.2 LTS or if I want to go with 1.4 LTS, with 1.4 there are different choice of consensus type that I can go with. I can select Kafka, Sol or Ruff and if I go to 2.2, I can only select Ruff as the consensus has been deprecated. Now, next step is to decide my organization details or architecture of my organizations. Now, I can add any amount of organization that I want to add. Each organization is going to have one CN1 TLSCA and the deployment itself that Zeef creates for your Fabric network is going to be done on Kubernetes clusters. Now, these clusters are also created within mind that the services that are going to be deployed, your blockchain services are going to be deployed on private subnet such that they only have access to outside internet that no one can connect to them without having to go through the load balas that have been put in front of them. So, I can provide my admin username here and the same way I can provide some strong password to my admin CA and then I can decide if I want this CA service to be spent up with a persistent volume which helps me scale the service down when I have the cluster administrative access. I can provide it a size that could be 10GB or 100GB according to my need, according to the network size that I'm imagining with my services and if you're just going to create a dev network or a test network, it is advisable that you don't put down extra costs for the PVCs or PVCs that are going to be created for your services. Same way, I can add more orders into my network and I can also remove orders if I don't want to in my organization and I can add same way peers into my organization and with peers, I have this choice of database support. If I have complex smart contract, I can deploy one COWS DB along with my peer service already integrated and then I can decide if I want my COWS service to have a persistent volume, same way if I want to have the same setting for my peer volume or my order volume and then there are CSR details which is a certificate signing request where you allow or where you define the details for your identities that are going to be created in your network. So, I can put down these details and all the identities that are going to be created including my client or user identities and then peer and order identities with the CSR details that I provide here. So, it's very important to fill this out when you're creating a staging network production network and if I do next, so it is going to advise me to add at least three orders since it is advisable to have at least three orders in a draft ecosystem. So, I can add more or I can just skip this warning and I can go through next step and be starting with my network. Now, last step is to decide my channel settings where there are system channel settings and then there are some default values that are already prefilled by Z for you. So, if you want to customize these as some channel settings, you can do so. Z allows you that capability or flexibility and then there is application channel settings where you can decide the application channel that you want to deploy or create with your network to be bootstrapped and ready to be used with your blockchain services. So, once I click this checkbox, it does not only create an application channel, it also makes sure that all the peers that have added in my organization settings join this particular channel. So, my network would be bootstrapped with a particular application channel and I would have peers already joined that channel. Now, at the cloud configuration setting, I have already prefilled cloud settings for me. There is AWS because I selected the BYWC AWS subscription. Same way, if I had different subscription, my details would be prefilled according to my subscription details. And then here, I can provide my name to my network. Now, I just want to provide HLF Dev, which is a Fabulous Dev network for me. And then I can decide the workspace that I want to deploy my Fabulous network into. Let's say I want to deploy it in Fabulous network section only. And then I can decide my cloud account. If I had more cloud account, I can select from this dropdown. And then same way, I can decide the region that I want to deploy it into. So, you can decide according to your proximity wise, if you are in different region, you would choose, you know, some data center that are close to you. For me, it's AP south one. So, let's say I want to go with AP south one. And then I can decide number of instances. These number of instances are going to be my worker nodes count for my Kubernetes cluster that is going to deploy into my cloud account. And then I can decide the worker node instance type. So, it will, let's say I want to create T3 medium for my worker node instance type. So, the deployment that Zeef creates is a high availability deployment. So, it spans your instances or nodes that you create across all the availability zones that are provided to you by the cloud. Provider. So, for example, in digital ocean, there is no AZ concept, but with AWS and GCP, there is. So, we create worker node groups and, you know, other AZs as well. So, you get high availability option in your cluster, where one of AZ goes on, but other AZs are up. So, you're, you're scheduling, you know, still happens to other AZs and your services are still up. So, if I click create now, Zeef is going to do some validations if I have enough resources in my cloud account. If not, then it is going to, you know, put down warning or an alert here that, you know, you need to remove this thing from your cloud account first. So, to create a fabric network in AWS, it takes around 20 or 25 minutes to create the infrastructure, which is Kubernetes cluster, and then creating the instances and making the worker nodes into and joining them into my, my case cluster. And then five to 10 minutes for Zeef to provision the blockchain services onto your infrastructure that you've created. So, to save us some time, I already have this network running here, demo network, where we can look into. So, once I go into my network, I'll see bunch of options and bunch of details that I can see. So, it shows me the organization summary, where I can see the organization that my account holds. I can see I am the owner of OERG1, and it has one peer and three orders. If it's a part of consortium, then it's true that there may be some part of system channel. It's the owner email address that is me, my Zeef account. And then I can download my artifacts through this download artifacts button, and I can connect to my organization services, which includes order services and peer services. I also get to see the network-wide view of the organizations and their services. So, if there were more organizations, I would see a different graph here. And if I scroll down below, I'll see the channels that this network holds. So, it only has one channel, and it has only one peer, and zero chain codes are installed in this, in this channel. Same way, I can download channel JSON, which will give me the channel configuration entirely, and I can read it, and I can do a bunch of modification operation on it. Now, let's say I want to download these artifacts to connect with my application SDK. I can do so. So, once this download is completed, I'll get to see the files that are inside there. So, I'm assuming that the audience can't see my screen, but it shows me the Zeef that has been downloaded, and the connection JSON profile that has been downloaded through this organization artifact section. So, connection JSON profile is going to help you to connect your application SDKs, so that your developers or, you know, if you are a developer, you don't have to put down a reference into creating these tiny details, and that usually requires more time and efforts to connect with your high pleasure fabric networks. If I go into channel section, I'll see the channel configuration again, and more details into channels. So, if I had chain codes, I would see chain codes here, but if I want to see policies that were this, this channel was created with, I can see that. Same way, I can create more channels, and I'll see the channel details here. Now, other than this, I can see organization sections that are there, and then ORG details and the channels that it supports, and then I can see my seed details. And if I want to create more identities, I can do so with my create user identity section here, and then I can enroll them, I can create certificate identity for them, I can put down the username, so you don't have to, you know, go to your application SDKs directly. Same way, you get to interact with your services, you can see the status of your services, you can view the analytics on your services, you can start, stop them, or even delete them from your network to save some cost. And other than this, you get to, you don't have to, you know, go to your cloud account to manage your infrastructure. You can manage your infrastructure through Zeef, Paranoly, where you'll see, you know, region that this infrastructure was deployed in. Availability zones that this infrastructure is using, number of worker nodes that this network is running as of now, so I can add more number of worker nodes, I can decide again my instance tab that I want to go with, I can select the zone that I want this new worker node to be, and then I can decide the number of worker nodes for my new worker node, and then similarly, I can rescale my existing worker nodes as well, or I can delete them to save some cost. Now, with Zeef, you don't have to, you know, worry about analytics side as well. So we provide you integrated analytics on your cluster wide resources, as well as your blockchain resources. So analytics side, you can drill down into, you know, nodes inside your cluster, you can also drill down into the namespaces that are deployed that have been created inside your cluster. And we get to see the details of the analytics here. It's still coming up. I go to the node section, I'll see my node details in a minute, right? It's still coming up because my network is fresh. I'll check the here details and see if I can get some details on to blockchain analytics side. Right, so I have some blockchain level details for my peers that have deployed in my network. And same way if I had any blocks being processed, as of now, I'll see those details here as well. And commits and number of warnings if there are any, I can see the version that was deployed with my peer. Also, I can see peer logs, so I can change some details here so that we can see, we can see the details that it was deployed with. I'll see some blocks at this point, right? So it doesn't generate, it hasn't generated any logs, but yeah, we'll see some order logs in a minute. And then we can see all the actions that your network supports in terms of adding more organizations into your network. And adding more channels into your network, adding more peers to your organization. So I can see all the live logs that my order services is producing. Same way, let's go back to my fabric network. Now, other than analytics, details and data and alerts that you get to see integrated in your network. We have a bunch of actions that we support on your network. So there is our peer, there's our organization, there is a create channel for your network. Now, let's say you want to scale up your network in terms of channels, you can do so. You can create more channels into your network. So let's say I want to deploy a Zeef channel here. We can do so. And then I can decide the organization that is going to be part of it. So I add this one particular organization that I have, then I can decide the policies that I want this network to have. Let's say I want to provide every member to be writer and then same goes for admin details. And then I can provide my endorsement section settings. Now, then I can decide my application configuration and then my channel configuration. So all of these details have been drilled down into all the options that you would want to do. Now these are all pre-configured conditions that you would want to select. Same goes for every section that you see here. Once I'm done with it, the automation piece will automatically create my channel and make sure that I make sure that the peers that I've selected joins this channel. So if I had more peers, I would see a bunch of peer lists here where I can select if I want this peer to be part of my network or part of my channel or not. Yeah, so this is going to create my channel into my network. So it will take a while to create a channel. After this, we can see how you can do the automation on part of your smart contract. So there is one chain code that has already been created inside this network. If I go into my chain code setting, I'll see the lifecycle that it follows. So far now, my chain code has already been packaged. So these are pipelines that you run for your smart contracts. And inside pipelines, you get to see there could be multiple jobs that these pipelines could be running. So if I click on this pipeline, I'll see the logs that this job produced. If I click on it, I'll see the operations that Zev ran in the background. So I can see that it created an awkward image for my channel to package and then it pushed into my ECR that was created inside my cloud account. Same way, I can update my smart contract's lifecycle. I can install it, approve it, and deploy it. We can do so. I'll have to reshare my screen for that. Let me reshare my CLI section so you can see the CLI section here. So I hope you're able to see my Linux session here. All right. So it's very easy to install Zev CLI. It can be installed using NPM package manager. You can install it globally into your environment. So once you do this, it will install the latest version for you. I already have it installed in my machine. So I don't have to install it again. But if I do so, I'll get the latest version that is out there for Zev. So once I do Zev help, I'll see the operation that it supports for different protocols. So there's card operation that it supports, and there is one option to run it as an agent. And then there is fabric operation that it supports. So let's look down or drill down into fabric operations. The fabric, we have chain code capabilities. If I drill down into chain code, I'll see the operation that it supports for my smart contract. So I can see that it helps me package the smart contract. It helps me install it, approve it and then come in and deploy it. So let's say I want to see the option that I would provide for installing a chain code. So it asks you for a bunch of details. So it is going to ask you for a network ID that you can get from your Zev section where you'll see, I mean, there's an information section you can copy it from. And then you have to provide a chain code name that you want to install a chain code as far as and then chain code version, which you want to start with your smart contract and then organization that you want to install into your chain code. And then there are PR URLs, which means the number of peers or specific peers that you want to install this chain code into. Now I have this automation script, which is going to help me run these operations for me. So I have, you know, CLA arguments that Zev CLA is going to require. So you can put on your network ID and you'll see the access key and security that it is consuming from the CLA section that we saw earlier while we were authorizing our cloud account. So before we start with the operation, we have to authorize our session here. So it's a small operation when we have to log in. And if you've already logged in, it creates a small session for you. And after that, you can package your chain code and as well as you can install it. So install is going to ask you for these details. And once you provide these details, you can simply run the operation here. So let's run this script to see how my chain code is going to be installed onto my cloud account, to my network here. All right, I'll reshare my screen again so that we can see the Zev panel there and we can see the action that we've done. So let's refresh this page and yeah, let's go to, so I can see that status has been changed. My chain code was just installed. And if I go to the action setting here, I'll see the job that it is producing. Yeah, so I can see that I installed my chain code with a particular identifier. And then the same way I can do my other operations and going through these lifecycle of the chain code itself and we'll deploy my chain code parts as an external service into my cluster. Same way, I think we can see how Zev is creating or Zev is helping you with the administration part of your cluster as well. I'll have to reshare my screen but yeah, before we do that, we can go to channels again and we can see if our channel has been created. So our channel has been created. If I go to Zev channel here, I can see that again, it is going to have a bunch of policies which I provided earlier. So we can see it here. Same way, I think if I go to my channel, I should see the installed chain codes. Okay, it does not have yet but yeah, once we commit the chain code onto our channels, we'll get to see the chain codes as well. Now we can see how I can add a peer quickly. Yeah, so it is going to ask me to select my organization and then the channel that I want to add my peer into and then the settings that I want to deploy this peer with. It is going to again create a peer into my organization and it is going to deploy a peer pod onto my cluster. Now our organization is a tricky piece where you can allow other participants to be part of a network as well as you can create your organization into your same infra that you're running. So it has the same details that we saw in the network creation earlier. I can provide my organization name here. I can select the channel that I want this organization to be joining and I can provide it the CA details and also I can provide if I want this organization to be part of system child consortium. Once I do so, this organization is also allowed to add orders into its section and it will be owning some orders along with it. Same way, I can provide configuration in terms of policies for this organization and then once I click create, it will have peers and orders that I decide here. And if you wanted to create a proposal, I can do so by providing the email ID and then that user will get the invite in his email inbox and he'll have to go through the steps again that we saw in the demonstration, including cloud authorization and getting the subscription. And once he completes these steps, he'll be part of the consortium that we've created here and that way we'll be creating an onboarding part of one network. So let's download the cluster access. But before we do so, we can also see the blockchain details that can be used or that can be downloaded onto your machine. So it gives me a network ID that is required to integrate with my ZCLI settings and I can also download my cluster access, which is nothing but my cube configuration, which helps me access my cluster. So I'll share my screen again to help you understand how we can access our cluster after the network is created through ZEF. So I've downloaded my cluster file. Now let's do an ls here. So it has some files. Now let's say I want to create a cube config here. I can do so. I can copy the contents that I downloaded with my file from. Now it has created a cube configuration. I can access my cluster that you created using this file here. And then I can see the parts and services that it is earning. So I can see there is there a bunch of analytics services that ZEF is running along with the ZEF agent that helps us get the cluster analytics for me. And then there are blockchain namespaces, which includes my organization's parts and services and containers, and same way I have CS services that are running. So that way, you don't only have to depend upon ZEF, you can also do a bunch of other operations onto your infra. So ZEF just provides you the capability to bootstrap your networks and to run your networks in the longer end. You'll have your full access when you create your networks with ZEF. So far we've covered almost all of the operations. I'll go back to my browser again to showcase other operations other than fabric how you can use RPC endpoints and how you can subscribe RPC services and protocols that we have other than fabric. So if you want to have shared notes and endpoints that you want to subscribe for, you can do so for these protocols. And same way there are other services like ZEF where you get to use integrated storage services, which is our own version of IPFS, which you can use to offer storage solutions. So at this point, we're pretty much done with our presentation. If there are any questions, I think we can take them up. Is the cloud migration supported? Yeah, so cloud migration is not supported through ZEF yet. But yeah, we're going to add in an upcoming version, you'll see that not only you can onboard your partners, so when you onboard a partner, he'll have choice, you know, choosing a different cloud provider. But in upcoming versions, we're going to provide you with capabilities so that you can add more organization into your network where you'll be the owner, but you can select different cloud providers. So that capability you can have with your cloud migration is not there yet. But yeah, there's some sort of migration that is very, very much required in longer and which is renewal of your certificate. So that sort of automation and migration would be here. Is there any window to see the events happening in the network for any particular organization and the view of the events like live? Right, so live events, so you can see the logs from your services through the analytics section. That way you can see that your services are running and they are producing some amount of logs. But events wise, I think you'll have to work on your own application SDK to subscribe for those events. But yeah, those capabilities is allowed because the service discovery option we are allowed for peer services and order services that we spend our networks with. Hey, thank you, Lakshman. Thank you, Ziu. So in fact, it is coming up with an enterprise grade solution. I have a couple of questions. Is this integrated with some sort of LDAP where the enterprise is having already user accounts so that it could be used as a single solution? No, I don't think so. They'll sign on for the platform accessing disease platform or? So if I have an enterprise and then I do have all my users in my LDAP, now instead of creating again users in the Ziu, can it be integrated with my enterprise so that seamlessly both can work it out? Yeah, so we do have Open North single sign on also. So right now we are supporting GitHub integration and fewer integrations, but yes, we can provide LDAP integration also. Perfect, got it. And then you're coming up with an API for all this functionality or it is only the web console? No, so right now it's the web console. But yes, it's a microservices driven architecture. So if certain services, let's say for example, dashboard, etc, for monitoring, if needs to be exposed, we can do that. Got it. The last two questions. I mean, any specific reason why Azure hasn't been integrated so far? I mean, or it's coming up in our roadmap? It is coming up. So Azure, in fact, we had integrated earlier. We haven't upgraded it as yet. That's why Azure is not there. But Azure is a partner for us. We do support the deployments on Azure, but the automated native integration is still in the roadmap. Okay, got it. Last question. Can you touch base on the G managed? How do you manage whether it is a SaaS based infrastructure or it is an isolated customer? The cloud, the decentralized storage or? Z managed cloud operations. Now you are showing all of creating. Yeah, so we have a very distributed infrastructure. We use multiple clouds to deploy a network. If there's a specific choice by the user, then we can deploy in on AWS Azure or any of the clouds that. Got it. Thank you. That's all I have. Yeah, thanks. I have one question. Is there a way to define low level details for the channel when creating up the channel, either through CLI or through the UI itself? Okay. What exactly low level details? Okay. So I want to define, let's say, some of the parameters for the channel. Let's say block count or that absolute number of blocks that I want to have. Right. So that capability is there in system channel settings when you're creating a network for the first time, but in application channel, I don't think there is. There are such details provided. Okay. And right now, does it support like those channel participation APIs for in like decentralized ordering services? Participation APIs? Yeah, channel participation APIs? No, not yet. Yeah. Very important for anyone who is looking to set up an enterprise network and see that you guys have a great job. Thank you for the presentation. Thank you. With that, we are coming to a close. I think we are a bit early. So unless anyone has any questions, we will move towards a close. I would like to know your thoughts on how we could transfer assets from one channel to another. How would we do that? Could that be done in some kind of event-driven architecture? You want to transfer assets, is it? Yeah, like chain code assets, whatever assets we have, can we transfer it from one channel to another? Because I am. So chain code is just a piece of code, right? And why, I understand if it were coming from a team or something. I'm sorry, you're not here. Sorry, my bad. So I think the way that you're saying the assets, you know, smart contract as an asset, smart contractor or chain code when it comes to hyperledger fabric, it's just a piece of code, right? It doesn't really hold everything in its own. Of course, when you implement it and the channel is the one that is actually hosting, is actually having all the assets that you have defined, right? Smart contract is just a means to accessing them. So moving assets from one to another, it can't be directly done. But that's where I would say that interoperability comes into the picture where you have different means or ways to go about it, of course. You can follow the bridging route or otherwise you can use hybrid ledger kind of a methodology. But in your case, I think you'll have to create some bridge as a way to introduce interoperability. And then if you go into depth about interoperability, of course, hyperledger has cacti which is coming up, right? We are anyhow planning to have a separate session on that where we will go into details of it. So we are actually planning it anyway. We'll see that if we can have that in a few weeks. So like in cacti, is this like hybrid but do we plug in the network in the cacti and that allows us to do interoperability or do we have to build completely from scratch? No, cacti itself is not a network, right? Cacti is a means to connect multiple networks. Yeah. So it is actually, we had hyperledger cactus, right? So it is actually the next version of it, which we are calling cacti. Actually, we have multiple solutions which are working on the same premise. So we decided to merge them and create a new one called the cacti. So you will be able to integrate different blockchains on networks and be able to transfer the assets as you were mentioning. Okay. So I think with that, I would like to thank you. Thanks everyone. Thank you everyone for joining Hyperledger Connect in India 2023 event. So this was our first event of the season, right? And we are coming up with more events and we are already in the means of creating or planning those new sessions. And we are planning a few workshops as well. So hopefully, you will hear from us soon. Again, we are planning for Hyperledger, Hyperbevel, Firefly and cacti sessions. We are already in the words of planning those. So we'll keep you posted. I would request you to those who are not already following Hyperledger India chapter at LinkedIn, please do that. And using that channel, we'll definitely reach out to every one of you. And now that we have a new team, so dedicated with dedicated responsibilities. I hope that we'll be able to organize more sessions and you know, connect more with the complete team. Yeah. Thanks. That would be all from my side. Kamilesh, you're there. Yeah, I'm here. I think we can thank you, Ravi and Lakshya and Aditya and everyone who are taking the new responsibilities. And yeah, all the best. And let's catch up on every Thursday meeting. And we could work on the planning, like how to take this forward at the new level. So thank you. And thank you, Julian, for joining. Yes, thanks a lot, Julian, for, you know, Saturday evening. Hey, Vikram and Kamilesh, if you have a few minutes, can I just pitch in? Yeah.