Skip to contentCyber landscape configurationAssets0Shielded0%Compromised0%Blue agents3Red agents3Shield break chance5%
Blue agents shield assets and repair compromised ones; red agents try to compromise them.
Blue agents
Red agents
Asset
Shielded
Compromised
Blue agent
Red agent
Coverage The share of the assets that at least one blue agent can see right now.
Mean time to detect How long a compromise lasts, on average, before a blue agent first sees the asset.
Mean time to respond How long it takes, on average, from the moment a blue agent sees a compromise to the asset being repaired.
Joël Abrahams
Security Engineer at Stedin
Hi, I'm Joël. When I'm not at the keyboard you'll find me at the piano, over a chessboard, or halfway up a boulder wall. By day I contribute to the cyber resilience of Stedin, a grid operator in the Netherlands.
Usually up for a game, not that I'm particularly skilled.
Bouldering & gym
A fun way to challenge myself.
Chess | Quantum edition (work in progress)
How it works
In common
Both editions are chess against Stockfish. There is no castling yet.
You do not know where the opponent's pieces are. You learn about a piece by measuring it, and attacking it measures it.
The editions differ in what a piece is before it is measured: something that you do not know yet, or nothing definite at all.
They are two kinds of uncertainty. In the hidden information edition a piece already is something, and you do not know what, as with a shuffled deck. In the quantum edition it has no definite place until it is measured.
The difference is what protects quantum key distribution. In BB84 each bit is encoded in a qubit, in one of two bases. An eavesdropper who guesses the basis wrong disturbs the state, and the two parties notice when they compare a sample of the key. A classical secret can be copied without a trace.
Playing
Above the board: the pieces you took on the left, the ones you lost on the right. The number is the material lead. Pawn 1, knight and bishop 3, rook 5, queen 9.
Under Game, the uncertainty counts the opponent's pieces you are unsure of. It also gives your missing information in bits. See The bits.
Point at a piece to see its chances. The settings can turn the card off.
The bits
Entropy counts how unsure you are, in bits. One bit is the uncertainty of one fair coin flip.
Shannon's formula is the average surprise: A possibility with chance has surprise bits. The average over all possibilities is H.
It depends on the model of the opponent. It measures your uncertainty, not a property of the position.
Measuring a piece takes its entropy to 0.
Chess 960
Chess 960 shuffles the back rank. Bishops stand on opposite colours. The king stands between the rooks. The pawns stay put.
There are 960 starting positions. Both sides get the same one, mirrored.
Double Chess 960
Each side gets its own shuffled back rank. Most games start unbalanced.
In the hidden information edition your opponent's back rank starts hidden. It is drawn from odds you can set before the game, the prior. Setting a piece to 100% reveals it.
In the quantum edition nothing starts hidden.
Superposition
The opponent's pieces are clouds: not on one square, but spread over every square the piece could move to, with a chance of being found on each. Read the caveats first.
This borrows one quantum idea and simulates it on an ordinary computer.
A cloud is 64 amplitudes, one for each square. That is easy to simulate. There is no quantum computer and no quantum advantage. The random draws are pseudo-random, as in every classical random number generator.
Only the opponent's pieces are "quantum". Your pieces and the engine are classical.
The clouds are independent. There is no entanglement. Nothing here can violate a Bell inequality.
The spread is not the evolution of a quantum system. Every square it reaches has the same chance, with no phases, so nothing interferes.
Two pieces never end up on one square: when a cloud is measured, the others lose that square. The clouds themselves overlap, as independent ones do, which is an approximation. Where two clouds of one kind overlap, such as two rooks, the board shows them as one.
The rules are chosen, not derived. The spread, the measurement by sight and the check rule are rules of this game.
Clouds
Pieces of the opponent are clouds, the king and the pawns too, until they are measured.
A cloud has an amplitude on every square. The chance of finding it there is the squared magnitude of that amplitude. This is the Born rule.
In its turn a piece spreads over the squares it could move to, and the one it is on. All of them are equally likely, and a square it could not reach in one move gets no chance.
A piece spreads once, from the square it stood on, and a cloud that has spread does not spread again until it has been found. A piece that is found in a cloud only moves to squares that cloud covered. So no piece moves twice in a turn, and a cloud never reaches further than one move from where its piece was last seen. If no move does that, the opponent passes. Over a game, pieces dissolve into clouds and are found again.
A cloud never goes onto a piece or onto a square that gives check. Those squares are cut out and the chances of the rest are scaled back to 1. That is a measurement, not part of the spread: the answer "not there" is learned.
A pawn only moves forward, but its spread goes both ways, so the cloud of a pawn can spread back along its file. It never goes to the first or the last rank. The captures of a pawn are not part of the spread.
Measuring
In its turn, each cloud is measured against the squares your pieces attack. The question is: are you on one of these squares? With the total chance it has there, it is found, on one of them drawn by their chances. Otherwise it is not there, and it goes on with those squares cut out.
Your moves measure too. Every square your piece passes over and lands on is measured.
A piece found on the target is taken. Take the king and you win.
A piece found on the way is taken, and your piece stops there. If it is the king, your piece stops just short of it, and you have checkmate. You can switch this off, and then the move fails and you lose the turn.
Nothing decides an outcome in advance, unlike in the hidden information edition. It is drawn when the measurement happens.
Pawns get a strange power here. A pawn can attack a cloud on the square diagonally in front of it, though the piece may not be there when the cloud collapses. If it is found, the pawn takes it. If not, the pawn just moves to the empty square, which no pawn can do in chess. This only works where a cloud has a chance.
The engine
Stockfish never sees a cloud. It plays on the pieces that are on the board: yours, and those that have collapsed or never spread. That includes the king, which is always measured, because the engine cannot play without it.
Besides the king, only the pieces you attack collapse onto the board, and the pieces that did not spread, such as one that is boxed in or, if you chose so, one that took one of yours. So the opponent sometimes has little to move. When it has no move, it passes. A king in check with nowhere to go is checkmate, and when nothing of the opponent can move at all, not even a cloud, the game is a draw.
The order of the opponent's turn, collapse, move and spread, is a setting.
There is no undo, replay or export here. In this model nothing was hidden and later revealed: the piece had no place before it was measured.
The bits
The bits are the Shannon entropy of where each cloud would be found. The chances are the squared amplitudes.
The clouds are independent, so the total is the sum. It is exact for this model, not an upper bound.
A cloud is a pure state, with zero von Neumann entropy. The bits measure how unpredictable finding the piece is, not any mixedness of its state.
Hidden information
Every piece has a real state. It is hidden from you. Measuring reveals it.
The engine plays on the real board. It knows what every piece is.
A hidden piece is drawn as everything it could be, all at once.
Measuring
A possibility is a kind of piece on a square.
Attacking a piece reveals it. It was that piece all along.
Giving check is a partial measurement. It narrows down what a piece may be.
A piece with one possibility left is known by deduction. It is revealed without being measured.
Measuring one piece tells you about the others, because a back rank holds each kind of piece a fixed number of times.
Possibilities
You are not shown the move of a hidden piece. It is drawn on every square it could have reached unmeasured. One possibility is real. The rest are phantoms.
You measure a piece by attacking it. You measure it partly when it gives check, takes something or changes your legal moves. A possibility that the measurement rules out is gone.
A new game asks how many extra possibilities a move may show. With a cap, possibilities are drawn at random, the real one included. The ones that are not drawn are ruled out.
Hyper mode hides which piece moved. After an unmeasured move, every opponent piece is drawn on every square it could have reached.
Playing
The card of a piece has two columns. The first adds up to 100% and includes the chance that nothing is there, a phantom. The second assumes the piece is real.
A move made illegal by a hidden piece is refused. That possibility is ruled out.
Undo takes back your move and the reply. What it measured is hidden again, but you remember it. That makes it a way to cheat.
The odds
The odds are ordinary probabilities, not quantum ones. They come from a simple model of the opponent. Every legal move is equally likely, which is the maximum-entropy, least informative assumption.
A line through a hidden piece counts the chance that it is clear. Pins and check count once the king is known.
The odds never look at the real board. They cannot leak what the engine knows.
Stockfish prefers strong moves, so these are estimates. They can be well off when one move is obvious. Use this to your advantage.
Every possibility starts with its own chance. Equal for all, or the odds you set in Double Chess 960. Ruling something out rescales the rest to 100%.
The bits
An example: at the start of Double Chess 960, with the odds unchanged, the piece on a8. It is a queen with 12.5%, a rook with 37.5%, a bishop with 25% or a knight with 25%.
Of the 8 files, 1 holds the queen, 2 hold the bishops and 2 hold the knights. The other 3 hold rook, king, rook.
The a-file is the leftmost, so it can only be the left rook: 3 in 8. It can never be the king.
Each chance is multiplied by its surprise: 1 in 8 is 3 bits, 1 in 4 is 2 bits, 3 in 8 is 1.415 bits.
The terms are the queen, the rook, the bishop and the knight:
The game adds this up over every hidden piece: about 17.4 bits at the start. The pieces share one back rank, so they depend on each other. The whole is at most the sum of its parts: So the number shown is an upper bound. With 960 equally likely back ranks, what you really do not know is only
Measuring a piece lowers the entropy of the others on average, because they are correlated. A piece that moves unseen raises it again.
Settings
Animation
Only in the hidden information edition.
Only in the hidden information edition.
Turn order
Only in the quantum edition.
In its turn the opponent collapses its clouds, moves, and spreads into clouds. Drag the tiles into the order they are to come in, or focus one and press the arrow keys. The next game is played in this order.
Collapse Each cloud that your pieces can see is measured. It collapses to a square, or it stays a cloud. The king is always measured.
Move Stockfish makes the only move of the turn, on the pieces that are on the board. A piece that was found in a cloud only moves to squares its cloud covered, or the opponent passes. A king in check with nowhere to go is checkmate. With nothing at all that can move, it is a draw.
Spread Every piece on the board spreads into a cloud, over the squares it could move to. The piece that moved and the ones that were found in this turn stay as they are.
Animation duration for each step
Now: . The default is collapse, move, spread: the order in which the side in superposition won the most in the simulation, and each stage is given 1 second.
This works on a phone, but a computer is much better. The board and the odds get more room, and a mouse gives finer control of the odds.
You play chess against Stockfish. You do not know everything about your opponent's pieces. You can cycle between the hidden information edition, where every piece has a real state that is hidden from you, and the quantum edition, where every piece of your opponent is a cloud above. You measure a piece by attacking it.
Every piece has a real state that is hidden from you, and the engine plays on the real board. All you see is everything a piece could be. Measuring a piece reveals which it was all along, and with it a little about the others.
Every piece of your opponent is a cloud: in its turn it spreads over the squares it could move to, and where one is found is a matter of chance. A turn of the opponent is a collapse where your pieces can see a cloud, a move of the engine, which plays with the pieces that are on the board, and a spread into clouds. The order is yours to choose in the settings. Funnily enough, with quantum clouds a pawn can attack the cloud and move diagonally without capturing a piece.
|
Castling is not supported yet.
It could beIt can become
Are you sure you want to start a new game? This one is not finished yet.
Are you sure you want to resign?
Which colour would you like to play?
Strength of the engine
Extra possibilities per move
One extra possibility a move at most.Two extra possibilities a move at most.Three extra possibilities a move at most.Four extra possibilities a move at most.Five extra possibilities a move at most.Every possibility there is.
You are not told which piece moved.You are told which piece moved.
If a piece you found moves unseen, you may lose track of it.A piece you found stays found.
Pieces that take
If a cloud is found on the way of your piece, it takes that piece and stops there. Found in front of the king, and you have checkmate.If a piece is found on the way of your piece, the move fails and you lose the turn.
A piece that takes one of yours cannot go back into a cloud.A piece that took can spread into a cloud again in its next turn.
Loading the pieces and the engine…Your move. The piece from moved to . Your move. A piece moved, and you cannot tell which. Your move. Check. Your move. Something is happening...The engine is thinking… That square is covered. It is still your move. That would expose your king. It is still your move. That pawn is blocked. It is still your move. You resigned. Checkmate. You won. Checkmate. The engine won. You took the king. You won. The game is a draw.The chess engine could not be loaded.
The engine is Stockfish 19 (licence), small build. The Elo is Stockfish's own scale for its limited-strength mode, so it is only a rough guide to how you would fare against a human of that rating, and a rougher one in the unbalanced games of Double Chess 960. The rules come from chess.js (licence). The pieces were drawn by Colin M.L. Burnett.
Your attacks . That measures the piece from : it is a .
Your attacks and finds nothing. The piece from is now on .
Another piece now stands on . The piece from is now on .
The piece from gives check from , so you know where it is. From there only a gives check.
For the piece from , a was already ruled out.
The piece from moved to . A had no move from where it stood, so it is not one.
The piece from moved to without you measuring it. A would have been measured, so it is not one.
A piece moved without being measured, and hyper mode does not say which. Every hidden piece spreads: it stayed, or went anywhere it could.
The piece from moved to . Possibilities are capped, so a is ruled out: none of its moves was drawn.
The piece from took your piece on . A could not have got there, so it is not one.
No check was given. As a the piece from would be giving one, so it is not one.
No check was given. From the piece from would be giving one. It is now on .
No check was given. On the piece from is not a : that would be check.
A piece on would shield your from the piece on . Your moves show that nothing does. The piece from is now on .
A piece on would keep the piece on from covering , next to your king. Your moves show that nothing does. The piece from is now on .
The piece from shields your from the piece on . Your moves show that, so you know where it is: . It could still be a .
The piece from keeps the piece on from covering , next to your king. Your moves show that, so you know where it is: . It could still be a .
The piece from moved, so the piece from did not. It is now on .
The piece from went from to over , so nothing stood there. The piece from is now on .
A piece on would stand between your and your king, and free it from the piece on . Your moves show that it is not free. The piece from is now on .
The piece from stands between your and your king, and frees it from the piece on . Your moves show that, so you know where it is: . It could still be a .
By elimination: the piece from can no longer be what could reach . It is now on .
The piece from is no longer a : none of its moves is left.
One thing is left for the piece from : it is a on .
Your king cannot step to : a on covers it. Trying gave it away, so you now know it.
That move would expose your king to a on . Trying gave it away, so you now know it.
Your pawn cannot advance: there really is a on . Trying gave it away, so you now know it.
Switching edition ends your game. You will lose it. Are you sure?
My own statically typed programming language. The (reference) compiler is in Rust. Mostly a testbed for some of my weirder ideas related to programming languages.
Quantum information theoryClassical cryptographyPost-quantum cryptography
Security operations
Digital forensicsIncident responseThreat detectionLog analysis
Only lower case and digits A key is made of the letters a to z and the digits 0 to 9, and no capitals or special characters. The 10 digits and the 26 letters make the table of the cipher 36 by 36.
Vigenère cipher The letters and the digits of the page are moved on, each by as much as the matching symbol of the key is from that of the right key, and the key goes round again and again. A key is lower case letters and digits, and no special characters: the 10 digits are added to the 26 letters, which makes the table of the cipher 36 by 36, and not 26 by 26. With the right key the page reads as written. Vigenère cipher on Wikipedia