You can make sure that you get the whole thing which is one of the ways that these video calls work


QRL, Geometry Labs, & NIST Working in Parallel to Create Quantum-Resistant Cryptographic Algorithms

Otherwise like a noisy channel will corrupt the video


There's a variety of interesting coding theory questions for example


It's not even really well known


How the best or what the best method is to encode?


Let's say you have a bit string of 256 bits and you know 60 of them are one and the rest are zero


How do you optimally encode that bit string?


Like that's that doesn't open question


And it's related to crystals that lithium the signature scheme because that describes how they're a signature challenges are computed


and


Yeah, I mean honestly


The the best rabbit holes come from just going from Wikipedia article to Wikipedia article until you


You don't find the articles anymore on Wikipedia and you have to go to the references


And then you follow the references through those and you just merrily go down your rabbit hole


Yeah, I appreciate it and I think also as well as anyone that's viewing this video


You know, I'm gonna we have in the show notes


We have references and links to all the parts within the series


So even if you start at the first one kind of go through that and then take Brandon's recommendation of


Going across referencing it with Wikipedia and just you know building your own rabbit hole for that


That's probably the best way to go about it depending on where you are in your journey of


How much you want to know about it?


And you know how in depth you want to get Michael is there anything else on your side before you wrap up this episode of


Appreciated Mitchell and Brandon the conversation


No, thank you guys so much. I just want to I'm gonna take everything that we said and summarize it into a few basic thoughts


Or at least attempt to


Essentially if you write if in blockchain in


Programming, let's make this real simple in programming if you want to


Encrypt something or decrypt something or poor firm perform some sort of cryptographic function


You're not writing this code today. You're not writing up and redesigning ecdsa and also if you're gonna use


What's the best analogy? Let's I'm just gonna call it a DLL you're just gonna use a library right


So you don't have to be an expert at understanding and that's how it's done today


What we're doing is just doing the same thing


So that other projects can use the libraries except that they're post quantum computers secure


So I'm making things real simple


But go you know, I'm sacrificing here a little bit


But in real simple essentially we're building off these libraries that can be used in other projects


And be post quantum secure so that they don't have to become experts on post quantum


Technology feel free to close and add in anything else


Well, it's not so much the I mean expertise is is avoiding expertise


So there's a famous saying in the crypto world which is don't roll your own crypto


And in a sense the lattice algebra library that we came out with is


Design so that people can roll their own crypto in a way that


Is safe and I don't want to say safe safe right but it removes a lot of the the dangerous aspects of rolling your own crypto


Especially in lattice lattice


Computations things like non constant time arithmetic. I'm not sure if you guys heard heard about the recent zero-day exploit Hertz bleed


I think I crossed and have you heard of that


It's only been it's only been zero days


Well, yeah, actually, I'm not sure if it was zero day, but


a recent


Critical vulnerability came out called Hertz bleed and what it does is it looks at how long your computer or how your


Your CPUs being throttled up and down and then it uses that to determine what you're computing on


So like I mean, you know a couple years ago some guys put a microphone in a room with a computer


While it was encrypting and decrypting with RSA and it was able to like crack


4,096 bit keys. We're talking about like supposed to be 4,096 bits of security and they cracked it just by listening to the machine


So anytime that you have something throttling up and down


It's dangerous


So like you want your arithmetic to be happening in constant times so that every operation takes the same amount of time every single time


You do the thing it takes the same amount of time your CPU won't throttle itself


And that's what our library is intended to do is to try to remove all those scary things that you don't


Necessarily think about unless you have been studying crypto for a long time. I just tell yeah, I apologize Michael


I went down. Nope. That's okay. I remove the mistake surface instead


You know you feel like mistake


Yeah, math or making mistakes doing the crypto people can still make mistakes doing the crypto


But we've now like kind of shrunk that oopsie surface


Yep, the oopsie surface. That's a technical term. Yeah


Yeah, we'll take that through another episode outside of the yellow


High five, but no guys. We really appreciate that conversation as mentioned a minute or two ago. We're gonna be having an upcoming AMA


On the whole


Series that we've gone over


So if you have any good questions bigger small that you want to ask for that the link for the AMA will be in the show notes as well


Post in the comments or ask within any of our you know social communities discord


Etc and Brandon and Mitchell. Yeah


For the record for that AMA if anybody wants to ask me calculus for differential equations questions because they're taking a summer class


I will answer you even even better. There's no question off the limits as long as it's a you know helpful for everyone


We already got a couple dozen questions for that so ask away any questions and


Brandon and Mitchell from myself and Michael. We appreciate the conversation and we will see you and our upcoming


AMA appreciate it. Thanks.


Wallet Quick Start Guide - E03

Welcome back everyone, Michael Striak, AK Strike Attack and this is the official Quantum


Wallet Quick Start Guide - E03

Resistance Ledger channel, your video portal into Pulse Quantum, Blockchain Digital Asset Security.


Wallet Quick Start Guide - E03

This video is part 2 of 2, we're going to show you how to create a wallet step-by-step


Wallet Quick Start Guide - E03

through the Graphical User Interface.


Wallet Quick Start Guide - E03

So without further ado, let's get started.


Wallet Quick Start Guide - E03

I'm going to walk you through creating a wallet step-by-step and explain things along the way.


Wallet Quick Start Guide - E03

So the first thing we're going to do is we are going to go to a website, passwordgenerator.net.


Wallet Quick Start Guide - E03

We're not going to create a password quite yet, but this is one option as far as just


Wallet Quick Start Guide - E03

being able to generate a secure password quickly.


Wallet Quick Start Guide - E03

It's something I use and it's just an easy quick tool.


Wallet Quick Start Guide - E03

So keep that open on your screen and we're going to go to www.duck.co.org and we're going


Wallet Quick Start Guide - E03

to download the desktop wallet.


Wallet Quick Start Guide - E03

So we'll save that.


Wallet Quick Start Guide - E03

We're going to check our downloads folder.


Wallet Quick Start Guide - E03

We're going to have a couple different versions in there and we're going to install this.


Wallet Quick Start Guide - E03

We'll go ahead and just let it run through the installation.


Wallet Quick Start Guide - E03

All right.


Wallet Quick Start Guide - E03

So while it's done, it does take a little bit of time in Windows, so just be a little


Wallet Quick Start Guide - E03

bit patient there.


Wallet Quick Start Guide - E03

So let's go on to the next step.


Wallet Quick Start Guide - E03

Close this.


Wallet Quick Start Guide - E03

It's worth mentioning that the web wallet that you can see on the screen down here has


Wallet Quick Start Guide - E03

the same function.


Wallet Quick Start Guide - E03

You can create a wallet here.


Wallet Quick Start Guide - E03

The difference is that we're creating a wallet offline.


Wallet Quick Start Guide - E03

It's a little bit more secure.


Wallet Quick Start Guide - E03

If there was anything installed on the PC or cameras or something like that that you


Wallet Quick Start Guide - E03

weren't aware of, it's a little bit more secure to generate a wallet offline.


Wallet Quick Start Guide - E03

So now that we have the wallet installed, we are going to take ourselves offline, but let's


Wallet Quick Start Guide - E03

first make sure that we are online.


Wallet Quick Start Guide - E03

We'll just set up some pings to Google here and there's even a better way to do this.


Wallet Quick Start Guide - E03

Tell that table, dabbling, and lights.nl.


Wallet Quick Start Guide - E03

This will actually play Star Wars as a telnet session, which is my personal favorite to make


Wallet Quick Start Guide - E03

sure that you're connected to the Internet.


Wallet Quick Start Guide - E03

Put this right there.


Wallet Quick Start Guide - E03

What I'm going to do next is pull out my Ethernet adapter.


Wallet Quick Start Guide - E03

So now I'm offline.


Wallet Quick Start Guide - E03

In Windows, simply jump in here.


Wallet Quick Start Guide - E03

Now I have good rest as you're offline.


Wallet Quick Start Guide - E03

8.8.8 has stopped and the telnet has stopped.


Wallet Quick Start Guide - E03

So we are offline.


Wallet Quick Start Guide - E03

So let's do this, generate a QRL wallet.


Wallet Quick Start Guide - E03

And while that's loading, we're going to go back to our generated password.


Wallet Quick Start Guide - E03

This will generate a password on your machine.


Wallet Quick Start Guide - E03

It does not send it across the Internet.


Wallet Quick Start Guide - E03

Since we're off the Internet, that seems to check out.


Wallet Quick Start Guide - E03

Now I'm just going to put everything in the notepad to keep things simple.


Wallet Quick Start Guide - E03

So we're going to go in a wallet.


Wallet Quick Start Guide - E03

We're going to take that passphrase.


Wallet Quick Start Guide - E03

We've generated.


Wallet Quick Start Guide - E03

And we're going to create a wallet this way.


Wallet Quick Start Guide - E03

So this is, if you can see on the right here, the description.


Wallet Quick Start Guide - E03

This is what's going to encrypt your wallet file that you'll be able to download.


Wallet Quick Start Guide - E03

Keep this passphrase.


Wallet Quick Start Guide - E03

You're going to need it.


Wallet Quick Start Guide - E03

And here you can select the tree height.


Wallet Quick Start Guide - E03

