Ecoer Logo
VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS0.00%
Net Worth
0.036USD
STEEM
0.000STEEM
SBD
0.000SBD
Effective Power
5.008SP
├── Own SP
0.629SP
└── Incoming Deleg
+4.379SP

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
0.629SP
Delegated Out
0.000SP
Delegation In
4.379SP
Effective Power
5.008SP
Reward SP (pending)
0.000SP
SBD
sbd_balance
0.000SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.000 STEEM",
  "vesting_shares": "1022.908553 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "7120.751253 VESTS",
  "sbd_balance": "0.000 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

namemrbot
id708359
rank601,978
reputation1925802
created2018-02-02T22:56:09
recovery_accountsteem
proxyNone
post_count2
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2018-02-04T22:34:42
last_root_post2018-02-04T22:34:42
last_vote_time1970-01-01T00:00:00
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power0
delayed_votes0
balance0.000 STEEM
savings_balance0.000 STEEM
sbd_balance0.000 SBD
savings_sbd_balance0.000 SBD
vesting_shares1022.908553 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares7120.751253 VESTS
reward_vesting_balance0.000000 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update1970-01-01T00:00:00
last_account_update2018-02-03T06:54:51
minedNo
sbd_seconds0
sbd_last_interest_payment1970-01-01T00:00:00
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "active": {
    "account_auths": [],
    "key_auths": [
      [
        "STM7uUYT7fr8oGrsEbM47AETLqxtwJVuwA2YgpiVvGoC2fUbQohC7",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "balance": "0.000 STEEM",
  "can_vote": true,
  "comment_count": 0,
  "created": "2018-02-02T22:56:09",
  "curation_rewards": 0,
  "delegated_vesting_shares": "0.000000 VESTS",
  "downvote_manabar": {
    "current_mana": 2035914951,
    "last_update_time": 1779077043
  },
  "guest_bloggers": [],
  "id": 708359,
  "json_metadata": "{\"profile\":{\"profile_image\":\"https://postimg.org/image/h14vybtkj/\"}}",
  "last_account_recovery": "1970-01-01T00:00:00",
  "last_account_update": "2018-02-03T06:54:51",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_post": "2018-02-04T22:34:42",
  "last_root_post": "2018-02-04T22:34:42",
  "last_vote_time": "1970-01-01T00:00:00",
  "lifetime_vote_count": 0,
  "market_history": [],
  "memo_key": "STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np",
  "mined": false,
  "name": "mrbot",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "other_history": [],
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM7H4zfuX8oqdc8aGfJm9wseAQXfNYrWBEhiNBugYyznGwm67GKE",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "pending_claimed_accounts": 0,
  "post_bandwidth": 0,
  "post_count": 2,
  "post_history": [],
  "posting": {
    "account_auths": [],
    "key_auths": [
      [
        "STM8VzN4HsMvbPdnm1KyJgGWVDG7s3BhML8bWU4w88JrEai79Xgfx",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://postimg.org/image/h14vybtkj/\"}}",
  "posting_rewards": 0,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "proxy": "",
  "received_vesting_shares": "7120.751253 VESTS",
  "recovery_account": "steem",
  "reputation": 1925802,
  "reset_account": "null",
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.000 STEEM",
  "reward_vesting_balance": "0.000000 VESTS",
  "reward_vesting_steem": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "sbd_balance": "0.000 SBD",
  "sbd_last_interest_payment": "1970-01-01T00:00:00",
  "sbd_seconds": "0",
  "sbd_seconds_last_update": "1970-01-01T00:00:00",
  "tags_usage": [],
  "to_withdraw": 0,
  "transfer_history": [],
  "vesting_balance": "0.000 STEEM",
  "vesting_shares": "1022.908553 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "vote_history": [],
  "voting_manabar": {
    "current_mana": "8143659806",
    "last_update_time": 1779077043
  },
  "voting_power": 0,
  "withdraw_routes": 0,
  "withdrawn": 0,
  "witness_votes": [],
  "witnesses_voted_for": 0,
  "rank": 601978
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
steemdelegated 4.379 SP to @mrbot
2026/05/18 04:04:03
delegateemrbot
delegatorsteem
vesting shares7120.751253 VESTS
Transaction InfoBlock #106148003/Trx c581138194c4017c535c1c0a08d7aaf99aa7b3ec
View Raw JSON Data
{
  "block": 106148003,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "7120.751253 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-05-18T04:04:03",
  "trx_id": "c581138194c4017c535c1c0a08d7aaf99aa7b3ec",
  "trx_in_block": 0,
  "virtual_op": 0
}
steemdelegated 2.711 SP to @mrbot
2026/05/12 19:18:15
delegateemrbot
delegatorsteem
vesting shares4408.540848 VESTS
Transaction InfoBlock #105994227/Trx 4cecd4cfcd39cdc24d7e8f218baa122f16f095b8
View Raw JSON Data
{
  "block": 105994227,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "4408.540848 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-05-12T19:18:15",
  "trx_id": "4cecd4cfcd39cdc24d7e8f218baa122f16f095b8",
  "trx_in_block": 8,
  "virtual_op": 0
}
steemdelegated 4.386 SP to @mrbot
2026/04/26 03:18:57
delegateemrbot
delegatorsteem
vesting shares7133.267009 VESTS
Transaction InfoBlock #105515547/Trx e82c60b286afcf224e872e09a57468035ccc8b79
View Raw JSON Data
{
  "block": 105515547,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "7133.267009 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-04-26T03:18:57",
  "trx_id": "e82c60b286afcf224e872e09a57468035ccc8b79",
  "trx_in_block": 0,
  "virtual_op": 0
}
steemdelegated 2.737 SP to @mrbot
2026/01/23 18:02:21
delegateemrbot
delegatorsteem
vesting shares4450.087667 VESTS
Transaction InfoBlock #102864078/Trx 0eb41a1bc885d494658b3605754987a2fbbf2d3f
View Raw JSON Data
{
  "block": 102864078,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "4450.087667 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-01-23T18:02:21",
  "trx_id": "0eb41a1bc885d494658b3605754987a2fbbf2d3f",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 2.837 SP to @mrbot
2024/12/17 13:14:39
delegateemrbot
delegatorsteem
vesting shares4614.306864 VESTS
Transaction InfoBlock #91310336/Trx 172737dea9f163847b2ff981ac71870c6e2b3335
View Raw JSON Data
{
  "block": 91310336,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "4614.306864 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2024-12-17T13:14:39",
  "trx_id": "172737dea9f163847b2ff981ac71870c6e2b3335",
  "trx_in_block": 0,
  "virtual_op": 0
}
steemdelegated 2.941 SP to @mrbot
2023/11/14 04:56:24
delegateemrbot
delegatorsteem
vesting shares4783.440396 VESTS
Transaction InfoBlock #79864507/Trx ff52303834f94e025b6438ff094cb28006e0e1b1
View Raw JSON Data
{
  "block": 79864507,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "4783.440396 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2023-11-14T04:56:24",
  "trx_id": "ff52303834f94e025b6438ff094cb28006e0e1b1",
  "trx_in_block": 5,
  "virtual_op": 0
}
steemdelegated 4.747 SP to @mrbot
2023/09/22 07:45:21
delegateemrbot
delegatorsteem
vesting shares7720.349182 VESTS
Transaction InfoBlock #78359713/Trx 8965127577caa09069da468ddbbf82c022fbb4cc
View Raw JSON Data
{
  "block": 78359713,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "7720.349182 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2023-09-22T07:45:21",
  "trx_id": "8965127577caa09069da468ddbbf82c022fbb4cc",
  "trx_in_block": 0,
  "virtual_op": 0
}
steemdelegated 4.884 SP to @mrbot
2022/11/03 15:33:51
delegateemrbot
delegatorsteem
vesting shares7942.400620 VESTS
Transaction InfoBlock #69117871/Trx dcfe2a57e6939d7fb91ed69606c973ad08c80f64
View Raw JSON Data
{
  "block": 69117871,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "7942.400620 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2022-11-03T15:33:51",
  "trx_id": "dcfe2a57e6939d7fb91ed69606c973ad08c80f64",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 5.019 SP to @mrbot
2022/01/17 20:58:24
delegateemrbot
delegatorsteem
vesting shares8162.508221 VESTS
Transaction InfoBlock #60821373/Trx aa9390ec25d2bc79263cb2872affd4cb07d6b34a
View Raw JSON Data
{
  "block": 60821373,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8162.508221 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2022-01-17T20:58:24",
  "trx_id": "aa9390ec25d2bc79263cb2872affd4cb07d6b34a",
  "trx_in_block": 14,
  "virtual_op": 0
}
steemdelegated 5.133 SP to @mrbot
2021/06/14 04:15:18
delegateemrbot
delegatorsteem
vesting shares8346.702509 VESTS
Transaction InfoBlock #54611825/Trx 6220de5f7788ec4542e97e864ad78bdf518352ca
View Raw JSON Data
{
  "block": 54611825,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8346.702509 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2021-06-14T04:15:18",
  "trx_id": "6220de5f7788ec4542e97e864ad78bdf518352ca",
  "trx_in_block": 2,
  "virtual_op": 0
}
steemdelegated 5.248 SP to @mrbot
2020/12/11 14:29:45
delegateemrbot
delegatorsteem
vesting shares8534.124483 VESTS
Transaction InfoBlock #49359152/Trx e0ba13c07ea6f0aff01775c7e5fd3a4fc196e50c
View Raw JSON Data
{
  "block": 49359152,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8534.124483 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-11T14:29:45",
  "trx_id": "e0ba13c07ea6f0aff01775c7e5fd3a4fc196e50c",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 1.176 SP to @mrbot
2020/12/06 08:06:03
delegateemrbot
delegatorsteem
vesting shares1912.543513 VESTS
Transaction InfoBlock #49210692/Trx de84ecfc5e08a6313764122a89d51ddba88d5562
View Raw JSON Data
{
  "block": 49210692,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "1912.543513 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-06T08:06:03",
  "trx_id": "de84ecfc5e08a6313764122a89d51ddba88d5562",
  "trx_in_block": 5,
  "virtual_op": 0
}
steemdelegated 5.252 SP to @mrbot
2020/12/05 18:07:27
delegateemrbot
delegatorsteem
vesting shares8540.332337 VESTS
Transaction InfoBlock #49194237/Trx 37ccccf7353fce06b2a7a6f32cf872b65cc6341c
View Raw JSON Data
{
  "block": 49194237,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8540.332337 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-05T18:07:27",
  "trx_id": "37ccccf7353fce06b2a7a6f32cf872b65cc6341c",
  "trx_in_block": 2,
  "virtual_op": 0
}
steemdelegated 1.181 SP to @mrbot
2020/11/02 22:36:33
delegateemrbot
delegatorsteem
vesting shares1920.017158 VESTS
Transaction InfoBlock #48266013/Trx 6d4c710408437be7feba22d75b6069df6add2218
View Raw JSON Data
{
  "block": 48266013,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "1920.017158 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-11-02T22:36:33",
  "trx_id": "6d4c710408437be7feba22d75b6069df6add2218",
  "trx_in_block": 3,
  "virtual_op": 0
}
steemdelegated 5.376 SP to @mrbot
2020/05/09 09:06:48
delegateemrbot
delegatorsteem
vesting shares8743.137696 VESTS
Transaction InfoBlock #43220986/Trx e8ff991e75b3131d6ec7c15db239c43bccaf8de9
View Raw JSON Data
{
  "block": 43220986,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8743.137696 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-05-09T09:06:48",
  "trx_id": "e8ff991e75b3131d6ec7c15db239c43bccaf8de9",
  "trx_in_block": 15,
  "virtual_op": 0
}
steemdelegated 1.201 SP to @mrbot
2020/05/08 13:13:48
delegateemrbot
delegatorsteem
vesting shares1953.311140 VESTS
Transaction InfoBlock #43197692/Trx 6988fd56fe11c792b1fe84a2ae7f8251527395e6
View Raw JSON Data
{
  "block": 43197692,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "1953.311140 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-05-08T13:13:48",
  "trx_id": "6988fd56fe11c792b1fe84a2ae7f8251527395e6",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 5.384 SP to @mrbot
2020/04/16 02:02:45
delegateemrbot
delegatorsteem
vesting shares8756.025144 VESTS
Transaction InfoBlock #42567701/Trx 8ea605fbc34e9a61d9f1d1031320714637cfbf52
View Raw JSON Data
{
  "block": 42567701,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8756.025144 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-04-16T02:02:45",
  "trx_id": "8ea605fbc34e9a61d9f1d1031320714637cfbf52",
  "trx_in_block": 10,
  "virtual_op": 0
}
2020/02/03 00:26:15
authorsteemitboard
bodyCongratulations @mrbot! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@mrbot/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@mrbot) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=mrbot)_</sub> **Do not miss the last post from @steemitboard:** <table><tr><td><a href="https://steemit.com/steemitboard/@steemitboard/steemitboard-ranking-update-a-better-rich-list-comparator"><img src="https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmfRVpHQhLDhnjDtqck8GPv9NPvNKPfMsDaAFDE1D9Er2Z/header_ranking.png"></a></td><td><a href="https://steemit.com/steemitboard/@steemitboard/steemitboard-ranking-update-a-better-rich-list-comparator">SteemitBoard Ranking update - A better rich list comparator</a></td></tr></table> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
parent authormrbot
parent permlinkstellar-multi-sig-wallet-setup
permlinksteemitboard-notify-mrbot-20200203t002614000z
title
Transaction InfoBlock #40481393/Trx 48a0f882468655fcb980be1e5ef98ea6a4481a6d
View Raw JSON Data
{
  "block": 40481393,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @mrbot! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@mrbot/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@mrbot) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=mrbot)_</sub>\n\n\n**Do not miss the last post from @steemitboard:**\n<table><tr><td><a href=\"https://steemit.com/steemitboard/@steemitboard/steemitboard-ranking-update-a-better-rich-list-comparator\"><img src=\"https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmfRVpHQhLDhnjDtqck8GPv9NPvNKPfMsDaAFDE1D9Er2Z/header_ranking.png\"></a></td><td><a href=\"https://steemit.com/steemitboard/@steemitboard/steemitboard-ranking-update-a-better-rich-list-comparator\">SteemitBoard Ranking update - A better rich list comparator</a></td></tr></table>\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}",
      "parent_author": "mrbot",
      "parent_permlink": "stellar-multi-sig-wallet-setup",
      "permlink": "steemitboard-notify-mrbot-20200203t002614000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-02-03T00:26:15",
  "trx_id": "48a0f882468655fcb980be1e5ef98ea6a4481a6d",
  "trx_in_block": 2,
  "virtual_op": 0
}
steemdelegated 5.505 SP to @mrbot
2019/05/12 19:09:00
delegateemrbot
delegatorsteem
vesting shares8951.641957 VESTS
Transaction InfoBlock #32850581/Trx a0cc04d402bab4bbe705972bba9e5763b26b8cf3
View Raw JSON Data
{
  "block": 32850581,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "8951.641957 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2019-05-12T19:09:00",
  "trx_id": "a0cc04d402bab4bbe705972bba9e5763b26b8cf3",
  "trx_in_block": 16,
  "virtual_op": 0
}
2019/02/03 00:15:06
authorsteemitboard
bodyCongratulations @mrbot! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@mrbot/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table> <sub>_[Click here to view your Board](https://steemitboard.com/@mrbot)_</sub> > Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
parent authormrbot
parent permlinkstellar-multi-sig-wallet-setup
permlinksteemitboard-notify-mrbot-20190203t001505000z
title
Transaction InfoBlock #30008958/Trx 7d3c328c001467d156bef4b1d36e9cd86e0f6f18
View Raw JSON Data
{
  "block": 30008958,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @mrbot! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@mrbot/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table>\n\n<sub>_[Click here to view your Board](https://steemitboard.com/@mrbot)_</sub>\n\n\n> Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}",
      "parent_author": "mrbot",
      "parent_permlink": "stellar-multi-sig-wallet-setup",
      "permlink": "steemitboard-notify-mrbot-20190203t001505000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2019-02-03T00:15:06",
  "trx_id": "7d3c328c001467d156bef4b1d36e9cd86e0f6f18",
  "trx_in_block": 4,
  "virtual_op": 0
}
2018/11/09 02:45:54
authormrbot
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
votermrbot
weight10000 (100.00%)
Transaction InfoBlock #27536955/Trx 7b90d6ba62840569ca3107252d61be8c050a5883
View Raw JSON Data
{
  "block": 27536955,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "voter": "mrbot",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-11-09T02:45:54",
  "trx_id": "7b90d6ba62840569ca3107252d61be8c050a5883",
  "trx_in_block": 3,
  "virtual_op": 0
}
2018/07/06 09:37:12
authormrbot
permlinkstellar-multi-sig-wallet-setup
voterdlastwishes
weight10000 (100.00%)
Transaction InfoBlock #23934664/Trx 2c01fd14460c7e9badd6b15ce2f7f67bf7ffb260
View Raw JSON Data
{
  "block": 23934664,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "stellar-multi-sig-wallet-setup",
      "voter": "dlastwishes",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-07-06T09:37:12",
  "trx_id": "2c01fd14460c7e9badd6b15ce2f7f67bf7ffb260",
  "trx_in_block": 76,
  "virtual_op": 0
}
2018/05/20 23:37:42
authormrbot
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
votertucker810
weight10000 (100.00%)
Transaction InfoBlock #22609034/Trx b9bc3f4032bfb3ed01968fe62821d1e9dc63576e
View Raw JSON Data
{
  "block": 22609034,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "voter": "tucker810",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-05-20T23:37:42",
  "trx_id": "b9bc3f4032bfb3ed01968fe62821d1e9dc63576e",
  "trx_in_block": 5,
  "virtual_op": 0
}
steemdelegated 5.627 SP to @mrbot
2018/05/16 23:08:21
delegateemrbot
delegatorsteem
vesting shares9151.252825 VESTS
Transaction InfoBlock #22493268/Trx 1b87082459789f8510371279bc60f94ad0e52674
View Raw JSON Data
{
  "block": 22493268,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "mrbot",
      "delegator": "steem",
      "vesting_shares": "9151.252825 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-05-16T23:08:21",
  "trx_id": "1b87082459789f8510371279bc60f94ad0e52674",
  "trx_in_block": 17,
  "virtual_op": 0
}
2018/04/06 18:54:27
authormrbot
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
voterbbudd
weight10000 (100.00%)
Transaction InfoBlock #21337039/Trx 7f9afdf0f5ddbb5d8296d3db37a4358706e09a78
View Raw JSON Data
{
  "block": 21337039,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "voter": "bbudd",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-04-06T18:54:27",
  "trx_id": "7f9afdf0f5ddbb5d8296d3db37a4358706e09a78",
  "trx_in_block": 25,
  "virtual_op": 0
}
2018/03/13 12:17:36
authormrbot
permlinkstellar-multi-sig-wallet-setup
voterbajanboost
weight10000 (100.00%)
Transaction InfoBlock #20638979/Trx 2e4efdbed57a763e4c960d3f65803ab5760f23f5
View Raw JSON Data
{
  "block": 20638979,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "stellar-multi-sig-wallet-setup",
      "voter": "bajanboost",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-03-13T12:17:36",
  "trx_id": "2e4efdbed57a763e4c960d3f65803ab5760f23f5",
  "trx_in_block": 1,
  "virtual_op": 0
}
2018/02/10 02:26:54
authormrbot
body@@ -13312,17 +13312,16 @@ Lumenaut -s %5D(https:
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3","#footnote4"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19735190/Trx 92d04b1cbaa92a370473869cb0cdc75b60e295a8
View Raw JSON Data
{
  "block": 19735190,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -13312,17 +13312,16 @@\n Lumenaut\n-s\n %5D(https:\n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\",\"#footnote4\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-10T02:26:54",
  "trx_id": "92d04b1cbaa92a370473869cb0cdc75b60e295a8",
  "trx_in_block": 12,
  "virtual_op": 0
}
2018/02/04 23:36:45
authormrbot
permlinkstellar-multi-sig-wallet-setup
votersensation
weight10000 (100.00%)
Transaction InfoBlock #19588089/Trx 48bcb374d412960a86a7f3829b37057c82d626be
View Raw JSON Data
{
  "block": 19588089,
  "op": [
    "vote",
    {
      "author": "mrbot",
      "permlink": "stellar-multi-sig-wallet-setup",
      "voter": "sensation",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-04T23:36:45",
  "trx_id": "48bcb374d412960a86a7f3829b37057c82d626be",
  "trx_in_block": 8,
  "virtual_op": 0
}
2018/02/04 22:34:42
authormrbot
bodyRecently, I wrote a guide on how to have a Stellar cold wallet setup and how to manage signing transactions offline. Please check it out [here](https://steemit.com/stellar/@mrbot/a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more) &nbsp; I highly recommend you at least get yourself familiar with how to make a secure paper wallet and how to sign transactions offline from the guide I linked. In the rest of this guide, we are going to cover on how to make a secure Mult-Sig cold wallet setup. &nbsp; If you take proper security measures in storing your secret key offline then just having a cold wallet setup with one secret key should be enough. But there can be times when you want to double-up the security even more by mandating an additional secret key as a "signer" for any transactions that you want to make from your wallet. &nbsp; For improved security, sometimes you want to store both of the signing keys offline at separate locations. Or sometimes when two people want to have a join-account so that any transactions made from that account first requires both parties to agree and sign them before it can be submitted. &nbsp; --- __With more keys comes more responsibilties__ &nbsp; &nbsp; This goes with saying- Please make sure that you have secure multiple backups of all secret keys used so that if any of the secret keys is lost then you are able to recover it from the backup. Because after you have a multi-sig wallet setup, both keys will be required to move your funds. (Similar to how you should always have a backup of your secure key even if you don't have multi-sig wallet setup) --- &nbsp; Assuming that you have safely generated two Paper Wallets offline, where the secret key was never on a device which has connected to the internet, let’s go through step-by-step on how to make our multi-sig wallet setup. &nbsp; For all Stellar wallets, the private key that corresponds to its public key is called the __master key__. Each __master key__ can be assigned a weight and if the weight of the master key is ever updated to 0, the master key is considered to be an invalid key and you cannot sign any transactions with it. All [operations](https://www.stellar.org/developers/guides/concepts/list-of-operations.html) fall under a specific threshold category: low, medium, or high. The threshold for a given level can be set to any number from 0-255. This threshold is the amount of signature weight required to authorize an operation at that level. In more simplified terms- The added __weight__ of all signers for the transaction(operation) that you are trying to perform(sign) should be greater than or equal to the total added __threshold__ value of that specific operation category (low, medium or high). &nbsp; # Multi-Sig Wallet Setup &nbsp; Let's make a wallet setup where your main wallet is protected by additional signatory wallet which is required as an additional signer to sign transactions and most of the other operations you want to perform on your main wallet. So that if one signature gets compromised then your funds in this wallet still remains protected. Let’s say __Wallet A__ is your main wallet and we will use __Wallet B__ as your signatory wallet as an additional signer. * Go to [mystellar.tools](https://mystellar.tools/) and enter __Wallet A__'s public key. Press __ENTER__ ![](https://i.imgur.com/0Xb1sKW.png) &nbsp; * Select __Set options__ from menu on the left, under __Thresholds__ put __Master weight: 1__, __Medium threshold: 2__, and __High threshold: 2__. ![](https://i.imgur.com/Xx7qULa.png) &nbsp; &nbsp; * Under signer, select __Signer type__: __Ed25519 Public key__. And then provide __public key__ of the additional signatory account that you want to add, in this case, __Wallet B__ and enter its weight as: __1__. ![](https://i.imgur.com/VwJeWpV.png) &nbsp; After that click on __"SET"__ button, it will generate a message that it cannot sign the transaction since you have opened the application without your secret key. Copy all the transaction data and save it to a usb drive. ![](https://i.imgur.com/UTQIGj5.png) &nbsp; For signing this transaction offline for this first time, you only need to provide the secret key of __Wallet A__. Please don’t enter the secret key of Wallet B, because you will get the error __tx_bad_auth_extra__ when you try to submit it (this is because you haven’t added this signer to your account yet) Then come back to mystellar.tools to submit this transaction. &nbsp; --- _If you don't know how to sign transactions offline, then please go through the steps mentioned in my earlier guide for cold wallet setup ._ --- &nbsp; Once you have signed and submit the transaction successfully, let's verify your Wallet Setup. * Visit [Stellar Laboratory](https://www.stellar.org/laboratory/#?network=public), under __Endpoint Explorer__, select resource: __Account__ and then select an endpoint: __Single Account__. In __Account ID__ enter __Wallet A__’s public key and hit __Submit__. You will see a response in JSON format. To verify that everything looks good, search for __”thresholds:”__ ![](https://i.imgur.com/uk7LuZV.png) And __”signers:”__. ![](https://i.imgur.com/xDoQvCq.png) You should see public keys of both __Wallet A__ and __Wallet B__ under signers. &nbsp; &nbsp; You have successfully created a __Multi-Sig__ wallet setup. This implies that, for all transactions like __payments__, __adding trustlines__, updating __weights__ (to add/remove signers) and for most operations that you want to perform with __Wallet A__, you will need to __“sign”__ them by providing two signatures- secret keys of both __Wallet A__ and __Wallet B__. &nbsp; Let's briefly dive into various scenarios on how the mechanics of different transactions will work with this setup of two wallets. \- For sending payment from __Wallet A__ to some different wallet, or even to Wallet B you will need to sign this transaction using secret keys of both Wallet A and Wallet B. \- For sending payment from __Wallet B__ to some different wallet, or even to Wallet A, you will need to sign this transaction using the secret key of __ONLY__ Wallet B. Because Wallet B is independent in this setup. We have not added any additional signer for Wallet B. Hence, as an added security measure, __DON’T__ store any funds in Wallet B. Only use this account as an additional signer. \- Same rules will apply for any other __Medium Threshold__ operation, for example, enabling/changing a trustline. For Wallet A you will need to sign the transaction using secret keys of both Wallet A and Wallet B. But for Wallet B it can happen independently, by only using its own secret key. \- If one of your wallet's secret key gets compromised, then one cannot simply __"break"__ this multi-sig setup, because such operation is classified as __High Threshold__ and since we set it to: __2__, only one account’s key weight is not greater than or equal to this __High Threshold: 2__. (transaction as such result will result in error: op_bad_auth) &nbsp; # Removing Multi-Sig Wallet Setup &nbsp; * If you ever want to remove this multi-sig setup from __Wallet A__, then first go to mystellar.tools and enter the public key of Wallet A. * Select __Set options__ from menu on the left, under __Thresholds__ put __Master weight: 1__, __Medium threshold: 0__, and __High threshold: 0__. --- ### \*Caution*: It is important that you do enter __0__ for both __Medium__ and __High__ threshold. If you don't, then your funds will be "locked" in __Wallet A__ because then you just removed the weight of additional signer without changing the threshold values. &nbsp; And as a precaution, enter __Master weight: 1__. --- ![](https://i.imgur.com/bdvFg3I.png) &nbsp; &nbsp; * Under signer, select __Signer type__: __Ed25519 Public key__. And then provide __public key__ of the additional signatory account that you want to add, in this case, __Wallet B__ and enter its weight as: __0__. ![](https://i.imgur.com/p0dAVsV.png) &nbsp; For signing this transaction offline you will need to provide secret keys of both __Wallet A__ and __Wallet B__. Once you submit that transaction successfully, verify it again by visiting the endpoint explorer in Stellar Laboratory. Under __"thresholds"__, now you should see Medium and High thresholds to be:__0__ ![](https://i.imgur.com/JwItybj.png) And under __"signers"__, you should see only one public key of __Wallet A__. ![](https://i.imgur.com/xi98Tuc.png) &nbsp; &nbsp; # Conclusion &nbsp; Stellar wallets offers us much flexibility with Multi-Sig wallets and it can also grow more complex depending on our needs. For more security though, you can always have a simple setup where two signatures are required to sign transactions. But please be careful not to lose any of your keys, and also to update thresholds when you are removing additional signers. Otherwise, you won't be able to sign transactions and move your funds.
json metadata{"tags":["stellar","multi-sig","wallet","cryptocurrencies"],"image":["https://i.imgur.com/0Xb1sKW.png","https://i.imgur.com/Xx7qULa.png","https://i.imgur.com/VwJeWpV.png","https://i.imgur.com/UTQIGj5.png","https://i.imgur.com/uk7LuZV.png","https://i.imgur.com/xDoQvCq.png","https://i.imgur.com/bdvFg3I.png","https://i.imgur.com/p0dAVsV.png","https://i.imgur.com/JwItybj.png","https://i.imgur.com/xi98Tuc.png"],"links":["https://steemit.com/stellar/@mrbot/a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more","https://www.stellar.org/developers/guides/concepts/list-of-operations.html","https://mystellar.tools/","https://www.stellar.org/laboratory/#?network=public"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinkstellar-multi-sig-wallet-setup
titleStellar Multi-Sig Wallet Setup
Transaction InfoBlock #19586849/Trx 05c7a5d29efddbf9820758dc1560c70d7391e07a
View Raw JSON Data
{
  "block": 19586849,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "Recently, I wrote a guide on how to have a Stellar cold wallet setup and how to manage signing transactions offline. Please check it out [here](https://steemit.com/stellar/@mrbot/a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more) \n&nbsp;\n\n\nI highly recommend you at least get yourself familiar with how to make a secure paper wallet and how to sign transactions offline from the guide I linked. In the rest of this guide, we are going to cover on how to make a secure Mult-Sig cold wallet setup. &nbsp;\n\nIf you take proper security measures in storing your secret key offline then just having a cold wallet setup with one secret key should be enough. But there can be times when you want to double-up the security even more by mandating an additional secret key as a \"signer\" for any transactions that you want to make from your wallet. &nbsp;\n\nFor improved security, sometimes you want to store both of the signing keys offline at separate locations. Or sometimes when two people want to have a join-account so that any transactions made from that account first requires both parties to agree and sign them before it can be submitted.\n\n&nbsp;\n\n---\n__With more keys comes more responsibilties__ &nbsp;\n&nbsp;\n\nThis goes with saying- Please make sure that you have secure multiple backups of all secret keys used so that if any of the secret keys is lost then you are able to recover it from the backup. Because after you have a multi-sig wallet setup, both keys will be required to move your funds. \n\n(Similar to how you should always have a backup of your secure key even if you don't have multi-sig wallet setup)\n\n---\n&nbsp;\nAssuming that you have safely generated two Paper Wallets offline, where the secret key was never on a device which has connected to the internet, let’s go through step-by-step on how to make our multi-sig wallet setup.\n&nbsp;\n\nFor all Stellar wallets, the private key that corresponds to its public key is called the __master key__. Each __master key__ can be assigned a weight and if the weight of the master key is ever updated to 0, the master key is considered to be an invalid key and you cannot sign any transactions with it.\n\nAll [operations](https://www.stellar.org/developers/guides/concepts/list-of-operations.html) fall under a specific threshold category: low, medium, or high. The threshold for a given level can be set to any number from 0-255. This threshold is the amount of signature weight required to authorize an operation at that level.\n\nIn more simplified terms- The added __weight__ of all signers for the transaction(operation) that you are trying to perform(sign) should be greater than or equal to the total added __threshold__ value of that specific operation category (low, medium or high).\n\n&nbsp;\n\n\n# Multi-Sig Wallet Setup\n&nbsp;\nLet's make a wallet setup where your main wallet is protected by additional signatory wallet which is required as an additional signer to sign transactions and most of the other operations you want to perform on your main wallet. So that if one signature gets compromised then your funds in this wallet still remains protected.\n\nLet’s say __Wallet A__ is your main wallet and we will use __Wallet B__ as your signatory wallet as an additional signer. \n\n* Go to [mystellar.tools](https://mystellar.tools/) and enter __Wallet A__'s public key. Press __ENTER__\n\n![](https://i.imgur.com/0Xb1sKW.png)\n\n&nbsp;\n* Select __Set options__ from menu on the left, under __Thresholds__ put __Master weight: 1__, __Medium threshold: 2__, and __High threshold: 2__.\n\n![](https://i.imgur.com/Xx7qULa.png)\n\n&nbsp;\n\n&nbsp;\n\n* Under signer, select __Signer type__: __Ed25519 Public key__. And then provide __public key__ of the additional signatory account that you want to add, in this case, __Wallet B__ and enter its weight as: __1__.\n\n![](https://i.imgur.com/VwJeWpV.png)\n\n&nbsp;\n\nAfter that click on __\"SET\"__ button, it will generate a message that it cannot sign the transaction since you have opened the application without your secret key. Copy all the transaction data and save it to a usb drive. \n\n![](https://i.imgur.com/UTQIGj5.png)\n\n\n&nbsp;\n\n\nFor signing this transaction offline for this first time, you only need to provide the secret key of __Wallet A__. Please don’t enter the secret key of Wallet B, because you will get the error __tx_bad_auth_extra__ when you try to submit it (this is because you haven’t added this signer to your account yet) \n\nThen come back to mystellar.tools to submit this transaction.\n&nbsp;\n\n---\n\n_If you don't know how to sign transactions offline, then please go through the steps mentioned in my earlier guide for cold wallet setup ._\n\n---\n&nbsp;\n\n\nOnce you have signed and submit the transaction successfully, let's verify your Wallet Setup.\n\n* Visit [Stellar Laboratory](https://www.stellar.org/laboratory/#?network=public), under __Endpoint Explorer__, select resource: __Account__ and then select an endpoint: __Single Account__. In __Account ID__ enter __Wallet A__’s public key and hit __Submit__.\n\nYou will see a response in JSON format. To verify that everything looks good, search for __”thresholds:”__\n\n![](https://i.imgur.com/uk7LuZV.png)\n\n\n\n\nAnd __”signers:”__.\n\n![](https://i.imgur.com/xDoQvCq.png)\n\nYou should see public keys of both __Wallet A__ and __Wallet B__ under signers.\n\n\n&nbsp;\n&nbsp;\n\nYou have successfully created a __Multi-Sig__ wallet setup. This implies that, for all transactions like __payments__, __adding trustlines__, updating __weights__ (to add/remove signers) and for most operations that you want to perform with __Wallet A__, you will need to __“sign”__ them by providing two signatures- secret keys of both __Wallet A__ and __Wallet B__. \n\n&nbsp;\n\nLet's briefly dive into various scenarios on how the mechanics of different transactions will work with this setup of two wallets.\n\n\\- For sending payment from __Wallet A__ to some different wallet, or even to Wallet B you will need to sign this transaction using secret keys of both Wallet A and Wallet B.\n\n\\- For sending payment from __Wallet B__ to some different wallet, or even to Wallet A, you will need to sign this transaction using the secret key of __ONLY__ Wallet B. Because Wallet B is independent in this setup. We have not added any additional signer for Wallet B.\nHence, as an added security measure,  __DON’T__ store any funds in Wallet B. Only use this account as an additional signer.\n\n\\- Same rules will apply for any other __Medium Threshold__ operation, for example,  enabling/changing a trustline. For Wallet A you will need to sign the transaction using secret keys of both Wallet A and Wallet B. But for Wallet B it can happen independently, by only using its own secret key.\n\n\\- If one of your wallet's secret key gets compromised, then one cannot simply __\"break\"__ this multi-sig setup, because such operation is classified as __High Threshold__ and since we set it to: __2__, only one account’s key weight is not greater than or equal to this __High Threshold: 2__. (transaction as such result will result in error: op_bad_auth)\n\n&nbsp;\n\n# Removing Multi-Sig Wallet Setup\n&nbsp;\n* If you ever want to remove this multi-sig setup from __Wallet A__, then first go to mystellar.tools and enter the public key of Wallet A.\n\n* Select __Set options__ from menu on the left, under __Thresholds__ put __Master weight: 1__, __Medium threshold: 0__, and __High threshold: 0__.\n\n---\n### \\*Caution*:\n\nIt is important that you do enter __0__ for both __Medium__ and __High__ threshold. \nIf you don't, then your funds will be \"locked\" in __Wallet A__ because then you just removed the weight of additional signer without changing the threshold values. &nbsp;\n\nAnd as a precaution, enter __Master weight: 1__.\n\n---\n![](https://i.imgur.com/bdvFg3I.png)\n\n&nbsp;\n&nbsp;\n\n* Under signer, select __Signer type__: __Ed25519 Public key__. And then provide __public key__ of the additional signatory account that you want to add, in this case, __Wallet B__ and enter its weight as: __0__.\n\n![](https://i.imgur.com/p0dAVsV.png)\n\n&nbsp;\n\nFor signing this transaction offline you will need to provide secret keys of both __Wallet A__ and __Wallet  B__. Once you submit that transaction successfully, verify it again by visiting the endpoint explorer in Stellar Laboratory.\n\nUnder __\"thresholds\"__, now you should see Medium and High thresholds to be:__0__\n\n![](https://i.imgur.com/JwItybj.png)\n\n\nAnd under __\"signers\"__, you should see only one public key of __Wallet A__.\n![](https://i.imgur.com/xi98Tuc.png)\n\n\n\n&nbsp;\n&nbsp;\n\n# Conclusion\n&nbsp;\nStellar wallets offers us much flexibility with Multi-Sig wallets and it can also grow more complex depending on our needs.\n\nFor more security though, you can always have a simple setup where two signatures are required to sign transactions.\n\nBut please be careful not to lose any of your keys, and also to update thresholds when you are removing additional signers. Otherwise, you won't be able to sign transactions and move your funds.",
      "json_metadata": "{\"tags\":[\"stellar\",\"multi-sig\",\"wallet\",\"cryptocurrencies\"],\"image\":[\"https://i.imgur.com/0Xb1sKW.png\",\"https://i.imgur.com/Xx7qULa.png\",\"https://i.imgur.com/VwJeWpV.png\",\"https://i.imgur.com/UTQIGj5.png\",\"https://i.imgur.com/uk7LuZV.png\",\"https://i.imgur.com/xDoQvCq.png\",\"https://i.imgur.com/bdvFg3I.png\",\"https://i.imgur.com/p0dAVsV.png\",\"https://i.imgur.com/JwItybj.png\",\"https://i.imgur.com/xi98Tuc.png\"],\"links\":[\"https://steemit.com/stellar/@mrbot/a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more\",\"https://www.stellar.org/developers/guides/concepts/list-of-operations.html\",\"https://mystellar.tools/\",\"https://www.stellar.org/laboratory/#?network=public\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "stellar-multi-sig-wallet-setup",
      "title": "Stellar Multi-Sig Wallet Setup"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-04T22:34:42",
  "trx_id": "05c7a5d29efddbf9820758dc1560c70d7391e07a",
  "trx_in_block": 33,
  "virtual_op": 0
}
2018/02/04 02:17:54
authormrbot
body@@ -13312,16 +13312,17 @@ Lumenaut +s %5D(https:
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3","#footnote4"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19562525/Trx c2204fe436e3a8979f74a5dcfeee6098fb318e1e
View Raw JSON Data
{
  "block": 19562525,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -13312,16 +13312,17 @@\n Lumenaut\n+s\n %5D(https:\n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\",\"#footnote4\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-04T02:17:54",
  "trx_id": "c2204fe436e3a8979f74a5dcfeee6098fb318e1e",
  "trx_in_block": 27,
  "virtual_op": 0
}
2018/02/03 18:36:21
authormrbot
body@@ -6295,16 +6295,38 @@ install +the latest version of __git__ @@ -11980,16 +11980,20 @@ s%0A%0A%0A---%0A +### Please m @@ -12222,16 +12222,17 @@ et.%0A---%0A +%0A &nbsp;%0A%0A @@ -19497,16 +19497,27 @@ operly. +%5BSee here%5D( https:// @@ -19763,16 +19763,17 @@ 5011167z +) %0A%0A%3Csup%3E%5B
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3","#footnote4"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19553397/Trx e0b4b3af899cb19baf1bdf55adbae69c09e9d81d
View Raw JSON Data
{
  "block": 19553397,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -6295,16 +6295,38 @@\n install \n+the latest version of \n __git__ \n@@ -11980,16 +11980,20 @@\n s%0A%0A%0A---%0A\n+### \n Please m\n@@ -12222,16 +12222,17 @@\n et.%0A---%0A\n+%0A\n &nbsp;%0A%0A\n@@ -19497,16 +19497,27 @@\n operly. \n+%5BSee here%5D(\n https://\n@@ -19763,16 +19763,17 @@\n 5011167z\n+)\n %0A%0A%3Csup%3E%5B\n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\",\"#footnote4\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T18:36:21",
  "trx_id": "e0b4b3af899cb19baf1bdf55adbae69c09e9d81d",
  "trx_in_block": 2,
  "virtual_op": 0
}
2018/02/03 08:22:21
authormrbot
body@@ -2699,16 +2699,23 @@ able%5C*%5C* +%0A&nbsp; %0A%0A* Down
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3","#footnote4"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19541125/Trx 15f735fb3ebee970da186fa0230c5b7988c7e93a
View Raw JSON Data
{
  "block": 19541125,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -2699,16 +2699,23 @@\n able%5C*%5C*\n+%0A&nbsp;\n %0A%0A* Down\n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\",\"#footnote4\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T08:22:21",
  "trx_id": "15f735fb3ebee970da186fa0230c5b7988c7e93a",
  "trx_in_block": 6,
  "virtual_op": 0
}
2018/02/03 07:46:00
authormrbot
body@@ -20120,33 +20120,33 @@ n GitHub%0A%0A%3Csup%3E%5B -3 +4 %5D(#footnote3)%3C/s @@ -20132,33 +20132,33 @@ up%3E%5B4%5D(#footnote -3 +4 )%3C/sup%3E In this
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3","#footnote4"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19540398/Trx 2b8e676f58c2909c7613365b45d08338a6cb9c18
View Raw JSON Data
{
  "block": 19540398,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -20120,33 +20120,33 @@\n n GitHub%0A%0A%3Csup%3E%5B\n-3\n+4\n %5D(#footnote3)%3C/s\n@@ -20132,33 +20132,33 @@\n up%3E%5B4%5D(#footnote\n-3\n+4\n )%3C/sup%3E In this \n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\",\"#footnote4\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T07:46:00",
  "trx_id": "2b8e676f58c2909c7613365b45d08338a6cb9c18",
  "trx_in_block": 29,
  "virtual_op": 0
}
2018/02/03 07:44:00
authormrbot
body@@ -1093,17 +1093,17 @@ ootnote1 -%E2%80%9D +%22 %3E%3Csup%3E1%3C @@ -5723,17 +5723,17 @@ ootnote2 -%E2%80%9D +%22 %3E%3Csup%3E2%3C @@ -5990,17 +5990,17 @@ ootnote3 -%E2%80%9D +%22 %3E%3Csup%3E3%3C
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19540358/Trx 335b0a3d2b7b7ae18a713757d498b1963600ae96
View Raw JSON Data
{
  "block": 19540358,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -1093,17 +1093,17 @@\n ootnote1\n-%E2%80%9D\n+%22\n %3E%3Csup%3E1%3C\n@@ -5723,17 +5723,17 @@\n ootnote2\n-%E2%80%9D\n+%22\n %3E%3Csup%3E2%3C\n@@ -5990,17 +5990,17 @@\n ootnote3\n-%E2%80%9D\n+%22\n %3E%3Csup%3E3%3C\n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T07:44:00",
  "trx_id": "335b0a3d2b7b7ae18a713757d498b1963600ae96",
  "trx_in_block": 28,
  "virtual_op": 0
}
2018/02/03 07:42:27
authormrbot
body# Purpose &nbsp; Lot of us likes to follow the best practices of not leaving any crypto on the table and by that I mean to have a secure cold wallet setup for any sort of cryptocurrencies that we own. Many people use the Ledger Nano S as their go-to hardware wallet choice but many others also like to have their own version of offline/paper wallet as a cold wallet setup where it's private key never touches the internet. The challenge which comes with that is obviously how to manage to sign your transactions offline. I personally like to have a cold wallet setup by staying in-charge of the private key in an offline computer during its entire lifetime. For Ethereum based cold storage I followed this excellent guide from Tomshwom to setup __Tails OS + KeePassX + USB drive + MyEtherWallet__ as cold wallet. Please check it out in case if you want to use a similar approach: [Tomshwom's Advanced Crypto Security Guide (Part 3) - Creating a Secure Wallet](https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet) <a name="footnote1”><sup>1</sup></a> &nbsp; --- You can still follow this guide even if you don't have a similar setup that's mentioned above. This will be a comprehensive guide and the steps we are going to cover can be applied to any sort of offline wallet setup. Also, you might want to find a way to follow along with this guide on a different computer/smartphone during the offline portions. &nbsp; # Overview &nbsp; We are going to walk through the following aspects of with Stellar. * __Downloading our tools__ * __Securely setting up an Offline Paper Wallet__ * __Getting Stellar Laboratory website for offline use__ * __Building a transaction from a computer that is online__ * __Signing a transaction on a computer that is offline__ * __Submitting a transaction from a computer that is online__ * __Joining an Inflation Pool__ * __Enabling your wallet to deal with various Stellar Assets (tokens)__ * __Sending transactions for various Stellar Assets__ You will also need a __USB drive__ for securely transferring some data back and forth between your online to offline system. &nbsp; # Downloads &nbsp; We are going to download a couple of tools from Stellar's official GitHub repositories. Stellar's Paper Wallet and the Stellar Laboratory. Obviously, we start by being on a computer which is connected to the internet. #### \*\*\[Update\]: Stellar will soon deprecate their paper wallet mentioned below. It is still functional right now but may not be in future. I will keep an eye out for a good platform-independent wallet generator and will include the updated version here whenever available\*\* * Download the paper wallet by visiting following link and click on "Clone or download" button. [https://github.com/stellar/paper-wallet](https://github.com/stellar/paper-wallet) * Download the Stellar Laboratory by visiting following link and click on "Clone or download" button. [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory) &nbsp; # Setting up Paper Wallet offline &nbsp; I am going to outline how to set up a paper wallet on your offline system. * For this step you will first need to plug-in the __usb drive__ to your computer which is connected to the internet and copy the downloaded paper wallet folder to this usb drive. * Boot the offline system/computer which should never connect to the internet. Plug in this usb drive and open __index.html__ file from the folder. * After that it's super simple to just click on the __"Generate"__ button in order to generate your pair of __public key (wallet address)__ which starts with __G__ and __secret key__ which starts with __S__. &nbsp; You will see QR codes as well as text output. It is extremely important here to safely save your private key. This is the key used in order to do any sort of transaction from your wallet and also to recover access to your wallet if your computer is stolen or can't boot anymore due to disk failure or any other reason. If you are storing this private key on your offline computer's hard drive/usb/sd card, then it is also very important that you store it in __encrypted form__. It's best to follow the guide I mentioned earlier for __Tails OS Encrypted Persistence and KeyPassX__ setup for doubly-encrypting everything. But you can also use any other password managers or some form of encryption. Alternatively, you can also write down this private key on the piece of paper. &nbsp; Whether you store your private key on a physical drive in __encrypted form__ or write it down on **paper** - it is extremely important to have multiple backups/copies of it and store them securely to avoid any single point of failure in case if you lose the only one copy you have. * Save the __public key__ (wallet address) either in a __wallet.txt__ file on your __usb drive__ or scan the QR code on your smartphone __Be careful not to scan the QR code of the secret key.__ To avoid this from happening you can resize your browser window to only see the QR code of public key before you scan it. * You can now unplug the __usb drive__ go back to your computer which is connected to the internet. &nbsp; # Getting Stellar Laboratory for offline use. &nbsp; For non-technical users, this is the only challenging step in this guide. But don't worry we will break it down step-by-step. At the time of this writing, in order for us to sign transactions offline, we need a working local copy of Stellar Laboratory and I couldn't find any other way but to download it from GitHub and build it from source code. Please download it if you haven't done so from the earlier step. <a name="footnote2”><sup>2</sup></a> By visiting [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory), and going through Readme we can see that we can build this website as mentioned in the instructions under __"Building for production"__. <a name="footnote3”><sup>3</sup></a> Currently, we need __git__, __node js__ and __npm__ to be installed in order to build our own copy of the Stellar Laboratory website. They are free and open source, anyone can download and install them on Windows/macOS/Linux and other platforms. &nbsp; If you need to install __git__ then please follow the instructions [here](https://www.atlassian.com/git/tutorials/install-git) And there are various ways to install __node__ and __npm__, you can find many resources online. I am just going to mention below guides for Mac and Windows: * [Installing Node.js® and NPM on Mac](https://treehouse.github.io/installation-guides/mac/node-mac.html) * [Installing Node.js® and NPM on Windows](https://treehouse.github.io/installation-guides/windows/node-windows.html) &nbsp; After verifying your installation, you can then build your local copy of Stellar Laboratory. &nbsp; On __macOS/Linux__: Open __Terminal__ and run below commands in sequence \- ``cd ~/Downloads/laboratory-master/`` \- ``npm install`` \- ``./node_modules/.bin/gulp build`` &nbsp; On __Windows__: Extract the zip file and then open __Command Prompt__ by clicking on start menu and type: cmd. After that run below commands in sequence (replace <YOUR_USERNAME> with your windows account username) \- ``cd C:\Users\<YOUR_USERNAME>\Downloads\laboratory-master\`` \- ``npm install`` \- ``node_modules\.bin\gulp build`` &nbsp; If everything goes well then go back to the __laboratory-master__ folder that you downloaded and you will see that there is a folder named __"dist"__ which got created. This folder has everything that you need in order to have your own working local copy of Stellar Laboratory. You can verify this by opening __index.html__ file from it. * Plug in the __usb drive__ and copy this __dist__ folder in it. You will need this when we need to sign transactions offline. If you are not a computer savvy user and if you have made it this far then Congratulate yourself! Because now you have all the necessary tools to start working on your transactions! &nbsp; # Building a transaction &nbsp; There are two ways we can build a transaction. Either by using mystellar.tools website or by using __Stellar Laboratory__ website. For simplicity, we are going to use mystellar.tools &nbsp; Go to: __[mystellar.tools](https://mystellar.tools)__ * Enter your __Public Key__ and click __ENTER__: ![](https://i.imgur.com/CTeu6wz.png) &nbsp; * To send a payment in XLM- click on __Send__ from the left menu. And fill out the details below: ![](https://i.imgur.com/3pi2Xyh.png) &nbsp; * After you click the __VERIFY__ button, you will see the below verification page. Click __SEND__ ![](https://i.imgur.com/zEdYrY1.png) &nbsp; * As soon as you click on send you will see below message will appear. ![](https://i.imgur.com/wr6CWNO.png) &nbsp; The message is self-explanatory. Basically, all it's saying is that since we have entered the application without using our secret key, it cannot sign the transaction before sending it. But we can use this transaction information to sign it offline on our own. * Copy the Transaction hash and the Transaction evelope (XDR). And save it into a txt file. Let's name it __tx_unsigned.txt__. Save this file to your usb drive. ![](https://i.imgur.com/3qA6ye8.png) &nbsp; # Signing a transaction offline &nbsp; Before we go to sign our transaction offline make sure you have following two things in your __usb drive__. * The folder named __dist__ which is the local copy of Stellar Laboratory website that we built. * The file __tx_unsigned.txt__ which has the Hash and XDR data of our transaction. &nbsp; Boot up your computer which is offline and plug this __usb drive__ in it. * Copy the __dist__ folder locally on your desktop from your usb drive. Open __index.html__ file in the browser so you get Stellar Laboratory running offline. Now make sure that you select the __public__ tab on top right. This ensures that everything will be done for the public network. * Click on __Transaction Signer__ from the top menu bar. * This will give you an option to- __"Import a transaction envelope in XDR format:"__ * Now open __tx_unsigned.txt__ file from __usb drive__ and only copy transaction data under __XDR:__. Don't copy the __Hash__ which is above that. See the highlighted part below: ![](https://i.imgur.com/MiMrab2.png) &nbsp; * Go back to the browser and paste that into the text box. * Make sure there are no leading or trailing whitespaces and it should display a message: __"Valid Transaction Envelope XDR"__ ![](https://i.imgur.com/Bws9gQM.png) &nbsp; * Click __Import Transaction__ button. * You will now see all the data of your transaction getting displayed. Verify the __Transaction Hash__ field that's been displayed vs the __Hash:__ that you saved in your __tx_unsigned.txt__ file. They should match. This will help you make sure that you have been doing all the steps correctly and you imported the transaction correctly. * Now for the next step, you will need access to your secret key which starts with __S__. Please have it handy either from this offline computer or if you wrote it down on a paper. * Under the __Signatures__ section there is an option __Add Signer:__ enter your secret key here. (please make sure the secret key you enter here is the one associated with your public key otherwise submitting this transaction will fail). You only need to enter this one key as a signer. * As soon as you entered the secret key you will see that it generated an output XDR in the box below it. It will display the message __"Transaction signed!"__. ![](https://i.imgur.com/58PyQvn.png) &nbsp; * Copy the __XDR__ (highlight above) that was generated and save it in a text file named __tx_signed.txt__. Save this file in your usb drive and then unplug it. * You will need this file when we submit the transaction online using mystellar.tools --- Please make sure that at no point you are copying/saving your secret key anywhere on your usb drive. In such setup, your secret key always needs to stay isolated and should never come on any device which will connect to the internet. --- &nbsp; # Submitting a transaction &nbsp; This is the moment we have been waiting for! Let's go back to your computer which is connected to the internet. * Plug-in your __usb drive__. * Go to __[mystellar.tools](https://mystellar.tools)__, enter your public key if required, then from the left menu click on __Submit transaction__. * Enter your transaction __XDR__ from __tx_signed.txt__ file from your usb file. And click on __SUBMIT__ button. ![](https://i.imgur.com/YbHjwnA.png) * It will display the result along with response in JSON format. If you got any error then please see [error codes](#Error-codes-help) help section at the bottom of this guide. * Go to __Payments__ from menu to verify it. &nbsp; # Joining an Inflation Pool &nbsp; If you are not familiar with the concept of inflation in Stellar then I encourage you to go check out this guide on [How Inflation works](https://www.lumenauts.com/explainers/how-inflation-works) There are many Inflation pools which you can join. One of the community-driven Inflation pool that I can recommend to join is [Lumenaut](https://lumenaut.net). * Go to [How to Join the Inflation Pool](https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool) guide on Lumenaut's website and copy their Inflation Destination address. * Then go to mystellar.tools, from the left menu click __Set Options__. At the bottom of the page under __Others__, enter the __Inflation destination__ address that you copied and click on __SET__. ![](https://i.imgur.com/AfhJrvs.png) &nbsp; It will display the message saying that it cannot sign the transaction because you have not entered any secret key, along with all the transaction information. Save this information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. &nbsp; # Enabling your wallet to deal with various Stellar Assets (tokens) &nbsp; The Stellar distributed network can be used to track, hold, and transfer any type of [Assets](https://www.stellar.org/developers/guides/concepts/assets.html): dollars, euros, bitcoin, stocks, gold, and other tokens of value. When you hold assets, you’re actually holding credit from a particular issuer. In order to be able to receive any other Asset (token) from an issuer you much first establish a __trustline__ with that __issuer__. (Basically, you “trust” the “issuer” for issuing/crediting their tokens to your wallet.) Entities (individuals, small businesses, local communities, nonprofits, organizations, etc) who can issue you assets are called __Anchors__. Each Anchor has an issuing account from which it issues the asset. All anchors, when issuing an asset, give it an asset code. Assets are uniquely identified by the asset code and the issuer's address (wallet address) We need to find out the issuer's wallet address with whom we can establish a trustline. Stellar uses [Federation](https://www.stellar.org/developers/guides/concepts/federation.html) protocol to map a user-friendly name like __domain name, email address,__ etc., to a wallet address. &nbsp; We will take a look at how we can establish a trustline with the anchor __mobius.network__ to receive their token __MOBI__. Same steps can be followed for all other Anchors and their assets (tokens) that they provide. * In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Manage Trustlines__. Under __Create a trustline__ search for the Anchor's Domain: __mobius.network. * It will show you the list of assets that the anchor provides. Click on __MOBI__ and it will show you the details. Click __ADD__ in order to add trustline with this Anchor to enable your wallet to receive MOBI tokens. ![](https://i.imgur.com/yWE2pRD.png) &nbsp; As soon as you click that, it will display the message saying that it cannot sign the transaction. Save the transaction information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. Once you submit the transaction, verify it by clicking __All operations__ menu on the left. &nbsp; # Sending transactions of various Stellar Assets &nbsp; After you have created a trustline with the Anchor and received their tokens, let's look at how can you send them across to someone. An important thing to note here is that the destination wallet to which you are sending a particular token should also have a trustline established with this Anchor. Because after all the token is actually credited by this issuer (via Anchor) to the destination wallet address. * In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Send__. * Fill in the __Recipient__ address and __Amount__ of tokens that you want to send. Under __Asset__ click the drop-down menu and then enter __New Asset Code__: MOBI. and click __SET__. * Click on __VERIFY__ and then __SEND__. It will display the transaction information, save it on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. ![](https://i.imgur.com/J5Nbblv.png) &nbsp; &nbsp; &nbsp; # Error codes help: &nbsp; Following are some transaction response error codes which you might encounter while submitting your transactions. \- __tx_no_source_account__: You used incorrect source wallet address from which you are sending this transaction. \- __tx_bad_auth__: You signed the transaction incorrectly or used an incorrect secret key for the corresponding public key. Please make sure that you also select "public" tab in Stellar Laboratory. This signs the transaction properly for the public network. \- __tx_bad_seq__: Rarely, you can also get this error if the transaction sequence during the time when you build your transaction is no longer valid. Start a new transaction from scratch and please also make sure that you select "public" tab in Stellar Laboratory. \- __op_no_destination__: The destination address doesn't exist or doesn't hold the minimum required balance. <a name="footnote4"><sup>4</sup></a> \- __op_no_trust__: The destination address doesn't have a trustline which the Anchor and hence it can't receive the token that you are trying to send. &nbsp; # Conclusion &nbsp; Security needs to be a paramount importance when it comes to how you handle cryptocurrencies. For this purpose I recommend everyone to have a cold wallet for long-term storage. We have covered major aspects of cold wallet setup and signing transactions offline with Stellar. I hope this guide helps you to keep a secure cold wallet setup while still be able to perform basic transactions with Stellar. Please let me know if you have any questions or if you get stuck somewhere. &nbsp; ### I wish you a Stellar journey in your endeavors! &nbsp; &nbsp; If for any reason you are curious​ on how to do these steps using Stellar Laboratory the checkout [this guide](https://hackmd.io/s/BkEfL0M8z ) and [reddit comment](https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/). <sup>[1](#footnote1)</sup> If you are going to use Tails OS then please make sure to use v3.2. Because the TOR browser in later versions isn't getting the right permissions in AppGuard and hence CSS files are not working properly. https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z <sup>[2](#footnote2)</sup> The developer of __mystellar.tools__ has hinted that currently, development for a standalone cross-platform tool to sign transactions offline is underway. I will post an update with a link whenever this is available. <sup>[3](#footnote3)</sup> The instructions mentioned in the README file to build the website can change so it is always better to first check it on GitHub <sup>[3](#footnote3)</sup> In this case you can build a transaction in Stellar Laboratory under __Transaction Builder__ of type __Create Account__. Under __Destination Address__ enter the address of account to be funded for the first time and enter the __Starting Balance__ amount.
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19540327/Trx 25e4084fa3547f51a238fe7f88bd04d30dcded95
View Raw JSON Data
{
  "block": 19540327,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "# Purpose\n&nbsp;\nLot of us likes to follow the best practices of not leaving any crypto on the table and by that I mean to have a secure cold wallet setup for any sort of cryptocurrencies that we own. Many people use the Ledger Nano S as their go-to hardware wallet choice but many others also like to have their own version of offline/paper wallet as a cold wallet setup where it's private key never touches the internet. The challenge which comes with that is obviously how to manage to sign your transactions offline.\n\nI personally like to have a cold wallet setup by staying in-charge of the private key in an offline computer during its entire lifetime. For Ethereum based cold storage I followed this excellent guide from Tomshwom to setup __Tails OS + KeePassX + USB drive + MyEtherWallet__ as cold wallet. Please check it out in case if you want to use a similar approach:\n\n[Tomshwom's Advanced Crypto Security Guide (Part 3) - Creating a Secure Wallet](https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet) <a name=\"footnote1”><sup>1</sup></a>\n\n&nbsp;\n\n--- \n\nYou can still follow this guide even if you don't have a similar setup that's mentioned above. This will be a comprehensive guide and the steps we are going to cover can be applied to any sort of offline wallet setup.\n\nAlso, you might want to find a way to follow along with this guide on a different computer/smartphone during the offline portions.\n\n&nbsp;\n# Overview\n&nbsp;\nWe are going to walk through the following aspects of with Stellar.\n \n* __Downloading our tools__\n\n* __Securely setting up an Offline Paper Wallet__\n* __Getting Stellar Laboratory website for offline use__\n* __Building a transaction from a computer that is online__\n* __Signing a transaction on a computer that is offline__\n* __Submitting a transaction from a computer that is online__\n* __Joining an Inflation Pool__\n* __Enabling your wallet to deal with various Stellar Assets (tokens)__\n* __Sending transactions for various Stellar Assets__\n\nYou will also need a __USB drive__ for securely transferring some data back and forth between your online to offline system.\n\n&nbsp;\n# Downloads\n&nbsp;\nWe are going to download a couple of tools from Stellar's official GitHub repositories. Stellar's Paper Wallet and the Stellar Laboratory. Obviously, we start by being on a computer which is connected to the internet.\n\n#### \\*\\*\\[Update\\]: Stellar will soon deprecate their paper wallet mentioned below. It is still functional right now but may not be in future. I will keep an eye out for a good platform-independent wallet generator and will include the updated version here whenever available\\*\\*\n\n* Download the paper wallet by visiting following link and click on \"Clone or download\" button.\n    [https://github.com/stellar/paper-wallet](https://github.com/stellar/paper-wallet)\n\n* Download the Stellar Laboratory by visiting following link and click on \"Clone or download\" button.    [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory)\n\n&nbsp;\n\n# Setting up Paper Wallet offline\n&nbsp;\nI am going to outline how to set up a paper wallet on your offline system.\n\n* For this step you will first need to plug-in the __usb drive__ to your computer which is connected to the internet and copy the downloaded paper wallet folder to this usb drive.\n\n* Boot the offline system/computer which should never connect to the internet. Plug in this usb drive and open __index.html__ file from the folder.\n\n* After that it's super simple to just click on the __\"Generate\"__ button in order to generate your pair of __public key (wallet address)__ which starts with __G__ and __secret key__ which starts with __S__.\n\n&nbsp;\nYou will see QR codes as well as text output. It is extremely important here to safely save your private key. This is the key used in order to do any sort of transaction from your wallet and also to recover access to your wallet if your computer is stolen or can't boot anymore due to disk failure or any other reason.\n\n\nIf you are storing this private key on your offline computer's hard drive/usb/sd card, then it is also very important that you store it in __encrypted form__. It's best to follow the guide I mentioned earlier for __Tails OS Encrypted Persistence and KeyPassX__ setup for doubly-encrypting everything. But you can also use any other password managers or some form of encryption.\n\nAlternatively, you can also write down this private key on the piece of paper.\n\n&nbsp;\nWhether you store your private key on a physical drive in __encrypted form__ or write it down on **paper** - it is extremely important to have multiple backups/copies of it and store them securely to avoid any single point of failure in case if you lose the only one copy you have.\n\n* Save the __public key__ (wallet address) either in a __wallet.txt__ file on your __usb drive__ or scan the QR code on your smartphone __Be careful not to scan the QR code of the secret key.__ To avoid this from happening you can resize your browser window to only see the QR code of public key before you scan it.\n\n* You can now unplug the __usb drive__ go back to your computer which is connected to the internet.\n\n&nbsp;\n\n#  Getting Stellar Laboratory for offline use.\n&nbsp;\nFor non-technical users, this is the only challenging step in this guide. But don't worry we will break it down step-by-step.\n\nAt the time of this writing, in order for us to sign transactions offline, we need a working local copy of Stellar Laboratory and I couldn't find any other way but to download it from GitHub and build it from source code. Please download it if you haven't done so from the earlier step. <a name=\"footnote2”><sup>2</sup></a>\n\nBy visiting [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory), and going through Readme we can see that we can build this website as mentioned in the instructions under __\"Building for production\"__. <a name=\"footnote3”><sup>3</sup></a>\n\n\nCurrently, we need __git__, __node js__ and __npm__ to be installed in order to build our own copy of the Stellar Laboratory website. They are free and open source, anyone can download and install them on Windows/macOS/Linux and other platforms.\n\n&nbsp;\nIf you need to install __git__ then please follow the instructions [here](https://www.atlassian.com/git/tutorials/install-git)\n\nAnd there are various ways to install __node__ and __npm__, you can find many resources online. I am just going to mention below guides for Mac and Windows:\n* [Installing Node.js® and NPM on Mac](https://treehouse.github.io/installation-guides/mac/node-mac.html)\n* [Installing Node.js® and NPM on Windows](https://treehouse.github.io/installation-guides/windows/node-windows.html)\n\n&nbsp;\nAfter verifying your installation, you can then build your local copy of Stellar Laboratory.\n\n&nbsp;\nOn __macOS/Linux__:\nOpen __Terminal__ and run below commands in sequence\n    \n\\- ``cd ~/Downloads/laboratory-master/``\n\\- ``npm install``    \n\\- ``./node_modules/.bin/gulp build``\n\n&nbsp;\nOn __Windows__:\nExtract the zip file and then open __Command Prompt__ by clicking on start menu and type: cmd. After that run below commands in sequence (replace <YOUR_USERNAME> with your windows account username)\n\n\\- ``cd C:\\Users\\<YOUR_USERNAME>\\Downloads\\laboratory-master\\``\n\\- ``npm install``\n\\- ``node_modules\\.bin\\gulp build``\n\n&nbsp;\nIf everything goes well then go back to the __laboratory-master__ folder that you downloaded and you will see that there is a folder named __\"dist\"__ which got created. This folder has everything that you need in order to have your own working local copy of Stellar Laboratory. You can verify this by opening __index.html__ file from it.\n\n* Plug in the __usb drive__ and copy this __dist__ folder in it. You will need this when we need to sign transactions offline.\n\nIf you are not a computer savvy user and if you have made it this far then Congratulate yourself! Because now you have all the necessary tools to start working on your transactions!\n\n&nbsp;\n\n# Building a transaction\n&nbsp;\nThere are two ways we can build a transaction. Either by using mystellar.tools website or by using __Stellar Laboratory__ website. For simplicity, we are going to use mystellar.tools\n\n&nbsp;\nGo to: __[mystellar.tools](https://mystellar.tools)__\n\n* Enter your __Public Key__ and click __ENTER__:\n\n![](https://i.imgur.com/CTeu6wz.png)\n\n&nbsp;\n\n* To send a payment in XLM- click on __Send__ from the left menu. And fill out the details below:\n\n![](https://i.imgur.com/3pi2Xyh.png)\n\n&nbsp;\n\n* After you click the __VERIFY__ button, you will see the below verification page. Click __SEND__\n\n![](https://i.imgur.com/zEdYrY1.png)\n\n&nbsp;\n\n* As soon as you click on send you will see below message will appear.\n\n![](https://i.imgur.com/wr6CWNO.png)\n\n\n\n&nbsp;\n\nThe message is self-explanatory. Basically, all it's saying is that since we have entered the application without using our secret key, it cannot sign the transaction before sending it. But we can use this transaction information to sign it offline on our own.\n\n* Copy the Transaction hash and the Transaction evelope (XDR). And save it into a txt file. Let's name it __tx_unsigned.txt__. Save this file to your usb drive.\n\n![](https://i.imgur.com/3qA6ye8.png)\n\n\n&nbsp;\n\n\n# Signing a transaction offline\n&nbsp;\nBefore we go to sign our transaction offline make sure you have following two things in your __usb drive__.\n\n* The folder named  __dist__ which is the local copy of Stellar Laboratory website that we built.\n\n* The file __tx_unsigned.txt__ which has the Hash and XDR data of our transaction.\n\n&nbsp;\n\nBoot up your computer which is offline and plug this __usb drive__ in it. \n\n* Copy the __dist__ folder locally on your desktop from your usb drive. Open __index.html__ file in the browser so you get Stellar Laboratory running offline. Now make sure that you select the __public__ tab on top right. This ensures that everything will be done for the public network.\n\n* Click on __Transaction Signer__ from the top menu bar.\n\n* This will give you an option to- __\"Import a transaction envelope in XDR format:\"__\n\n* Now open __tx_unsigned.txt__ file from __usb drive__ and only copy transaction data under __XDR:__. Don't copy the __Hash__ which is above that. See the highlighted part below:\n\n\n![](https://i.imgur.com/MiMrab2.png)\n\n&nbsp;\n\n* Go back to the browser and paste that into the text box.\n\n* Make sure there are no leading or trailing whitespaces and it should display a message: __\"Valid Transaction Envelope XDR\"__\n\n![](https://i.imgur.com/Bws9gQM.png)\n\n&nbsp;\n\n* Click __Import Transaction__ button.\n\n* You will now see all the data of your transaction getting displayed. Verify the __Transaction Hash__ field that's been displayed vs the __Hash:__ that you saved in your __tx_unsigned.txt__ file. They should match. This will help you make sure that you have been doing all the steps correctly and you imported the transaction correctly.\n\n\n* Now for the next step, you will need access to your secret key which starts with __S__. Please have it handy either from this offline computer or if you wrote it down on a paper.\n\n* Under the __Signatures__ section there is an option __Add Signer:__ enter your secret key here. (please make sure the secret key you enter here is the one associated with your public key otherwise submitting this transaction will fail). You only need to enter this one key as a signer.\n\n* As soon as you entered the secret key you will see that it generated an output XDR in the box below it. It will display the message __\"Transaction signed!\"__.\n\n\n![](https://i.imgur.com/58PyQvn.png)\n\n&nbsp;\n\n* Copy the __XDR__ (highlight above) that was generated and save it in a text file named __tx_signed.txt__. Save this file in your usb drive and then unplug it.\n\n* You will need this file when we submit the transaction online using mystellar.tools\n\n\n---\nPlease make sure that at no point you are copying/saving your secret key anywhere on your usb drive. In such setup, your secret key always needs to stay isolated and should never come on any device which will connect to the internet.\n---\n&nbsp;\n\n\n# Submitting a transaction\n&nbsp;\nThis is the moment we have been waiting for!\n\nLet's go back to your computer which is connected to the internet.\n\n* Plug-in your __usb drive__.\n\n* Go to __[mystellar.tools](https://mystellar.tools)__, enter your public key if required, then from the left menu click on __Submit transaction__.\n\n* Enter your transaction __XDR__ from __tx_signed.txt__ file from your usb file. And click on __SUBMIT__ button.\n\n![](https://i.imgur.com/YbHjwnA.png)\n\n\n* It will display the result along with response in JSON format. If you got any error then please see [error codes](#Error-codes-help) help section at the bottom of this guide.\n\n* Go to __Payments__ from menu to verify it.\n\n&nbsp;\n\n# Joining an Inflation Pool\n&nbsp;\nIf you are not familiar with the concept of inflation in Stellar then I encourage you to go check out this guide on [How Inflation works](https://www.lumenauts.com/explainers/how-inflation-works)\n\nThere are many Inflation pools which you can join. One of the community-driven Inflation pool that I can recommend to join is [Lumenaut](https://lumenaut.net).\n\n* Go to [How to Join the Inflation Pool](https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool) guide on Lumenaut's website and copy their Inflation Destination address.\n\n* Then go to mystellar.tools, from the left menu click __Set Options__. At the bottom of the page under __Others__, enter the __Inflation destination__ address that you copied and click on __SET__.\n\n![](https://i.imgur.com/AfhJrvs.png)\n\n&nbsp;\n\nIt will display the message saying that it cannot sign the transaction because you have not entered any secret key, along with all the transaction information. Save this information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\n\n&nbsp;\n\n# Enabling your wallet to deal with various Stellar Assets (tokens)\n&nbsp;\nThe Stellar distributed network can be used to track, hold, and transfer any type of [Assets](https://www.stellar.org/developers/guides/concepts/assets.html): dollars, euros, bitcoin, stocks, gold, and other tokens of value.\n\nWhen you hold assets, you’re actually holding credit from a particular issuer.\nIn order to be able to receive any other Asset (token) from an issuer you much first establish a __trustline__ with that __issuer__. (Basically, you “trust” the “issuer” for issuing/crediting their tokens to your wallet.)\n\nEntities (individuals, small businesses, local communities, nonprofits, organizations, etc) who can issue you assets are called __Anchors__.\n\nEach Anchor has an issuing account from which it issues the asset. All anchors, when issuing an asset, give it an asset code. Assets are uniquely identified by the asset code and the issuer's address (wallet address)\n\nWe need to find out the issuer's wallet address with whom we can establish a trustline. Stellar uses [Federation](https://www.stellar.org/developers/guides/concepts/federation.html) protocol to map a user-friendly name like __domain name, email address,__ etc., to a wallet address.\n\n&nbsp;\n\nWe will take a look at how we can establish a trustline with the anchor __mobius.network__ to receive their token __MOBI__. Same steps can be followed for all other Anchors and their assets (tokens) that they provide.\n\n* In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Manage Trustlines__. Under __Create a trustline__ search for the Anchor's Domain: __mobius.network.\n\n* It will show you the list of assets that the anchor provides. Click on __MOBI__ and it will show you the details. Click __ADD__ in order to add trustline with this Anchor to enable your wallet to receive MOBI tokens.\n\n![](https://i.imgur.com/yWE2pRD.png)\n\n\n&nbsp;\nAs soon as you click that, it will display the message saying that it cannot sign the transaction. Save the transaction information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\nOnce you submit the transaction, verify it by clicking __All operations__ menu on the left.\n\n\n&nbsp;\n\n# Sending transactions of various Stellar Assets\n&nbsp;\nAfter you have created a trustline with the Anchor and received their tokens, let's look at how can you send them across to someone. An important thing to note here is that the destination wallet to which you are sending a particular token should also have a trustline established with this Anchor. Because after all the token is actually credited by this issuer (via Anchor) to the destination wallet address.\n\n* In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Send__. \n\n* Fill in the __Recipient__ address and __Amount__ of tokens that you want to send. Under __Asset__ click the drop-down menu and then enter __New Asset Code__: MOBI. and click __SET__.\n* Click on __VERIFY__ and then __SEND__. It will display the transaction information, save it on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\n\n![](https://i.imgur.com/J5Nbblv.png)\n\n\n&nbsp;\n&nbsp;\n&nbsp;\n\n\n# Error codes help:\n&nbsp;\nFollowing are some transaction response error codes which you might encounter while submitting your transactions.\n\n\\- __tx_no_source_account__: You used incorrect source wallet address from which you are sending this transaction.\n\n\\- __tx_bad_auth__: You signed the transaction incorrectly or used an incorrect secret key for the corresponding public key. Please make sure that you also select \"public\" tab in Stellar Laboratory. This signs the transaction properly for the public network.\n\n\\- __tx_bad_seq__: Rarely, you can also get this error if the transaction sequence during the time when you build your transaction is no longer valid. Start a new transaction from scratch and please also make sure that you select \"public\" tab in Stellar Laboratory.\n\n\\- __op_no_destination__: The destination address doesn't exist or doesn't hold the minimum required balance. <a name=\"footnote4\"><sup>4</sup></a>\n\n\\- __op_no_trust__: The destination address doesn't have a trustline which the Anchor and hence it can't receive the token that you are trying to send.\n\n\n&nbsp;\n\n# Conclusion\n&nbsp;\nSecurity needs to be a paramount importance when it comes to how you handle cryptocurrencies. For this purpose I recommend everyone to have a cold wallet for long-term storage.\n\nWe have covered major aspects of cold wallet setup and signing transactions offline with Stellar. I hope this guide helps you to keep a secure cold wallet setup while still be able to perform basic transactions with Stellar.\n\nPlease let me know if you have any questions or if you get stuck somewhere.\n\n&nbsp;\n\n### I wish you a Stellar journey in your endeavors!\n\n&nbsp;\n\n\n&nbsp;\n\nIf for any reason you are curious​ on how to do these steps using Stellar Laboratory the checkout [this guide](https://hackmd.io/s/BkEfL0M8z ) and [reddit comment](https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/).\n\n<sup>[1](#footnote1)</sup> If you are going to use Tails OS then please make sure to use v3.2. Because the TOR browser in later versions isn't getting the right permissions in AppGuard and hence CSS files are not working properly. https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\n\n<sup>[2](#footnote2)</sup> The developer of __mystellar.tools__ has hinted that currently, development for a standalone cross-platform tool to sign transactions offline is underway. I will post an update with a link whenever this is available.\n\n<sup>[3](#footnote3)</sup> The instructions mentioned in the README file to build the website can change so it is always better to first check it on GitHub\n\n<sup>[3](#footnote3)</sup> In this case you can build a transaction in Stellar Laboratory under __Transaction Builder__ of type __Create Account__. Under __Destination Address__ enter the address of account to be funded for the first time and enter the __Starting Balance__ amount.",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T07:42:27",
  "trx_id": "25e4084fa3547f51a238fe7f88bd04d30dcded95",
  "trx_in_block": 64,
  "virtual_op": 0
}
2018/02/03 07:41:03
authormrbot
body@@ -1080,17 +1080,16 @@ t) %3C -sup%3E%5B1%5D(# +a name=%22 foot @@ -1093,23 +1093,34 @@ ootnote1 -) +%E2%80%9D%3E%3Csup%3E1 %3C/sup%3E +%3C/a%3E %0A%0A&nbsp; @@ -5710,17 +5710,16 @@ p. %3C -sup%3E%5B2%5D(# +a name=%22 foot @@ -5723,23 +5723,34 @@ ootnote2 -) +%E2%80%9D%3E%3Csup%3E2 %3C/sup%3E +%3C/a%3E %0A%0ABy vis @@ -5977,17 +5977,16 @@ _. %3C -sup%3E%5B3%5D(# +a name=%22 foot @@ -5990,23 +5990,34 @@ ootnote3 -) +%E2%80%9D%3E%3Csup%3E3 %3C/sup%3E +%3C/a%3E %0A%0A%0ACurre @@ -18181,17 +18181,16 @@ e. %3C -sup%3E%5B4%5D(# +a name=%22 foot @@ -18198,15 +18198,26 @@ ote4 -) +%22%3E%3Csup%3E4 %3C/sup%3E +%3C/a%3E %0A%0A%5C- @@ -19229,32 +19229,33 @@ te39iy/).%0A%0A%3C -a name=%22 +sup%3E%5B1%5D(# footnote1%22%3E%3C @@ -19255,26 +19255,15 @@ ote1 -%22%3E%3Csup%3E1 +) %3C/sup%3E -%3C/a%3E If @@ -19721,24 +19721,25 @@ 1167z%0A%0A%3C -a name=%22 +sup%3E%5B2%5D(# footnote @@ -19743,26 +19743,15 @@ ote2 -%22%3E%3Csup%3E2 +) %3C/sup%3E -%3C/a%3E The @@ -19966,24 +19966,25 @@ able.%0A%0A%3C -a name=%22 +sup%3E%5B3%5D(# footnote @@ -19988,26 +19988,15 @@ ote3 -%22%3E%3Csup%3E3 +) %3C/sup%3E -%3C/a%3E The @@ -20127,43 +20127,33 @@ b%0A%0A%3C -a name=%22footnote4%22%3E%3Csup%3E4 +sup%3E%5B3%5D(#footnote3) %3C/sup%3E -%3C/a%3E In
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","#footnote1","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z","#footnote2","#footnote3"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19540299/Trx b5480b700e53948b85d7231e1646bdaad9561ed5
View Raw JSON Data
{
  "block": 19540299,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "@@ -1080,17 +1080,16 @@\n t) %3C\n-sup%3E%5B1%5D(#\n+a name=%22\n foot\n@@ -1093,23 +1093,34 @@\n ootnote1\n-)\n+%E2%80%9D%3E%3Csup%3E1\n %3C/sup%3E\n+%3C/a%3E\n %0A%0A&nbsp;\n@@ -5710,17 +5710,16 @@\n p. %3C\n-sup%3E%5B2%5D(#\n+a name=%22\n foot\n@@ -5723,23 +5723,34 @@\n ootnote2\n-)\n+%E2%80%9D%3E%3Csup%3E2\n %3C/sup%3E\n+%3C/a%3E\n %0A%0ABy vis\n@@ -5977,17 +5977,16 @@\n _. %3C\n-sup%3E%5B3%5D(#\n+a name=%22\n foot\n@@ -5990,23 +5990,34 @@\n ootnote3\n-)\n+%E2%80%9D%3E%3Csup%3E3\n %3C/sup%3E\n+%3C/a%3E\n %0A%0A%0ACurre\n@@ -18181,17 +18181,16 @@\n e. %3C\n-sup%3E%5B4%5D(#\n+a name=%22\n foot\n@@ -18198,15 +18198,26 @@\n ote4\n-)\n+%22%3E%3Csup%3E4\n %3C/sup%3E\n+%3C/a%3E\n %0A%0A%5C-\n@@ -19229,32 +19229,33 @@\n te39iy/).%0A%0A%3C\n-a name=%22\n+sup%3E%5B1%5D(#\n footnote1%22%3E%3C\n@@ -19255,26 +19255,15 @@\n ote1\n-%22%3E%3Csup%3E1\n+)\n %3C/sup%3E\n-%3C/a%3E\n  If \n@@ -19721,24 +19721,25 @@\n 1167z%0A%0A%3C\n-a name=%22\n+sup%3E%5B2%5D(#\n footnote\n@@ -19743,26 +19743,15 @@\n ote2\n-%22%3E%3Csup%3E2\n+)\n %3C/sup%3E\n-%3C/a%3E\n  The\n@@ -19966,24 +19966,25 @@\n able.%0A%0A%3C\n-a name=%22\n+sup%3E%5B3%5D(#\n footnote\n@@ -19988,26 +19988,15 @@\n ote3\n-%22%3E%3Csup%3E3\n+)\n %3C/sup%3E\n-%3C/a%3E\n  The\n@@ -20127,43 +20127,33 @@\n b%0A%0A%3C\n-a name=%22footnote4%22%3E%3Csup%3E4\n+sup%3E%5B3%5D(#footnote3)\n %3C/sup%3E\n-%3C/a%3E\n  In \n",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"#footnote1\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\",\"#footnote2\",\"#footnote3\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T07:41:03",
  "trx_id": "b5480b700e53948b85d7231e1646bdaad9561ed5",
  "trx_in_block": 18,
  "virtual_op": 0
}
2018/02/03 07:35:27
authormrbot
body# Purpose &nbsp; Lot of us likes to follow the best practices of not leaving any crypto on the table and by that I mean to have a secure cold wallet setup for any sort of cryptocurrencies that we own. Many people use the Ledger Nano S as their go-to hardware wallet choice but many others also like to have their own version of offline/paper wallet as a cold wallet setup where it's private key never touches the internet. The challenge which comes with that is obviously how to manage to sign your transactions offline. I personally like to have a cold wallet setup by staying in-charge of the private key in an offline computer during its entire lifetime. For Ethereum based cold storage I followed this excellent guide from Tomshwom to setup __Tails OS + KeePassX + USB drive + MyEtherWallet__ as cold wallet. Please check it out in case if you want to use a similar approach: [Tomshwom's Advanced Crypto Security Guide (Part 3) - Creating a Secure Wallet](https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet) <sup>[1](#footnote1)</sup> &nbsp; --- You can still follow this guide even if you don't have a similar setup that's mentioned above. This will be a comprehensive guide and the steps we are going to cover can be applied to any sort of offline wallet setup. Also, you might want to find a way to follow along with this guide on a different computer/smartphone during the offline portions. &nbsp; # Overview &nbsp; We are going to walk through the following aspects of with Stellar. * __Downloading our tools__ * __Securely setting up an Offline Paper Wallet__ * __Getting Stellar Laboratory website for offline use__ * __Building a transaction from a computer that is online__ * __Signing a transaction on a computer that is offline__ * __Submitting a transaction from a computer that is online__ * __Joining an Inflation Pool__ * __Enabling your wallet to deal with various Stellar Assets (tokens)__ * __Sending transactions for various Stellar Assets__ You will also need a __USB drive__ for securely transferring some data back and forth between your online to offline system. &nbsp; # Downloads &nbsp; We are going to download a couple of tools from Stellar's official GitHub repositories. Stellar's Paper Wallet and the Stellar Laboratory. Obviously, we start by being on a computer which is connected to the internet. #### \*\*\[Update\]: Stellar will soon deprecate their paper wallet mentioned below. It is still functional right now but may not be in future. I will keep an eye out for a good platform-independent wallet generator and will include the updated version here whenever available\*\* * Download the paper wallet by visiting following link and click on "Clone or download" button. [https://github.com/stellar/paper-wallet](https://github.com/stellar/paper-wallet) * Download the Stellar Laboratory by visiting following link and click on "Clone or download" button. [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory) &nbsp; # Setting up Paper Wallet offline &nbsp; I am going to outline how to set up a paper wallet on your offline system. * For this step you will first need to plug-in the __usb drive__ to your computer which is connected to the internet and copy the downloaded paper wallet folder to this usb drive. * Boot the offline system/computer which should never connect to the internet. Plug in this usb drive and open __index.html__ file from the folder. * After that it's super simple to just click on the __"Generate"__ button in order to generate your pair of __public key (wallet address)__ which starts with __G__ and __secret key__ which starts with __S__. &nbsp; You will see QR codes as well as text output. It is extremely important here to safely save your private key. This is the key used in order to do any sort of transaction from your wallet and also to recover access to your wallet if your computer is stolen or can't boot anymore due to disk failure or any other reason. If you are storing this private key on your offline computer's hard drive/usb/sd card, then it is also very important that you store it in __encrypted form__. It's best to follow the guide I mentioned earlier for __Tails OS Encrypted Persistence and KeyPassX__ setup for doubly-encrypting everything. But you can also use any other password managers or some form of encryption. Alternatively, you can also write down this private key on the piece of paper. &nbsp; Whether you store your private key on a physical drive in __encrypted form__ or write it down on **paper** - it is extremely important to have multiple backups/copies of it and store them securely to avoid any single point of failure in case if you lose the only one copy you have. * Save the __public key__ (wallet address) either in a __wallet.txt__ file on your __usb drive__ or scan the QR code on your smartphone __Be careful not to scan the QR code of the secret key.__ To avoid this from happening you can resize your browser window to only see the QR code of public key before you scan it. * You can now unplug the __usb drive__ go back to your computer which is connected to the internet. &nbsp; # Getting Stellar Laboratory for offline use. &nbsp; For non-technical users, this is the only challenging step in this guide. But don't worry we will break it down step-by-step. At the time of this writing, in order for us to sign transactions offline, we need a working local copy of Stellar Laboratory and I couldn't find any other way but to download it from GitHub and build it from source code. Please download it if you haven't done so from the earlier step. <sup>[2](#footnote2)</sup> By visiting [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory), and going through Readme we can see that we can build this website as mentioned in the instructions under __"Building for production"__. <sup>[3](#footnote3)</sup> Currently, we need __git__, __node js__ and __npm__ to be installed in order to build our own copy of the Stellar Laboratory website. They are free and open source, anyone can download and install them on Windows/macOS/Linux and other platforms. &nbsp; If you need to install __git__ then please follow the instructions [here](https://www.atlassian.com/git/tutorials/install-git) And there are various ways to install __node__ and __npm__, you can find many resources online. I am just going to mention below guides for Mac and Windows: * [Installing Node.js® and NPM on Mac](https://treehouse.github.io/installation-guides/mac/node-mac.html) * [Installing Node.js® and NPM on Windows](https://treehouse.github.io/installation-guides/windows/node-windows.html) &nbsp; After verifying your installation, you can then build your local copy of Stellar Laboratory. &nbsp; On __macOS/Linux__: Open __Terminal__ and run below commands in sequence \- ``cd ~/Downloads/laboratory-master/`` \- ``npm install`` \- ``./node_modules/.bin/gulp build`` &nbsp; On __Windows__: Extract the zip file and then open __Command Prompt__ by clicking on start menu and type: cmd. After that run below commands in sequence (replace <YOUR_USERNAME> with your windows account username) \- ``cd C:\Users\<YOUR_USERNAME>\Downloads\laboratory-master\`` \- ``npm install`` \- ``node_modules\.bin\gulp build`` &nbsp; If everything goes well then go back to the __laboratory-master__ folder that you downloaded and you will see that there is a folder named __"dist"__ which got created. This folder has everything that you need in order to have your own working local copy of Stellar Laboratory. You can verify this by opening __index.html__ file from it. * Plug in the __usb drive__ and copy this __dist__ folder in it. You will need this when we need to sign transactions offline. If you are not a computer savvy user and if you have made it this far then Congratulate yourself! Because now you have all the necessary tools to start working on your transactions! &nbsp; # Building a transaction &nbsp; There are two ways we can build a transaction. Either by using mystellar.tools website or by using __Stellar Laboratory__ website. For simplicity, we are going to use mystellar.tools &nbsp; Go to: __[mystellar.tools](https://mystellar.tools)__ * Enter your __Public Key__ and click __ENTER__: ![](https://i.imgur.com/CTeu6wz.png) &nbsp; * To send a payment in XLM- click on __Send__ from the left menu. And fill out the details below: ![](https://i.imgur.com/3pi2Xyh.png) &nbsp; * After you click the __VERIFY__ button, you will see the below verification page. Click __SEND__ ![](https://i.imgur.com/zEdYrY1.png) &nbsp; * As soon as you click on send you will see below message will appear. ![](https://i.imgur.com/wr6CWNO.png) &nbsp; The message is self-explanatory. Basically, all it's saying is that since we have entered the application without using our secret key, it cannot sign the transaction before sending it. But we can use this transaction information to sign it offline on our own. * Copy the Transaction hash and the Transaction evelope (XDR). And save it into a txt file. Let's name it __tx_unsigned.txt__. Save this file to your usb drive. ![](https://i.imgur.com/3qA6ye8.png) &nbsp; # Signing a transaction offline &nbsp; Before we go to sign our transaction offline make sure you have following two things in your __usb drive__. * The folder named __dist__ which is the local copy of Stellar Laboratory website that we built. * The file __tx_unsigned.txt__ which has the Hash and XDR data of our transaction. &nbsp; Boot up your computer which is offline and plug this __usb drive__ in it. * Copy the __dist__ folder locally on your desktop from your usb drive. Open __index.html__ file in the browser so you get Stellar Laboratory running offline. Now make sure that you select the __public__ tab on top right. This ensures that everything will be done for the public network. * Click on __Transaction Signer__ from the top menu bar. * This will give you an option to- __"Import a transaction envelope in XDR format:"__ * Now open __tx_unsigned.txt__ file from __usb drive__ and only copy transaction data under __XDR:__. Don't copy the __Hash__ which is above that. See the highlighted part below: ![](https://i.imgur.com/MiMrab2.png) &nbsp; * Go back to the browser and paste that into the text box. * Make sure there are no leading or trailing whitespaces and it should display a message: __"Valid Transaction Envelope XDR"__ ![](https://i.imgur.com/Bws9gQM.png) &nbsp; * Click __Import Transaction__ button. * You will now see all the data of your transaction getting displayed. Verify the __Transaction Hash__ field that's been displayed vs the __Hash:__ that you saved in your __tx_unsigned.txt__ file. They should match. This will help you make sure that you have been doing all the steps correctly and you imported the transaction correctly. * Now for the next step, you will need access to your secret key which starts with __S__. Please have it handy either from this offline computer or if you wrote it down on a paper. * Under the __Signatures__ section there is an option __Add Signer:__ enter your secret key here. (please make sure the secret key you enter here is the one associated with your public key otherwise submitting this transaction will fail). You only need to enter this one key as a signer. * As soon as you entered the secret key you will see that it generated an output XDR in the box below it. It will display the message __"Transaction signed!"__. ![](https://i.imgur.com/58PyQvn.png) &nbsp; * Copy the __XDR__ (highlight above) that was generated and save it in a text file named __tx_signed.txt__. Save this file in your usb drive and then unplug it. * You will need this file when we submit the transaction online using mystellar.tools --- Please make sure that at no point you are copying/saving your secret key anywhere on your usb drive. In such setup, your secret key always needs to stay isolated and should never come on any device which will connect to the internet. --- &nbsp; # Submitting a transaction &nbsp; This is the moment we have been waiting for! Let's go back to your computer which is connected to the internet. * Plug-in your __usb drive__. * Go to __[mystellar.tools](https://mystellar.tools)__, enter your public key if required, then from the left menu click on __Submit transaction__. * Enter your transaction __XDR__ from __tx_signed.txt__ file from your usb file. And click on __SUBMIT__ button. ![](https://i.imgur.com/YbHjwnA.png) * It will display the result along with response in JSON format. If you got any error then please see [error codes](#Error-codes-help) help section at the bottom of this guide. * Go to __Payments__ from menu to verify it. &nbsp; # Joining an Inflation Pool &nbsp; If you are not familiar with the concept of inflation in Stellar then I encourage you to go check out this guide on [How Inflation works](https://www.lumenauts.com/explainers/how-inflation-works) There are many Inflation pools which you can join. One of the community-driven Inflation pool that I can recommend to join is [Lumenaut](https://lumenaut.net). * Go to [How to Join the Inflation Pool](https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool) guide on Lumenaut's website and copy their Inflation Destination address. * Then go to mystellar.tools, from the left menu click __Set Options__. At the bottom of the page under __Others__, enter the __Inflation destination__ address that you copied and click on __SET__. ![](https://i.imgur.com/AfhJrvs.png) &nbsp; It will display the message saying that it cannot sign the transaction because you have not entered any secret key, along with all the transaction information. Save this information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. &nbsp; # Enabling your wallet to deal with various Stellar Assets (tokens) &nbsp; The Stellar distributed network can be used to track, hold, and transfer any type of [Assets](https://www.stellar.org/developers/guides/concepts/assets.html): dollars, euros, bitcoin, stocks, gold, and other tokens of value. When you hold assets, you’re actually holding credit from a particular issuer. In order to be able to receive any other Asset (token) from an issuer you much first establish a __trustline__ with that __issuer__. (Basically, you “trust” the “issuer” for issuing/crediting their tokens to your wallet.) Entities (individuals, small businesses, local communities, nonprofits, organizations, etc) who can issue you assets are called __Anchors__. Each Anchor has an issuing account from which it issues the asset. All anchors, when issuing an asset, give it an asset code. Assets are uniquely identified by the asset code and the issuer's address (wallet address) We need to find out the issuer's wallet address with whom we can establish a trustline. Stellar uses [Federation](https://www.stellar.org/developers/guides/concepts/federation.html) protocol to map a user-friendly name like __domain name, email address,__ etc., to a wallet address. &nbsp; We will take a look at how we can establish a trustline with the anchor __mobius.network__ to receive their token __MOBI__. Same steps can be followed for all other Anchors and their assets (tokens) that they provide. * In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Manage Trustlines__. Under __Create a trustline__ search for the Anchor's Domain: __mobius.network. * It will show you the list of assets that the anchor provides. Click on __MOBI__ and it will show you the details. Click __ADD__ in order to add trustline with this Anchor to enable your wallet to receive MOBI tokens. ![](https://i.imgur.com/yWE2pRD.png) &nbsp; As soon as you click that, it will display the message saying that it cannot sign the transaction. Save the transaction information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. Once you submit the transaction, verify it by clicking __All operations__ menu on the left. &nbsp; # Sending transactions of various Stellar Assets &nbsp; After you have created a trustline with the Anchor and received their tokens, let's look at how can you send them across to someone. An important thing to note here is that the destination wallet to which you are sending a particular token should also have a trustline established with this Anchor. Because after all the token is actually credited by this issuer (via Anchor) to the destination wallet address. * In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Send__. * Fill in the __Recipient__ address and __Amount__ of tokens that you want to send. Under __Asset__ click the drop-down menu and then enter __New Asset Code__: MOBI. and click __SET__. * Click on __VERIFY__ and then __SEND__. It will display the transaction information, save it on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it. ![](https://i.imgur.com/J5Nbblv.png) &nbsp; &nbsp; &nbsp; # Error codes help: &nbsp; Following are some transaction response error codes which you might encounter while submitting your transactions. \- __tx_no_source_account__: You used incorrect source wallet address from which you are sending this transaction. \- __tx_bad_auth__: You signed the transaction incorrectly or used an incorrect secret key for the corresponding public key. Please make sure that you also select "public" tab in Stellar Laboratory. This signs the transaction properly for the public network. \- __tx_bad_seq__: Rarely, you can also get this error if the transaction sequence during the time when you build your transaction is no longer valid. Start a new transaction from scratch and please also make sure that you select "public" tab in Stellar Laboratory. \- __op_no_destination__: The destination address doesn't exist or doesn't hold the minimum required balance. <sup>[4](#footnote4)</sup> \- __op_no_trust__: The destination address doesn't have a trustline which the Anchor and hence it can't receive the token that you are trying to send. &nbsp; # Conclusion &nbsp; Security needs to be a paramount importance when it comes to how you handle cryptocurrencies. For this purpose I recommend everyone to have a cold wallet for long-term storage. We have covered major aspects of cold wallet setup and signing transactions offline with Stellar. I hope this guide helps you to keep a secure cold wallet setup while still be able to perform basic transactions with Stellar. Please let me know if you have any questions or if you get stuck somewhere. &nbsp; ### I wish you a Stellar journey in your endeavors! &nbsp; &nbsp; If for any reason you are curious​ on how to do these steps using Stellar Laboratory the checkout [this guide](https://hackmd.io/s/BkEfL0M8z ) and [reddit comment](https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/). <a name="footnote1"><sup>1</sup></a> If you are going to use Tails OS then please make sure to use v3.2. Because the TOR browser in later versions isn't getting the right permissions in AppGuard and hence CSS files are not working properly. https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z <a name="footnote2"><sup>2</sup></a> The developer of __mystellar.tools__ has hinted that currently, development for a standalone cross-platform tool to sign transactions offline is underway. I will post an update with a link whenever this is available. <a name="footnote3"><sup>3</sup></a> The instructions mentioned in the README file to build the website can change so it is always better to first check it on GitHub <a name="footnote4"><sup>4</sup></a> In this case you can build a transaction in Stellar Laboratory under __Transaction Builder__ of type __Create Account__. Under __Destination Address__ enter the address of account to be funded for the first time and enter the __Starting Balance__ amount.
json metadata{"tags":["stellar","coldwallet","cryptocurrencies"],"users":["diab0lus"],"image":["https://i.imgur.com/CTeu6wz.png","https://i.imgur.com/3pi2Xyh.png","https://i.imgur.com/zEdYrY1.png","https://i.imgur.com/wr6CWNO.png","https://i.imgur.com/3qA6ye8.png","https://i.imgur.com/MiMrab2.png","https://i.imgur.com/Bws9gQM.png","https://i.imgur.com/58PyQvn.png","https://i.imgur.com/YbHjwnA.png","https://i.imgur.com/AfhJrvs.png","https://i.imgur.com/yWE2pRD.png","https://i.imgur.com/J5Nbblv.png"],"links":["https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet","#footnote1","https://github.com/stellar/paper-wallet","https://github.com/stellar/laboratory","#footnote2","#footnote3","https://www.atlassian.com/git/tutorials/install-git","https://treehouse.github.io/installation-guides/mac/node-mac.html","https://treehouse.github.io/installation-guides/windows/node-windows.html","https://mystellar.tools","#Error-codes-help","https://www.lumenauts.com/explainers/how-inflation-works","https://lumenaut.net","https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool","https://www.stellar.org/developers/guides/concepts/assets.html","https://www.stellar.org/developers/guides/concepts/federation.html","#footnote4","https://hackmd.io/s/BkEfL0M8z","https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/","https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkstellar
permlinka-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more
titleA Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)
Transaction InfoBlock #19540187/Trx 5bae6fbc68ac3ce9041ba89d5cf58174fb6f70d9
View Raw JSON Data
{
  "block": 19540187,
  "op": [
    "comment",
    {
      "author": "mrbot",
      "body": "# Purpose\n&nbsp;\nLot of us likes to follow the best practices of not leaving any crypto on the table and by that I mean to have a secure cold wallet setup for any sort of cryptocurrencies that we own. Many people use the Ledger Nano S as their go-to hardware wallet choice but many others also like to have their own version of offline/paper wallet as a cold wallet setup where it's private key never touches the internet. The challenge which comes with that is obviously how to manage to sign your transactions offline.\n\nI personally like to have a cold wallet setup by staying in-charge of the private key in an offline computer during its entire lifetime. For Ethereum based cold storage I followed this excellent guide from Tomshwom to setup __Tails OS + KeePassX + USB drive + MyEtherWallet__ as cold wallet. Please check it out in case if you want to use a similar approach:\n\n[Tomshwom's Advanced Crypto Security Guide (Part 3) - Creating a Secure Wallet](https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet) <sup>[1](#footnote1)</sup>\n\n&nbsp;\n\n--- \n\nYou can still follow this guide even if you don't have a similar setup that's mentioned above. This will be a comprehensive guide and the steps we are going to cover can be applied to any sort of offline wallet setup.\n\nAlso, you might want to find a way to follow along with this guide on a different computer/smartphone during the offline portions.\n\n&nbsp;\n# Overview\n&nbsp;\nWe are going to walk through the following aspects of with Stellar.\n \n* __Downloading our tools__\n\n* __Securely setting up an Offline Paper Wallet__\n* __Getting Stellar Laboratory website for offline use__\n* __Building a transaction from a computer that is online__\n* __Signing a transaction on a computer that is offline__\n* __Submitting a transaction from a computer that is online__\n* __Joining an Inflation Pool__\n* __Enabling your wallet to deal with various Stellar Assets (tokens)__\n* __Sending transactions for various Stellar Assets__\n\nYou will also need a __USB drive__ for securely transferring some data back and forth between your online to offline system.\n\n&nbsp;\n# Downloads\n&nbsp;\nWe are going to download a couple of tools from Stellar's official GitHub repositories. Stellar's Paper Wallet and the Stellar Laboratory. Obviously, we start by being on a computer which is connected to the internet.\n\n#### \\*\\*\\[Update\\]: Stellar will soon deprecate their paper wallet mentioned below. It is still functional right now but may not be in future. I will keep an eye out for a good platform-independent wallet generator and will include the updated version here whenever available\\*\\*\n\n* Download the paper wallet by visiting following link and click on \"Clone or download\" button.\n    [https://github.com/stellar/paper-wallet](https://github.com/stellar/paper-wallet)\n\n* Download the Stellar Laboratory by visiting following link and click on \"Clone or download\" button.    [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory)\n\n&nbsp;\n\n# Setting up Paper Wallet offline\n&nbsp;\nI am going to outline how to set up a paper wallet on your offline system.\n\n* For this step you will first need to plug-in the __usb drive__ to your computer which is connected to the internet and copy the downloaded paper wallet folder to this usb drive.\n\n* Boot the offline system/computer which should never connect to the internet. Plug in this usb drive and open __index.html__ file from the folder.\n\n* After that it's super simple to just click on the __\"Generate\"__ button in order to generate your pair of __public key (wallet address)__ which starts with __G__ and __secret key__ which starts with __S__.\n\n&nbsp;\nYou will see QR codes as well as text output. It is extremely important here to safely save your private key. This is the key used in order to do any sort of transaction from your wallet and also to recover access to your wallet if your computer is stolen or can't boot anymore due to disk failure or any other reason.\n\n\nIf you are storing this private key on your offline computer's hard drive/usb/sd card, then it is also very important that you store it in __encrypted form__. It's best to follow the guide I mentioned earlier for __Tails OS Encrypted Persistence and KeyPassX__ setup for doubly-encrypting everything. But you can also use any other password managers or some form of encryption.\n\nAlternatively, you can also write down this private key on the piece of paper.\n\n&nbsp;\nWhether you store your private key on a physical drive in __encrypted form__ or write it down on **paper** - it is extremely important to have multiple backups/copies of it and store them securely to avoid any single point of failure in case if you lose the only one copy you have.\n\n* Save the __public key__ (wallet address) either in a __wallet.txt__ file on your __usb drive__ or scan the QR code on your smartphone __Be careful not to scan the QR code of the secret key.__ To avoid this from happening you can resize your browser window to only see the QR code of public key before you scan it.\n\n* You can now unplug the __usb drive__ go back to your computer which is connected to the internet.\n\n&nbsp;\n\n#  Getting Stellar Laboratory for offline use.\n&nbsp;\nFor non-technical users, this is the only challenging step in this guide. But don't worry we will break it down step-by-step.\n\nAt the time of this writing, in order for us to sign transactions offline, we need a working local copy of Stellar Laboratory and I couldn't find any other way but to download it from GitHub and build it from source code. Please download it if you haven't done so from the earlier step. <sup>[2](#footnote2)</sup>\n\nBy visiting [https://github.com/stellar/laboratory](https://github.com/stellar/laboratory), and going through Readme we can see that we can build this website as mentioned in the instructions under __\"Building for production\"__. <sup>[3](#footnote3)</sup>\n\n\nCurrently, we need __git__, __node js__ and __npm__ to be installed in order to build our own copy of the Stellar Laboratory website. They are free and open source, anyone can download and install them on Windows/macOS/Linux and other platforms.\n\n&nbsp;\nIf you need to install __git__ then please follow the instructions [here](https://www.atlassian.com/git/tutorials/install-git)\n\nAnd there are various ways to install __node__ and __npm__, you can find many resources online. I am just going to mention below guides for Mac and Windows:\n* [Installing Node.js® and NPM on Mac](https://treehouse.github.io/installation-guides/mac/node-mac.html)\n* [Installing Node.js® and NPM on Windows](https://treehouse.github.io/installation-guides/windows/node-windows.html)\n\n&nbsp;\nAfter verifying your installation, you can then build your local copy of Stellar Laboratory.\n\n&nbsp;\nOn __macOS/Linux__:\nOpen __Terminal__ and run below commands in sequence\n    \n\\- ``cd ~/Downloads/laboratory-master/``\n\\- ``npm install``    \n\\- ``./node_modules/.bin/gulp build``\n\n&nbsp;\nOn __Windows__:\nExtract the zip file and then open __Command Prompt__ by clicking on start menu and type: cmd. After that run below commands in sequence (replace <YOUR_USERNAME> with your windows account username)\n\n\\- ``cd C:\\Users\\<YOUR_USERNAME>\\Downloads\\laboratory-master\\``\n\\- ``npm install``\n\\- ``node_modules\\.bin\\gulp build``\n\n&nbsp;\nIf everything goes well then go back to the __laboratory-master__ folder that you downloaded and you will see that there is a folder named __\"dist\"__ which got created. This folder has everything that you need in order to have your own working local copy of Stellar Laboratory. You can verify this by opening __index.html__ file from it.\n\n* Plug in the __usb drive__ and copy this __dist__ folder in it. You will need this when we need to sign transactions offline.\n\nIf you are not a computer savvy user and if you have made it this far then Congratulate yourself! Because now you have all the necessary tools to start working on your transactions!\n\n&nbsp;\n\n# Building a transaction\n&nbsp;\nThere are two ways we can build a transaction. Either by using mystellar.tools website or by using __Stellar Laboratory__ website. For simplicity, we are going to use mystellar.tools\n\n&nbsp;\nGo to: __[mystellar.tools](https://mystellar.tools)__\n\n* Enter your __Public Key__ and click __ENTER__:\n\n![](https://i.imgur.com/CTeu6wz.png)\n\n&nbsp;\n\n* To send a payment in XLM- click on __Send__ from the left menu. And fill out the details below:\n\n![](https://i.imgur.com/3pi2Xyh.png)\n\n&nbsp;\n\n* After you click the __VERIFY__ button, you will see the below verification page. Click __SEND__\n\n![](https://i.imgur.com/zEdYrY1.png)\n\n&nbsp;\n\n* As soon as you click on send you will see below message will appear.\n\n![](https://i.imgur.com/wr6CWNO.png)\n\n\n\n&nbsp;\n\nThe message is self-explanatory. Basically, all it's saying is that since we have entered the application without using our secret key, it cannot sign the transaction before sending it. But we can use this transaction information to sign it offline on our own.\n\n* Copy the Transaction hash and the Transaction evelope (XDR). And save it into a txt file. Let's name it __tx_unsigned.txt__. Save this file to your usb drive.\n\n![](https://i.imgur.com/3qA6ye8.png)\n\n\n&nbsp;\n\n\n# Signing a transaction offline\n&nbsp;\nBefore we go to sign our transaction offline make sure you have following two things in your __usb drive__.\n\n* The folder named  __dist__ which is the local copy of Stellar Laboratory website that we built.\n\n* The file __tx_unsigned.txt__ which has the Hash and XDR data of our transaction.\n\n&nbsp;\n\nBoot up your computer which is offline and plug this __usb drive__ in it. \n\n* Copy the __dist__ folder locally on your desktop from your usb drive. Open __index.html__ file in the browser so you get Stellar Laboratory running offline. Now make sure that you select the __public__ tab on top right. This ensures that everything will be done for the public network.\n\n* Click on __Transaction Signer__ from the top menu bar.\n\n* This will give you an option to- __\"Import a transaction envelope in XDR format:\"__\n\n* Now open __tx_unsigned.txt__ file from __usb drive__ and only copy transaction data under __XDR:__. Don't copy the __Hash__ which is above that. See the highlighted part below:\n\n\n![](https://i.imgur.com/MiMrab2.png)\n\n&nbsp;\n\n* Go back to the browser and paste that into the text box.\n\n* Make sure there are no leading or trailing whitespaces and it should display a message: __\"Valid Transaction Envelope XDR\"__\n\n![](https://i.imgur.com/Bws9gQM.png)\n\n&nbsp;\n\n* Click __Import Transaction__ button.\n\n* You will now see all the data of your transaction getting displayed. Verify the __Transaction Hash__ field that's been displayed vs the __Hash:__ that you saved in your __tx_unsigned.txt__ file. They should match. This will help you make sure that you have been doing all the steps correctly and you imported the transaction correctly.\n\n\n* Now for the next step, you will need access to your secret key which starts with __S__. Please have it handy either from this offline computer or if you wrote it down on a paper.\n\n* Under the __Signatures__ section there is an option __Add Signer:__ enter your secret key here. (please make sure the secret key you enter here is the one associated with your public key otherwise submitting this transaction will fail). You only need to enter this one key as a signer.\n\n* As soon as you entered the secret key you will see that it generated an output XDR in the box below it. It will display the message __\"Transaction signed!\"__.\n\n\n![](https://i.imgur.com/58PyQvn.png)\n\n&nbsp;\n\n* Copy the __XDR__ (highlight above) that was generated and save it in a text file named __tx_signed.txt__. Save this file in your usb drive and then unplug it.\n\n* You will need this file when we submit the transaction online using mystellar.tools\n\n\n---\nPlease make sure that at no point you are copying/saving your secret key anywhere on your usb drive. In such setup, your secret key always needs to stay isolated and should never come on any device which will connect to the internet.\n---\n&nbsp;\n\n\n# Submitting a transaction\n&nbsp;\nThis is the moment we have been waiting for!\n\nLet's go back to your computer which is connected to the internet.\n\n* Plug-in your __usb drive__.\n\n* Go to __[mystellar.tools](https://mystellar.tools)__, enter your public key if required, then from the left menu click on __Submit transaction__.\n\n* Enter your transaction __XDR__ from __tx_signed.txt__ file from your usb file. And click on __SUBMIT__ button.\n\n![](https://i.imgur.com/YbHjwnA.png)\n\n\n* It will display the result along with response in JSON format. If you got any error then please see [error codes](#Error-codes-help) help section at the bottom of this guide.\n\n* Go to __Payments__ from menu to verify it.\n\n&nbsp;\n\n# Joining an Inflation Pool\n&nbsp;\nIf you are not familiar with the concept of inflation in Stellar then I encourage you to go check out this guide on [How Inflation works](https://www.lumenauts.com/explainers/how-inflation-works)\n\nThere are many Inflation pools which you can join. One of the community-driven Inflation pool that I can recommend to join is [Lumenaut](https://lumenaut.net).\n\n* Go to [How to Join the Inflation Pool](https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool) guide on Lumenaut's website and copy their Inflation Destination address.\n\n* Then go to mystellar.tools, from the left menu click __Set Options__. At the bottom of the page under __Others__, enter the __Inflation destination__ address that you copied and click on __SET__.\n\n![](https://i.imgur.com/AfhJrvs.png)\n\n&nbsp;\n\nIt will display the message saying that it cannot sign the transaction because you have not entered any secret key, along with all the transaction information. Save this information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\n\n&nbsp;\n\n# Enabling your wallet to deal with various Stellar Assets (tokens)\n&nbsp;\nThe Stellar distributed network can be used to track, hold, and transfer any type of [Assets](https://www.stellar.org/developers/guides/concepts/assets.html): dollars, euros, bitcoin, stocks, gold, and other tokens of value.\n\nWhen you hold assets, you’re actually holding credit from a particular issuer.\nIn order to be able to receive any other Asset (token) from an issuer you much first establish a __trustline__ with that __issuer__. (Basically, you “trust” the “issuer” for issuing/crediting their tokens to your wallet.)\n\nEntities (individuals, small businesses, local communities, nonprofits, organizations, etc) who can issue you assets are called __Anchors__.\n\nEach Anchor has an issuing account from which it issues the asset. All anchors, when issuing an asset, give it an asset code. Assets are uniquely identified by the asset code and the issuer's address (wallet address)\n\nWe need to find out the issuer's wallet address with whom we can establish a trustline. Stellar uses [Federation](https://www.stellar.org/developers/guides/concepts/federation.html) protocol to map a user-friendly name like __domain name, email address,__ etc., to a wallet address.\n\n&nbsp;\n\nWe will take a look at how we can establish a trustline with the anchor __mobius.network__ to receive their token __MOBI__. Same steps can be followed for all other Anchors and their assets (tokens) that they provide.\n\n* In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Manage Trustlines__. Under __Create a trustline__ search for the Anchor's Domain: __mobius.network.\n\n* It will show you the list of assets that the anchor provides. Click on __MOBI__ and it will show you the details. Click __ADD__ in order to add trustline with this Anchor to enable your wallet to receive MOBI tokens.\n\n![](https://i.imgur.com/yWE2pRD.png)\n\n\n&nbsp;\nAs soon as you click that, it will display the message saying that it cannot sign the transaction. Save the transaction information on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\nOnce you submit the transaction, verify it by clicking __All operations__ menu on the left.\n\n\n&nbsp;\n\n# Sending transactions of various Stellar Assets\n&nbsp;\nAfter you have created a trustline with the Anchor and received their tokens, let's look at how can you send them across to someone. An important thing to note here is that the destination wallet to which you are sending a particular token should also have a trustline established with this Anchor. Because after all the token is actually credited by this issuer (via Anchor) to the destination wallet address.\n\n* In __[mystellar.tools](https://mystellar.tools)__, on the left menu click __Send__. \n\n* Fill in the __Recipient__ address and __Amount__ of tokens that you want to send. Under __Asset__ click the drop-down menu and then enter __New Asset Code__: MOBI. and click __SET__.\n* Click on __VERIFY__ and then __SEND__. It will display the transaction information, save it on your usb drive, sign the transaction offline, and then come back to mystellar.tools to submit it.\n\n\n![](https://i.imgur.com/J5Nbblv.png)\n\n\n&nbsp;\n&nbsp;\n&nbsp;\n\n\n# Error codes help:\n&nbsp;\nFollowing are some transaction response error codes which you might encounter while submitting your transactions.\n\n\\- __tx_no_source_account__: You used incorrect source wallet address from which you are sending this transaction.\n\n\\- __tx_bad_auth__: You signed the transaction incorrectly or used an incorrect secret key for the corresponding public key. Please make sure that you also select \"public\" tab in Stellar Laboratory. This signs the transaction properly for the public network.\n\n\\- __tx_bad_seq__: Rarely, you can also get this error if the transaction sequence during the time when you build your transaction is no longer valid. Start a new transaction from scratch and please also make sure that you select \"public\" tab in Stellar Laboratory.\n\n\\- __op_no_destination__: The destination address doesn't exist or doesn't hold the minimum required balance. <sup>[4](#footnote4)</sup>\n\n\\- __op_no_trust__: The destination address doesn't have a trustline which the Anchor and hence it can't receive the token that you are trying to send.\n\n\n&nbsp;\n\n# Conclusion\n&nbsp;\nSecurity needs to be a paramount importance when it comes to how you handle cryptocurrencies. For this purpose I recommend everyone to have a cold wallet for long-term storage.\n\nWe have covered major aspects of cold wallet setup and signing transactions offline with Stellar. I hope this guide helps you to keep a secure cold wallet setup while still be able to perform basic transactions with Stellar.\n\nPlease let me know if you have any questions or if you get stuck somewhere.\n\n&nbsp;\n\n### I wish you a Stellar journey in your endeavors!\n\n&nbsp;\n\n\n&nbsp;\n\nIf for any reason you are curious​ on how to do these steps using Stellar Laboratory the checkout [this guide](https://hackmd.io/s/BkEfL0M8z ) and [reddit comment](https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/).\n\n<a name=\"footnote1\"><sup>1</sup></a> If you are going to use Tails OS then please make sure to use v3.2. Because the TOR browser in later versions isn't getting the right permissions in AppGuard and hence CSS files are not working properly. https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet#@diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\n\n<a name=\"footnote2\"><sup>2</sup></a> The developer of __mystellar.tools__ has hinted that currently, development for a standalone cross-platform tool to sign transactions offline is underway. I will post an update with a link whenever this is available.\n\n<a name=\"footnote3\"><sup>3</sup></a> The instructions mentioned in the README file to build the website can change so it is always better to first check it on GitHub\n\n<a name=\"footnote4\"><sup>4</sup></a> In this case you can build a transaction in Stellar Laboratory under __Transaction Builder__ of type __Create Account__. Under __Destination Address__ enter the address of account to be funded for the first time and enter the __Starting Balance__ amount.",
      "json_metadata": "{\"tags\":[\"stellar\",\"coldwallet\",\"cryptocurrencies\"],\"users\":[\"diab0lus\"],\"image\":[\"https://i.imgur.com/CTeu6wz.png\",\"https://i.imgur.com/3pi2Xyh.png\",\"https://i.imgur.com/zEdYrY1.png\",\"https://i.imgur.com/wr6CWNO.png\",\"https://i.imgur.com/3qA6ye8.png\",\"https://i.imgur.com/MiMrab2.png\",\"https://i.imgur.com/Bws9gQM.png\",\"https://i.imgur.com/58PyQvn.png\",\"https://i.imgur.com/YbHjwnA.png\",\"https://i.imgur.com/AfhJrvs.png\",\"https://i.imgur.com/yWE2pRD.png\",\"https://i.imgur.com/J5Nbblv.png\"],\"links\":[\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet\",\"#footnote1\",\"https://github.com/stellar/paper-wallet\",\"https://github.com/stellar/laboratory\",\"#footnote2\",\"#footnote3\",\"https://www.atlassian.com/git/tutorials/install-git\",\"https://treehouse.github.io/installation-guides/mac/node-mac.html\",\"https://treehouse.github.io/installation-guides/windows/node-windows.html\",\"https://mystellar.tools\",\"#Error-codes-help\",\"https://www.lumenauts.com/explainers/how-inflation-works\",\"https://lumenaut.net\",\"https://www.lumenauts.com/tutorials/how-to-join-the-inflation-pool\",\"https://www.stellar.org/developers/guides/concepts/assets.html\",\"https://www.stellar.org/developers/guides/concepts/federation.html\",\"#footnote4\",\"https://hackmd.io/s/BkEfL0M8z\",\"https://www.reddit.com/r/stellartutorials/comments/7tirh8/guide_stellar_lumens_cold_wallet_setup_and/dte39iy/\",\"https://steemit.com/cryptocurrency/@tomshwom/tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet##diab0lus/re-tomshwom-re-pumba-re-tomshwom-tomshwom-s-advanced-crypto-security-guide-part-3-creating-a-secure-wallet-20180104t225011167z\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "stellar",
      "permlink": "a-stellar-cold-wallet-setup-signing-transactions-offline-and-dealing-with-multiple-assets-tokens-like-mobi-stl-and-more",
      "title": "A Stellar cold wallet setup, signing transactions offline and dealing with multiple Assets (tokens like - MOBI, STL, and more)"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T07:35:27",
  "trx_id": "5bae6fbc68ac3ce9041ba89d5cf58174fb6f70d9",
  "trx_in_block": 9,
  "virtual_op": 0
}
mrbotupdated their account properties
2018/02/03 06:54:51
accountmrbot
json metadata{"profile":{"profile_image":"https://postimg.org/image/h14vybtkj/"}}
memo keySTM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np
Transaction InfoBlock #19539375/Trx 1f7a2123cadde1dddee9736779567cd0a67fa8c7
View Raw JSON Data
{
  "block": 19539375,
  "op": [
    "account_update",
    {
      "account": "mrbot",
      "json_metadata": "{\"profile\":{\"profile_image\":\"https://postimg.org/image/h14vybtkj/\"}}",
      "memo_key": "STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T06:54:51",
  "trx_id": "1f7a2123cadde1dddee9736779567cd0a67fa8c7",
  "trx_in_block": 11,
  "virtual_op": 0
}
mrbotupdated their account properties
2018/02/03 06:53:36
accountmrbot
json metadata{"profile":{"profile_image":"https://imgur.com/sZmwupe"}}
memo keySTM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np
Transaction InfoBlock #19539350/Trx a57216c19e7cddb8bc131abd9844fdd1460ee161
View Raw JSON Data
{
  "block": 19539350,
  "op": [
    "account_update",
    {
      "account": "mrbot",
      "json_metadata": "{\"profile\":{\"profile_image\":\"https://imgur.com/sZmwupe\"}}",
      "memo_key": "STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-03T06:53:36",
  "trx_id": "a57216c19e7cddb8bc131abd9844fdd1460ee161",
  "trx_in_block": 22,
  "virtual_op": 0
}
steemcreated a new account: @mrbot
2018/02/02 22:56:09
active{"account_auths":[],"key_auths":[["STM7uUYT7fr8oGrsEbM47AETLqxtwJVuwA2YgpiVvGoC2fUbQohC7",1]],"weight_threshold":1}
creatorsteem
delegation29700.000000 VESTS
extensions[]
fee0.500 STEEM
json metadata
memo keySTM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np
new account namemrbot
owner{"account_auths":[],"key_auths":[["STM7H4zfuX8oqdc8aGfJm9wseAQXfNYrWBEhiNBugYyznGwm67GKE",1]],"weight_threshold":1}
posting{"account_auths":[],"key_auths":[["STM8VzN4HsMvbPdnm1KyJgGWVDG7s3BhML8bWU4w88JrEai79Xgfx",1]],"weight_threshold":1}
Transaction InfoBlock #19529808/Trx 530cc02fd8b252292dfb7620b232bdf84cfd1577
View Raw JSON Data
{
  "block": 19529808,
  "op": [
    "account_create_with_delegation",
    {
      "active": {
        "account_auths": [],
        "key_auths": [
          [
            "STM7uUYT7fr8oGrsEbM47AETLqxtwJVuwA2YgpiVvGoC2fUbQohC7",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "creator": "steem",
      "delegation": "29700.000000 VESTS",
      "extensions": [],
      "fee": "0.500 STEEM",
      "json_metadata": "",
      "memo_key": "STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np",
      "new_account_name": "mrbot",
      "owner": {
        "account_auths": [],
        "key_auths": [
          [
            "STM7H4zfuX8oqdc8aGfJm9wseAQXfNYrWBEhiNBugYyznGwm67GKE",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "posting": {
        "account_auths": [],
        "key_auths": [
          [
            "STM8VzN4HsMvbPdnm1KyJgGWVDG7s3BhML8bWU4w88JrEai79Xgfx",
            1
          ]
        ],
        "weight_threshold": 1
      }
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-02T22:56:09",
  "trx_id": "530cc02fd8b252292dfb7620b232bdf84cfd1577",
  "trx_in_block": 3,
  "virtual_op": 0
}

Account Metadata

POSTING JSON METADATA
profile{"profile_image":"https://postimg.org/image/h14vybtkj/"}
JSON METADATA
profile{"profile_image":"https://postimg.org/image/h14vybtkj/"}
{
  "posting_json_metadata": {
    "profile": {
      "profile_image": "https://postimg.org/image/h14vybtkj/"
    }
  },
  "json_metadata": {
    "profile": {
      "profile_image": "https://postimg.org/image/h14vybtkj/"
    }
  }
}

Auth Keys

Owner
Single Signature
Public Keys
STM7H4zfuX8oqdc8aGfJm9wseAQXfNYrWBEhiNBugYyznGwm67GKE1/1
Active
Single Signature
Public Keys
STM7uUYT7fr8oGrsEbM47AETLqxtwJVuwA2YgpiVvGoC2fUbQohC71/1
Posting
Single Signature
Public Keys
STM8VzN4HsMvbPdnm1KyJgGWVDG7s3BhML8bWU4w88JrEai79Xgfx1/1
Memo
STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np
{
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM7H4zfuX8oqdc8aGfJm9wseAQXfNYrWBEhiNBugYyznGwm67GKE",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "active": {
    "account_auths": [],
    "key_auths": [
      [
        "STM7uUYT7fr8oGrsEbM47AETLqxtwJVuwA2YgpiVvGoC2fUbQohC7",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting": {
    "account_auths": [],
    "key_auths": [
      [
        "STM8VzN4HsMvbPdnm1KyJgGWVDG7s3BhML8bWU4w88JrEai79Xgfx",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "memo": "STM7pfvLEgQyp9SZnLsLjQ2HVzJkP1N1ZCdTdeKxa16WZ3Waw11np"
}

Witness Votes

0 / 30
No active witness votes.
[]