From 2eb0b8f8e51e2007100474fd1b2d4cf8f2b492fa Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Tue, 26 Nov 2019 12:05:52 -0500 Subject: [PATCH] more stuff --- README.md | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4edac6e..6441202 100644 --- a/README.md +++ b/README.md @@ -95,5 +95,42 @@ These RPCs interact with zaddr xtns and may report different or additional info listunspent ``` -### z\_sendmany +### z\_sendmany Rule of Seven + +Our goal is to be non-deterministic while also inserting enough zouts such that we have at least N=7 zouts. + +Since the normal case is to have 2 zouts (one recipient for a z2z and one change zout back to sending address), +the normal case will be to add 5 zouts to a normal z2z xtn. + +For a z=>t, we must add .... +For a t=>z we must add 6. + +The reason N=7 is chosen is because of the simple fact that `6!=720` while `7!=5040`. This parameter is chosen +in response to the ITM attack, which relies on a small number of zouts and doing combinatorial algorithms on all +possibilities. These combinatorial algorithms increase in state space for each link in a long chain of transactions. +Traditionally each xtn only has a few zouts and so because `2!=2` and `3!=6`, the combinatorial explosion does not +have a chance to slow down the ITM attack. + +Now, consider 5040 choices at each link in a chain, and say we are studying a chain of length L=10. +Compared to pre-Sietch, we would have `2^10=1024` possibilities versus + +``` +5040^10 = 10575608481180064985917685760000000000 +```` + +possibilities. Even for short chains of xtns, the combinatorial explosion of possibility renders the ITM attack +extremely expensive. It limits it to searching for linkability metadata in only short chains with lots of +additional supporting metadata, effectively raising the bar for attack and removing many potential attackers +who do not have sufficient resources. In pre-Sietch code, the ITM attack can potentially research very long chains, +dozens, hundreds and perhaps thousands of transactions in length, with commodity hardware. +Sietch exponenentially increases the cost of doing this, in RAM, CPU and running-time. + + +### Non-determinism + + +Combinatorial explosion can only protect us so much. It is only one layer of defense. + +When adding zutxos, to break the ITM/Metaverse metadata attacks at a deep level, we much break a deep assumption +that is baked deep into Bitcoin: determinism.