We went over tree heights and one time signatures in the previous video.


Wallet Quick Start Guide - E03

So I'm going to select one of, I'm going to select 4,096.


Wallet Quick Start Guide - E03

I'll keep this hashing algorithm as a default.


Wallet Quick Start Guide - E03

There's a few different options here.


Wallet Quick Start Guide - E03

All of which are secure.


Wallet Quick Start Guide - E03

We're going to create a wallet.


Wallet Quick Start Guide - E03

And that was pretty quick.


Wallet Quick Start Guide - E03

A little disclaimer there.


Wallet Quick Start Guide - E03

So this is all of your wallet information.


Wallet Quick Start Guide - E03

This is the most important information that you need to keep.


Wallet Quick Start Guide - E03

So here we have your passphrase that we used.


Wallet Quick Start Guide - E03

That we created.


Wallet Quick Start Guide - E03

This is your public key that you can give to anyone.


Wallet Quick Start Guide - E03

This is your new monic phrase for retrieving your wallet or opening your wallet.


Wallet Quick Start Guide - E03

This is your hex seed key, which also can be used to open your wallet.


Wallet Quick Start Guide - E03

So there's three different ways to open your wallet here.


Wallet Quick Start Guide - E03

You'll be able to, we're going to save this and we're going to save a secure wallet


Wallet Quick Start Guide - E03

file.


Wallet Quick Start Guide - E03

This is under downloads.


Wallet Quick Start Guide - E03

And the three different ways are through this mnemonic phrase you can open your wallet.


Wallet Quick Start Guide - E03

You can open your wallet through this hex seed or you can also open your wallet by simply


Wallet Quick Start Guide - E03

using your JSON file, which is password protected based on this password that we created


Wallet Quick Start Guide - E03

right there.


Wallet Quick Start Guide - E03

So what we're going to do is close this down now.


Wallet Quick Start Guide - E03

We have our wallet created.


Wallet Quick Start Guide - E03

We'll close the password generator.


Wallet Quick Start Guide - E03

We don't need that anymore.


Wallet Quick Start Guide - E03

Put that away.


Wallet Quick Start Guide - E03

Close this.


Wallet Quick Start Guide - E03

And of course we are offline still.


Wallet Quick Start Guide - E03

So let's plug in the ethernet adapter and go back online.


Wallet Quick Start Guide - E03

All right.


Wallet Quick Start Guide - E03

You can see Google is returning.


Wallet Quick Start Guide - E03

Looks like telling that Star Wars doesn't recover.


Wallet Quick Start Guide - E03

So don't go back to www.cural.org.


Wallet Quick Start Guide - E03

Let's just go into web wallet and let's open up the wallet.


Wallet Quick Start Guide - E03

There are different ways.


Wallet Quick Start Guide - E03

You have all this information saying.


Wallet Quick Start Guide - E03

I'll just copy this to the clipboard right here.


Wallet Quick Start Guide - E03

You can open your wallet within mnemonic phrase.


Wallet Quick Start Guide - E03

And it's coming up just now.


Wallet Quick Start Guide - E03

There it is.


Wallet Quick Start Guide - E03

Your wallet is open.


Wallet Quick Start Guide - E03

Let's close the wallet.


Wallet Quick Start Guide - E03

You can also open up with a hexy here.


Wallet Quick Start Guide - E03

You'll open up in just a moment.


Wallet Quick Start Guide - E03

And the other way is you can open up with your JSON file.


Wallet Quick Start Guide - E03

So close the wallet back down over here.


Wallet Quick Start Guide - E03

We'll go to wallet file.


Wallet Quick Start Guide - E03

We're going to browse the wallet.


Wallet Quick Start Guide - E03

It's in my downloads.


Wallet Quick Start Guide - E03

JSON.


Wallet Quick Start Guide - E03

And we're going to type in the password that we typed in earlier.


Wallet Quick Start Guide - E03

Just right there.


Wallet Quick Start Guide - E03

And that will open up.


Wallet Quick Start Guide - E03

And it's also worth mentioning that the preferred option here, the most secure option is obviously


Wallet Quick Start Guide - E03

a hardware wallet.


Wallet Quick Start Guide - E03

You can find that on www.ludger.com.


Wallet Quick Start Guide - E03

You would open your wallet.


Wallet Quick Start Guide - E03

You would plug in your wallet through Ledger Nano here.


Wallet Quick Start Guide - E03

You would plug it in to USB.


Wallet Quick Start Guide - E03

And it would just open it up to your Ledger.


Wallet Quick Start Guide - E03

So there's one other thing that we need to go over.


Wallet Quick Start Guide - E03

We talked about one-time signature schemes in the Merkel tree.


Wallet Quick Start Guide - E03

So let's, if you want to check, anyone can check any public address and how many OTSs it


Wallet Quick Start Guide - E03

has.


Wallet Quick Start Guide - E03

You.


Wallet Quick Start Guide - E03

So I type in the public address here, which is, you're probably going to have to share


Wallet Quick Start Guide - E03

out to someone if you want to be able to have them send you a quantum.


Wallet Quick Start Guide - E03

So right here, this is all, this is all, right here.


Wallet Quick Start Guide - E03

This is all private information here.


Wallet Quick Start Guide - E03

This is public.


Wallet Quick Start Guide - E03

So keep this locked down as secure as possible and you can share this out.


Wallet Quick Start Guide - E03

Okay, so if you see the OTS tracker here, this is the number of times that you can submit


Wallet Quick Start Guide - E03

a transaction to the network.


Wallet Quick Start Guide - E03

As you can see, you have lots of options.


Wallet Quick Start Guide - E03

You can actually go over 262,000.


Wallet Quick Start Guide - E03

It just takes a little bit of time to create.


Wallet Quick Start Guide - E03

But as you use your, as you perform a transaction on the blockchain, these will start to


Wallet Quick Start Guide - E03

go red and you'll be able to see that.


Wallet Quick Start Guide - E03

So that's it.


Wallet Quick Start Guide - E03

If you have any other questions, those are all the best, those are best practices, stuff


Wallet Quick Start Guide - E03

like step out of create a wallet.


Wallet Quick Start Guide - E03

If you have any other questions or anything like that, just feel free to join our Discord


Wallet Quick Start Guide - E03

community.


Wallet Quick Start Guide - E03

We're at www.dub-dub.ql.org or you can also visit docs.dotql.org.


Wallet Quick Start Guide - E03

Thanks for watching, more videos to come.


QRL Zond Public Devnet Reveal/Demo at QRL Hackathon 2022 with QRL Lead Blockchain Developer

Good morning, everyone.


My name is Koshil Kama saying and I am the lead blockchain developer.


So, today I am going to start with the overview of the Zond,


a brief presentation which will give you an idea of what we are working on and what we have achieved so far now.


So, let me share you my screen.


Okay, so this is the Zond overview.


So, we will begin with our types of wallet.


So, in Zond we have XMSS and Dylethium two types of wallet.


So, basically these two are different types of post quantum cryptography that we have used and coming up with the difference is like in our Zond node when you generate an XMSS wallet,


you will see that this starts with 0X1 as I already mentioned here.


And XMSS is a stateful signature scheme.


So, that means every time you make a transaction on the blockchain side, we have to make an update related to your private key that,


okay, this specific OTS index and private key has already been used.


So, that's what the stateful signature scheme is.


So, XMSS is a stateful signature scheme.


So, with the stateful signature scheme, there comes something like that even user has to take care of which is you have to keep track of your OTS index just to make sure that you do not reuse it.


Otherwise, if you sign a transaction with an already used OTS index, that will be rejected by the blockchain itself, but the problem is because you broadcast your transaction and you are using your OTS index that will compromise your OTS index.


That is your wallet security to some extent.


And because it's a stateful signature scheme, so XMSS has a limitation of like there is a limited number of secret keys.


That means you will reach eventually to a point where you can end up with having no secret keys unless you are using the slave feature which we are still implementing on the Zond node with it's not yet implemented.


But for our Python node which was working on which is still working on proof of work, the slave feature is still there and exchanges are using that and they have like virtually unlimited secret keys.


So, that's still in progress for the Zond node.


On the other hand, we have Dylethium.


So, basically a Dylethium wallet, it's a stateless signature scheme and that is usually starts with 0X2.


I already mentioned one of the example address here.


So, stateless, that means user doesn't have to keep track of anything and neither blockchain has to update any kind of secret key or anything like OTS use or not.


So, it's simple in terms of development for us and in terms of users to maintain it, the Dylethium one and this because it doesn't have any stateful signature scheme.


So, it's like you can have unlimited number of transactions using Dylethium wallet.


So, that's the difference between XMSs and Dylethium.


So, further differences with the signature size in XMSs, we have a base signature size of like 2,180 bytes and then it depends upon height.


So, if in an XMSs tree you have a wallet of height 10 that will make it around 2,500 bytes signature size.


But the public key size is fixed to 67 bytes.


Whereas in Dylethium, the signature size is fixed to 287 bytes and public key size is fixed to 1472 bytes.


But yeah, these sizes are very big for the blockchain and it's like a transaction going to have at least if you take the sum of signature and public key then at least that was size will be the minimum size of the transaction just to cover up transaction public key of Dylethium wallet and that's how it goes for XMSs.


