Jack O'Holleran: SKALE Labs – An Ethereum Scaling Solution Using App Specific Blockchains #352
11 Aug 2020 · 1:09:41
Jack O'Holleran, CEO and co-founder of SKALE Labs, joins Epicenter host Sebastien Couture to explain SKALE's approach to Ethereum scaling through application-specific blockchains. The conversation covers how SKALE nodes and the SKALE Manager work, comparisons to Cosmos, Polkadot, and Eth2 sharding, and how developers deploy dapps that get thousands of TPS with zero gas fees.
Speakers
Topics
Transcript
[Music] hi i'm sebastian joe and you're listening to epicenter the podcast where we interview crypto founders builders and thought leaders on this show we dive deep learning how things work at a technical level and we fly high to understand visionary concepts and long-term trends if you like epicenter the best way to support us is to leave a review on apple podcast if you're on a mac or ios device the easiest way to do that is to go to epicenter dot rocks slash apple today our guest is jack o'halleran he's the ceo and co-founder of scale labs
they're building the scale network which is a scaling network for ethereum and we're going to say scale a lot of times in this episode so scale network allows developers to build application-specific blockchains and these are interoperable and compatible with the ethereum main chain and the entire ethereum ecosystem we've had several scaling solutions on the pathcast in recent months but the focus of scale network is slightly different their aim is to scale smart contracts not necessarily transaction throughput on the ethereum main chain so think of it as a highly performant ethereum as a service side chain where developers can deploy their own app specific blockchains and within the scale network their dapps will benefit from things like
thousands of transactions per second with zero gas fees and add-ons like file storage and in the future it's possible that scale will also support other add-ons for things like machine learning and so on and with that here's our conversation with jack o'halleran we're here with jack o'halleran he's the ceo and co-founder of scale labs jack thanks for joining us today pleasure to be here thanks for having me so before we get into scale and how it works and what it's used for let's first get a little bit of your background so how did you becoming how did you become interested in crypto i've been working in silicon valley at tech startups for about 15 years so my first company was a company called good
technology it was a mobile mobile device management mobile application enablement and essentially mobile cryptography mobile security company so almost every fortune 500 or fortune 1000 company used it uh and and learned about security through that uh that process and uh but then you had been working in in tech uh thereafter worked in machine learning and analytics actually launched a digital currency platform in 2008 where you could bid on resources internally with this fake currency and it used game theory and and supply demand curves to really help balance resource allocation so nasa for example could use it for wind tunnel or supercomputer allocation
or getting foreign nationals on base or for legal resources for big you know global 1000 companies that have have shortages there but got interested in currencies and incentive alignment through that process and you know then ended up after that building a company that was almost everybody who's received a pharmaceutical prescription in the u.s japan china europe has in some way been touched by the analytic system i built called octana with with some other amazing people and what it does is it pulls in data from hundreds and hundreds of sources and it helps get healthcare information to to physicians to help get prescriptions out there so had a lot of experience building deep
tech and 2011 you know had been living in palo alto just before then i was living in the city and i think the bitcoin white paper was popping around everywhere if you knew people who were tech savvy and you know into into new cutting-edge stuff and it wasn't until 2013 that i started really getting more engaged and like a lot of people it was it was purely with bitcoin uh and then when i uh you know i went kind of pretty deep there but always from the sidelines as i had a full-time full-time job at a traditional tech company but then it was 2016 2017 really got into ethereum and then i decided in 2017 i was starting another company and i was looking again at doing something in machine learning and sas or software as a service and uh and you know then just realized i was
spending i was i was working out of the faster office working on a sas app and all i would spend 90 of my time reading and learning about crypto i said what am i doing building something and and i can get in later to all the reasons why i think it's a better idea but that was really my onset and my start i'm really interested about this like internal currencies stuff like how did that go like what were people what was some example what were people at nasa actually using this or like who were some of the people using it what did like what was their experience of like using market econ like you know traditionally there's a whole idea of like you know you have the market and then you have the firm but it's like you
know you're trying to add like market dynamics into the firm so how did that go exactly you know what it was it started off really well like a lot of startups do yeah nasa was was to be the first to use it and you know they had issues around you know back then super compute power was not like i couldn't just connect into the cloud it was they had huge super compute resources on base that people who fought for them they had a wind tunnel people would fight for they had you know just if you wanted to get somebody my co-founder was from australia and we couldn't even get him on the base half the time and we were basically we were incubated there you know working out of out of an office and so they you know had had a really in the aims office a very cutting-edge group
that got it other places like we were talking to like intuit and thompson reuters had legal issues and legal resourcing issues and they also got it sales teams understood it about like using it to better uh mark up sales territory alignment but people thought we were crazy it's 2008 they're like you're bringing a digital currency in here and and you know and you expect me to people to pay for things effectively what if they just spend all the money am i not going to give them more money to get more resources i was like yeah yeah like or you could set it up you know so every month and if they burn it they're gonna have to wait the next month they'll get smarter but um you know it was it started off really well then in 2008 the you know the financial crisis hit
and we went from having a pipeline of like 10 customers ready to buy this to people saying you guys are nuts you better do something we're ready to buy immediately and so we pivoted into uh you know we there was a lot of machine learning and analytics going in to help guide the the economic engine and that's how we ended up building octana which is you know the pharmaceutical technology product used by almost every single pharmaceutical company in the world yeah because i feel like i've read about this the the internal currency stuff before and i i never realized it was you i think maybe i i think maybe mark miller might have been the one who was telling me about it because you know he's really interested in this whole idea of like using markets for internal coordination
i think so i think he may have sent me like some article from a couple years ago about about this so that's cool too you know see it it's all wrapped around yeah you can google i think in google scholar you could find a patent application for incentiline was the company called incentive alignment and people kept thinking we were invisalign so that that didn't work well but but i i hey someone it's a it's a phenomenal idea that somebody will execute on and the thing is people when you when money's at play and you have to signal appropriately you can't you know what happens is everyone says they need twice as much as they need and they need it twice as fast and then they think they'll get what they want
and if you have a currency at play um it smooths things out far more effectively so let's get into um scale the scale has sort of a unique approach to scaling ethereum if we compare it to like some of the we've had a lot of scaling solutions on the podcast in the last couple of weeks or months it seems a lot of them are working sort of at the layer two um working on things like roll ups et cetera and scale network has a vastly different approach to scaling ethereum and so i wonder before we get into how it works can you like describe the scaling problem as you see it like how do you explain to someone like they're five you know what is the issue with
you know scaling in ethereum yeah so i think of this as an app-specific blockchain problem and if every application can have their own blockchain and their success is not enhanced or encumbered by someone else's success or failure you can do a lot more with that and even if you can use that blockchain to do things like storage or incorporate other functionalities that are configurable to you you just we get such better scale from a societal perspective a in-depth industry perspective and imagine if like it costs you more to use your gmail because so many people use zoom meeting a certain day right or your gmail was slower and having app-specific back-ends
i think is the way of the future where we get to real scaling and so that's what scale tries to do and yeah hey it has nice throughput and other things but it's not a tps battle it's really about almost a division of compute resourcing and letting people pay pay for what they want and configure and use it as they want this quote always kind of stuck with me when when blox rat was on the podcast the way that he described it uh was that scaling is essentially in in blockchains scaling comes down to becoming to being a networking problem uh if you break things down essentially like you're trying to get transactions to other nodes as fast as possible in
order for those to be able to validate them and at some point they're like bottlenecks with that and you know describing the scaling problem as an application problem you know it's it's sort of like a layer abstract a layer of abstraction on top but it's a way that at least those those of us who are like sort of in the ecosystem and using applications um it's a more tangible way i think to like looking at the scaling problem yeah and you know one one other i guess example i'd pull up here is like so that goes back to this networking uh resourcing issue and getting getting data to nodes is let's say we had 100 nodes in the network and there are 10 10 applications that want to use this and there's no way all 10 of them can use them at peak times in any meaningful
manner that is cost effective so we said hey well let's give each each application 10 nodes to work with and then we've fixed we fixed the issue but we've we've created another issue in that the collusion element is far easier right if you can get 10 nodes to collude and and then we lose a lot of the power of our blockchain right and so the way we look to solve that or the scale network looks to solve that is it takes this big broad group of nodes and it's able to randomly assign them to the applications and rotate them okay so that way the networking problem's still only in a subset if there were 100 nodes and each one had 10 users need to network and ten nodes need to come to agreement or
two-thirds of ten nodes and we've also cut down the weight and bloat and someone's using the blockchain a lot and filling it up well they're gonna just only pay for within the ten nodes they use and they might have to keep buying more resourcing to go behind those 10 nodes and my 10 nodes i i only use a little bit so i'm just getting a small fraction and i'm just going to pay a little bit and i'm not impacted by the other application at all but i'm at risk if my nodes are fixed if they can understand they're all working together if there's not an incentive component to stop them from colluding and if there's not a good way to randomly and securely assign the resources or the notes how does this fit in to say
you know just so for context for our listeners to understand you know how does this fit into say the the cosmos vision uh where effectively cosmos you know breaks things down into application-specific blockchains and allows for every network to have their own validator set and you know scale at the application layer what does scale network sort of provide in addition to this compartmentalization of applications so i first off i think the cosmos teams has a lot of things right in the design i think having apps app-specific blockchains is the right approach and i think we're seeing other networks and designs start to try to
mimic that and and so so the way we think about it though and i won't compare it to cosmos i'll just say specific to ethereum so if you're on ethereum if we go back to this like and these numbers are not accurate i'm just using them as representation 100 nodes 10 applications 10 nodes per app if that were the case there's an attack vector if you think about like who coordinates the nodes to go to which which application and if there's a person a human in the loop who does that well i can just assign i know this sunny's dap has a billion dollars on it i'm going to try to get all my nodes on sunny's that but i'm just going to take that money and liquidate it so that's an attack vector so what scale does is the ethereum main net is where
i'd say a huge chunk of the scale network lives is scale lives across ethereum and the scale nodes so the ethereum main mainnet what it does is it speaks to every node it understands which nodes are available which nodes are open it understands who wants to be placed where and then it uses smart contracts to do that wrote that allocation and it so that's how we assign nodes to operate to different dapps it's the main net and so and in a way too it's a bit there's business synergy because on one hand a lot of layer twos take money away from the main net because you're not paying for transaction fees only when you come in and out but what scale does is every time you set the nodes rotate the main net is paid
and so there's it's almost like a modern day rev share where okay we need to do a node rotation pay the main net and oh someone wants to stake on scale guess what you have to pay a main net fee because scale is an erc20 token and guess where that stake lives the stake lives on the main net so the main net is used for i'd say the core network administration and network orchestration functions the ethereum main net and then the network itself and the nodes living in the scale network run by people running scale validators that's where the actual software that runs a app-specific blockchain lips could you like yeah to explain that a bit like what exactly
is the scale nodes and what is the relationship with that to the ethereum network so are they sort of doing their staking on the ethereum network and then they're running a new chain what what what is sort of can you give like an overarching architecture of what the scale network looks like yeah yeah so i think a really good place to start is looking at each node so the node has every node is is all dockerized it's all containerized so what we're looking at is there's a component that's called the node core that all it does is speak to the main and support core network functions and it does administration auditing of other nodes and orchestration of nodes
and that that core of each node speaks back to the mainnet and then outside of that there are 128 sub-containers and each one of those could be living on a different blockchain and so as if you're running a scale node you could have 128 daps using your using your node but these containers can be just like containers and modern computing like can be the dividing lines can be broken down and you can have bigger compute resources so let's say sunny's dap comes through the network and has a lot of throughput and needs a lot of file storage and needs a lot of smart contract execution he might get a medium node instead of getting 128 128 of 16 nodes he's going to get
132nd or he says hey i need the whole thing and he just buys all the compute outside and around the node core and instead of getting 1 128 he's buying more of the network and then he gets assigned with other then 16 nodes all do that and they come together sunny pays for them on an annual basis and that's that's how the model works so then it's gas list so the developer is uh is managing the fee then uh and then so we have this node architecture this each node then speaks to each other and speaks back to the main net um i want to set up a validator node i stake and my state goes to the ethereum main net and it knows that i'm running this node then i have the ability to run this
node but the main that's where the stake runs then the network runs the nodes look at each other and watch each other through the orchestration mechanism or the administration and auditing mechanism and then they speak back to the main net and the mainnet then does calculations and says jax node gets paid this sunny's node gets paid this and we we pay people the net the main net pays the bounty and also pulls in fees for the the chains and inflation and so the main net really is the almost like the uh financial and operations arm of the network but there's no humans behind it it's smart contracts am i understanding this correctly that the scale nodes are
are ethereum nodes you're trying to create a network where existing ethereum nodes also carry the scale infrastructure in addition to their existing ethereum node or or are they like separate entities like separate yeah that's so that's a really great clarifying question so the scale nodes in this are separate they run scale they run scale on them but each what they run is a really fast c plus plus ethereum and so you're getting evm on each of the nodes and you're getting all the functionality of ethereum so that there's complete interoperability we talk about losing these like building blocks of composability and so the goal is you don't lose any of that when you're in each scale
scale node but these nodes can't function without the main net they can't they don't know where to work they don't know how to work they can't get paid to work but when they when you as adapt i come access my blockchain my i run just on the scale network now i pay the main net to give me access to the scale network because i'm paying the scale manager the smart contracts system on ethereum so what we've done is we thought to ourselves when we were when we were doing a stand had our cto had five different dap ideas he was he was like kind of working on it like how do i do this how do i do this let me do this and i was working on a few different dap ideas also because i mean it just was so clear to me all of the business all the areas you
could get a business up and running and and stan then said i said stan why do why do you think you can do five different daps he's like oh look at the architecture i've designed i'm gonna do this let me do this and both of us come from like enterprise software middleware and he comes has a whole background of networking and cryptography and really infrastructure type products we're like well let's just this is perfect to be able to license to other people through this model that works with the ethereum main net instead of us trying to build five different apps let's help other adapt developers with the the infrastructure we've built and designed for ourselves so let me maybe try to rephrase how i how i see this so the existing ethereum network has
you know x number of nodes scale nodes are effectively ethereum nodes that have additional software that sort of like have like this layer on top of the ethereum node that allows them to execute computations for smart contracts and as adap you relegate the compute power for your dap to a subset of scale nodes and leverage scale the scale networks ability to compute this and have a high high availability high throughput and then so the proofs get sent back down to the ethereum network is that
a good way to look at it yeah no so uh you know what let me i'll i'll tweak it a little more i think it'll make it more clear there's there's two very separate networks one network is the ethereum network comprised of ethereum nodes there's an entirely separate network called the scale network comprised of scale notes okay now the scale network can only function with the ethereum network because all of the where nodes work and who they work for and payment and security is baked back into the other network the ethereum network now in the scale network as adapt developer i can buy or rent sub-components of the scale network that get randomly assigned to me and rotated and switched
and what i get i have a different endpoint you know just like you know you've got you know you've got a main net or kovan or robsten or whatever i pick my scale note my scale chain we call them scale chains has its own endpoint it's on rpc port i p address and that's my blockchain and it runs really ethereum software that's been tweaked and souped up in different ways so that it's fast and it has a different consensus in it and but that scale chain then is mine for my dap but i connect it to ethereum because when my users come and then it just operates really as a side chain but it's not a side chain because side chains have you know i think a lot of security
issues because of the way that they're structured and and assigned and uh there's not this big pool of random selection and rotation it's really like a shard a side shard just kidding um no but i mean i think i was going to ask like what you're describing actually does sound very similar to like the eth 2.0 sharding right where like essentially each 2.0 sharding seems to be almost exactly what you described but then like using this like eth2 beacon chain as what you guys are using the current ethereum chain for so what would be some of like the main differences between the sharding work
that's being done by like the 2.0 development team versus what you guys have built here yeah the main difference is that it's it's app specific so my application gets its own blockchain and then it's faster i mean you can do 2000 transactions per second you can do file storage within the chain you could incorporate machine learning models to like look at oracle inputs to determine whether or not smart contracts get approved there's a lot of things you can do in it you can buy you know just a little bit you can buy a lot and then on the e2 shard you're sharing that chard right with a lot of other applications so we also designed this to
interact with the e2 shards and so we're excited for when that happens and we're going to have a lot of work i'm guessing to bring the scale contracts to smart contracts from scale over to e2 when everything transitions but uh but yeah you know what a lot of people are quick to say oh this is a sidechain side chains aren't secure but we think of it more maybe sideshard is a good way to describe it it's it's a sharding mechanism and and if you look at the validators who run scale who've signed up that i mean 95 of them will probably overlap with people who run e2 right it's and like one of our other bets back in 2017 we started working on this was we thought the validator market
community was going to flourish and grow and there'd be a lot a lot of incredibly successful business operations where even though it's an open network with an anonymity there it's it's uh reputation and business uh are a component of getting delegation right and i think that's really come together and it's good for e2 and i think it can support any other proof-of-stake network like scale and other other networks so so what about um then comparing it to polka dot then in that case where you know like yeah like you said eth2 it's you know you have many things running on the same shard but in polka dots like they also have sort of this more application specific notion of shouting
would it be sort of similar to that but then like uh using ethereum as the relay chain or what would be some of the differences there and you and you know what i i won't get into all the nuances but i think there's definitely like pricing differences and the smallest gap in the world with one person in a garage can afford to run a small scale chain so could a huge enterprise could buy a large scale chain and and so i think there's a lot of more flexibility and fungibility and sizing options and then there'll also be a privacy option so you can make all transactions private in the scale chain but the big difference is like scale the revenue model and the security model is built also into the ethereum main net and it's like two lines of code connect to
scale and when you pay the scale network you're gonna be you know at least 20 to 30 percent of your payments in aggregate are going to go back to the ethereum main net because you need to pay for your note assignment you know there's rotation that happens in the network um people that there's there's just so many functions it's this weird kind of decentralized rev share you know like salesforce.com you use force.com as an app you pay 15 of your revenue back to salesforce because you're using force.com and the scale network itself has this rev share built in with ethereum because ethereum does the work of securing the stake of issuing the payments of managing orchestration of the scale network it is
uh the scale network can't function without the ethereum network does that make sense yeah i mean it seems that you need some chain to exist that that like uh does the coordination of uh validators and whatnot and like shuffling etc i guess the question is why does that have to be the ethereum chain when like you know it seems ethereum chain is actually relatively expensive place to do this where comparing it to polka dot for example polkadot says like hey let's just make or even eat 2.0 they're like oh let's just make this like dummy chain called the beacon chain or in polkadot case it's the relay chain where it's like
you know why not use an application specific blockchain to do all the shuffling and coordination as well yeah you know and i'll hey it is expensive so if you set up a scale chain you're gonna pay like maybe in today's gas fees like 400-ish dollars to set your chain up because you have to pay those gas fees so a user staking might have to pay 10 worth of gas and these numbers are always subject to change because there's optimization happening on the scale side and you know gas fees as we know uh change so uh so why why a theory the reason why is the most critical security elements of node assignment and staking of the
network and are you know it's like hey it costs a lot of money but ethereum's the best place to go we think uh for those services for the scale network the other piece is the networks designed to support ethereum developers you know so it's also like part being part of this ecosystem so i think you know you get confidence from the developer that oh you're using this chain and i am all about ethereum i build on ethereum so i think we probably have way less conversion and less of a pipeline and less dapps excited to use it if it were somewhere else because we we target the ethereum ecosystem we support the ethereum ecosystem from a developer perspective one last piece is it was so much easier well scale was not
easy to build okay it was really difficult but we there are a lot of things we just didn't have to worry about it's just interoperable with ethereum there's so many things that just out of this out of the box we were able to use to get the network up and running and people that use scale can use other pieces too out of the box because it's interoperable so that that even helped us from our own developer perspective of being able to leverage everything in in the ecosystem so you mentioned the scale manager briefly could you describe in detail what is the purpose of the scale manager and how it interacts with all the nodes and the validators so the scale manager is a massive set of smart contracts i think
when we deployed mainnet it was uh i think it was like 16 000 usd of gas fees to deploy it and it was pretty heavy so it's a really really large set of smart contracts that do a lot of different things one is the scale tokens and erc 777 token that help that you know is the economic driver within the network for behavior and incentives and rewards the other piece here is you know so you stake if you're staking in the network that goes into skill manager if you're a developer and you want to scale chain ins within scale managers where we're going to is where the network looks at resourcing and and it runs a uh kind of bls signature
randow thing to do uh do entropy so all the nodes together work together with the scale manager the scale nodes work with the scale manager to come up with random numbers and uh and then there's also a component that does uh that gives bounties so it takes in the fees so if i pay for a scale chain i pay to the skill manager pay in scale tokens that goes in and i if i buy a 12-month contract one-twelfth of that every month goes into this bounty pool and then uh this bounty pool then also has there's an inflationary piece so every month a certain amount of skills inflated and the inflation for that month and all the fees combine and then every node watches every other node and produces a
score for other nodes and there's all this kind of washing out and and cleansing and things that happen to ensure that we're getting the right scores and it just finds the middle ground and and it's very binary it's like did you meet the objectives or not and up and it's like basically uptime latency and and you know performance functionality elements and every node that met that then gets uh cut in that stake ever that bounty pool every month and every month those awards are sent out to the network through the skill manager and then it goes to the to each validator the validator then on chain has a mechanism to say here's my return i'm taking 0 or 1 or 10 or whatever and it goes to their wallet and the other piece
of the return goes to the delegator's wallet and all these you know all of these wallets and all of the uh the scale token right is on the ethereum main net so it's also included in the broader skill manager and so that's why it's called skill manager it just manages the network and the the code's all live on the mainnet if anybody wants to go like check out the github check out the contract addresses so what would be the process of let's say i wanted to start running a scaled node so are there how do i find out sort of what our minimum system resources needed and kilik walked me through what are the steps i would do to from today i wake up decide to run a scale
node to be validating on a couple of scale chains yeah so so will you just you could go to scale.chat to the discord there's a community there and they could guide you you can also just go to the developer documentation there's a i think a pretty robust documentation uh on scale.network scale with a k and you could find information there and then all the you can go to the github all the codes open is open and and public the first version the very first launch is is limited just to nodes that ran in the test net and the and there's a there's a compliance component to
which we don't control that you know there's there's a proof of stake launch that's happening and meaning like there'll be an auction and people can buy a token and then they have to stake it then the token's locked for 90 days there's no trading and and we have there has to be a fixed number of validators because you have to meet a minimum threshold and these people are buying and staking and if they buy on the auction they stick to a node that doesn't have enough in it then frankly they don't get any return for 90 days and that's not the experience we want so after that 90th day anybody can show up and you know do the cli and get your note up and running you have to have to have enough delegation to meet the minimum
minimum stake requirement per node and then you join the network but what about like from system resources requirements like how do i know like is there a minimum that if i want to run a scale node i have to have at least this much compute this much storage like how does that work yeah exactly so uh it that is all listed too in the documentation and it's you know it's like uh you can run if you're running this in the cloud it's like a couple hundred bucks a month to run uh run a scale node so it's not a small machine the storage piece is a really interesting question we uh you know the core team is still at a place where
you know there's it's open source community involvement here but pretty soon the community has to all or you know if things are going to change it goes through a very different process and one of the top i guess the most difficult recent decisions was what should the amount of storage be because you're the more storage that's there is and if you're running in bare metal it's like hardly a difference in cost but if you're running in the cloud you know to go to like you know 10 terabytes instead of four is dramatically different and if you're running 10 scale nodes that's huge operational impact um to you know change for paying paying a cloud provider we're hoping that the economics drive people from running nodes once they see that this is something repeatable and
sustainable that they'll get off of cloud and move into more bare metal setups and co-location setups but the returns just a lot better and from that perspective and so yeah that was a tough decision because your block storage is impacted the file storage component you could run you know whole decentralized application using file storage these things are are kind of in contrast to validator return and obviously from the dap side we want to give them as much as possible but the validators have to worry about roi so it's very clearly we could just say oh guess what we're going to pass that fee we're going to pass it over to dapps fees go up but there's just we we haven't gotten to the point where the network's just getting
up and running right so we need to make sure we create like a positive network effect so i think over time the community will be able to vote and say hey let's increase fees and increase storage and then it's a win-win but we want to uh i think you know that will happen later so those specs uh i think you could um uh yeah you can just go to the discord and to the developer documentation and find that pretty easily in terms of storage um is it possible for or is it foreseeable for scale to perhaps also leverage some of the you know storage networks uh decentralized storage networks which exists and there are many sort of like as an endpoint where like the nodes themselves could leverage external decentralized storage
solutions in addition to or instead of you know bare metal storage or having their own kind of like local storage yeah actually that is another interesting topic so part of what we want to do is so let's say if you get to a point where you're doing millions of transactions per day you're you're going to have a lot of bloat eventually in your scale chain and over at a certain point in time you may fill that up and and it could be a year it could be six months it could be five years depending on how much you use but if you're using huge if you have huge throughput that needs to be stored um then what happens is the network the system's set to prune so just start pruning old data
some people want to keep that forever so we actually have a a github grant live with our weave and we're doing this in conjunction with our weave just have someone go and build this connection between scale and r weave and then it just automatically passes your data to the r weave network and you can store it forever there and it's and it's decentralized trustless permanent so that's one uh piece and we were going to build and our weave was going to build together we said hey let's let the community build this let's let's uh get make sure this is really open source and obviously you could connect to an amazon server and store your data as well but and that doesn't meet the requirements for a lot of decentralized applications yeah that's really cool you know we had
our we've on a little while back and you know they're building this perma web and you know there's other projects out there like saya for example and they're they've got a slightly different vision you know for them it's more like decentralized cloud storage like a decentralized dropbox and it feels to me like in one obvious use case for for all these systems is just offloading kind of like some some ethereum bloat um you know you know any blockchain basically and like let's just like reduce the size of those blockchains and like put the first five years of the first 10 years and just offload them onto these uh decentralized um cloud storage solutions and to leverage them also for like things like archival storage for you know specific applications i think is
kind of interesting yeah you know it it's just another like kind of like wake-up call to all of us you know we get so deep into the current present state that like it's nice sometimes like you know what we're really early here and like why do we do things we do like sometimes it's like really like it's a religion or a best practice of the moment and then you kind of pick your head like you know why if it goes to our weave and it's there forever then who cares if it gets pruned from the scale chain or it goes somewhere else right it's um what's at it's i think we're gonna have different instead of layers we're gonna have different you know there'll be a place where action happens execution happens there's a place where maybe storage might happen
there's a place uh where you know there'll be different zones and areas as opposed to just layers i think and it'll look more like an enterprise software map um ecosystem map compared to like this kind of very basic protocol stacking and it's just we're just young in the industry right this this stuff's just just getting started can you walk us through then the other side of you know let's say i wanted to go ahead and create a dap on the scale network what would be the process of me doing that how do i sort of know what sort of resources my dap needs how do i know whether i need a one sixteenth or one quarter of a node how how do i know any of or how do i
even tell how many validators i want yeah so so the first version of the mainnet just for you know just simple simplicity is better from a security and an execution perspective so you have three options right now you can have a small a medium or large chain very very and um and the costs are dramatically different for those and and then in terms of number of nodes there's just a fixed set of number of nodes so in the future you could get you might want to get 64 nodes all running the smallest component or you're going to get you know right now it's just there's only 16 node groups and you can run one of the three sizes so what you do is pretty clear
like you have to think like do i care about throughput and like transactions per second do i care about ability to store things do decentralized storage what do i care about so you think about what you care about then you'd say you know i think the small chain can do 20 transactions per second max and you know it has less storage the medium chain is something like 100 transactions per second and 2 000 transactions per second roughly is a large chain and there's just dramatically more storage too and so you kind of see where you fit and then it's they're called elastic side chains because of one how things are configured and pulled together but also because they're elastic i could be on a small chain and say you know i'm going to upgrade
and then you just have to light up a medium chain and then you move everything over and there's a transition process that's not as seamless as in the web 2 world but it's doable and you can just move up the ladder as your as your throughput changes it's not as elastic as ec2 but it's more elastic than what we have today so then you know what you do is you just build something for ethereum and you know two lines of code you deploy to your scale endpoint just as you're deploying to you know a different uh right now you'd have be on a test net and then push then to mainnet or you go to another test net you just go to a scale chain and that's your scale chain then you're connected but interchange messaging is a little more involved and that's where
there's more you know bls threshold signatures are being used to sign off on amounts that to be transferred and going to like a proxy contract and then going to the main net and what happens is as you come over you end up creating this element where you freeze assets on the main net and then clones or a wrap version is created on the skill chain and those are used and then when the end user wants to pull out the web 3 connection just points back to the scale chain and it says hey take money out it runs consensus bls is used to then message that in a lightweight manner back to the main net and then the those assets that are cloned burn essentially and then they unlock on the mainnet and they
go back to the user can i transfer any asset like can i do any erc 20 or 721 or right now there's just support for erc 20 721 die and i see and there will be when the network goes to phase two launch and so all this is that's what we've built so your your standard stuff you're using on on ethereum will all work and eventually you know the goal is to make that even more robust to be able to take in a cloned or wrapped bitcoin and run it inside of ethereum applications and so and part of this too like i i've done a lot of software startups when you're in the space we're in
you think you're going to do all this stuff someday and what happens is you end up getting pushed more and more to your core strengths and the ecosystem develops and you know you start using partnerships to do other things so maybe even someday like we have interchange messaging but there may be some interchange messaging agent or tool that is the best or instead of us creating this bls uh or this threshold signature bridge to get bitcoin in as you know developers use something else and and we just keep focusing or the core team here keeps focusing on the piece that's really you know nuanced and specific to what our core strengths are so it'll be you know we'll see we'll see where our roadmap goes over time so when we like do these like resource
constraints like okay the small medium large how does that like what is the literal instantiation of that is that like so these are all running evm chains right and so would it be that like it changes the gas limit per block so is that is that where the actual where it's actually changing like so you know a small chain gives me two million gas per block while a medium chain will give me five million gas per block or how does that work yeah gr you know good question so it's it's literally the amount of compute resourcing you have and if you're using more than you have it just frankly gets gated it just gets uh it just gets throttled down so so what happens is
is you uh these chains you could think of them as little building blocks right and there's 128 of these and in each node and if i run a small chain the network devotes these 16 containers to me across 16 nodes that are the small the smallest container sizing and so i get and i just have that amount of resourcing and then if i'm pushing more through than what i've what i've licensed from the network i just you know it's just physics i'm trying to push more in and i don't have enough space for it how does like a developer get like a good sense of you know so so so if i build my own eva i i launched my own evm on
a scale chain i i get to set what the gas limit is then how do i get a good sense of like what is the relationship between gas versus gas limits versus like compute resources available to me yeah so what you do is there's actually a fake gas that you assign within your your application that users use that only serves the purpose of preventing dosing okay just so you make sure no one's spamming the network and if i'm spamming the network my my you know i me as an end user where i'm connecting i just run out and then you know i get a certain amount back the next day so that's it's not a cost thing it's a resourcing thing you can use and you just have this faucet you keep
you know getting it just it's automated gives people gas to use okay that's so that's how gas is used the cost element is there's no it's just gas it's just there's no fee you can use it as much as you want as your users can and you're just paying for the amount and if you're saying wow we're like getting really jammed up and things are slow because we have more more pushing through than we have reserved then you move up to a bigger a bigger set and so then you would change to a medium chain and a large chain and and then i think you know then you could even say oh we want more for storage you could light up a small chain and that be used for storage and then use something else just for smart contract execution or maybe use a large
chain for storage because you have a lot of things you're storing because you're running an entire decentralized application end-to-end and you just have transactions going on a small chain or something and so you use you can use these different chains and set them up to your needs and requirements yeah so so the gas again i think circling back to your original question uh you could think of the gating force here is the amount of containers you have the gas is a construct that you issue as a developer just to prevent dossing so one of the oddities of the evm is it treats storage and compute as like fungible resources with each other where like
they're both measured in this unit called gas and it kind of like pegs their prices against each other but it seems that might not always be the best approach because for example in a scale chain maybe maybe i want to give people a lot of compute capability but not a lot of storage capability is there a way to sort of create two notion like separate out storage gas from compute gas yeah you know what it so right now it's fixed it's one of the things we want to make configurable in the future so right now you i think of the amount there's only there's a certain amount that frankly can be of storage just within your containers and right now i think 20
goes to transaction storage and storing transactions and something like 60 is going towards file storage and the remainder is going towards storage requirements just around the network and so what we want to do is we someone might say hey i have no files i'm storing i have nothing i don't need file storage i want that to be zero and i want to open up the rest i want to have three times the amount of i guess transaction storage capacity and so right now it's fixed it's hard-coded um eventually you could see this like i don't know there's probably a lot of people here who are familiar with enterprise and sas and sas is all about like understanding use cases and making things so off the shelf
people there's enough people that say hey i want this they can click a few buttons and get things like baked into the system configuration options ready for them and it's not you know you don't want people in there customizing each scale chain there's one set of software that runs across the network um and right now we're we're very junior varsity and 101 in the setup there's like three options but it's all done you know if for good reasons around security and performance and over time hopefully that will evolve so if each skill chain is just a plain old evm what's to prevent someone else from like you know just parasiting my scale chain so i you know i as a developer i paid for this like
large scale chain and what's to prevent some other person just deploying their own contract on there and like you know just like siphoning and like you know making use of the fast the fact that i already paid for all the compute and everything up front and them just using it for their own use case yeah so so my understanding is so they're they're nuanced things built into it so that only the developer has access so there's just a and i i don't know uh offhand the exact mechanism used but that was uh that was built in so yeah if someone has access to all of your systems and yeah they can go access your chain so does that mean like users can't you users wouldn't be able to like deploy their own smart contracts
no so just the developer is able to deploy the smart contracts to their ecosystem it has control of control over it but what if i want to like as a user what if i want to deploy a multi-sig contract or an argent smart wallet contract or something like that like more of a user-side contract how would i do that if uh contract deployment is like limited yeah so so the way it's been designed now is the developer is essentially like the owner of their domain as if you owned a back-end database and so i i don't have the exact details on how they can open up configurability
i'm sure you could open up anything but the goal is to make it so the design spec is i have my back end here i pay for or my group or my community pays for collectively and certain people have these controls other people have these and you can just open it up let anybody do anything to it and somebody might come and do exactly what you talked about or you keep components of it that are less publicly available and just you know the businesses the applications the groups communities projects that are using it then open up only what they need to but it's just like you know we we i think for application specific blockchains you need to have similar security requirements
that you would for a normal application like can somebody come leech off of my amazon ec2 instance no right so you can um but if i want end users to have interoperability and to come build things and connect or you know pull things from an api then i have to build those connections so it's a it's a good question i think uh yeah i i you know maybe we'll write another we've got a lot of content maybe we'll write about that and we'll write up an overview of how how the network's been designed to give configurable security to application developers so these connections essentially now that people are building you know and say like some sometimes people start building these connections for the applications they need if we come back to this kind of you know
exit like web 2 software analogy or web 2 development platform analogy do you do you foresee kind of stores where people would sell like access to these types of of connectors like like you would like i don't know like on a shopify app store or something like that right like you want this extension well you got to pay for it or anything if you if you're not looking to build it yourself yeah so so it's it's an open it's a great question i think you're we're talking about cool future things too that could happen so if you think about it what we have is just a network of blockchains that's that's run and driven and orchestrated by the ethereum mainnet and foundationally secured by the ethereum main net and these blockchains you know a thousand nodes could run 8 000
small blockchains so there's going to be a lot of these there's going to be a lot of people that maybe will license them and then package them with other things and then sell them almost in a red hat type manner or you know open source business model where you get things configured and you pull in the wallet you pull in these these components and you ensure that there's security auditing and so we have one one person who's working on building this now so he can take his pre-packaged offering to game developers and web three developers or web 2 developers that want to use blockchain and in a way shopify the ethereum experience for them they pay in fiat he does conversion to make the
you know an automated way to license the scale to connect to a portis or a taurus or fort madison and and there's things that then proof and check the smart contract language to make sure that they're not losing money and i think things like that are amazing they give more accessibility it can take two normal developers the normie world developers who aren't here living in you know blockchain land and so i think cool stuff like that will happen i hope and but we're just trying to stay at the infrastructure level to make sure that we can give people those options without exposing uh attack vectors right interesting could you uh talk a bit about like how does some of the
security properties of this work especially when it comes to things like fraud proofs or data availability um how do i you know let's say i happen to you know through this random sortation i did somehow happen to end up with a set of 16 validators from my chain that was corrupt and what is my recourse now or what ap or what about the data availability side where you know i had a bunch of storage and now suddenly the validators refused to serve the data so one thing to note is there this is it's relying on byzantine fault tolerant performance so if two-thirds of my node operators go bad that's a real issue and that's why we
take the randomness rotation the seating of the network the incentives of you know you validators lose so you know they lose their whole stake if they maliciously collude and and steal money so this is also folds into the what is layer two question right because i think a lot of people are uh and layer two used to just be you could connect bitcoin to ethereum and that i have a layer too because you know this one is where this is one blockchain there's another one this is the primary one and i'm creating an application environment and then you know there's obviously been a section of researchers who are you know we're working on plasma and now roll ups and
uh and and zk and other techniques to make sure that there's no consensus or nothing can happen on the second layer that the first layer doesn't agree on so you you make sure that ethereum's your main place for security and so then you have a central node operator that performs different functions you make sure there's data availability you make sure you have timeouts on the user side so they can't get liquidity for a certain period of time in case that central operator goes bad and scale doesn't work that way scale is another network you're trusting another network imagine you connected to cosmos and you know the cosmos validators went bad and stole the money and before it went back to or the ethereum main net if you were to set up
a you know you're just trusting that set of validators so one so so things that we can do one you can limit the quantity of that someone could pull out every day so you can basically make sure there's not a mass exit per per like to steal money there's things like that you can do um there's other things that the system takes a snapshot every i think it's right now it's every 12 hours but you could make a do it every six every six minutes or every you know 60 minutes whatever and it snapshots your state and if you do have malicious validators the network or ones that stall then the network self heals it pulls them out
and then it puts in new nodes and so in the short term that so that's this one is set up someone just quits running their node it gets removed and get you it injects another one um and at any given time you could stop it and you have your latest state so those are things that you and you know you could just be in a point where you have two-thirds of them and they refuse to work and then you're you know there's going to be like an intervention i think a human in the loop intervention but again it's just about resetting that snapshot and rotation mechanism that then re-rotates new nodes into the chain um and you know the the the amazing thing about blockchains
is that there's like no foolproof thing if like everyone's bad it's really hard to get blockchains to work um you know i've heard some people say like oh even if everyone's bad as long as you have one good actor and it's like well blockchains really are set up to have right the right incentive structures to make sure that the majority is pushing through the right actions and so i i think a lot of these fears are a little bit overstated because of the the maturation in the validator market and kind of the reputation element even though they're not proof of authoritying in to run and and then you know having the right types of incentive structures it's just getting a two-thirds attack if the
network were ever in that state i think it would be in a really really bad place um and you probably wouldn't have quality adapts running on it anyways if it were susceptible that that sort of thing let's take a little bit of a step back and talk about the business here and and also there's this there's we haven't addressed the foundation so the node foundation or node foundation i know that stands for something can you talk about that describe what that is and what its role is in this broader vision i think foundations for everybody are great things and annoying things because we all just want to have like a decentralized network that runs that we can support but uh you do if you do have a grant a found
a grant program you want to run if you do want to pay dirt certain groups to focus and and work on the the platform you do need to have a kind of entity that helps support make that happen and so the this node foundation and onstault are set up in liechtenstein and they're really just there to support um operations so scale labs is a a client is i guess a vendor supporting the foundation and we have a contract and we get paid a certain amount every year and it's really just comes down to cost and it's just basic startup salaries and you know marketing spend and money to you know spend on hackathons and it's
community money that was raised through safs that then got all passed to the foundation and then there'll be a public sale that money goes to the foundation and then other vendors will come on board and support the network and and really we're just trying to follow best practices we've seen through cosmos and ethereum and other i think uh foundational structures that you know you you need to have some element of humans managing money that's compliant with the securities laws and laws that pertain to you know responsibility and liability for the network but at the same time you have to make sure that whatever the entity is it doesn't have enough power to have any negative impact on
the network itself so there's the the foundation and then there then the the company uh is a u.s company i suppose well so the company is just like scale labs inc we were stan and i said hey let's go build this and let's do an open source decentralized thing and we had a corporation and i guess staffs were used to get early supporters involved um and then at a certain point we're like okay like we don't this not the right structure have a corporation of any control or power over the money and so this entity and liechtenstein was set up and the money was passed to the entity in
liechtenstein and the staffs and then that entity is responsible the main thing is to launch the network and to manage the foundation grant so there'll be grants that go to adapt developers who build on scale to not for them to liquidate but for them to be able to fund their chains for a certain period of time there's an incentivized test nets that happen that get paid out through that group and they're like the bitcoin bounty with our weave right things like that need to go come from someone and it's not right for them to come from a corporation and so that's why the foundation exists and can you talk a little bit about the the different phases of the launch yeah so there's three phases and you
know this was uh it was one of these things i'm noticing a lot of people are doing phases and for us it just and for this group the community was like it made more sense and one thing was we wanted to just get the network up and running and on its feet before live staking happened and and so what happened is there on june 30th phase one launched and everything deployed on the main net and and there's just it's a kind of idling network where there's no bounty or rewards being given yet but it's up and now what happens between now and phase two which is on august 31st validators can join and get set up and then once they're set up on september 1st the first epic starts
and that's when payment everything gets going so the the people have a runway and then staking all has to happen too before the first so people that purchase in the activate auction and then have to do proof of use and stake their asset have to stake by september 1st and same as anybody who had a saft variable and so we just have this time that's not like okay let's do it all in two days or the network's live and have a mad dash and make sure nothing's broken um so that's why phase one exists and then phase two is really about compliance and health of the network and so for 90 days there's no trading um nothing's liquid and real staking happens
and dapps are then able to come and and participate and start using the network and then when phase three hits then it's like any of these networks with a token and having a liquid asset and but we we get there and kind of you know crawl walk run style so you mentioned the grants program uh like in these early stages what what do you think that will look like in terms of you know the types of things that you're looking for people to build and um so i suppose the company then will be kind of the one sort of giving the grants or is it nor is it the foundation the onshtalps i guess are liechtenstein structures so it's it can
the onstall is basically a business that supports the foundation and so there will be a kind of process and you know there'll be a submission to say hey like we want to give away x amount of grants and maybe scale lab says hey can we give away x amount and here's exactly what they'll be used for over the time period let's make sure there's transparency or maybe someone else will say hey we want to get involved here can we do a grant program for these people and then the unstall basically says okay great you someone came to us from south america and wants to you know get grants to developers through this mechanism we'll sign a contract with them and then they can do that and so it's more about uh we don't want to have a huge operational structure going on in the foundation now or just i think
the community is too small and so the enstop will be responsible for kind of finding groups that can then support growth of the network what what are the types of things that you'd like to see supported in in the early days or like with the initial grants like what are the types of things that are most needed to be built by by the community for like these you know ongoing phases to to be successful yeah so uh the r weave integration is a great example there's a grant that's going out for building our weave connector maybe you build a connector to another decentralized storage network people that want to get involved in interchain messaging there's grants going there there's a white hat hack effort going on through hacker one right
now that people can look at and get involved in there there will be grants given in the same way amazon was really successful because they came out and said hey we'll give you x amount of credits for over a period of time to use amazon and so they went to promising startups and they got they gave all these startups essentially fake money that they could use within amazon to use cloud credits and and then google did the same thing so also we have a version we're running where you know there's a three to six month credit that happens and i'd say hey i'm a developer and i've got a promising team and i'm serious then they can apply to be in the scale innovator program and then they get a grant
but that grant then locks into the network it doesn't end up on an exchange right away and then once they use it actually just goes back to validators and delegators through the ecosystem i guess the or the financial mechanics that manage fees so so that's another thing you might say hey i'm working in berlin i want to get a grant program going and we've got let's get more developers using this or or uh that would be exciting and the other piece too is just interchange messaging and i'm sure sunny you know all the challenges of having money go in between networks like if anybody wants to take a look at that code i think that's something we're thinking of putting a grant up to sometime soon just to get more eyeballs approach and approaches and efforts and i could see
that being you know a lot of supported mechanisms and to to help different assets transfer between scale chains and the ethereum main net or other places okay so where can people learn more and get involved and perhaps even you know reach out to get involved with some of these grant programs yeah so uh so please come to the discord and you can get looped in so scale.chat the scale and you can find these links all on the skill web skill website scale.network and you can also reach out on twitter and through the very you know different people or the seattle official uh twitter handle but but please come let
we're we're really you know that we're really part of this ethereum fabric and one of the hard things about the quarantine is we used to be at a different ethereum event or hackathon every month around the world and um i think a lot of organic integration and work happened that way and now we're in a you know a different different challenge where no one's traveling and seeing each other so we have to i think be more thoughtful about getting things like this going yeah absolutely hopefully at some point we'll be able to go back to ethereum conferences but for now i will stick to discord chats uh jack thanks thanks a lot for joining us today yeah hey i also want to say so you were asking me about my kind of onboarding into crypto so i i thought i knew a lot about crypto
and blockchain and i realized i knew pretty much nothing when i first started working in 2017 full-time and one of the main outlets for learning i had was uh listening to epicenter so i think i listened to like i probably listened to a hundred episodes at least i so it's it's a pleasure to be here today and i've always been a big fan so thanks for having me well thanks very much it's very nice thanks for joining us thanks guys it doesn't end here there's more to this conversation and you can hear it on epicenter premium as a premium subscriber you'll get access to a private rss feed where you can hear the interview debrief and get enhanced features like full episode transcripts and chapters
which allow you to easily skip to specific sections of the interview you'll also get exclusive access to roundtable conversations with epicenter hosts and bonus content we put out from time to time go to premium.epicenter.tv to become a subscriber and support the podcast [Music] you