summaryrefslogtreecommitdiff
path: root/21/eaf8849de799aaf571a150f2fff56ada981a3d
blob: c559b95f702ded32db5bd3f0575db6a7a88c79a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Received: from sog-mx-2.v43.ch3.sourceforge.com ([172.29.43.192]
	helo=mx.sourceforge.net)
	by sfs-ml-1.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <jim@jim.sh>) id 1WI0Y6-0005Y1-9k
	for bitcoin-development@lists.sourceforge.net;
	Mon, 24 Feb 2014 18:46:42 +0000
X-ACL-Warn: 
Received: from jim.sh ([75.150.123.25] helo=psychosis.jim.sh)
	by sog-mx-2.v43.ch3.sourceforge.com with esmtps (TLSv1:AES256-SHA:256)
	(Exim 4.76) id 1WI0Xv-00035M-Le
	for bitcoin-development@lists.sourceforge.net;
	Mon, 24 Feb 2014 18:46:42 +0000
Received: from psychosis.jim.sh (localhost [127.0.0.1])
	by psychosis.jim.sh (8.14.4/8.14.4/Debian-2) with ESMTP id
	s1OITVpX016869
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
	Mon, 24 Feb 2014 13:29:31 -0500
Received: (from jim@localhost)
	by psychosis.jim.sh (8.14.4/8.14.4/Submit) id s1OITVpC016868;
	Mon, 24 Feb 2014 13:29:31 -0500
Date: Mon, 24 Feb 2014 13:29:31 -0500
From: Jim Paris <jim@jtan.com>
To: Mark Friedenbach <mark@monetize.io>
Message-ID: <20140224182931.GA16588@psychosis.jim.sh>
References: <5306BCC1.8040004@monetize.io>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <5306BCC1.8040004@monetize.io>
Sender: jim@jim.sh
User-Agent: Mutt/1.5.20 (2009-06-14)
X-Virus-Scanned: clamav-milter 0.97.5 at psychosis
X-Virus-Status: Clean
X-Spam-Score: -0.0 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay
	domain
X-Headers-End: 1WI0Xv-00035M-Le
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] Base-32 error correction coding
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Mon, 24 Feb 2014 18:46:42 -0000

Mark Friedenbach wrote:
> What follows is a proposed BIP for human-friendly base-32
> serialization with error correction encoding.
...
> 2. Automatic correction of up to 1 transcription error per 31 coded
> digits (130 bits of payload data). For a 256-bit hash or secret key,
> this enables seamless recovery from up to two transcription errors so
> long as they occur in separate halves of the coded representation.

Can we do better than correcting single transcription errors?  I'd
imagine that transposition of two adjacent characters, or insertion or
deletion of a single character, would be very common.  At the very
least, a transposition could be corrected by interleaving the two
"halves of the coded representation", e.g.:

   ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB

insead of
   
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Jim