Now, in terms of feature, so right now in Zahn node, if you use XMSs wallet, you will be able to transfer funds, the test net funds or the different funds from one wallet to another.


It's fine, you can transfer your funds from XMSs wallet to a Dylethium wallet or XMSs to XMSs wallet.


No issues with that.


You can also deploy smart contracts interact with the smart contracts.


But staking is not yet allowed, we are making progress with to make XMSs available for staking.


But if you use Dylethium on the DevNet, you will have all the features including staking interacting with the smart contracts, deploying smart contracts, transfer of funds, everything will work without any issue.


So, now coming to the API, so in Zahn node, we have got two kinds of APIs. One is the public API, which is basically the legacy API, which we wrote around like two years ago.


But that's deprecated right now, it's like it's still there because it has some dependency on Zahn CLI, because Zahn CLI is using the legacy public API, so we haven't removed it yet.


But in the upcoming updates, we are going to remove this public API and Zahn CLI will be using RPC API instead of the public API.


Right now the public API default port is 1505 and the second API, which I'm going to talk about is the RPC API, which we have implemented and it's very much similar to Ethereum's RPC API.


So right now it supports only a street P protocol and we are working on some of the APIs like event subscription API, so there's a bunch of APIs that are in progress in the RPC APIs, but we have already implemented many of them, especially the subscription event, even subscription API is still in progress, so that would take some time, but in the upcoming upgrades we will have that too.


So the RPC API, as I mentioned, it's only support HTTP protocol, but we are working to make it to add like the web socket and IPC protocol implementation for this and the default port for this RPC API on Zahn node is 455.


Now getting to our proof of stake consensus mechanism.


So before I move like how this works, I would like to go through the terminology that we use. So in proof of stake, we call anyone who is participating as a stake or a validator.


So basically anyone who has a stake balance greater than equal to 10,000 QRL, they are considered as validators.


This 10,000 QRL is the minimum amount required if you want to become the validator and stake on the node, but this is not something fixed yet.


When we release the minute this value may change.


So when we come to the validators, there are basically two types of validators or I would say like there are role of validators, so they are basically two kinds of role.


One is block proposal, other is attesters.


So block proposal mentors slot leader, these are like the same thing, but they have a different name. So it's basically represent to the same thing, a block proposal who one who creates the block, mentor is the same thing, slot, it is the same thing, attesters, there's something different.


So we will talk about what's the difference between block proposal and attesters.


Now the block proposal is the one who creates the block and add transactions into the block. So that's what's the block proposal a responsibility is, whereas the attesters responsibility is to get the block which was created by the block proposal, then it basically


assigns the attester transaction on it, which basically means that it is vouching for the block as a valid main chain block. So if an attesters sees a block coming from a valid block proposal, it makes sure that this block belongs to the main chain that he thinks based on whatever state that it has on its node.


And it signs that attester transaction, gives back it to the block proposal block proposal, then collects all those transaction add it into the blocks so that it has sufficient proof by the attesters.


So that's what the role of attesters just gives a vote on the block, whereas the block proposal just creates the block at transactions into it.


Now, coming to this like how is this role is assigned on our side. So we have a very naive random function at this moment, we are still working to improve our random function.


So whenever an epoch starts, this role is randomly assigned to the validators. So if there is a there is a list of validators and if it's the first talk of the epoch.


So before the first talk is created, the system randomly assigns the or I should say the randomly shuffles everything and then it assigns the role.


Okay, this address diality matters of XML address will be a block proposal or attester.


So that's how it works.


If you are a validator in a specific epoch, so your participation will be only once per epoch, which means you can either be a block proposal or an attester and your participation as either a block proposal or an attester will only be once per epoch.


So you do not have to make any transaction after an epoch if you have already made one of them.


So the epoch size we have 100 blocks in any pop, which means it's like after every 100 blocks we regenerate the list of validators we reassign the role of all of the validators, whether they will be a block proposal or an attesters.


So it's like how we do that. So the thing is we take all the list of validators from previous epoch and then we start adding or removing the existing validators based on whatever stake transaction they made in the blocks of previous epoch.


So if someone has made a destect transaction in the previous epoch, it will be taken and then that validator will be removed from the validator list or if someone made a stake transaction to join the validator list, then that is processed before the beginning of the epoch and then at the final, we check like if the existing validators have at least 10,000 QRL on its stake balance.


If they do not, then we remove that if they have they continue as a validator to the next epoch to unless they have made a destect transaction in the previous epoch.


So as discussed previously this assignment of the role of whether they are block proposal or attesters, it happens randomly once we have generated the list of validators.


Now, the thing is there are very, I should say a question that comes in the mind, what happens if someone stake with more than 10,000 QRL.


So if someone using more than 10,000 QRL for staking, it will not have any impact in terms of reward or priority or anything like that.


So they will be still created as if they have just have a 10,000 QRL as stake balance. However, this extra amount can help you from getting your balance below 10,000 QRL is like in case there will be any penalty like you may have a chance where you have to create the block,


for some reason your node lost the internet connection and because of that you have been charged some kind of penalty. So those penalty can take your balance below 10,000 QRL.


And so for that reason it's good to have a little bit more than 10,000 QRL so that you can cover those penalty.


So that's the only advantage that you can have if you use more than 10,000 QRL as the stake balance.


Now talking about the proof of stake reward. So the reward function right now works is like all the transaction fee in a specific block goes to the block proposal and there is a fixed reward of 5 QRL for the block proposal.


Whereas a tester only receives a fixed reward of 2 QRL. So if in a block there are 2 attesters then each attesters will receive 2 QRL as the reward.


And this is just what we have got in our first iteration but this is more likely to be changed before we release the mainnet but that's what it is for now.


Okay so at the end this is our RPC API's IP and the port the devnet that we are running at this moment and this is the documentation length. So if you'd like to go through the API's how it works. So you can look into the documentation.


So now I will begin with the demonstration like how you can clone the node runner node and then how you can generate the wallet, how you can deploy the smart contract interact with it.


So let's begin with that.


So we have a repository repository. Okay this is the Zant repository. We do not have any version release at this moment because it's like the first iteration we will have that in future the package manager and version things.


So for now you have to clone this repository if you would like to run the Zant node. So we have got the Zant node. I'm using Ubuntu that's the Ubuntu terminal so I have just clone the Zant node right now I just need to build.


So that's how you build a Zant you need a go, land version. I think the minimum required version is 1.16 and once you have clone three positaries when you have to just build this so we have Z Zant which is basically it will run the node. So if I write that it's going to run the node that's how the node starts and then it will start sinking from the devnet which is running.


On our server.


So it will take time to sink. It's like we are 10,000 blocks behind so I'm not going to wait here for it to sink. I already shown you how you can start that so I'm going to interrupt this at this moment.


Now that's the Zant node but if you'd like to use the Zant CLI you have to build this again.


So this is Zant CLI. That's how it looks like and we have come out to generate wallet transaction, Dylethimps, everything.


So if you want to generate a wallet you can use this like Zant CLI wallet.


Now this will give you two options like which type for wallet you would like to generate whether it's XMSS or Dylethim.


So I'm going to say it should be a Dylethim wallet.


So as we have discussed previously Dylethim wallet starts with 0X2 so that's how Dylethim address we have generated a wallet.


And if you'd like to have a list then you can use wallet list. This will give you the list of wallet.


So right now we just added one wallet so that's what it is showing.


If we add ad XMSS this will generate XMSS wallet. It takes more time to generate.


So okay it starts with 0X1 so that's our XMSS wallet.


Here it is. So if we do this wallet list we can see our Dylethim wallet that we added previously and that's the XMSS wallet.


If you would like to see it secret key then you can use wallet secret.


It will give you the hex seed that's the X seed and that's your mnemonic keyword.


So that's how you can play with the wallet. There are further documentation.


You can take a look into that in case you want to know more about how the Zont CLI works.


So that's the Zont node and Zont CLI already covered.


So now I will move to this smart contract thing like how you can start building on a Zont node.


How you can write your own smart contract, deploy it on the network and then how you can interact with it.


So for this we have created a sample code which is Zont contract example.


You have to clone that. It is how it looks like. It's the QILZont contract example.


Okay, we have clone this repository and we have to make this npm install.


Okay, meanwhile it's working. I'm going to go through the code.


I'm using WebStomp on my side. Usually people use VS code.


So it should not make any difference. So if you are using any idea that should be fine.


All right, so npm install dead work and I have to open this repository first.


Okay, this is the example repository which we have cloned.


Trust this project. This window.


So let me go through the structure. This is the contract directory.


So for now for this simplicity, we assume that you whatever contract that you are writing.


You should copy this inside this contract directory.


And could you blow it up a little bit to shop.


Okay, you want to increase the text size.


Yes, please. Thank you.


I didn't know if you can hear us.


Okay, all right. Let me try.


I'm going to start with the structure.


Is that fine?


Yeah, thank you.


Okay, great. So this is the contract directory.


So in this example, we have already written an example contract, which is an ERC 20 token.


In case you are writing your own contract and would like to deploy that on Zahn blockchain.


Initially, I will suggest you that you copy all your contract files, whatever you have written in this directory.


So let me go through the example contract that we have written.


