From 53a6f8d5cd5af13cb5ddfe1a28440751f6a22229 Mon Sep 17 00:00:00 2001 From: infogulch Date: Thu, 8 Jul 2021 22:03:08 +0000 Subject: [PATCH] Another draft of Merklist; remove unused images --- 2021-07-07-Merklist.ipynb | 179 ++++++++++++++++++++++++-------------- ghtop_images/sparknb.gif | Bin 42529 -> 0 bytes ghtop_images/token.png | Bin 53413 -> 0 bytes my_icons/fastai_logo.png | Bin 7125 -> 0 bytes 4 files changed, 116 insertions(+), 63 deletions(-) delete mode 100644 ghtop_images/sparknb.gif delete mode 100644 ghtop_images/token.png delete mode 100644 my_icons/fastai_logo.png diff --git a/2021-07-07-Merklist.ipynb b/2021-07-07-Merklist.ipynb index 2c93011..4ee43ce 100644 --- a/2021-07-07-Merklist.ipynb +++ b/2021-07-07-Merklist.ipynb @@ -5,7 +5,11 @@ "id": "83dd7287-bca5-49f9-b927-31bbc519d5b9", "metadata": {}, "source": [ - "# Merklist" + "# Merklist\n", + "> A definition for the hash of a list that is robust to arbitrary partitioning\n", + "\n", + "- toc: true\n", + "- categories: [merklist]" ] }, { @@ -13,7 +17,7 @@ "id": "bf97974c-5582-4bf5-8ed8-6c43daf5036c", "metadata": {}, "source": [ - "Using matrix multiplication's associativity and non-commutativity properties provides a natural definition of a cryptographic hash / digest / summary of an ordered list of elements. Due to the non-commutativity property, lists that only differ in element order result in a different summary. Due to the associativity property, arbitrarily divided adjacent sub-lists can be summarized independently and combined to quickly find the summary of their concatenation. This definition provides exactly the properties needed to define a list, and does not impose any unnecessary structure that could cause two equivalent lists to produce different summaries. The name *Merklist* is intended to be reminicent of other hash-based data structures like [Merkle Tree](https://en.wikipedia.org/wiki/Merkle_tree) and [Merklix Tree](https://www.deadalnix.me/2016/09/24/introducing-merklix-tree-as-an-unordered-merkle-tree-on-steroid/)." + "Matrix multiplication's associativity and non-commutativity properties provide a natural definition for a [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) / digest / summary of an ordered list of elements while preserving concatenation operations. Due to the non-commutativity property, lists that differ in element order result in a different summary. Due to the associativity property, arbitrarily divided adjacent sub-lists can be summarized independently and combined to find the summary of their concatenation in one operation. This definition provides exactly the properties needed to define a list, and does not impose any unnecessary structure that could cause two equivalent lists to produce different summaries. The name *Merklist* is intended to be reminicent of other hash-based data structures like [Merkle Tree](https://en.wikipedia.org/wiki/Merkle_tree) and [Merklix Tree](https://www.deadalnix.me/2016/09/24/introducing-merklix-tree-as-an-unordered-merkle-tree-on-steroid/)." ] }, { @@ -34,10 +38,10 @@ "This construction has a couple notable concequences:\n", "\n", "* The hash of a list with only one item is just the hash of the item itself.\n", - "* You can calculate the hash of any list concatenated with itself by matrix multiplication of the the hash with itself. This works for single elements as well as arbitrarily long lists.\n", - "* A list can have multiple copies of the same list item, and swapping them does not affect the list hash. Consider how swapping the first two elements in `[1, 1, 2]` doesn't change it.\n", - "* Concatenating two lists is accomplished by matrix multiplication of their hashes, in the correct order.\n", - "* Appending or prepending lists of 0 elements yields the same hash, as expected.\n", + "* You can calculate the hash of any list concatenated with a copy of itself by matrix multiplication of the the hash with itself. This works for single elements as well as arbitrarily long lists.\n", + "* A list can have multiple copies of the same list item, and swapping them does not affect the list hash. Consider how swapping the first two elements in `[1, 1, 2]` has no discernible effect.\n", + "* The hash of the concatenation of two lists is the matrix multiplication of their hashes.\n", + "* Concatenating a list with a list of 0 elements yields the same hash.\n", "\n", "Lets explore this definition in more detail with a simple implementation in python+numpy." ] @@ -47,12 +51,15 @@ "execution_count": 1, "id": "99b521d8-1c66-49d7-98e9-6fa1d8d7c18f", "metadata": { + "jupyter": { + "source_hidden": true + }, "tags": [] }, "outputs": [], "source": [ - "# setup\n", - "\n", + "#collapse-hide\n", + "# Setup and imports\n", "import hashlib\n", "import numpy as np\n", "from functools import reduce\n", @@ -70,7 +77,7 @@ "metadata": {}, "source": [ "### The hash of a list element - `hash_m/1`\n", - "The function `hash_m/1` takes a buffer of bytes as its first argument, and returns the sha512 hash of the bytes formatted as an 8×8 2-d array of 8-bit unsigned integers with wrapping overflow. **This is the hash of a list element consisting of those bytes.** Based on a shallow wikipedia dive, someone familiar with linear algebra might say it's a [matrix ring](https://en.wikipedia.org/wiki/Matrix_ring), $R_{256}^{8×8}$. Not coincidentally, sha512 outputs 512 bits = 64 bytes = 8 * 8 array of bytes, how convenient. (In fact, that might even be the primary reason why I chose sha512!)" + "The function `hash_m/1` takes a buffer of bytes as its first argument, and returns the sha512 hash of the bytes formatted as an 8×8 2-d array of 8-bit unsigned integers with wrapping overflow. **We define this hash to be the hash of the list element.** Based on a shallow wikipedia dive, someone familiar with linear algebra might say it's a [matrix ring](https://en.wikipedia.org/wiki/Matrix_ring), $R_{256}^{8×8}$. Not coincidentally, sha512 outputs 512 bits = 64 bytes = 8 * 8 array of bytes, how convenient. (In fact, that might even be the primary reason why I chose sha512!)" ] }, { @@ -105,6 +112,9 @@ "execution_count": 3, "id": "65aa7c7a-25d5-4971-8780-661f367e45ab", "metadata": { + "jupyter": { + "source_hidden": true + }, "slideshow": { "slide_type": "skip" }, @@ -136,6 +146,7 @@ } ], "source": [ + "#collapse-hide\n", "print(hash_m(b\"Hello A\"))\n", "print()\n", "print(hash_m(b\"Hello B\"))" @@ -171,26 +182,42 @@ }, { "cell_type": "code", - "execution_count": 5, - "id": "6ae6ea62-8fb9-4015-8a62-4b5c3dbd98d3", + "execution_count": 17, + "id": "eb84e6e1-b1c1-48f4-aa50-3ae0edfc78af", "metadata": {}, "outputs": [], "source": [ - "# list1 contains 3 elements\n", + "#\n", + "# `elements` is a list of 3 elements\n", "elements = [b\"A\", b\"Hello\", b\"World\"]\n", - "# first hash each element\n", + "# first, make a new list with the hash of each element\n", "element_hashes = [hash_m(e) for e in elements]\n", "# get the hash of the list by reducing the hashes by matrix multiplication\n", "list_hash1 = mul_m(mul_m(element_hashes[0], element_hashes[1]), element_hashes[2])\n", "# an alternative way to write the reduction\n", - "list_hash2 = reduce(mul_m, element_hashes)" + "list_hash2 = reduce(mul_m, element_hashes)\n", + "# check that these alternative spellings are equivalent\n", + "assert_equal(list_hash1, list_hash2)" + ] + }, + { + "cell_type": "markdown", + "id": "5632eb48-e5cd-4ec4-9bcd-1b59a5dc6042", + "metadata": {}, + "source": [ + "> Expand the sections below to see a comparison" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 18, "id": "694b4727-621e-4c1b-a2af-99296a8e664a", "metadata": { + "collapsed": true, + "jupyter": { + "outputs_hidden": true, + "source_hidden": true + }, "tags": [] }, "outputs": [ @@ -238,13 +265,17 @@ } ], "source": [ + "#collapse-hide\n", + "#collapse-output\n", "print(\"List of elements:\")\n", "print(elements)\n", - "print(\"\\nHash of each element:\")\n", + "print()\n", + "print(\"Hash of each element:\")\n", "print(element_hashes)\n", - "print(\"\\nHash of full list:\")\n", + "print()\n", + "print(\"Hash of full list:\")\n", "print(list_hash1)\n", - "assert_equal(list_hash1, list_hash2)" + "# Expand the section below to see the output" ] }, { @@ -257,18 +288,18 @@ "* [Associativity](#Associativity) - Associativity enables you to reduce a computation using any partitioning because all partitionings yield the same result. Addition is associative $(1+2)+3 = 1+(2+3)$, subtraction is not $(5-3)-2\\neq5-(3-2)$. ([Associative property](https://en.wikipedia.org/wiki/Associative_property))\n", "* [Non-Commutativity](#Non-Commutativity) - Commutativity allows you to swap elements without affecting the result. Addition is commutative $1+2 = 2+1$, but division is not $1\\div2 \\neq2\\div1$. And neither is matrix multiplication. ([Commutative property](https://en.wikipedia.org/wiki/Commutative_property))\n", "\n", - "This is an unusual combination of properties for an operation, at least not a combination encountered under normal algebra operations:\n", + "This is an unusual combination of properties for an operation. It's at least not a combination encountered in introductory algebra:\n", "\n", "| | associative | commutative |\n", "| --- | --- | --- |\n", - "| + | ✅ | ✅ |\n", - "| * | ✅ | ✅ |\n", - "| - | ❌ | ❌ |\n", - "| / | ❌ | ❌ |\n", - "| exp | ❌ | ❌ |\n", - "| M×M | ✅ | ❌ |\n", + "| $a+b$ | ✅ | ✅ |\n", + "| $a*b$ | ✅ | ✅ |\n", + "| $a-b$ | ❌ | ❌ |\n", + "| $a/b$ | ❌ | ❌ |\n", + "| $a^b$ | ❌ | ❌ |\n", + "| $M×M$ | ✅ | ❌ |\n", "\n", - "Upon consideration, these are the exact properties that one would want in order to define the hash of a list of items. Non-commutativity enables the order of elements in the list to be well-defined, since swapping different elements produces a different hash. Associativity enables caching the summary of an arbitrary sublist; I expect that doing this heirarchally on a huge list enables an algorithm to calculate the hash of any sublist at the cost of `O(log(N))` time and space.\n", + "Upon consideration, these are the exact properties that one would want in order to define the hash of a list of items. Non-commutativity enables the order of elements in the list to be well defined, since swapping different elements produces a different hash. Associativity enables calculating the hash of the list by performing the reduction operations in any order, and you still get the same hash.\n", "\n", "Lets sanity-check that these properties can hold for the construction described above." ] @@ -278,7 +309,9 @@ "id": "c6c8ef5e-99d2-4a7e-887f-54b93a7baf4a", "metadata": {}, "source": [ - "### Associativity" + "### Associativity\n", + "\n", + "If it's associative, we should get the same hash if we rearrange the parenthesis to indicate reduction in a different operation order. That is: $((e1 × e2) × e3) = (e1 × (e2 × e3))$" ] }, { @@ -290,35 +323,47 @@ }, "outputs": [], "source": [ - "f1 = hash_m(b\"Hello A\")\n", - "f2 = hash_m(b\"Hello B\")\n", - "f3 = hash_m(b\"Hello C\")" + "e1 = hash_m(b\"Hello A\")\n", + "e2 = hash_m(b\"Hello B\")\n", + "e3 = hash_m(b\"Hello C\")" ] }, { "cell_type": "code", "execution_count": 8, - "id": "b631007c-3784-4c32-9c3e-447267c45a24", + "id": "0452955b-2d7e-41e4-924f-8f00ef0c46cf", "metadata": { "tags": [] }, "outputs": [], "source": [ - "# x is calculated by association ((f1 × f2) × f3)\n", - "x = np.matmul(np.matmul(f1, f2), f3)\n", + "x = np.matmul(np.matmul(e1, e2), e3)\n", + "y = np.matmul(e1, np.matmul(e2, e3))\n", "\n", - "# y is calculated by association (f1 × (f2 × f3))\n", - "y = np.matmul(f1, np.matmul(f2, f3))\n", - "\n", - "# observe that they produce the same result\n", + "# observe that they produce the same summary\n", "assert_equal(x, y)" ] }, + { + "cell_type": "markdown", + "id": "bda2bacf-daf7-4f42-93cf-c422704dc067", + "metadata": { + "tags": [] + }, + "source": [ + "> Expand the sections below to see a comparison" + ] + }, { "cell_type": "code", "execution_count": 9, "id": "b7a1906d-524c-4339-920a-978a0385d6cc", "metadata": { + "collapsed": true, + "jupyter": { + "outputs_hidden": true, + "source_hidden": true + }, "tags": [] }, "outputs": [ @@ -347,6 +392,8 @@ } ], "source": [ + "#collapse-hide\n", + "#collapse-output\n", "print(x)\n", "print()\n", "print(y)" @@ -357,33 +404,47 @@ "id": "c0fb04da-2cbd-4fa1-8b85-d48441cc8962", "metadata": {}, "source": [ - "### Non-Commutativity" + "### Non-Commutativity\n", + "\n", + "If it's not commutative, then swapping different elements should produce a different hash. That is, $e1 × e2 \\ne e2 × e1$:" ] }, { "cell_type": "code", "execution_count": 10, - "id": "182652ac-a08f-4009-9354-7aaa8632d921", + "id": "2f3d139a-6c48-4ddb-9a34-7b2aa00853d6", "metadata": { "tags": [] }, "outputs": [], "source": [ - "# x is f1 × f2\n", - "x = np.matmul(f1, f2)\n", + "x = np.matmul(e1, e2)\n", + "y = np.matmul(e2, e1)\n", "\n", - "# y is f2 × f1\n", - "y = np.matmul(f2, f1)\n", - "\n", - "# observe that they produce different results\n", + "# observe that they produce different summaries\n", "assert_not_equal(x, y)" ] }, + { + "cell_type": "markdown", + "id": "a8c05183-08db-44f1-b0cc-5fb4aed77b1b", + "metadata": { + "tags": [] + }, + "source": [ + "> Expand the sections below to see a comparison" + ] + }, { "cell_type": "code", "execution_count": 11, "id": "7f833e44-79d8-4c98-af41-0c915bee66ed", "metadata": { + "collapsed": true, + "jupyter": { + "outputs_hidden": true, + "source_hidden": true + }, "tags": [] }, "outputs": [ @@ -412,6 +473,8 @@ } ], "source": [ + "#collapse-hide\n", + "#collapse-output\n", "print(x)\n", "print()\n", "print(y)" @@ -451,7 +514,7 @@ "def identity_m():\n", " return np.identity(8, dtype=np.uint8)\n", "\n", - "# generalize to any length, not just doublings, performed in ln(N) matmuls\n", + "# generalize double_m to any length, not just doublings, performed in ln(N) matmuls\n", "def repeat_m(m, n):\n", " res = identity_m()\n", " while n > 0:\n", @@ -506,25 +569,14 @@ " [ 19 135 80 115 75 242 242 5]\n", " [244 165 250 28 76 43 188 254]\n", " [233 46 187 39 151 241 175 130]\n", - " [132 138 6 215 20 132 89 33]]\n", - "\n", - "[[1 0 0 0 0 0 0 0]\n", - " [0 1 0 0 0 0 0 0]\n", - " [0 0 1 0 0 0 0 0]\n", - " [0 0 0 1 0 0 0 0]\n", - " [0 0 0 0 1 0 0 0]\n", - " [0 0 0 0 0 1 0 0]\n", - " [0 0 0 0 0 0 1 0]\n", - " [0 0 0 0 0 0 0 1]]\n" + " [132 138 6 215 20 132 89 33]]\n" ] } ], "source": [ "print(hash1)\n", "print()\n", - "print(hash2)\n", - "print()\n", - "print(np.identity(8,\"B\"))" + "print(hash2)" ] }, { @@ -567,7 +619,9 @@ "id": "6c62dcbc-63a7-4a20-8f15-295e7675f7a8", "metadata": {}, "source": [ - "Flex that associativity `(a × (a499 × b × a500) × (a500 × b × a499) × a)` = `(a500 × b × (a500 × a500) × b × a500)`" + "Flex that associativity - this statement is true and equivalent to the assertion below:\n", + "\n", + "$(a × (a499 × b × a500) × (a500 × b × a499) × a) = (a500 × b × (a500 × a500) × b × a500)$" ] }, { @@ -589,9 +643,8 @@ "\n", "This appears to me to be a reasonable way to define the hash of a list. The mathematical definition of a list aligns very nicely with the properties offered by matrix multiplication. But is it appropriate to use for the same things that a Merkle Tree would be? The big questions are related to the valuable properties of hash functions:\n", "\n", - "* Given a merklist summary or sublist summaries of it, can you derive the hashes of elements or their order? (Elements themselves are protected by the preimage resistance of the underlying hash function.)\n", - " * If yes, when is that a problem?\n", "* Given a merklist summary but not the elements, is it possible to produce a different list of elements that hash to the same summary? (~preimage resistance)\n", + "* Given a merklist summary or sublist summaries of it, can you derive the hashes of elements or their order?\n", "* Is it possible to predictably alter the merklist summary by concatenating it with some other sublist of real elements?\n", "* Are there other desirable security properties that would be valuable for a list hash?\n", "* Is there a better choice of hash function as a primitive than sha512?\n", @@ -614,7 +667,7 @@ "* Using a Merklist summary tree you can create a consistent hash of any ordered key-value store (like a btree) that can be maintained incrementally inline with regular node updates, e.g. as part of a [LSM-tree](https://en.wikipedia.org/wiki/Log-structured_merge-tree). This could facilitate verification and sync between database replicas.\n", "* The sublist summary tree structure can be as dense or sparse as desired. You could summarize down to pairs of elements akin to a merkle tree, but you could also summarize a compressed sublist of hundreds or even millions of elements with a single hash. Of course, calculating or verifying a proof of changes to the middle of that sublist would require rehashing the whole sublist, but this turns it from a fixed structure into a tuneable parameter.\n", "* If all possible elements had an easily calculatable inverse, that would enable \"subtracting\" an element by inserting its inverse in front of it. That would basically extend the group from a ring into a field, and might have interesting implications.\n", - " * For example you could define a cryptographically-secure rolling hash where advancing either end can be calculated in `O(1)` time.\n", + " * For example you could define a cryptographically-secure rolling hash where advancing either end can be calculated in `O(1)` time and space.\n", "\n", "To be continued..." ] diff --git a/ghtop_images/sparknb.gif b/ghtop_images/sparknb.gif deleted file mode 100644 index 24964c1ad604f41cec629d1672c90ad6ec6e8864..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42529 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%0AgY>@fQ{lfgxn6%!cb1pH zsAsh8`t@Ujer~hlsLE%}J=8JUfh(s^pS{^qO$O5*eQ z*U*#){*q_Xk(7*ECm5ssuC|JbRet-o2Xu}4eP)%VHHCy*1fghLZlUm6i5+)#31BjF zi#bq$!|>o8XU|7pQvVr=i&J#mq&iUB6uGN>?IuNx^vLu^11s8FEE!v|4pW`D<* zrG+T;w4|qS2gT^zL_&h-VO4(CoAm%jJ{;_$Xnb&pJ0H0ND`Ou+IPEis^Q7{v&am} zC_Um@Xu=}7e#^gR49$7wimr6r4MyKPcmBG2UP~v=8PK9ER0;|!(ELe+g~DKN%ev?xSD0_*?Rpc@B$5xqASz z*1xf?zQO0)68Pa-Vs_`$(?6rXB2Nc^1*z5CagTBN?=LR+Ro=wWHr?*<+n>C7N6+I< z_WQ7P`te+odSXi9jxJ)B(b_iPEEN4P3s~QNoMt~d68W5EUy$=OZD-Dm`M|8}w&={Y zuOE22-E)%_~1|C||glv|fRE_2ONFr;FXB7VKz_ zHlB+7=iA}quOgx{3+SI4xh=0+WY1Q7Iaj-OK5OV0@cXUwjv4#Kca_Z#*Z|2sX8H1n z%k-dIYc!`eSpOM@ivnmc8g4|eE2BOGEFk~1bh`{+ z?k?Y~S@dmnLew{;pL!PjRNcx29QWwSgZ7^qO_NhPZ|4s6XHzpn6w1+zO7~;EWvvUY zjqF<0H*taZVP3Dl85yGqLK42bjeP$7`;cwKxsqSjz0`uc+_*E(ipjg1|M3)ebJfg) zRev4b-Z}bDW7*~Du~jqQAD-y-i3!zeOB18^{Uwh&-QhyaY@DnPU*!#{6D_NR?+ znORK<;fvLqPPGJVo7kr7AWf@LN~|(i2h4)Ol?dfxYc{tk+g201buM*Oh4F7%$OGag z)gIS(PzGCf$}*A(s>Gy2ptY7L)IhAcThdY~_jly_XXJj@pf@Wi$#3TBujWi?LH~G& zr^0*%c22=D&x^K>Uo4P~FP9HmjtRlUsv;L1dZQFf8ZO$3+oKsQN**st9WPq1%dl_) zEQG+60?pJCEr1l#4FIjfq7iVm5sWy5nmZ%4{?xc>PDbdKIiXt`1J+kWn!~>D+ksu} zs}|f@^`Sk_D<$79W50Y1x<&9{K`XMJbEh<9=bjrvke zTBaou4TV#B|H8wC%R5Wrj$%JzJqOU#mI)}loJe4L;h3mswco=;h!2z2Hi$N)Q6}J` zo~oVc`sDcumOq9{KS;?RXl4K4mVL%8_$#sOeHA6KdGCaRc%;ZA*Ty8NNMa*6!OZl^ z0|6j2JTKtzH7B`dlL_Fgh%@E+j>aVm6_9_u38Ym#_?jM_hxXRS zZ3+$=9i89bDt{duw0w;9y0d&ty6%j7=2E!wtpgBqGG+<^_ES+mQ0v9U;-IrjLj1xW zwny^^5U={Eg@J2NcaUB&!=mHz-C7UlcR};e)Qw8=S4Uz_9Qo@7(puM%yS0Q7E%Cb+rq`2Y^^}NuYF0h1rk>ti&lstth>>5q)}ee_!(|e%9=bQ zn!K}`d~2HgyPE<=npS>qQqh}(WX&NF&1TcOQ(z4}yi-z91P1c$k(VCvsno-l5)!mvi(z^3|D{`v!Ulia6;PM|cgj0L~ diff --git a/ghtop_images/token.png b/ghtop_images/token.png deleted file mode 100644 index c89158c47270c8b2b123bed285ceeabbfe6693d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53413 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 Pga0TiXvmk!ng;(LTevyW diff --git a/my_icons/fastai_logo.png b/my_icons/fastai_logo.png deleted file mode 100644 index ee8f24201f0ef119cb4c0e7c14d09e3cff2c1a05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7125 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 F{tJ%Rg5>}J