# How to calculate a multiple-character checksum for authentication using a tabula recta?

I am not sure if this is possible to do using a tabula recta, but I would like to know how to calculate a multiple-character checksum of a text. For a single-character checksum, it's easy. You just begin on the table at the first letter of text, go down to the second, left/right to the third, up/down to the fourth, left/right to the fifth, etc., then make a 90-degree turn and keep going until you hit the last letter of text.

How would one calculate a double-character checksum? In other words, the sum of the text with a modulus of 676 in base 26 [A-Z].

• Can it be done with 2 independent tabulae recta? – Paul Uszak Oct 10 '18 at 0:51
• Yes, it can be done with 2 independent tabulae recta. – Meler Lawler Oct 10 '18 at 0:55
• @MelerLawler It is good that Community stepped in to bring this interesting question back to life. If you have gained any insight since asking the question, I am sure many readers would be interested. – Patriot Aug 9 at 8:42
• Thanks for bringing this to my attention. I've posted the correct answer, but I am curious what does it mean for the community to have brought this question back to life? – Meler Lawler Aug 25 at 16:39

I just realized that you could use a 676x676 table with 2-character entries. But hopefully there is an easier way.

It is possible to use only one tabula recta.

Let $$f$$ be the steps to find the checksum, i.e. up x, down y, etc.

After the first character, continue to the second where it left with $$f$$; this time when faced with the boundary from below or right take mod 26 and continue from top or left...

• The single-character checksum for TEXT is H. Does that make f = H? The checksum for HTEXT is O; does that make the double-checksum for TEXT HO? When you say "continue the second where it left with f" I interpret that as recalculate checksum beginning with H. – Meler Lawler Oct 9 '18 at 22:14
• no, just has a single char as outptut. Double or more, my idea calculates all. If you want it can result more than 1 – kelalaka Oct 9 '18 at 22:16
• I don't understand. I wanted a base26 checksum mod ZZ. So I need to be able to input a string and get a double-character output in the range AA-ZZ. – Meler Lawler Oct 9 '18 at 22:23
• take the coordinates of the result and multiply? – kelalaka Oct 10 '18 at 14:20
• @kelalaka Could you please step in and add a clarification to put this question to rest? The final answer is still not clear. – Patriot Jul 10 at 4:22

Since I posted this question I learned the answer is to calculate the checksum as already described in the single-character checksum method, but take both letters which comprise the coordinates of the last letter you land on. Actually you should trace over the entire plaintext twice, otherwise if the length of the text were fraudently modified by exactly 1 character, they could get away with it with odds only 26 to 1, instead of the hoped-for 676 to 1. This is because removing or adding a single character only alters a single checksum character.