So basically this is.


Okay, I have to do this size too.


Okay, fine.


So this is the example contract that we have created.


It's a my token. That's the contract name.


And it is inheriting from the parent contract, which is ERC 20.


This is the source code of the ERC 20, which is basically the standard ERC 20 token functions.


So it has meant by approved transfer.


So anyone who is already familiar with the ERC 20 of solidarity, they know what is this.


So I will not.


I will not go to explain these things.


So.


And we have a interface, which is IRC 20.


So this basically have the functions names or like signature, the definition of the functions, but it doesn't have the actual code.


So this ERC 20 is implementing that specific interface.


So that's the structure of our example contract that we have created.


And so let's say if you have written your own contract and you have copied this here.


So the next thing is you have to do some configuration in this JavaScript file to make sure that it reads your contract.


So we have a contract compiler.js.


What it does it basically use the solidarity compiler.


And then it compiles your contract code and then gets the byte code and the EBI codes, which is required for to use the web code.


So use the web three APIs and to interact with the contracts.


So let me go through the basics of how this contract compiler.js works.


So we have a function get compiler output, which basically use solidarity compiler and it takes the input.


So the input should be your main contract, which you actually looking to deploy in our case.


My token dot solve is the main contract that I will be actually trying to deploy on the network.


So what I do is in this input variable, I have to write my file name here, my token dot solve and then I have to make all its content available in this specific format.


Why this we need to acquire this format is just because the solidarity compiler is actually requires input in this format.


So the format is like your language should be solid.


So so should be your main contract, not the contracts that you are trying to import.


For example, in my token dot solve, I'm trying to import the RC 20 dot solve.


So that's not you are going to mention into input.


It should be your main contract, which is my token dot solve.


And it's just reading the content of the file and having it here.


Now the settings I'm going to keep it like as it is, it's the default settings, but if you would like to play with the settings, you know, you want some kind of optimisation, then you can play with that.


But for now for the sake of simplicity, I'm going to keep it as it is.


So that's the first parameter required by the solidarity compiler.


The second parameter is import. So if you are writing a contract, which is importing something, for example, my main contract is importing your C 20 dot solve.


Then you have to provide the function which will help you to resolve these imports.


But if your contract is not importing anything, you don't need to pass this parameter.


You can simply delete this one.


But in our case, what we are trying to cover everything so that in case someone is importing, he should not have any issue working with this.


So in our example, if you have made imports, you see 20 dot solve.


And if you look into the erc20 dot solve, it is importing.


Yeah, I erc20 dot solve, which is basically the interface.


So all these imports has to be mentioned in this find imports function.


Okay, this is basically the function required by solidarity compiler to resolve all the all the contents of the contracts, which are being imported.


So you just need to mention all these import name.


So if you have mentioned he has the 20 dot solve in import, you have to mention this in here and then the path from where the contents can be loaded.


And if you are already familiar with JavaScript, you know what the first read files, you basically reads the content of the file.


So that's what we are doing here.


So that's the basic configuration that you have to do before you can start deploying the contract and making calls or interacting with the contracts.


So once we have done this configuration, the next thing is we would like to deploy our contract.


So this is one high fund applied at JS.


This is the code, which is used to deploy this smart contract.


So for this, you need a dilutium wallet.


You can have XMSS wallet, but right now we do not have XMSS wallet support in JavaScript.


We are still working on that.


So in JavaScript, we only have dilutium support at this moment.


So you have to have an hex sheet of a dilutium wallet, which have some funds, the test net funds, in case you do not have you can ask from the team, they can give you the test net funds to play with.


We need these funds to deploy the contract, which will require some of the gas fee and that requires to be covered by the dilutium wallet which you are using.


So this is the hex sheet. This hex sheet right now doesn't have any funds. So if you try to run this from the console, it's going to show you the error.


So, let's see if I try to run this.


So show me error that it doesn't have funds. Okay, that's the error we have got is transfer failed because we have insufficient balance.


This that's the transaction has that's the dilutium address for the hex sheet that we have used required balance is this much, but available balance is zero.


So make sure that whatever dilutium wallet you are using it should have an affine. So once you update this. So let me update this with the wallet that have the funds.


So I have updated this with the hex sheet of my wallet having funds on it.


So when you call this deploy function, it takes the address your dilutium address because you are going to deploy the smart contract using your dilutium address.


So that requires your address.


Second thing we need the compiler output, the configuration that we met previously here in this get compiler output everything. So we call this function here get compiler output.


So in this output we get two important things.


So the first one is the ebe file, which is the binary interface. It is required this application binary interface data is required to make calls. So, and that is generated by the compiler.


So once we get this output, you will always have output dot contracts.


Then it's the file name of our main contract, which is my token dot solve and then it's the contract name my token it's like if you open my token dot solve, this is the contract name that we have here.


And then dot a bi it gives you the.


The API code, so which is the application binary interface, which is required to make function calls. And because we are going to deploy the code at this moment. So the difference between the EBI is the EBI is very much similar to the interface where it have the function signature, but it doesn't have the actual code which of the function.


The the the the API has like what parameters function take as an input. What's the function named what the function returns, but it doesn't know.


What how what the function to it doesn't have the code inside it.


So that's why we need the byte code. And because we want to deploy our smart contract first time, we have to give it the all the codes inside the function to the blockchain so that it can store it.


So that's why you need the contract byte code. So the format will always be same or put dot contracts, then again your file name your contract name that you have mentioned here.


And then dot evm byte code object. Once you got the byte code.


Second thing is we are going to use web three API's. So we have created our own web three library, which is at the rate the qrls slash web three we there.


It's still in progress there are some APIs which are working the sum of APIs which are still in progress which might not work so but whatever APIs web three APIs we have used in this code that's going to work so you should not have any issue using that.


So we are going to load our contract using this API file so the web three zone contract requires the API is an input so you have to provide API.


And because we are going to deploy this contract. It's the first time so you can use this contract or deploy this contract object once created there is a deploy function.


Now this deploy function takes two things as an input data and arguments where data is the byte code which we have got from the compiler by the Solidity compiler.


And the argument so this argument is not necessarily every time it depends upon your contract so in my case.


My contract has a constructor so it's a parametrized constructor which takes two input which is the name of the token and the symbol of this you see 20 token.


That's why I have to pass this as an argument the token name which is token one two three and the symbol is you okay.


So in case you your contract doesn't have any parametrized constructor you don't need to pass any argument you can remove that it's totally fine.


So once you have done this the next thing to deploy it you have to make a transaction but for that specific transaction you need to know the non's okay so if you are familiar with the blockchain it's like a non's is something which has to be unique every time you make the transaction and it has to be sequential it starts with zero and it can go beyond like infinite.


So we have we already have an API which gives you the next available non's it goes through the blockchain network zoned blockchain network it provides the address and it asks for what's the next available non's which we can use for for our transaction.


And then we get this non's value it's an integer value a sequential number so it's like it should be unique for every transaction you cannot reuse the non's which you already have used before.


And once you have got the non's file address the next thing is to deploy this contract you have to give gas as a fee.


And now to get like to know how much gas is required we have this API estimate gas so if you call this contract send or estimate gas and you provide your address.


So you will do like a kind of simulation on the zoned like zoned API it will send all the data to the zoned API zoned API on its side does the simulation and then it calculates that okay this is the required amount of gas which you need which is the least amount of gas which you need to deploy your contract.


So once you get the estimated gas amount we create the transaction here so it's like this is how the transaction is created it's like you provide your address from which your dilute


address from which you are trying to deploy the contract then this encoded API so this is basically the data is basically the whole EVM bytecode is included in this the functions the code of the functions everything the constructors parameter everything is passed in this one.


This is automatically done by the web 3 API that we have created and so we have this non so which we already taken from this API like which is the next non available for us for the transaction.


Any idea it's fixed zero x1 so no need to change that if even if you change that it should not create any issue because right now we are not doing any validation for the chain ID but there will be validation in future so just keep it as it is.


Estimate gas which we have taken from the RPC API by the simulation of the contract how much gas is required for this transaction and gas price so basically your transaction fee will be gas price multiplied by the gas so that will become your transaction fee so make sure you should have a balance which is gas multiplied by gas price you should have at least that much balance in your dilute and wallet.


Otherwise your transaction will fail because of out of gas thing and your contract will not be deployed and now this is the value so value means the if you are trying to transfer some amount of


contract to your contract then you can provide this some value here but note one thing if you are already familiar with the solidarity you know this that you can only transfer funds to a contract if that contract is of payable type.


So if you are trying to define a contract as a payable otherwise if you try to send any funds any contest to that specific contract which is not payable it will fail and it's like you will get back whatever you try to send to that smart contract so.


Our case our contract is not payable so the value should be zero and if you try to add any value here that your contract will not be deployed it will be failed so it's that's why it's zero and two should be blank so.


Here we are not here we are going to deploy the contract and at this moment we don't know the contract address so whenever you are going to deploy the contract the two fields should always remain blank and we provide the hex it because this is a sign transaction function it takes the transaction structure and the hex seed so.


We have already provided the dilatium exit here so it's what it is going to do is create the transaction going to sign that and then you will have this sign transactions in this great transaction structure.


