# How to perform Shamir Secret Sharing with a Tabula Recta?

In this post, a couple comments suggested that a tabula recta could be used to perform Shamir Secret Sharing. I'm specifically interested in this statement:

you could just have a table of all 100 inverses mod 101

If this simply means a 10x10 table, that's no problem. That's smaller than a regular tabula recta. But even if it's 100x100, I am still interested in how this would work.

• I think what the comment "you could just have a table of all 100 inverses mod 101" means is that you could easily compute the inverse for each value in $\mathbb{Z}_{101}$ and create a lookup table (i.e. map) of value -> inverse to quickly find inverses. Note that this works because 101 is prime so all elements of $\mathbb{Z}_{101}$ are in $\mathbb{Z}^{\times}_{101}$. – puzzlepalace Oct 12 '18 at 5:21
• I concur with puzzlepalace. I think the comment was referring to a construct which would greatly improve the efficiency of some of the operations at the cost of some initial expense of constructing the table. It is possible to build a set of tables, if you wanted, to be able to lookup secrets given their shares, but the number of combinations grows very quickly. This approach would not be very practical since a simple vector dot product will suffice. – Ken Goss Oct 12 '18 at 13:48

Taking the question as literally as possible, I have provided my pencil and paper tables for a scheme among three parties with a polynomial of degree 2 and a field of $$\mathbb{Z}_5$$ to keep things feasible for a pencil and paper example. Given the tables, in order to reconstruct any secret look up the table to be used by the share from party 1 (table numbers are denoted in a box to the upper left of each table), the row to be used by the share from party 2 and the column to be used by the share for party 3.
I've provided an example polynomial $$4x^2+3x+1$$ which evaluates correctly to 1, the secret, at $$x=0$$, 3 when $$x=1$$, 3 when $$x=2$$, and finally 1 when $$x=3$$. Then, to reveal the secret, take these shares and look them up as described. I've boxed in red the correct value from following the described procedure. This set of tables should work for any polynomial valid in the field described and for shares based on players associated with the same values for $$x$$. $\mathbb{Z}_5$">
• "in order to reconstruct any secret look of the table to be used by the share from party 1" I suspect there is a typo somewhere, right? Look "up" the table, not look "of"? – Meler Lawler Oct 13 '18 at 2:14
• All operations are in the group defined by the scheme's modulus, in this case 5. So it's not the number of tables, the number of tables is itself a result of the choice of the group for the secret sharing scheme. 8 is congruent to 3 in $\mathbb{Z}_5$. So the 'y' from share 1 selects the table, the y from share 2 selects the row, and the y from share 3 selects the column. – Ken Goss Oct 13 '18 at 2:56