Focus: game development & cryptography
Lots of times running the engine requires setting up multiple terminal window and it would be nice to have some pre-configured
Experimenting with this idea for our engine
Lots of times running the engine requires setting up multiple terminal window and it would be nice to have some pre-configured
Experimenting with this idea for our engine
✖ don't reveal their private state
✅do prove something happened in their private state to allow them to update the public state
ex: prove you did something to earn 50 points (not revealing it's because you built a building)
✖ don't reveal their private state
✅do prove something happened in their private state to allow them to update the public state
ex: prove you did something to earn 50 points (not revealing it's because you built a building)
And players have some private state (their position in the map, how much gold they have, etc.)
And players have some private state (their position in the map, how much gold they have, etc.)
Midnight, instead, keeps track of a public chain (a bit more similar to Bitcoin)
However, each user in Midnight has their own private state that is never shared with the rest of the blockchain
Midnight, instead, keeps track of a public chain (a bit more similar to Bitcoin)
However, each user in Midnight has their own private state that is never shared with the rest of the blockchain
Unlike public blockchains, the data is not kept around in the blocks! Everything just gets compressed into a proof
Unlike public blockchains, the data is not kept around in the blocks! Everything just gets compressed into a proof
we automatically are able to build this super succinct blockchain like we wanted!
we automatically are able to build this super succinct blockchain like we wanted!
Blocks are just combining proofs of multiple txs
A blockchain is just combining proofs of multiple blocks!
Blocks are just combining proofs of multiple txs
A blockchain is just combining proofs of multiple blocks!
In our example, to prove "foo", we need to prove "bar" first
but remember: we know how to combine proofs together! So combining the proof of "bar" into a proof of "foo" is easy!
In our example, to prove "foo", we need to prove "bar" first
but remember: we know how to combine proofs together! So combining the proof of "bar" into a proof of "foo" is easy!
Well, you can think of smart contracts as a list of functions
So all we really need is a way to generate "proofs" of a function (which, fortunately, is a very well studied problem with known solutions)
Well, you can think of smart contracts as a list of functions
So all we really need is a way to generate "proofs" of a function (which, fortunately, is a very well studied problem with known solutions)
So this means we can now combine everything into just a single proof of the genesis block to the latest block!
So this means we can now combine everything into just a single proof of the genesis block to the latest block!
Similar to how we "proved Waldo exists", what if we instead "prove" there exists a block transitions
AKA, given block A, prove there exists some set of transactions that give you block B as a result
Now, ever transition is a ZK proof
Similar to how we "proved Waldo exists", what if we instead "prove" there exists a block transitions
AKA, given block A, prove there exists some set of transactions that give you block B as a result
Now, ever transition is a ZK proof
If you want to know the state of Bitcoin, you often need to sync the full Bitcoin blockchain to get full security
However, this takes a lot of space on your device which isn't ideal. It's worse on chains like Ethereum, and even worse on Solana
If you want to know the state of Bitcoin, you often need to sync the full Bitcoin blockchain to get full security
However, this takes a lot of space on your device which isn't ideal. It's worse on chains like Ethereum, and even worse on Solana
Conceptually, you can think of revealing you know the location of multiple Waldos across different pages at the same time
Conceptually, you can think of revealing you know the location of multiple Waldos across different pages at the same time
How to prove to your friend you found Waldo without spoiling the game for them?
Answer: Cover the entire book with a big sheet of paper, and cut a small hole exactly where Waldo is
How to prove to your friend you found Waldo without spoiling the game for them?
Answer: Cover the entire book with a big sheet of paper, and cut a small hole exactly where Waldo is
- Private computation (required for RWA, gaming, some DeFi apps)
- Massive compression (useful for L2s, bridges, data-heavy use-cases)
Midnight & Mina give both
- Private computation (required for RWA, gaming, some DeFi apps)
- Massive compression (useful for L2s, bridges, data-heavy use-cases)
Midnight & Mina give both
> please don't be written in some bs language
> please don't be written in some bs language
> please don't be written in some bs language
the project's Github page
> please don't be written in some bs language
> please don't be written in some bs language
> please don't be written in some bs language
the project's Github page
This makes it super easy to have not just one color per system in your app,
But even generate colorful dashboards and subcomponents that feel color-aligned!
This makes it super easy to have not just one color per system in your app,
But even generate colorful dashboards and subcomponents that feel color-aligned!
and for brightness 68,69,70
no matter which color you pick, there exists a choice with saturation above 48🤯
and for brightness 68,69,70
no matter which color you pick, there exists a choice with saturation above 48🤯
Many Anrdoid apps and websites use a design system called material design created by Google
It allows creating beautiful color schemes for your app on a color (ex: your brand color)
Many Anrdoid apps and websites use a design system called material design created by Google
It allows creating beautiful color schemes for your app on a color (ex: your brand color)
and it gives us these beautiful colors, all while having a consistent brightness!
and it gives us these beautiful colors, all while having a consistent brightness!
which gives the graph below, and we can see brightness=69 maximizes entropy!
And remember, max entropy → closet to the uniform distribution from earlier!
which gives the graph below, and we can see brightness=69 maximizes entropy!
And remember, max entropy → closet to the uniform distribution from earlier!
For a given brightness (ex: below), how likely is a color to be red? (it's probability)
Well it's represented by this simple division
number of red colors
----------------------
total number of colors
For a given brightness (ex: below), how likely is a color to be red? (it's probability)
Well it's represented by this simple division
number of red colors
----------------------
total number of colors
You might remember from high school that you can map probabilities according to certain shapes (I promise this will be related)
The simplest one is the uniform probability: all elements are equally likely to occur
You might remember from high school that you can map probabilities according to certain shapes (I promise this will be related)
The simplest one is the uniform probability: all elements are equally likely to occur
This means that for these brightnesses, no matter which color you pick, you can get a really nice-looking version of it
But which brightness is the most distributed?
This means that for these brightnesses, no matter which color you pick, you can get a really nice-looking version of it
But which brightness is the most distributed?
This is really bad for us, because it means if we want to pick a bright color, we basically only have the choice between yellow and green
This is really bad for us, because it means if we want to pick a bright color, we basically only have the choice between yellow and green