So right now we have like we haven't added the type yet so we have to use this small hack here to force to add this type zero to but that will be removed in future so you don't need to play with this you just you just keep this as it is the transaction type zero to.


After this we call this send sign transaction so this is the web 3 API which basically sends your raw transaction to the zone node and from there zone node proceed with this like well rating and processing and getting it added to the block.


And then we wait for the receipt so if you if you have already worked with a theorem web 3 API so basically the receipts are generated once your transaction get processed in the block.


So receipts has information like what's your contract address whether the transaction word successfully or not or it failed for some reason, what was the block number in which your transaction was X added and what's the block hash and other informations which you can look into documentation if you want to know what other informations are provided in this.


And then we have confirmation so it waits for the we have configured it to wait for like two confirmations at this moment so.


It will show you the number of confirmations so if you got the receipt that means your block your transaction has already been added into the block after that if you want to wait for the confirmation you can you can just interrupt the process.


The end of this we have already written the code which basically generates the contract address locally so it's like it's not necessary but it's just for the information like how the contract address has generated.


Basically it takes the dilithium address basically the address from which you are trying to deploy the contract and then it takes the non that you have used to deploy the contract then it.


And it just as hashing key cact 256 hashing at the backend and after that whatever has said gets it it takes the first 20 bytes of it and that becomes your contract address so that's too much of technical duty but let's just keep that simple that you will get the contract address in the receipt but even then if you for some reason if for network issue if you got disconnected in between you will still get the contract address here which is.


This part of the core so now we have already updated our hex sheet so now let's try running this and see how it looks like.


So we are going to run our when deployed or JS no warnings.


Okay, so this is the okay we got our receipt this is the receipt so this is the dilithium address from which we are trying to generate deploy our contract.


Our transaction has already been accepted into the block confirmation number zero means it's like it's just the first block on which your transaction is still.


I mean the block has been approved it's the part of the main chain your transaction is inside the block and that's why the confirmation is zero so as more block will be added to it you will get like higher confirmations.


So it shows the block number on which your transaction has been added it's 10,4999 and the cumulative gas used is 949965 the gas price.


And here we have the from address the dilithium address from which we deployed this contract and this address this is the contract address so in logs you get the address which is the contract address.


So make sure you copy this so I will copy this and keep it handy somewhere.


Michelle was there about 30 seconds for a block.


For a block no it's 1 minute for a block but luckily we made our transaction just because just before 10 seconds before this first block was going to end.


Okay so okay so let me note down this here.


So that's our contract address.


I have noted it down here for the purpose.


Now it's showing you confirmation number one if you want to interrupt you just you can control she interpret your contract is already deployed there's no need to wait for two confirmations at this moment.


So we have got contract address we have deployed it from our dilithium wallet which is having this address so I also copied this my dilithium address this is my dilithium address.


So now I will go with off chain call first so let me explain you the difference between off chain and on chain call.


So any call that you would like to make in a smart contract which doesn't require any change in its state.


Okay if if there is some function call that you are trying to make it doesn't require any change in the state.


So that doesn't require like like you to make any kind of transaction because you are just going to read some values from whatever stored in the blockchain.


You are not going to make any changes in the state of the contract or anything like that so in that case we make the off chain call it doesn't require any wallet it doesn't require any signature it doesn't require any transaction fear anything.


And so that's the off chain call so here we have to update our deployed contract address the contract that we have deployed.


So in our case this is our contract address.


We update it here.


Okay and I will again go through with some explanation here so this get compiler output is same as we discussed in deployed.js the compiler output which basically gives you a B and E VM.


Because we have already deployed our contract the bytecode is already inside the blockchain so we don't need the bytecode but because we want to call some of the functions in the contract so we need the API file sorry,


the code so we are loading this API again as we have discussed in this one.


So we have to have the contract and the deployed contract address which I have already updated here.


Once you have this contract instance you can then call the function the function which you have written in the contract so for that contract dot methods then balance off.


Because it could be either function or a variable so balance off is a map variable so it's a public variable balance off that's what we are trying to call at this place and this map basically takes input which is an address.


So I'm providing it specific address and then I'm calling it we have already discussed about get compiler output in one deployed at js. So here we are getting compiler output API files and then we are initializing our contract using web three.


So we provide API file and the deployed contract address we got this contract instance and then we are going to call our contract function or variable whatever it is so you have to write like contract dot methods and after that your variable name or the function name.


So in our case we have this balance off as a variable here which is a map type.


So balance off is a map type which takes address as a as an input and gives you integer as an output which is the balance.


So I'm providing an address a random address and then I'm going to call this off make I'm going to make this off chain call for my contract with the balance of variable which and then I should get the balance of this specific address so because this is any random address it should give me a zero balance.


So, so it's an embedded to slam down this.


So if I try to run this I should get zero balance okay because I have just deployed my contract so only I have the balance at this moment and know that wallet address has.


But if I check this with my own wallet address the address that I used to deploy if I copy this my daily theme address paste this here.


Try to get this.


I should get okay this is the balance that I have on my own address because I have deployed the contract.


So now what we are going to do we are going to transfer some points to this wallet address which doesn't have anything at this moment.


So for this we are going to use on chain call dot JS which we already have written period and everything you just have to make couple of changes to this to make it work.


It's like I again have to update the hex seed because this wallet doesn't have any finds and I haven't deployed my contract using this wallet so on chain call dot JS.


I update my hex seed and then I have to update my deployed contract address which I have already copied here.


Okay, so now I will explain you what this function works how does this things work so it's again the same thing we are getting the address because we are going to make an on chain call so.


As I mentioned previously on chain call you have to make it when you are trying to change the state if you have if you are moving some funds that means it's.


It requires the change in the state so that requires a transaction that requires the wallet that requires the fee.


So that's what the on chain call is it requires the transaction so we and everything because you are going to make some changes in the state of the blockchain of the smart contract or anything so that's why we go for the on chain call.


If you just want to read values then off chain call is something where you doesn't need any fee any wallet address or anything like that.


If you are on on chain call we are going to move funds to this address which is 2730 a9893.


I already have this address here so okay this is the contract address which we have deployed again we have to make the instance of the contract and provided the EBI code so here's the EBI code which we are taking from the compiler as already discussed.


This is the deployed contract address the contract address which we have deployed which is mentioned here.


And then because we are going to sign the transaction we again need to know which is the next notes available for us to.


Sign this transaction otherwise your transaction will fail if you are not using the non sequentially or if you are using a non switch is already used in the past so.


User doesn't have to keep track of the non so that's why we have this API if you call this web 3 API provide the address you get the non switches available which you can use in your transaction.


Now I'm going to call this contract dot methods dot transfer so.


Contract dot methods after this you basically give the function name which you have written in the contract so we are here going to call the transfer function of our contract which is written in this file you see 20 dot saw this is the transfer function what it does it it removes the it's just.


The balance from the sender and adds the balance to the recipient whatever recipient you have provided in the parameter and the amount whatever you have provided in the parameter and then it emits the event.


So in this case we have already provided the parameter is just this is the recipient address who will receive the balance and this is the amount of balance that he's going to receive 10,000.


Ten thousand off my token okay so that's the RC 20 token which we have deployed.


So basically the data which you required to broadcast so it's basically kind of EVM thing EVM bytecode which has to be sent which will tell the EVM that hey I want to call this contract this is the sender.


The parameters of the contract this is the function that this is the specific function that I want to call for this for this contract so all of this things has to be converted into EVM bytecode so that EVM can understand that and process that same information so that's what we does here so it creates everything.


The API is things and the bytecode or everything whatever you need and then because we are going to make a transaction we again need to have the estimated amount of gas is required for this so again we call the same.


The API is which does the simulation at its own side and then come up comes up with the minimum amount of gas that you need to make this transaction successful.


So we have the data which is the data which gives me the data matrix of my wallet.


So we are going to apply the smart contract so that's why the two was empty but in case in this case we know that we are going to interact with a specific smart contract because we are going to call our contract and we do not know what's going to be the contract address at that point of time so it's not required whenever you are going to deploy the smart contract so that's why the two was empty.


So in this case we know that we are going to interact with a specific smart contract because we are going to call a contract function so of course we know we are going to call the contract function of some contract which is already deployed on the network.


So we know the contract address so we have to provide this deployed contract address into two once we have this then we give this exceed to sign the transaction then this web 3 API just sign the transaction creates everything inside this.


Again the same hack that we are using at this moment do not change this or you can you will have the issue so just keep it as it is this will be removed in future.


And then we broadcast this transaction using the send sign transaction API available in this web 3 package.


So we again wait for the receipt so as mentioned in this one just received means your transaction has been approved in the block you will get all the details for the block number if the transaction process successfully or if there was an issue.


So we are going to run this and we have already checked before the balance was zero for this address and so.


So we will run this on chain call.


So it has sent the transaction and waiting for the receipt so.


So the receipt and the transaction has been accepted we got the receipt.


One important thing in this receipt is status.


So make sure your status is true so status true means your transaction is successful it has been successfully processed no issues with that.


So we have got this the gas use.


So now if we check the balance again we have to make this address we transferred to this ECEF so have the status here. So now if we go to option call tortures and check the balance again we should see the balance 10,000.


