Skip to content

Commit f81848d

Browse files
committed
feat(): stellar multisig
1 parent 8d776a1 commit f81848d

28 files changed

+143
-0
lines changed

sidebars.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,7 @@ module.exports = {
323323
"guides/delegate-xtz",
324324
"guides/stake-xtz",
325325
"guides/stellar-assets",
326+
"guides/stellar-multisig",
326327
],
327328
},
328329
"isolated-module",
Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
---
2+
title: Setup Stellar Multisig
3+
slug: /guides/stellar-multisig
4+
---
5+
6+
import IPhoneWrapper from "@site/src/components/IPhoneWrapper";
7+
8+
## How to setup Stellar Multisig in AirGap
9+
10+
### How to enable stellar multisig in AirGap
11+
12+
In this guide, we'll walk through how to set up Stellar Multisig in AirGap.
13+
14+
:::note Stellar Multisig
15+
To better understand thresholds, weights, and how Stellar multisig works, please visit the [Stellar documentation](https://developers.stellar.org/docs/learn/encyclopedia/security/signatures-multisig)
16+
:::
17+
18+
Launch the wallet and select your Stellar account
19+
20+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig.png"} />
21+
22+
Click the "Enable Multisig" button
23+
24+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig1.png"} />
25+
26+
Input the signer and click the "Add Signer" button
27+
28+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig2.png"} />
29+
30+
Select your interaction style. In this example we used an offline device.
31+
32+
<IPhoneWrapper src={"/img/stellar-assets/stellar_add_token6.png"} />
33+
34+
Scan QR with your AirGap vault
35+
36+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig3.png"} />
37+
38+
Sign transaction
39+
40+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig4.png"} />
41+
42+
Select your interaction style. In this example we use the QR code scanning.
43+
44+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig5.png"} />
45+
46+
Scan QR with your AirGap Wallet
47+
48+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig6.png"} />
49+
50+
Click the "confirm button" to broadcast transaction
51+
52+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig7.png"} />
53+
54+
Transaction should be successful
55+
56+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig8.png"} />
57+
58+
Select the Stellar account to confirm you've now switched to a multisig acccount. It should now like this:
59+
60+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig9.png"} />
61+
62+
### How to remove a signer or add extra signer
63+
64+
Click the "Manage Multisig" button
65+
66+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig10.png"} />
67+
68+
Input the signer you want to add or remove.
69+
Assign a weight of 0 to remove a signer or any another weight to include a signer. Click the "Update Multisig" button
70+
71+
:::note AirGap Implementation
72+
In AirGap's implementation, the low threshold must be lower than the medium threshold, and the medium threshold must be lower than the high threshold. Additionally, the total combined weight of all signers must exceed the high threshold.
73+
This design enforces proper multisig hierarchy, preventing misconfigurations that could allow low-weight signers to authorize high-level operations.
74+
:::
75+
76+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig11.png"} />
77+
78+
Select your interaction style. In this example we used an offline device.
79+
80+
<IPhoneWrapper src={"/img/stellar-assets/stellar_add_token6.png"} />
81+
82+
Scan QR with your AirGap vault
83+
84+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig12.png"} />
85+
86+
Sign transaction
87+
88+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig14.png"} />
89+
90+
Select your interaction style. In this example we use the QR code scanning.
91+
92+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig15.png"} />
93+
94+
Scan QR with your AirGap Wallet
95+
96+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig16.png"} />
97+
98+
Since this is a multisig account, broadcasting the transaction without meeting the required threshold will fail. Therefore the "comfirmed" button is disabled by default. Toggle the "Display Details" button to copy the XDR and complete the signing process.
99+
100+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig17.png"} />
101+
102+
### How to sign XDR in AirGap
103+
104+
Proceed to sign the XDR to collect additional signatures. Open the accounts that are listed as signers.
105+
106+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig18.png"} />
107+
108+
Click the "Sign XDR" button and input the XDR. Then click "Sign" button.
109+
110+
:::note XDR copied from AirGap
111+
The XDR copied from AirGap Multisig may include quotation marks. Please remove them before signing the XDR.
112+
:::
113+
114+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig19.png"} />
115+
116+
Select your interaction style. In this example we used an offline device.
117+
118+
<IPhoneWrapper src={"/img/stellar-assets/stellar_add_token6.png"} />
119+
120+
Scan QR with your AirGap vault
121+
122+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig20.png"} />
123+
124+
Sign transaction
125+
126+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig21.png"} />
127+
128+
Select your interaction style. In this example we use the QR code scanning.
129+
130+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig22.png"} />
131+
132+
Scan QR with your AirGap Wallet
133+
134+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig23.png"} />
135+
136+
Click the "confirm" button to the broadcast transaction
137+
138+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig24.png"} />
139+
140+
Transaction should be successful
141+
142+
<IPhoneWrapper src={"/img/stellar-multisig/stellar_multisig25.png"} />
132 KB
Loading
370 KB
Loading
386 KB
Loading
380 KB
Loading
330 KB
Loading
248 KB
Loading
306 KB
Loading
251 KB
Loading

0 commit comments

Comments
 (0)