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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
|
Return-Path: <kefkius@maza.club>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
[172.17.192.35])
by mail.linuxfoundation.org (Postfix) with ESMTPS id E4264413
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Apr 2016 23:00:53 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-qg0-f49.google.com (mail-qg0-f49.google.com
[209.85.192.49])
by smtp1.linuxfoundation.org (Postfix) with ESMTPS id EA7FC1A0
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Apr 2016 23:00:51 +0000 (UTC)
Received: by mail-qg0-f49.google.com with SMTP id c6so12432545qga.1
for <bitcoin-dev@lists.linuxfoundation.org>;
Tue, 26 Apr 2016 16:00:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=maza-club.20150623.gappssmtp.com; s=20150623;
h=to:from:subject:message-id:date:user-agent:mime-version
:content-transfer-encoding;
bh=BAYSOTNoezLzMSvf8lS7T4+XBlJgUZy+k6zVE+p8+1g=;
b=W0Nm3yEF7EGmF07JMWrTDNBvCUAXTbJrpJrxBrN97WpwC+5BJwoMW1fFoVW/GHW1ce
WITPZaeENlGIppOYmQ/Q6rYzyyJgM8N3Ld41EVDkBpIwoKXpL9MNmGkNZg4UEdQYwduk
eoJ9BBQ/4zpAM1r42hqHpSqwCoQM90QmTgp6DcqhrCuVW6sh5A4aOPdMF39Nn99JwKQz
KDf67rxNmRGUThiXvmWT5K469ZFTnG/tbW29m8JHJVtUYlm021eweQj+8z7UOh2w4X9A
1v517xNqrNh9gLGA+9PqnsbU4ik2p6B3njdLQ71Ik4wDoKkFhjvKL9Dykrsz5ES/1PN3
fkjg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20130820;
h=x-gm-message-state:to:from:subject:message-id:date:user-agent
:mime-version:content-transfer-encoding;
bh=BAYSOTNoezLzMSvf8lS7T4+XBlJgUZy+k6zVE+p8+1g=;
b=dyym999jQ0DwxI/GNmyHmxcz0OhAjrMas81RYb1uKbaH7QB25UoIk6E7YQ/a4oUgAR
nCk4s9HyW76XJJ+/JP7Xu10W4NV23B9TYBJzEpw086Hcij75/JFEVR06PVD4NgEP8Q24
NazaBtpQpgN/xMgCeQ2MbVPv1nViaBCY9ayYpWcGQaoZu2w0TXKc1TP8FB33WKFMEn0Y
vlLf7wDMcWKTsjEpWE4yykyEakC6wcfg+RXbQRU0gw6Xb1sJn85G4373QrBROD8vri28
uOobU0fJWpQEAsRiyhJXovmw+v1t5211JwpM6lOOLXvCWa94aVQhsHldsvp3CkK6hkL9
j0SQ==
X-Gm-Message-State: AOPr4FUJuvCq47AriCnXQpfDb/zJox2c/Fg1uncNunVx94IdVq+szngBKM3zg9vpke1emg==
X-Received: by 10.140.94.146 with SMTP id g18mr4975260qge.1.1461711650997;
Tue, 26 Apr 2016 16:00:50 -0700 (PDT)
Received: from [192.168.0.37] (nc-71-0-118-106.dyn.embarqhsd.net.
[71.0.118.106]) by smtp.googlemail.com with ESMTPSA id
d12sm337940qhd.13.2016.04.26.16.00.50
for <bitcoin-dev@lists.linuxfoundation.org>
(version=TLSv1/SSLv3 cipher=OTHER);
Tue, 26 Apr 2016 16:00:50 -0700 (PDT)
To: bitcoin-dev@lists.linuxfoundation.org
From: Kefkius <kefkius@maza.club>
Message-ID: <571FF320.8010603@maza.club>
Date: Tue, 26 Apr 2016 19:00:48 -0400
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
Thunderbird/38.6.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,
DKIM_VALID,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
smtp1.linux-foundation.org
X-Mailman-Approved-At: Tue, 26 Apr 2016 23:03:26 +0000
Subject: [bitcoin-dev] BIP Draft: Multi-Currency Hierarchy For Use In
Multisignature Deterministic Wallets
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Development Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Apr 2016 23:00:54 -0000
I'm re-submitting this after a little under a year because, though it
generated little discussion, I feel it is still necessary.
The following can also be found at:
https://github.com/Kefkius/bip-kefkius-multicoin-multisig/blob/master/README.md
<pre>
BIP: bip-kefkius-multicoin-multisig
Title: Multi-Currency Hierarchy For Use In Multisignature
Deterministic Wallets
Author: Tyler Willis <kefkius@maza.club>
Status: Draft
Type: Standards Track
</pre>
## Abstract ##
This BIP defines a hierarchy based on BIP-0044 for deterministic wallets
intended to facilitate multi-currency, multisignature wallet management.
This BIP is an application of BIP-0043.
## Motivation ##
The hierarchy defined in BIP-0044 places a coin's type level above the
level designating account number. This limits the possible
implementations of multi-currency, multisignature wallets. The hierarchy
defined here facilitates the creation of wallets intended to be both
multi-currency and multisignature.
## Specification ##
### Path Levels ###
<pre>
m / purpose' / wallet' / coin_type / change / address_index
</pre>
#### Purpose ####
Purpose is a constant tentatively set to
`bip-kefkius-multicoin-multisig` as there is no BIP number assigned to
this proposal. Hardened derivation is used here.
#### Wallet ####
This level is incremented for every wallet that one makes. Much like the
account node in BIP-0044, this is intended to organize independent
identities within the key space.
Basically, each index in this level represents a group of cosigners.
Hardened derivation is used here.
#### Coin Type ####
This is the BIP-0044 index of the coin being managed. Public derivation
is used here.
Public derivation is used so that cosigners need only know one of each
other's public keys, rather than needing to distribute public keys for
each coin.
#### Change ####
0 is used for public addresses and 1 is used for change addresses.
Identical to BIP-0044 behavior. Public derivation is used here.
#### Address Index ####
The address index. This increases sequentially as it does in BIP-0044.
Public derivation is used here.
## Examples ##
| wallet | coin | change? | address | path |
|:-------|:----------|:--------|:--------|:-----------------------------|
| first | Bitcoin | no | first | m /
bip-kefkius-multicoin-multisig' / 0' / 0 / 0 / 0 |
| first | Bitcoin | no | second | m /
bip-kefkius-multicoin-multisig' / 0' / 0 / 0 / 1 |
| first | Testnet | no | first | m /
bip-kefkius-multicoin-multisig' / 0' / 1 / 0 / 0 |
| second | Bitcoin | no | first | m /
bip-kefkius-multicoin-multisig' / 1' / 0 / 0 / 0 |
| second | Bitcoin | yes | first | m /
bip-kefkius-multicoin-multisig' / 1' / 0 / 1 / 0 |
| third | Testnet | yes | sixth | m /
bip-kefkius-multicoin-multisig' / 2' / 1 / 1 / 5 |
|