10,000 they're talking that we are transferred.


So if I run this.


Here we see 10,000 so that means our own account should have 10,000 less amount of that token.


So if I use my own address.


Which is this one on this off chain call tortures that right to run this.


It should be less than this and here it is.


Okay. So this is how it works. This is the whole demonstration of the smart contract how you can deploy it how you can make off chain call to check to call any functions if you are not going to play with the state.


And this is the on chain call if you are trying to call any of the smart contract functions which are going to make some state changes then you are going to use on chain call.js.


So this is everything in case you get any questions feel free to ask or in case you get into any trouble feel free to ping me on discord and try my best to help you with the issue.


So that's all from my side.


The QRL Show LIVE | CBDC's, Crypto, & AMA w/ Michael Strike

What is going on everyone and welcome back to the Quantum Resistant


Ledger channel. Today we have a live episode. We're going to be discussing


CBDCs that is central bank digital currencies crypto and we're going to end with a


little bit of QRL and they would strike. So make sure you stick around for the


whole episode. Let's dive in. Welcome back to today's episode everyone and welcome to the


Quantum Resistant Ledger channel the place where you come for the crypto


day for the quantum. We have a really exciting episode today. We are going to be


discussing CBDCs which are central bank digital currencies. We're going to talk


about comparing and trast it to kind of the whole crypto ethos in general.


Privacy we're going to talk about the Federal Reserve and with me for today's


episode is Michael Strike our director of Outreach at the QRL.


Strike it's good to have you with me here today. Okay thanks for the intro.


Looking forward to this. This is our first live episode.


Hello to the community and let's have some fun. Awesome. Well kind of let's as a


starting block what I'd like to do is I'd like to dive into kind of a


definition question. I know a lot of people whether they're watching it now live or if


they're watching it later. Some people know a lot about central bank digital


currencies. Some know a little. So let's start out with a little bit of a


definition of straight can you define for us what are central bank


digital currencies and with that I know that depending on the country


countries might view it differently whether they're in like a research phase


or whether it's someone like China who's already getting close to you know with


actual implementation of it. Can you first define it for a few minutes and


based on that we'll move into some further questions. Yeah so you're right


depending on which country you're talking about definitely different


countries are in different stages of CBDCs. If I were to define CBDCs and


their simplest explanation it's essentially a digital version of the


area. So CBDCs were central bank digital currencies were inspired by


block chain and they're both digital forms of payment. And in a lot of ways


you know that's how they're sold when people are you know talking about


or they're talking you know speaking about CBDCs. So they're both digital but


let me explain in that that's probably one of the few things that they have


in common and that's kind of like where they're similarities and


but you know listen a little to the podcast and then you know


everyone else make their mind make up their own mind. So according to


like there was a survey done by the Bank of International Settlements in


April 2021. 56 of 65 of central banks are at the very least


for exploring different types of central bank digital currencies.


And as you pointed out there are some such as China that are already doing


beta tests and if I recall correctly China actually I think China had


actually had a lottery to where they distributed some currency through the


CBDC and then they were monitoring you know the transactions.


So they're at least beta testing. In fact they're actually leading


probably most countries and probably the world right now as far as


progressiveness towards CBDCs. Now progressive doesn't


always mean you know that that you know that that there ahead of the game


you know the federal reserves made it quite clear for the United States that


they want to take it slow and get the right implementation


rather than expedite you know than expedite the system.


Um you see CBDCs are essentially it's basically they're basically


fiat on steroids. So instead of an institutional


intermediary you deal directly with the ledger at the central bank.


Now your balance how much money you have your checking account your savings


account may very well be kept at your credit union or your bank


which helps distribute the access and it keeps the going the same and the


interface the same in order to keep people comfortable


that you know on the surface everything is the same but there's it's much more


different behind the scenes and that the ledger is instead of being kept at


your bank it's not it's not stored there it's now


stored at the country's central bank United States that's the


Fed. So your bank or credit union it becomes more of a


router and less of a database. Yeah with that I'd like to


go into kind of the whole ethos and kind of just kind of the contrast between


you know you have CBDCs and then I'll also just


between you know the whole you know centralization versus decentralization.


So let's dive into that a little populate the question that we had for it


which is what is the impetus behind blockchain and


ethos or system of values compatible with central bank digital currencies


because I think this is actually really important because


I think that moving forward as you know different countries


are seeing you know whether they're looking at Bitcoin and saying oh shoot we


need to kind of get on board but there's if they say


digital currency they might have a very different meaning of it so


let's dive into this one a little bit because I think this will kind of lead


into a few of the parts and then after this one I want to talk about you


know some of the positive benefits of CBDCs because I think there's a few


when it comes to like inclusion when it comes to speed things of that


nature but let's start with this one. Sure so


they're both digital right blockchain digital


in fact you don't even need it. Yeah it's already digital today


it's digital today it's just going to be more digital


in the future so but to answer if I said let's go over some of the


tenants of blockchain okay peer-to-peer


immutability transparency financial sovereignty right


pseudo anonymity right and probably probably one of the most important ones


is equality as in everyone is under the same set of rules


in that it's all the same code and it's classically secure obviously because


there's no central database. If I were to summer if I were to


depend on this still that a little bit more crypto doesn't care where you went to


school doesn't care about the color of your skin it doesn't care how


affluent your parents are it doesn't care whether or not you drive a nice car how


good looking you are. Everyone has to pull the same set of rules and I think


that one of the things that brought the question of


financial equality and everyone playing out of the same set of rules


in the forefront of pop culture was the whole


red against that database I mean that was obviously that's just a small


picture of the macroscopic view of what the financial system looks like


but that was one of the first that was one of the first time to just became


you know blatant making it a blatant me obvious. There's lots of


others examples but I'd probably be raised in my head grow to anyone that


argues that everyone is under the same set of rules in today's


financial system and I'm not talking about investment or the amount of


capital you have a lot of people talking to all manipulation well the whale


jumped in and you know he saw the stop losses it's their


transparent he created fear you know he jumped in with a lot of capital


manipulated that I don't really even I don't really see that as


manipulation because they're still following the same set of rules I look at


more as leveraging the capital you have what I'm talking about is


systemic systemic a set of systemic differential in the rules that everyone


falls under. You might use let's see use a credit a


accreditation for example United States in order to be


accredited investor you have to have a million dollars in your bank


account or make I think it's at least $200,000 a year I think they just


revised that. The reason for that is so it is to restrict the


amount of restrict people from it's in order to protect


themselves from taking on investments that the government


use as essentially to risky so it's for protection but at the


same but you know but it's never talked you know it's never referred to


as a you know from the top down it's never talked about as a restriction


so and this is this is a perfect example of different set of rules


you know being sold as a protection for what is supposed to be a free


mark so so respect to the blockchain


and with central banking in contrast you have essentially what has evolved


to be in a lot of ways the app is so you have central governments that


better ruler chairman right is selected by the president


had not been elected official right. Bankrupt records especially those


transactions over 10k in the United States yet to fill out a form


you could have gotten more than $10,000 in the same


account that's not an anonymous transaction there's no financial


sovereign team as money deposited in your bank is essentially


and uncolateralized loan to the bank backed up by an FDIC insurance policy


so there's you know there's no financial sovereign team there


so the federal reserve is for example probably the most powerful example of


several centralized governance that I can think of


and that it is the world reserve currency since 1914.


13 I think yeah yeah I was created yeah created in


19-19-13 and then ladies and gentlemen.


I was highly happy to have a time machine


so now you know but at the end of the day we're living in that I'm saying


now of course this means it's up to each person and everyone in this audience


that's listening to this podcast right now or in the future to determine for


themselves if those policies are aligned with their own


perception of what is in their best interest or fairness and if I


had to guess as central banks start to roll out the


they'll be sold as the what essentially what what the governments will be


getting into is seldom as the solution to the volatility of


blockchain you see the signed crypto Twitter all the time okay


blockchain is volatile well okay


yes it is volatile and that's when the arguments against Bitcoin for


example but no one ever asks says it is it gonna be


volatile in five years in 10 years but if you also look at the volatility


I'm gonna take Bitcoin this is this is this is 2010 okay


this is 2000 is it reversed I can't tell


this is 2020 it's like this right but


it's a it's near parabolic if you do the same thing if you do the same type of


curve on the value you know a fiat you know just a


slow trend down obviously so yeah let's uh let's talk on


just a couple of these I know we've already dove in parts of this but


what are some of the positive side effects that could come about


with central bank digital currencies because I think some of these parts are


important as well just to to bring up because there are some


yeah yeah of course so in interest of being objective


CBDCs do have the ability to overcome delays when transferring money to


retails and so forth so blockchain has the ability to do this well


so some of these advantages that I'm talking to are going to be advantages


over fiat not necessarily watching so those have to be separated out


for example um transferring money faster can be done


super fat you know so it will save the lightning network for example right


so in the case of COVID-19 there was a lot of stimulus that was mailed out


in paper checks in the United States and a lot of it got lost


there were long delays CBDCs would speed up that process the the ledger


the database is kept at the central bank it's


it's an excel spreadsheet it's another button routine runs boom


stimulus right that's facts um another advantage is a reduced costs


due to for international payments due to interoperability issues between


