Author: Pieter Wuille 2018-06-23 19:49:54
Published on: 2018-06-23T19:49:54+00:00
Pieter and Russell O'Connor have been discussing the correctable error rates of codes designed for length 341, which is the first length enough to support 512 bits of data. It is noted that the number of correctable errors includes errors inside the checksum characters themselves, meaning that aiming for a certain percentage of correctable characters increases the numbers dramatically. Pieter provides some numbers for codes restricted to a total of 341 characters and assuming 103 data characters, including 26 checksum characters (adding 25%, 20% of overall string), seven errors can be corrected (5% of overall string). With 62 checksum characters (adding 60%, 38% of overall string), 17 errors can be corrected (10% of overall string). With 116 checksum characters (adding 113%, 53% of overall string), 33 errors can be corrected (15% of overall string) and with 195 checksum characters (adding 189%, 65% of overall string), 60 errors can be corrected (20% of overall string). Furthermore, for codes restricted to 1023 characters total (including the checksum characters) and assuming 103 data characters, including 27 checksum characters (adding 26%, 21% of overall string), seven errors can be corrected (5% of overall string). With 64 checksum characters (adding 62%, 38% of overall string), 17 errors can be corrected (10% of overall string), with 127 checksum characters (adding 123%, 57% of overall string), 36 errors can be corrected (15% of overall string), with 294 checksum characters (adding 285%, 74% of overall string), 80 errors can be corrected (20% of overall string), and with 920 checksum characters (adding 893%, 90% of overall string), 255 errors can be corrected (25% of overall string). Russell O'Connor suggests that it might be better to support multiple checksum variants instead of having a trade-off between the length of the code and recovery properties, as the user's medium of storage is likely to vary from person to person. He personally would probably be interested in the 51 or even 102 character checksums variants. Pieter offers to construct reference source code for any of these variants.
Updated on: 2023-05-20T16:32:45.954522+00:00