different financial systems if you have less protocols in the network


less intermediaries you have less protocols to manage


and therefore less operational costs and if you can get


nations to just agree on a protocol or a system of communication


then that lowers the operating costs and you know that that can be a benefit


you know but again that feels to me a little bit more like to benefit


over fiat than it does over over blockchain because blockchain is international


as well to assault CBDCs in theory should help reduce the amount of


intermediaries um as they could and reduce costs by


talking by talking to each other but at the same time


that ledger database becomes centralized it's in one place


and that respect of the blockchain it's very very difficult to take over a bit


right from you I think most people would agree it's


it's nearly impossible to gain garner 37 to 50% you know of the hash rate


you have to attack multiple places in the world a lot of places in China


the United States switch or whatever in the central bank you know they're


I think with the with the with my engineering background I've always been a


little hesitant towards central repositories now that's not to say


there would would not be redundant systems built into a CBDC


with something like that of course there would there would be off-site


there would probably be there would crop there would be off-site


replication there would likely be cold storage there would be air gap storage


there would be systems you know backed up by you know backed up by


strong will and gunpowder certainly so but at same time you have one


governing body and to me that at the end of the day to me feels like


systemic


yeah can we touch a bit on I'm gonna populate this question here is


you know and this is obviously you know just your day I wanted to kind of


just keep your take on this how do you think central bank digital


currencies will affect the widespread use of cryptocurrencies and


you know they need for crypto altogether I see it more of a like you know


central bank digital currencies can be bit like ancillary and you know they


can you know they can still have their role I don't think it needs to


like eat a piece of the pie but but what does your take on


on this one based on the question that we have here sure so


yeah so I mean for the foreseeable future right now we have got a


P.N.A. system central CBDCs are essentially in beta stage


some people in alpha stage around most of the world I would say in beta stage


in China as they start to roll out you're gonna you will see


a coexistence between blockchain and CBDCs with CBDCs replacing the


underlying fiat system now there's going to be


in my mind this is a bit of an experiment there's going to be a degree of


competition between these between these because on one have you have


you know federal institutions that have a lot of


systems and people and employment and governmental projects things that


you know things that don't rose and you know infrastructure all of that


being tied to the fact that CBDCs must work in order for these existing


processes to continue to function on the other hand


you've got blockchain and that poses a risk to all


to all of that infrastructure all of those processes that exist so for a while


I think that you'll obviously see these two coexist I wouldn't expect this


CD transition so if you're happy with the


if you're happy with the status quo and maybe you're even a beneficiary


and maybe CBDCs are in your best interest however I think for the


majority of us in the long run and I'm years and years from now


I think that cryptocurrencies as I've explained don't


promote systemic inequality and I'll just hold Dan and Hal done crypto trading


crypto Twitter I would have been seceded is that everyone buys Bitcoin at the


price that is earned and I think that's one of the


reasons why it's fair and CBDCs have


our evolution of a legacy system that already has a very large amount of


powerful stakeholders yeah touching I'm gonna I'm gonna rewind back to the one


part that you mentioned earlier which is and this is could be a


conversation that we could have altogether on you know the US


regulation with accredited investors this ties back to when it comes to


whatever the standard the US sets for saying hey you have to have this


much income this much net worth to be an accredited investor


or the way they view it if you go back to the beginning of Bitcoin it's the


exact opposite of that in the sense that if you were early


if you were in the early Bitcoin top forums if you were just an early


adopter you kind of got on early anyone with an interconnect


internet connection and ability could have got on board


in this ties to the part that you mentioned that Bitcoin that crypto is


agnostic to who you are they don't care about anything it's an


equal playing field so I just thought I'd bring that one part up


but what I want to do is I want to let's touch on one or two more questions


related to CBDCs and then I want to dive into


some of the parts with the Federal Reserve


you know the US being the world reserve currency now


let's dive into the next one which is and I think this is a good question


does the decline of physical cash in societies


and in turn anonymous payments call for the need for


central bank digital currencies so that that's debatable it depends on


your your politics of finance first came watching right


Bitcoin and then came covid after that and at least two or


may not seem tied together upfront but there is a


prevailing narrative right now that CBDCs reduced the need for physical


cash you know because physical cash carries all sorts of strange things


on it possibly even covid but you know it's sort of door handles,


phones or refrigerator doors and microwaves right


so I'm not sure that's the best narrative but that's the one that we hear


that's the one we see that's what we see in the news


and that's what we see online. Moving forward this is just my opinion I


think that this will be used as part of the justification on the front end


but on the back end I think there's a much more


different macroscopic reasoning taking place


if that makes sense and that ties into the last question that I want to cover here


and this is one that obviously everyone whenever it gets


implemented for various countries whether it's in you know next year


something like China or if it's a year's down the road for other countries


we'll CBDCs protect the privacy of users because as as you mentioned of


you know the direct they have a direct portal into you it's like


that some people are just gonna say hey well that's that's the exact opposite


of what what I look for in crypto so what's your take on this last one before we kind of


dive into the role of the Federal Reserve and go down that lane for a little bit


so will CBDC will CBDCs protect users I guess that depends on


whether or not you work for where you work for that


country's federal bank or if you're a retail


so protect protect from who this depends on how single banks create


it does depend on how central banks create their digital


current you know their digital currencies so I said earlier that one of the


advantages over fiat and which is similar to blockchain as if there


can be protocol negotiation that they speak the same language


then that will reduce operating costs right yeah but at the same time what's


happening inside I'm just gonna I'm an equated to a


SQL database most of us know what this is or an Excel spreadsheet


even on what's happening underneath the covers that can be any type of


system that any country wants I don't think that I don't think


it I don't think that the the Federal Reserve is going to make the CBDC


code open source I probably wager that's not going to happen


it's likely that the CBDC would allow the bank to see all transactions


correlated with volume location type of transaction and this


and this is fundamental and it's unprecedented because


there's no reason there's no reason a there's no reason a CBDC wouldn't be able to


do this in real time and amount now if infirmate you know in in the


information age that we live in for you know where


information is so important imagine how important flow of money would be


where things are going how much you spend it gives a little bit of a lot of


you know it would give a lot of transparency to taxes


and things like that it could it could have some


very positive effects on the tax vote system at least


I don't know how it is in other countries but here in the United States it's


it could be a little difficult to navigate um you know but as opposed to blockchain


governments is still centralized you know and blockchain's not you might


call you might call one of you might call one the states money and on the


other hand you know you have crypto which is people's money


a native side effect would that would be it you know seizures and


confiscations could be born with you know a click of a button which


which you think about it brings philosophical questions as to what


ownership actually means should I be able to have


owner financial sovereignty if something is mine should it just be mine


or does it is it actually an uncalateralized loan to someone else


that's a flip that's a that's a that gets in the fill of


software and I'm not going to take us down that page of today


okay awesome strike what what we're going to do now is just to give you a


frame of reference upcoming in a couple questions we're going to dive into a


QRL AMA so kind of having the back of your mind if you're viewing this now


if you have a question related to what's upcoming with Enclave a general


QRL project question based on progress if you have a question


kind of have one in the back of your head in in a few minutes


throw your question in the chat will be popping a couple up


if we see some that are suitable to answer and one other fun thing before we dive


into a couple questions or parts on the Federal Reserve


a world reserve currency I'm going to be throwing up right now


hexede so this is a QRL address that we created earlier today


if you want to screenshot the screen right here I'm the smile right now


strikes going to smile if you want to screenshot this and you go the first


person that goes to this hexede is going to get a little bit of free


quanta so if you want to do just take a screenshot of it now


and check it out later feel free there'll be a little quanta there so


I'll be taking it off the screen in three seconds so make sure that you


screenshot it really quickly and what we're going to be doing now is diving


into the next parts and my next question for strike


which is what is the role of the Federal Reserve so if I were to if someone


asked me okay Ryan what is the role of this Federal Reserve


the best way or what central banks the best way I like to explain it


really simply is picture the Federal Reserve central banks as me standing


here any person in one hand you have a lever and on that lever


you can move up and down interest rates in the other hand


you have money printing machine you have the ability to create money out of


thin air so just kind of that's kind of the visual I like to give people but


strike in your words what is the role of the Federal Reserve and this will lead


to the next question which will be the US being the current


world reserve currency and we'll talk about this for a few


but what is the role the Federal Reserve in in your words


sure so a lot of people do say you know they call it a money printer this


system is a little bit more complicated obviously yeah that's very


simple yeah we've had quantitative easing for many many you know


years now where the Federal Reserve purchases


mortgage back securities and federal treasuries they make those


purchases and essentially and they sell that to you know


other countries I heard I heard someone ask once what


but what really does the Fed do and I like the answer to which the reply was


the Fed makes very very very careful statements


and the reason for that is the Fed narrative is very very powerful in today's


in today's financial system particularly to assets right


so but according to the Federal Reserve their website


let me pull out a second


okay okay so Federal Reserve was created in 1913 by Congress to


provide this is on their website to provide the nation with a safer or


flexible and more stable monitoring financial system


the Federal Reserve was created on 23rd


December 23rd in 1913 in 1913 and 1914


when President Woodrow signed into reserve


into law that Federal Reserve Act disregard them most of Congress was on


the occasions they're in that application but with their families


great Christmas but that's we'll skip over that part


but today the Federal Reserve's response was according to them


all in the four general areas they conduct the nation's monetary policy


they supervise regulating banks that maintain the stability


on the financial system and they provide certain financial services to the


US government US finance institutions this is what they say


on the website essentially what that means is it makes decisions when the


provider provide and reduce liquidity raise interest rates lower interest


rates like whatever like you said which affects a lot of things it affects the


MCM2 money supply it affects money velocity how fast money is changing


hands right and this is done so in order to


according to the website you know uh counter risks that might arise in


financial markets now this raises some interesting other questions for


example should price discovery be based on for assets and commodities


be based on words from statements should be based on


stimulant injections of stimulus or should it be decided by the free market


should asset prices be propped up by creating you know trillions of


dollars in order to back securities and federal


treasuries you know they have trillions of dollars and somebody


gets injected in as a retail consumer I no longer have the ability to see


where that I can't necessarily even see that where that stimulus is going


first of all but you know I have the internet should let us


have to receive that you know as as you know hardworking Joe at you know


the fact I'm glad at the factory I'm glad it's heck you get that


$1,200 stimulus check so I'm not going to ask any questions you know


I'm not going to look at I'm not going to look at the gift


towards so the problem is that this contaminates the free market by


destroying price discovery which really is


meaningless how do I really know the value of something


you know and this creates a price discovery dilemma


and I'll close on all of this is my opinion there


people people have been debating these topics for many many years decades


and and you'll find professionally economists in Austrian


Austrian economics and Kenzie and economics and you'll find you know


professionals at differential ends of the same topic


with different opinions you know both being well-educated both intelligent


people but at the end of the day do you want to say that these are my


just my opinions along yeah let's lead into that the last one which is


talking about the World Reserve currency obviously with the US


having that being a strong force in the world


in that regard since after World War II what is just to define I know a lot of


people watching this obviously know what the world reserve currency is


they know what a lot of the the benefits of that are but can you for the


you know two or three of you watching or watching it later that


don't know what the world reserve currency is or at least maybe the


terminology of it they don't understand the the impact it has can you just


dive into that for just a minute or two and then we can kind of close


out and move into the AMA that we're going to have and then we'll go from


there


yeah so World Reserve currency it's a currency that's held by


significant quantities by other nations other countries


the intent is to be able to use this currency for international


transactions so all local local cur all local fiat currencies for each


country are able to be pegged as something that they all understand


so the United States has been has been essentially the World Reserve


currency since we left the Brett Whits you know went out


in old standard went on the Brett Whits system 1940s 1944 but it's also


worth noting that there were world reserve currencies before this and


none of them you know none of them last forever so John


Cans the father of Cansian economics you know seemed to


understand this point I'm alluding to that these types of systems


according to history you have a shelf life as he's well known for being quoted


as saying in the long run world madness is an abbreviated quote of a


longer a longer thought process but I always interpreted that as a


rebuttal against arguments that are made I always interpreted those as


real model to arguments against entirely free markets


you know and and therefore austrian so awesome


yeah and I think it's a one a great piece to read I think if you want to


understand kind of the ups and downs of various empires over the centuries


I think it's Ray Dolly who's the changing world of orders has some really


great references in it it talks about you know the rise and fall of


different empires it looks at where the US and China are currently at but


that's just one resource I always you know have found


helpful recently but the question where I kind of want to lead into now I


know earlier we are talking about privacy and kind of the


comparing in contrast with CBDCs I want to move into a question now


around our project with the QRL and that question is how does QRL


affect or how does it protect one's digital assets because I think that


tying back to our project I think this is a good one to dive into


and for those viewing if you after this question we're going to be diving into the


AMA so right now if you have a question or two throw it into our chat right now


and then we'll be popping those up but a strike let's dive into QRL for a


little bit how does QRL protect one's digital assets if I have


some crypto in you know various places in my portfolio and I'm thinking about


protecting it moving forward how does that where's the QRL tie into all that


so our project has a unique niche almost within a niche


we're a blockchain we have our own blockchain we're now in an eRC20 we like


Bitcoin we like Ethereum but we have our own chain that's been running and


made that for almost three years now but the difference is our


blockchain our blockchain is a purpose built to be


classically secure in other words against factorization


and quantum secure so that because of our signature scheme is based on


NISTs recommended hash-based signature schemes for state


boundaries as a state below the rhythm because we're hash-based


hashes themselves like shot 256 and other hash-based signatures


other hash-based protocols those are considered those are quantum


those are quantum resilient or quantum secure there is no


effective way even with a quantum computer to be able to


get a pre-image from an hatch so point being we're classically secure


we're quantum secure cleaning we're current tech secure and future tech secure


so one of the things we've tried to do is first of all first of all we


connected dots on blockchain years ago Dr. Peter


Waterloo connected dots on blockchain I was in


I've been a blockchain for years as well then we also connected the dots to


quantum and when connecting the dots to quantum one of the advantages


is that we Peter was able to in some way see where the


industry we're quantum secure signatures for state below hash-based signature


schemes were added in this case it's XMSS and out of 50 or 60


submissions to NISTs XMS became one of just two


NIST recommended pulse quantum secure digital signature


schemes LMSB and the other one XMSS being the one that is the


underlying scaffolding for our addressing scheme so


that's your question current tech secure future tech secure


some thanks for answering that I am actually just popping up


if you have questions for any questions regarding our project just throw


them in the chat we'll see if we have any in there I know we did this


is their first live video that we're doing for this so


some of them we might not have as many as


as we would we'll see here I'm just going into the chat real quick strike


we're gonna see one on there I see one


um yep JR s a lot of people will be wondering if there's any further


exchanges for LMSD so exchange information due to


due to any non disclosures it's past remain private within


within the project but I can tell you exchange listing and


increasing the number of exchanges is a high priority for the project


some things are within our control some things are outside of our control


but never meets a heart definitely a high priority


let's see what other questions we have yeah we got one here about


staking is this one that is when it comes to staking


what will the process be we dive into anything on this one strike


what is the what when a staking coming in what will the process be can I do


it from a raspberry pie more with the


deliberate question but I'm gonna take a stab at it


so staking's coming in the next iteration of


of qr al azmium from a proof of work consensus mechanism


to proof of stake since proof of stake does not


require the same encryption and capabilities in the processor


that random x-dows are a correct group of work mechanism does


you very well might be able to run it on a raspberry pie I don't think it's


been tested yet but it's it's possible that's something I want


that's when I want it that's something I would want to test


for myself and staking is coming in as far as when it's coming in


the next iteration the next the next fork


uh so it looks like those were the the few ones we had right there


and if anyone else has any last questions feel free


to throw them in there strike and I will stay on for about


you know another minute or so just to see if anybody has any in here


and that one close we'll close out let's see uh


you're welcome Stephen um what recent strike there's there's one in here


as far as a lot of people will be wondering


about the acceptance of cbdc's by the people


that's hard to say I mean um I think I think that


it will definitely be faster than blockchain because blockchain started out


as a slogan be trade train right but with cbdc's this is going to be


coming as a new system directly from the top


and it still remains to be seen whether in that


you're even given a choice in some countries I can see that this would become


mandatory monetary system of payment


now does that mean that um cash is going to disappear


I think that slowly cash will start to disappear


in various countries around the world um you know


it's it's it's an anti it is an antiquated


it it you look at the grand scheme of things I believe it is an antiquated way


of um of doing transactions and storing value at the end of the day


US dollars just caught me living


um they stopped printing you know me eventually just by


deterioration it's up we'll start to go away


um you know ever since late ever since 1965 you know


even coins in the US are native 90% silver anymore so


um I don't have any problem discarding nickel not


being nickel but I think it is actually nickel c65


yeah what else do we have?


straight strike uh look at the last one we got we got a one at the bottom


talking about uh if you could elaborate or not on pros and cons of


totally transparent blockchain versus uh anonymous


like XMR there's another one uh we'll EQ it'll be


mid-ed when you swap regular QL for it or will be exchange from type of


Coinbase wallet do you want to dive into any of these ones or are you um


yeah which one you want to we're trying to go want to go with?


yeah so um I think the first question was privacy coins versus non privacy coins


this is a this is a conversation we're actually having within the team on


whether or not um the project is going to be is going to take a turn


in the direction of being privacy based um the advantage


of privacy is that obviously transactions become


and uh uh are no longer transparent and you are you are essentially completely financially


sovereign right you have your privacy and uh I think that


privacy personally I think that privacy is a is a fundamentally


fundamental human right almost just as much as the pursuit of happiness is


um I think privacy should be the same but I also believe and I also believe in


the rule of law in the root and in order um but at the end of the day I also


believe in that code you know uh uh uh code is law so


these these things will come the fruition in the in the in the coming years


uh one of the one of the one of the nags on privacy coins is


it's they're much more likely to be legislated to attempt to be


legislated out of existence based on their nature of being a privacy based


coin um especially if sovereign coverants are not able to adapt their


taxation system properly with the CBDC that they


deploy in my opinion. I think we should do uh upcoming we are speaking of


our code of law we should probably do a whole uh upcoming episode on


on on that topic in excel if I think uh maybe when you just said that I