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

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
0.634SP
Delegated Out
0.000SP
Delegation In
4.374SP
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": "1030.765600 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "7112.894206 VESTS",
  "sbd_balance": "0.000 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

namereshawn
id354463
rank897,593
reputation49022042
created2017-09-05T18:57:12
recovery_accountsteem
proxyNone
post_count4
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2017-11-05T18:52:15
last_root_post2017-11-05T16:10:12
last_vote_time2017-11-05T18:50:42
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_shares1030.765600 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares7112.894206 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_update2017-09-09T18:33:30
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": [
      [
        "STM6dZUY96MPdCKUupuWTtYuAMqE1sKFokv2D4LBPsHFpETikRLSD",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "balance": "0.000 STEEM",
  "can_vote": true,
  "comment_count": 0,
  "created": "2017-09-05T18:57:12",
  "curation_rewards": 0,
  "delegated_vesting_shares": "0.000000 VESTS",
  "downvote_manabar": {
    "current_mana": 2035914951,
    "last_update_time": 1779082734
  },
  "guest_bloggers": [],
  "id": 354463,
  "json_metadata": "{\"profile\":{\"name\":\"inZane\",\"profile_image\":\"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg\",\"cover_image\":\"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500\",\"website\":\"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA\"}}",
  "last_account_recovery": "1970-01-01T00:00:00",
  "last_account_update": "2017-09-09T18:33:30",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_post": "2017-11-05T18:52:15",
  "last_root_post": "2017-11-05T16:10:12",
  "last_vote_time": "2017-11-05T18:50:42",
  "lifetime_vote_count": 0,
  "market_history": [],
  "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU",
  "mined": false,
  "name": "reshawn",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "other_history": [],
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6tGVdvgogpAPEZexLNpuN4CZ9hrqX5QL6UDfT5sKoVBn4bgJ9L",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "pending_claimed_accounts": 0,
  "post_bandwidth": 0,
  "post_count": 4,
  "post_history": [],
  "posting": {
    "account_auths": [],
    "key_auths": [
      [
        "STM5h9TwysJL7DLVQaP1nhXpwSTQEquKuRcosMmoMbAt6gwgvdrTo",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting_json_metadata": "{\"profile\":{\"name\":\"inZane\",\"profile_image\":\"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg\",\"cover_image\":\"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500\",\"website\":\"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA\"}}",
  "posting_rewards": 0,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "proxy": "",
  "received_vesting_shares": "7112.894206 VESTS",
  "recovery_account": "steem",
  "reputation": 49022042,
  "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": "1030.765600 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "vote_history": [],
  "voting_manabar": {
    "current_mana": "8143659806",
    "last_update_time": 1779082734
  },
  "voting_power": 0,
  "withdraw_routes": 0,
  "withdrawn": 0,
  "witness_votes": [],
  "witnesses_voted_for": 0,
  "rank": 897593
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
steemdelegated 4.374 SP to @reshawn
2026/05/18 05:38:54
delegateereshawn
delegatorsteem
vesting shares7112.894206 VESTS
Transaction InfoBlock #106149893/Trx e3a076d12f924f0af4289924aeb188fab02bd974
View Raw JSON Data
{
  "block": 106149893,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "7112.894206 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-05-18T05:38:54",
  "trx_id": "e3a076d12f924f0af4289924aeb188fab02bd974",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 2.706 SP to @reshawn
2026/05/13 01:46:06
delegateereshawn
delegatorsteem
vesting shares4400.683801 VESTS
Transaction InfoBlock #106001964/Trx b558d884641490024b7a481622cd23129c107e1f
View Raw JSON Data
{
  "block": 106001964,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "4400.683801 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-05-13T01:46:06",
  "trx_id": "b558d884641490024b7a481622cd23129c107e1f",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 4.382 SP to @reshawn
2026/04/26 04:51:39
delegateereshawn
delegatorsteem
vesting shares7125.409962 VESTS
Transaction InfoBlock #105517397/Trx 0e8f8a0e66c0281be4ab58aebb8214e1791882f3
View Raw JSON Data
{
  "block": 105517397,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "7125.409962 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-04-26T04:51:39",
  "trx_id": "0e8f8a0e66c0281be4ab58aebb8214e1791882f3",
  "trx_in_block": 8,
  "virtual_op": 0
}
steemdelegated 2.732 SP to @reshawn
2026/01/23 22:19:03
delegateereshawn
delegatorsteem
vesting shares4442.230620 VESTS
Transaction InfoBlock #102869202/Trx de853e5cd08a1b0fbbfac41524587198e5e4929e
View Raw JSON Data
{
  "block": 102869202,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "4442.230620 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2026-01-23T22:19:03",
  "trx_id": "de853e5cd08a1b0fbbfac41524587198e5e4929e",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 2.833 SP to @reshawn
2024/12/17 17:29:42
delegateereshawn
delegatorsteem
vesting shares4606.449817 VESTS
Transaction InfoBlock #91315428/Trx 186acd4c9b127aaf3e9d0f59ee37d544ecb1f8c3
View Raw JSON Data
{
  "block": 91315428,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "4606.449817 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2024-12-17T17:29:42",
  "trx_id": "186acd4c9b127aaf3e9d0f59ee37d544ecb1f8c3",
  "trx_in_block": 9,
  "virtual_op": 0
}
steemdelegated 2.937 SP to @reshawn
2023/11/14 09:11:00
delegateereshawn
delegatorsteem
vesting shares4775.583349 VESTS
Transaction InfoBlock #79869579/Trx 81832b6169255ac7af7b0b70acf4925bf16a2ee1
View Raw JSON Data
{
  "block": 79869579,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "4775.583349 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2023-11-14T09:11:00",
  "trx_id": "81832b6169255ac7af7b0b70acf4925bf16a2ee1",
  "trx_in_block": 2,
  "virtual_op": 0
}
steemdelegated 4.743 SP to @reshawn
2023/09/22 09:38:12
delegateereshawn
delegatorsteem
vesting shares7712.492135 VESTS
Transaction InfoBlock #78361962/Trx 778288d6a39bda5a9baab4eb9494b8cd8fe1a944
View Raw JSON Data
{
  "block": 78361962,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "7712.492135 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2023-09-22T09:38:12",
  "trx_id": "778288d6a39bda5a9baab4eb9494b8cd8fe1a944",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 4.880 SP to @reshawn
2022/11/03 17:11:39
delegateereshawn
delegatorsteem
vesting shares7934.543573 VESTS
Transaction InfoBlock #69119818/Trx 4ef54c50b3e643c9baeb0e6adddab46c72c09bff
View Raw JSON Data
{
  "block": 69119818,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "7934.543573 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2022-11-03T17:11:39",
  "trx_id": "4ef54c50b3e643c9baeb0e6adddab46c72c09bff",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 5.015 SP to @reshawn
2022/01/17 22:27:18
delegateereshawn
delegatorsteem
vesting shares8154.651174 VESTS
Transaction InfoBlock #60823141/Trx 20aa9563281131d356cd443e560bafa3e47277dd
View Raw JSON Data
{
  "block": 60823141,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8154.651174 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2022-01-17T22:27:18",
  "trx_id": "20aa9563281131d356cd443e560bafa3e47277dd",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 5.128 SP to @reshawn
2021/06/14 05:39:54
delegateereshawn
delegatorsteem
vesting shares8338.845462 VESTS
Transaction InfoBlock #54613502/Trx 45ca96cd25fc6443944ec3431a429e33d9b2e6aa
View Raw JSON Data
{
  "block": 54613502,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8338.845462 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2021-06-14T05:39:54",
  "trx_id": "45ca96cd25fc6443944ec3431a429e33d9b2e6aa",
  "trx_in_block": 1,
  "virtual_op": 0
}
steemdelegated 5.244 SP to @reshawn
2020/12/11 15:52:39
delegateereshawn
delegatorsteem
vesting shares8526.267436 VESTS
Transaction InfoBlock #49360782/Trx 66ff8996995b40772a5cc93d66c8c8f3d07da101
View Raw JSON Data
{
  "block": 49360782,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8526.267436 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-11T15:52:39",
  "trx_id": "66ff8996995b40772a5cc93d66c8c8f3d07da101",
  "trx_in_block": 3,
  "virtual_op": 0
}
steemdelegated 1.176 SP to @reshawn
2020/12/06 09:28:39
delegateereshawn
delegatorsteem
vesting shares1912.543513 VESTS
Transaction InfoBlock #49212312/Trx 9b5455ca0a90bb2babe19e80f260a30450ab5c34
View Raw JSON Data
{
  "block": 49212312,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "1912.543513 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-06T09:28:39",
  "trx_id": "9b5455ca0a90bb2babe19e80f260a30450ab5c34",
  "trx_in_block": 0,
  "virtual_op": 0
}
steemdelegated 5.247 SP to @reshawn
2020/12/05 19:30:39
delegateereshawn
delegatorsteem
vesting shares8532.475290 VESTS
Transaction InfoBlock #49195871/Trx cbf043e4222f4631551aa7d158fa2bb2cf576fa6
View Raw JSON Data
{
  "block": 49195871,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8532.475290 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-12-05T19:30:39",
  "trx_id": "cbf043e4222f4631551aa7d158fa2bb2cf576fa6",
  "trx_in_block": 4,
  "virtual_op": 0
}
steemdelegated 1.181 SP to @reshawn
2020/11/03 01:27:42
delegateereshawn
delegatorsteem
vesting shares1920.017158 VESTS
Transaction InfoBlock #48269366/Trx 0fe35c39828d345bacac97b03de951a6ead22fda
View Raw JSON Data
{
  "block": 48269366,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "1920.017158 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-11-03T01:27:42",
  "trx_id": "0fe35c39828d345bacac97b03de951a6ead22fda",
  "trx_in_block": 7,
  "virtual_op": 0
}
steemdelegated 5.372 SP to @reshawn
2020/05/09 10:31:06
delegateereshawn
delegatorsteem
vesting shares8735.280649 VESTS
Transaction InfoBlock #43222631/Trx dd047e8712f9e8b2223a3804387d8633cb6caf10
View Raw JSON Data
{
  "block": 43222631,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8735.280649 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-05-09T10:31:06",
  "trx_id": "dd047e8712f9e8b2223a3804387d8633cb6caf10",
  "trx_in_block": 5,
  "virtual_op": 0
}
steemdelegated 1.201 SP to @reshawn
2020/05/08 14:50:12
delegateereshawn
delegatorsteem
vesting shares1953.311140 VESTS
Transaction InfoBlock #43199574/Trx ebb9b9b3c1ceaa0c9d3cd27d1daa57d6c7583089
View Raw JSON Data
{
  "block": 43199574,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "1953.311140 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-05-08T14:50:12",
  "trx_id": "ebb9b9b3c1ceaa0c9d3cd27d1daa57d6c7583089",
  "trx_in_block": 11,
  "virtual_op": 0
}
steemdelegated 5.380 SP to @reshawn
2020/04/16 02:55:09
delegateereshawn
delegatorsteem
vesting shares8748.168097 VESTS
Transaction InfoBlock #42568715/Trx 9fc9c4acd2cd57dd14dc122e9f88c1927dd7c374
View Raw JSON Data
{
  "block": 42568715,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8748.168097 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2020-04-16T02:55:09",
  "trx_id": "9fc9c4acd2cd57dd14dc122e9f88c1927dd7c374",
  "trx_in_block": 8,
  "virtual_op": 0
}
2019/09/05 20:54:15
authorsteemitboard
bodyCongratulations @reshawn! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@reshawn/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/@reshawn) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=reshawn)_</sub> ###### [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 authorreshawn
parent permlinklos-nodos-no-tienen-poder-alguno
permlinksteemitboard-notify-reshawn-20190905t205415000z
title
Transaction InfoBlock #36166008/Trx 2194b075209d9d8512e9fefa502840d6e705b687
View Raw JSON Data
{
  "block": 36166008,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @reshawn! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@reshawn/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/@reshawn) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=reshawn)_</sub>\n\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": "reshawn",
      "parent_permlink": "los-nodos-no-tienen-poder-alguno",
      "permlink": "steemitboard-notify-reshawn-20190905t205415000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2019-09-05T20:54:15",
  "trx_id": "2194b075209d9d8512e9fefa502840d6e705b687",
  "trx_in_block": 23,
  "virtual_op": 0
}
steemdelegated 5.500 SP to @reshawn
2019/05/12 20:02:09
delegateereshawn
delegatorsteem
vesting shares8943.784910 VESTS
Transaction InfoBlock #32851644/Trx f40467682a3c2b668ed22cb47d4442b54066189a
View Raw JSON Data
{
  "block": 32851644,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "8943.784910 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2019-05-12T20:02:09",
  "trx_id": "f40467682a3c2b668ed22cb47d4442b54066189a",
  "trx_in_block": 9,
  "virtual_op": 0
}
2018/09/05 21:49:21
authorsteemitboard
bodyCongratulations @reshawn! You have received a personal award! [![](https://steemitimages.com/70x70/http://steemitboard.com/@reshawn/birthday1.png)](http://steemitboard.com/@reshawn) 1 Year on Steemit <sub>_Click on the badge to view your Board of Honor._</sub> **Do not miss the last post from @steemitboard:** <table><tr><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest-steemitboard-support-the-travel-reimbursement-fund"><img src="https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmawPYDAwfrQM8YU6ejD1f87g64cvsmEFn8RQKHJMs4zxg/image.png"></a></td><td><a href="https://steemit.com/steemfest/@steemitboard/steemfest-steemitboard-support-the-travel-reimbursement-fund">SteemFest³ - SteemitBoard support the Travel Reimbursement Fund.</a></td></tr></table> > 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 authorreshawn
parent permlinklos-nodos-no-tienen-poder-alguno
permlinksteemitboard-notify-reshawn-20180905t214923000z
title
Transaction InfoBlock #25704785/Trx 13eee071052ddf93887ddae66ec9c7dcb756def1
View Raw JSON Data
{
  "block": 25704785,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @reshawn! You have received a personal award!\n\n[![](https://steemitimages.com/70x70/http://steemitboard.com/@reshawn/birthday1.png)](http://steemitboard.com/@reshawn)  1 Year on Steemit\n<sub>_Click on the badge to view your Board of Honor._</sub>\n\n\n**Do not miss the last post from @steemitboard:**\n<table><tr><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest-steemitboard-support-the-travel-reimbursement-fund\"><img src=\"https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmawPYDAwfrQM8YU6ejD1f87g64cvsmEFn8RQKHJMs4zxg/image.png\"></a></td><td><a href=\"https://steemit.com/steemfest/@steemitboard/steemfest-steemitboard-support-the-travel-reimbursement-fund\">SteemFest³ - SteemitBoard support the Travel Reimbursement Fund.</a></td></tr></table>\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": "reshawn",
      "parent_permlink": "los-nodos-no-tienen-poder-alguno",
      "permlink": "steemitboard-notify-reshawn-20180905t214923000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-09-05T21:49:21",
  "trx_id": "13eee071052ddf93887ddae66ec9c7dcb756def1",
  "trx_in_block": 28,
  "virtual_op": 0
}
2018/09/02 16:34:21
authorreshawn
permlinkclaves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores
voterbastianrt
weight10000 (100.00%)
Transaction InfoBlock #25612156/Trx a350920df9ccfe6809f63436a27f0b4ce30cad2d
View Raw JSON Data
{
  "block": 25612156,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores",
      "voter": "bastianrt",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-09-02T16:34:21",
  "trx_id": "a350920df9ccfe6809f63436a27f0b4ce30cad2d",
  "trx_in_block": 68,
  "virtual_op": 0
}
steemdelegated 5.623 SP to @reshawn
2018/05/16 23:58:00
delegateereshawn
delegatorsteem
vesting shares9143.395778 VESTS
Transaction InfoBlock #22494261/Trx f35c468dfce89613d140dcbc8975a6fb1c1ee537
View Raw JSON Data
{
  "block": 22494261,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "9143.395778 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-05-16T23:58:00",
  "trx_id": "f35c468dfce89613d140dcbc8975a6fb1c1ee537",
  "trx_in_block": 6,
  "virtual_op": 0
}
steemdelegated 18.219 SP to @reshawn
2018/02/22 12:28:30
delegateereshawn
delegatorsteem
vesting shares29625.358309 VESTS
Transaction InfoBlock #20092598/Trx e94962b27df76fb26e9874efc9686fcac3a4889d
View Raw JSON Data
{
  "block": 20092598,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "29625.358309 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2018-02-22T12:28:30",
  "trx_id": "e94962b27df76fb26e9874efc9686fcac3a4889d",
  "trx_in_block": 19,
  "virtual_op": 0
}
2017/11/07 19:35:21
authorreshawn
permlinkre-criptomonedastv-segwit-no2x-la-batalla-por-el-control-de-bitcoin-20171105t185213432z
voterdaneftaly
weight10000 (100.00%)
Transaction InfoBlock #17021799/Trx 52a3a231859be314339d9610864d34ed4585270f
View Raw JSON Data
{
  "block": 17021799,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "re-criptomonedastv-segwit-no2x-la-batalla-por-el-control-de-bitcoin-20171105t185213432z",
      "voter": "daneftaly",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-07T19:35:21",
  "trx_id": "52a3a231859be314339d9610864d34ed4585270f",
  "trx_in_block": 27,
  "virtual_op": 0
}
2017/11/05 19:02:06
authorsteemitboard
bodyCongratulations @reshawn! You have completed some achievement on Steemit and have been rewarded with new badge(s) : [![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/firstvoted.png)](http://steemitboard.com/@reshawn) You got a First Vote Click on any badge to view your own Board of Honor on SteemitBoard. For more information about SteemitBoard, click [here](https://steemit.com/@steemitboard) If you no longer want to receive notifications, reply to this comment with the word `STOP` > By upvoting this notification, you can help all Steemit users. Learn how [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)!
json metadata{"image":["https://steemitboard.com/img/notifications.png"]}
parent authorreshawn
parent permlinklos-nodos-no-tienen-poder-alguno
permlinksteemitboard-notify-reshawn-20171105t190206000z
title
Transaction InfoBlock #16963554/Trx a27ef7bec2c8458cb6ede75b58b71c2d5ab592be
View Raw JSON Data
{
  "block": 16963554,
  "op": [
    "comment",
    {
      "author": "steemitboard",
      "body": "Congratulations @reshawn! You have completed some achievement on Steemit and have been rewarded with new badge(s) :\n\n[![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/firstvoted.png)](http://steemitboard.com/@reshawn) You got a First Vote\n\nClick on any badge to view your own Board of Honor on SteemitBoard.\nFor more information about SteemitBoard, click [here](https://steemit.com/@steemitboard)\n\nIf you no longer want to receive notifications, reply to this comment with the word `STOP`\n\n> By upvoting this notification, you can help all Steemit users. Learn how [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notifications.png\"]}",
      "parent_author": "reshawn",
      "parent_permlink": "los-nodos-no-tienen-poder-alguno",
      "permlink": "steemitboard-notify-reshawn-20171105t190206000z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T19:02:06",
  "trx_id": "a27ef7bec2c8458cb6ede75b58b71c2d5ab592be",
  "trx_in_block": 2,
  "virtual_op": 0
}
2017/11/05 18:57:06
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
votersayde
weight10000 (100.00%)
Transaction InfoBlock #16963454/Trx 4826c25c24c187ce9e191374e20e8e741f1d30c2
View Raw JSON Data
{
  "block": 16963454,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "sayde",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:57:06",
  "trx_id": "4826c25c24c187ce9e191374e20e8e741f1d30c2",
  "trx_in_block": 10,
  "virtual_op": 0
}
2017/11/05 18:56:57
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voterclishino
weight10000 (100.00%)
Transaction InfoBlock #16963451/Trx 651d8d6e5590f0f17e8c7216f445ff8f1fd35139
View Raw JSON Data
{
  "block": 16963451,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "clishino",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:56:57",
  "trx_id": "651d8d6e5590f0f17e8c7216f445ff8f1fd35139",
  "trx_in_block": 3,
  "virtual_op": 0
}
2017/11/05 18:56:54
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voterzinatavrova
weight10000 (100.00%)
Transaction InfoBlock #16963450/Trx 94205f4deb83b54bc69253e606f731359c2e48a7
View Raw JSON Data
{
  "block": 16963450,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "zinatavrova",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:56:54",
  "trx_id": "94205f4deb83b54bc69253e606f731359c2e48a7",
  "trx_in_block": 13,
  "virtual_op": 0
}
2017/11/05 18:56:54
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voterramzia
weight10000 (100.00%)
Transaction InfoBlock #16963450/Trx 10f4a65b77a2d704dbce66037e686b05f4781452
View Raw JSON Data
{
  "block": 16963450,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "ramzia",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:56:54",
  "trx_id": "10f4a65b77a2d704dbce66037e686b05f4781452",
  "trx_in_block": 8,
  "virtual_op": 0
}
2017/11/05 18:56:51
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voteririsukhom
weight10000 (100.00%)
Transaction InfoBlock #16963449/Trx a6921c01713e1e504ee172de54b3525e9899113e
View Raw JSON Data
{
  "block": 16963449,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "irisukhom",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:56:51",
  "trx_id": "a6921c01713e1e504ee172de54b3525e9899113e",
  "trx_in_block": 11,
  "virtual_op": 0
}
2017/11/05 18:52:15
authorreshawn
bodyMuy digerible ésta explicación.
json metadata{"tags":["spanish"],"app":"steemit/0.1"}
parent authorcriptomonedastv
parent permlinksegwit-no2x-la-batalla-por-el-control-de-bitcoin
permlinkre-criptomonedastv-segwit-no2x-la-batalla-por-el-control-de-bitcoin-20171105t185213432z
title
Transaction InfoBlock #16963357/Trx ec9bae0a24b7d96286f43a42b1f6793f7060ea9e
View Raw JSON Data
{
  "block": 16963357,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "Muy digerible ésta explicación.",
      "json_metadata": "{\"tags\":[\"spanish\"],\"app\":\"steemit/0.1\"}",
      "parent_author": "criptomonedastv",
      "parent_permlink": "segwit-no2x-la-batalla-por-el-control-de-bitcoin",
      "permlink": "re-criptomonedastv-segwit-no2x-la-batalla-por-el-control-de-bitcoin-20171105t185213432z",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:52:15",
  "trx_id": "ec9bae0a24b7d96286f43a42b1f6793f7060ea9e",
  "trx_in_block": 5,
  "virtual_op": 0
}
2017/11/05 18:50:42
authorcriptomonedastv
permlinksegwit-no2x-la-batalla-por-el-control-de-bitcoin
voterreshawn
weight10000 (100.00%)
Transaction InfoBlock #16963326/Trx 517f233038052167d514f27c0a7be3e04f0c196e
View Raw JSON Data
{
  "block": 16963326,
  "op": [
    "vote",
    {
      "author": "criptomonedastv",
      "permlink": "segwit-no2x-la-batalla-por-el-control-de-bitcoin",
      "voter": "reshawn",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T18:50:42",
  "trx_id": "517f233038052167d514f27c0a7be3e04f0c196e",
  "trx_in_block": 26,
  "virtual_op": 0
}
2017/11/05 16:38:12
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voterfivestargroup
weight2 (0.02%)
Transaction InfoBlock #16960685/Trx 06b764198ccdb2d26e0bd7ffc957fa34f41a0340
View Raw JSON Data
{
  "block": 16960685,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "fivestargroup",
      "weight": 2
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T16:38:12",
  "trx_id": "06b764198ccdb2d26e0bd7ffc957fa34f41a0340",
  "trx_in_block": 16,
  "virtual_op": 0
}
2017/11/05 16:20:45
authorreshawn
body@@ -247,16 +247,17 @@ a quedad +o bien cl
json metadata{"tags":["spanish","bitcoin"],"image":["https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkspanish
permlinklos-nodos-no-tienen-poder-alguno
titleLos nodos no tienen poder alguno.
Transaction InfoBlock #16960337/Trx f9ddd5efdb00d545bbbabaf13a9b79ad8179957f
View Raw JSON Data
{
  "block": 16960337,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "@@ -247,16 +247,17 @@\n a quedad\n+o\n  bien cl\n",
      "json_metadata": "{\"tags\":[\"spanish\",\"bitcoin\"],\"image\":[\"https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "spanish",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "title": "Los nodos no tienen poder alguno."
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T16:20:45",
  "trx_id": "f9ddd5efdb00d545bbbabaf13a9b79ad8179957f",
  "trx_in_block": 17,
  "virtual_op": 0
}
2017/11/05 16:10:33
authorreshawn
permlinklos-nodos-no-tienen-poder-alguno
voterriponsk
weight10000 (100.00%)
Transaction InfoBlock #16960134/Trx c33893b0ef50eb56a0d9add89c0ee8676da2c2b9
View Raw JSON Data
{
  "block": 16960134,
  "op": [
    "vote",
    {
      "author": "reshawn",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "voter": "riponsk",
      "weight": 10000
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T16:10:33",
  "trx_id": "c33893b0ef50eb56a0d9add89c0ee8676da2c2b9",
  "trx_in_block": 33,
  "virtual_op": 0
}
2017/11/05 16:10:12
authorreshawn
body![DN4N8j5W0AETZ2M.jpg](https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg) Éso suena muy bonito en el papel, sin embargo, en la práctica es absurdo. Dejando de lado el hecho de que en forks anteriores ha quedad bien claro que siempre habrá mineros dispuestos a llevar la contraria, los nodos bien tienen el poder de bifurcar la red cambiando la manera en la que toman un bloque como válido y si bien los mineros podrían crear su propia red de nodos, un escenario donde el mundo entero hiciera uso de una cadena de bloques "secuestrada" por los mineros es muy poco probable. ¿Cómo podrían competir contra el poder de la red entera? ¿Qué valor tendría su BTC si su cadena de bloques fuese rechazada por la comunidad? Su poder se basa en el hecho de que su capacidad de cómputo es superior a cualquier capacidad individual de otros mineros independientes, pero si los nodos independientes deciden mandar al diablo el proof of work y bifurcaran la cadena, sumado al apoyo de toda la comunidad (cosa que no pasó ni con Bitcoin cash ni con Bitcoin gold), entonces la comunidad entera tiene más poder sobre el protocolo que cualquier grupo de mineros, los cuales al final se inclinarían a minar la red más aceptada por que es la que conservaría su valor. Sin mineros no hay bloques, pero sin nodos no hay cadena, y si los mineros crean una red "privada" de nodos ¿quiém haría uso de ella?. Al final todo se resume a qué le da valor a una cadena o a otra, y eso depende de la gente, no de los mineros. El Bitcoin actualmente no es usado como medio de intercambio ni de transferencia de valor, sino como medio especulativo. No ésta resolviendo los problemas para los que fue originalmente diseñado y sin embargo, vemos como su precio no deja de subir. ¿Por qué algo que no sirve tiene tanto valor? Por que la gente le da ese valor, y bien la gente mañana puede despertarse con un ataque de paranoia y vender en pánico haciendo que el BTC se desplome hasta morir. ¿A qué voy con todo esto? A que ni mineros ni nodos son los dueños del éxito de una moneda, ambos tienen poder, y uno sin el otro no pueden existir. Decir que los nodos no tienen ningún poder sería como decir que los huevos no tiene ningún poder sobre las gallinas, es simplemente absurdo. Pero bueno, esa es mi opinión personal, y comprendo las razones lógicas detrás de ése enunciado, razones lógicas que lo hacen perfectamente acertado, si los mineros no minan, adiós BTC, pero la realidad es más abstracta que éso. Saludos, y recuerden, la unión hace la fuerza.
json metadata{"tags":["spanish","bitcoin"],"image":["https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkspanish
permlinklos-nodos-no-tienen-poder-alguno
titleLos nodos no tienen poder alguno.
Transaction InfoBlock #16960127/Trx e048053ee4d17e0ce9d3b1ee2d83ad6b4ca3c4dd
View Raw JSON Data
{
  "block": 16960127,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "![DN4N8j5W0AETZ2M.jpg](https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg)\n\nÉso suena muy bonito en el papel, sin embargo, en la práctica es absurdo.\nDejando de lado el hecho de que en forks anteriores ha quedad bien claro que siempre habrá mineros dispuestos a llevar la contraria, los nodos bien tienen el poder de bifurcar la red cambiando la manera en la que toman un bloque como válido y si bien los mineros podrían crear su propia red de nodos, un escenario donde el mundo entero hiciera uso de una cadena de bloques \"secuestrada\" por los mineros es muy poco probable.\n¿Cómo podrían competir contra el poder de la red entera? ¿Qué valor tendría su BTC si su cadena de bloques fuese rechazada por la comunidad?\nSu poder se basa en el hecho de que su capacidad de cómputo es superior a cualquier capacidad individual de otros mineros independientes, pero si los nodos independientes deciden mandar al diablo el proof of work y bifurcaran la cadena, sumado al apoyo de toda la comunidad (cosa que no pasó ni con Bitcoin cash ni con Bitcoin gold), entonces la comunidad entera tiene más poder sobre el protocolo que cualquier grupo de mineros, los cuales al final se inclinarían a minar la red más aceptada por que es la que conservaría su valor.\nSin mineros no hay bloques, pero sin nodos no hay cadena, y si los mineros crean una red \"privada\" de nodos ¿quiém haría uso de ella?.\n Al final todo se resume a qué le da valor a una cadena o a otra, y eso depende de la gente, no de los mineros. El Bitcoin actualmente no es usado como medio de intercambio ni de transferencia de valor, sino como medio especulativo. No ésta resolviendo los problemas para los que fue originalmente diseñado y sin embargo, vemos como su precio no deja de subir.\n¿Por qué algo que no sirve tiene tanto valor? Por que la gente le da ese valor, y bien la gente mañana puede despertarse con un ataque de paranoia y vender en pánico haciendo que el BTC se desplome hasta morir.\n¿A qué voy con todo esto? A que ni mineros ni nodos son los dueños del éxito de una moneda, ambos tienen poder, y uno sin el otro no pueden existir. Decir que los nodos no tienen ningún poder sería como decir que los huevos no tiene ningún poder sobre las gallinas, es simplemente absurdo.\nPero bueno, esa es mi opinión personal, y comprendo las razones lógicas detrás de ése enunciado, razones lógicas que lo hacen perfectamente acertado, si los mineros no minan, adiós BTC, pero la realidad es más abstracta que éso.\nSaludos, y recuerden, la unión hace la fuerza.",
      "json_metadata": "{\"tags\":[\"spanish\",\"bitcoin\"],\"image\":[\"https://steemitimages.com/DQmNdSbivsJXBgFmL3nePX5LL4sbcQXkXisn9aC923oiDtH/DN4N8j5W0AETZ2M.jpg\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "spanish",
      "permlink": "los-nodos-no-tienen-poder-alguno",
      "title": "Los nodos no tienen poder alguno."
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-11-05T16:10:12",
  "trx_id": "e048053ee4d17e0ce9d3b1ee2d83ad6b4ca3c4dd",
  "trx_in_block": 1,
  "virtual_op": 0
}
2017/10/23 03:30:12
authorreshawn
bodyhttps://www.youtube.com/watch?v=Z7_PbkaTT88 4 formas de raclamar tus Bitcoin Gold discutidas a detalle en el video: 1.- Freebitco.in (https://freebitco.in/): Ésta popular faucet emitió un comunicado el pasado 18 de octubre en su página donde mencionan que estarán entregando el Bitcoin Gold generado después del hard fork. 2.- Exchanges: En la página oficial de Bitcoin Gold (http://btcgpu.org/) se muestran los exchanges que estarán dando soporte a Bitcoin Gold, de los cuales destaca Yobit (https://yobit.net/en/bitcoingold/timer) que comenzará el trade de la nueva moneda el Lunes 23 de Octubre. 3.- Wallets: La manera más segura para reclamar las nuevas monedas. Éste método consiste en resguardar los Bitcoin en una billetera que te permita tener control sobre tus claves privadas o en su defecto, de tu seed key, para posteriormente importar dichas claves en una billetera que soporte Bitcoin Gold después del hard fork (el 25 de Octubre). Cabe destacar que Coinomi ya ha emitido un comunicado oficial en donde dejan claro que estarán soportando Bitcoin Gold en la versión actualizada de su billetera (https://medium.com/@coinomi/collecting-your-free-bitcoin-gold-btg-coins-da937d4255d1) 4.- Cold Storage: Similar a la anterior, consiste en resguardar tus Bitcoin en una billetera de papel o de hardware antes del hard fork para posteriormente importar tus llaves privadas en Coinomi o alguna otra billetera que soporte Bitcoin Gold.
json metadata{"tags":["spanish","bitcoin"],"image":["https://img.youtube.com/vi/Z7_PbkaTT88/0.jpg"],"links":["https://www.youtube.com/watch?v=Z7_PbkaTT88","https://freebitco.in/","http://btcgpu.org/","https://medium.com/@coinomi/collecting-your-free-bitcoin-gold-btg-coins-da937d4255d1"],"app":"steemit/0.1","format":"markdown"}
parent author
parent permlinkspanish
permlink4-formas-de-reclamar-tus-bitcoin-gold
title4 formas de reclamar tus Bitcoin Gold
Transaction InfoBlock #16570686/Trx 9be1328f49c25bbb248d158503fa998525cc2d4d
View Raw JSON Data
{
  "block": 16570686,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "https://www.youtube.com/watch?v=Z7_PbkaTT88\n\n4 formas de raclamar tus Bitcoin Gold discutidas a detalle en el video:\n\n1.- Freebitco.in (https://freebitco.in/):\nÉsta popular faucet emitió un comunicado el pasado 18 de octubre en su página donde mencionan que estarán entregando el Bitcoin Gold generado después del hard fork.\n\n2.- Exchanges:\nEn la página oficial de Bitcoin Gold (http://btcgpu.org/) se muestran los exchanges que estarán dando soporte a Bitcoin Gold, de los cuales destaca Yobit (https://yobit.net/en/bitcoingold/timer) que comenzará el trade de la nueva moneda el Lunes 23 de Octubre.\n\n3.- Wallets:\nLa manera más segura para reclamar las nuevas monedas. Éste método consiste en resguardar los Bitcoin en una billetera que te permita tener control sobre tus claves privadas o en su defecto, de tu seed key, para posteriormente importar dichas claves en una billetera que soporte Bitcoin Gold después del hard fork (el 25 de Octubre). Cabe destacar que Coinomi ya ha emitido un comunicado oficial en donde dejan claro que estarán soportando Bitcoin Gold en la versión actualizada de su billetera (https://medium.com/@coinomi/collecting-your-free-bitcoin-gold-btg-coins-da937d4255d1)\n\n4.- Cold Storage:\nSimilar a la anterior, consiste en resguardar tus Bitcoin en una billetera de papel o de hardware antes del hard fork para posteriormente importar tus llaves privadas en Coinomi o alguna otra billetera que soporte Bitcoin Gold.",
      "json_metadata": "{\"tags\":[\"spanish\",\"bitcoin\"],\"image\":[\"https://img.youtube.com/vi/Z7_PbkaTT88/0.jpg\"],\"links\":[\"https://www.youtube.com/watch?v=Z7_PbkaTT88\",\"https://freebitco.in/\",\"http://btcgpu.org/\",\"https://medium.com/@coinomi/collecting-your-free-bitcoin-gold-btg-coins-da937d4255d1\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}",
      "parent_author": "",
      "parent_permlink": "spanish",
      "permlink": "4-formas-de-reclamar-tus-bitcoin-gold",
      "title": "4 formas de reclamar tus Bitcoin Gold"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-10-23T03:30:12",
  "trx_id": "9be1328f49c25bbb248d158503fa998525cc2d4d",
  "trx_in_block": 12,
  "virtual_op": 0
}
steemdelegated 18.345 SP to @reshawn
2017/10/13 16:07:24
delegateereshawn
delegatorsteem
vesting shares29830.234400 VESTS
Transaction InfoBlock #16298331/Trx ed77a97659c22e6bee991f6c2d80ac3cd96992ad
View Raw JSON Data
{
  "block": 16298331,
  "op": [
    "delegate_vesting_shares",
    {
      "delegatee": "reshawn",
      "delegator": "steem",
      "vesting_shares": "29830.234400 VESTS"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-10-13T16:07:24",
  "trx_id": "ed77a97659c22e6bee991f6c2d80ac3cd96992ad",
  "trx_in_block": 9,
  "virtual_op": 0
}
reshawnupdated their account properties
2017/09/09 18:33:30
accountreshawn
json metadata{"profile":{"name":"inZane","profile_image":"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg","cover_image":"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500","website":"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"}}
memo keySTM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
Transaction InfoBlock #15322582/Trx 85a2aa42f95885ea4e65662d04279b3ef13dd590
View Raw JSON Data
{
  "block": 15322582,
  "op": [
    "account_update",
    {
      "account": "reshawn",
      "json_metadata": "{\"profile\":{\"name\":\"inZane\",\"profile_image\":\"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg\",\"cover_image\":\"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500\",\"website\":\"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA\"}}",
      "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-09T18:33:30",
  "trx_id": "85a2aa42f95885ea4e65662d04279b3ef13dd590",
  "trx_in_block": 22,
  "virtual_op": 0
}
reshawnupdated their account properties
2017/09/07 05:04:06
accountreshawn
json metadata{"profile":{"name":"inZane","profile_image":"https://pbs.twimg.com/profile_images/796967591675719680/LX8NsGyY_400x400.jpg","cover_image":"https://pbs.twimg.com/profile_banners/796963341616824320/1478847421/1500x500","website":"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"}}
memo keySTM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
Transaction InfoBlock #15248822/Trx f718ddd89e08a31b7caccf9d3126ca765e2d5621
View Raw JSON Data
{
  "block": 15248822,
  "op": [
    "account_update",
    {
      "account": "reshawn",
      "json_metadata": "{\"profile\":{\"name\":\"inZane\",\"profile_image\":\"https://pbs.twimg.com/profile_images/796967591675719680/LX8NsGyY_400x400.jpg\",\"cover_image\":\"https://pbs.twimg.com/profile_banners/796963341616824320/1478847421/1500x500\",\"website\":\"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA\"}}",
      "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-07T05:04:06",
  "trx_id": "f718ddd89e08a31b7caccf9d3126ca765e2d5621",
  "trx_in_block": 11,
  "virtual_op": 0
}
2017/09/06 17:11:39
authorreshawn
body@@ -3183,33 +3183,45 @@ KeyBytes():%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # 32 bytes (256 @@ -3237,33 +3237,45 @@ dom stream:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; return os.urando @@ -3751,17 +3751,38 @@ br%3E%0A -Decimal: +%3Cstrong%3EDecimal:%3Cbr%3E%0A%3C/strong%3E 1005 @@ -3856,16 +3856,24 @@ 1955324%3C +strong%3E%3C br%3E%0AHexa @@ -3880,17 +3880,30 @@ decimal: - +%3Cbr%3E%0A%3C/strong%3E DE55309F @@ -3959,16 +3959,24 @@ F06AB7C%3C +strong%3E%3C br%3E%0AWIF @@ -3998,17 +3998,30 @@ Format): - +%3Cbr%3E%0A%3C/strong%3E 5KWCmqJw @@ -4064,20 +4064,37 @@ SDUF9W1%3C -br%3E%0A +strong%3E%3Cbr%3E%0A%3C/strong%3E Las 3 re @@ -4375,17 +4375,16 @@ mal y WI -I F)%3C/stro @@ -4739,33 +4739,45 @@ eKeyBytes):%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Hexadecimal re @@ -4786,33 +4786,45 @@ esentation:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; hexKey = private @@ -4842,33 +4842,45 @@ code('hex')%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Hexadecimal ke @@ -4891,33 +4891,45 @@ uppercase:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; return hexKey.up @@ -4953,25 +4953,12 @@ %3Cp%3E%3C -code%3E%3Cbr%3E%0A%3C/code%3E +br%3E%0A La f @@ -5061,16 +5061,29 @@ i%C3%B3n +%3Ccode%3E encode() +%3C/code%3E , el @@ -5233,23 +5233,36 @@ funci%C3%B3n +%3Ccode%3E upper() +%3C/code%3E para tr @@ -6481,437 +6481,2024 @@ br%3E%0A -Decimal Hexadecimal%3Cbr%3E%0A8 %098%3Cbr%3E%0A9 %099%3Cbr%3E%0A10 %09A%3Cbr%3E%0A11 %09B%3Cbr%3E%0A12 %09C%3Cbr%3E%0A13 %09D%3Cbr%3E%0AY as%C3%AD sucesivamente.%3Cbr%3E%0ABueno, con la codificaci%C3%B3n base58 ocurre exactamente lo mismo, s%C3%B3lo que el alfabeto consta de los siguientes valores:%3Cbr%3E%0A'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'%3Cbr%3E%0APor lo que:%3Cbr%3E%0ADecimal%09Hexadecimal%09Base58%3Cbr%3E%0A8 %09%098%09%09%09 9%3Cbr%3E%0A9 %09%099 %09%09%09A%3Cbr%3E%0A10 %09%09A %09%09%09B%3Cbr%3E%0A11 %09%09B %09%09%09C%3Cbr%3E%0A12 %09%09C %09%09%09D%3Cbr%3E%0A13 %09%09D %09%09%09 +%3Cstrong%3EDecimal&nbsp; &nbsp;Hexadecimal%3C/strong%3E%3Cbr%3E%0A8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;8%3Cbr%3E%0A9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;9%3Cbr%3E%0A10&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A%3Cbr%3E%0A11&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;B%3Cbr%3E%0A12&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;C%3Cbr%3E%0A13&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;D%3Cbr%3E%0AY as%C3%AD sucesivamente.%3Cbr%3E%0ABueno, con la codificaci%C3%B3n base58 ocurre exactamente lo mismo, s%C3%B3lo que el alfabeto consta de los siguientes valores:%3Cbr%3E%0A'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'%3Cbr%3E%0ADonde el valor m%C3%A1ximo (57) corresponde a la letra 'z'. Por lo que:%3Cbr%3E%0A%3Cstrong%3EDecimal&nbsp; &nbsp;Hexadecimal&nbsp; &nbsp;Base58%3C/strong%3E%3Cbr%3E%0A8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;9%3Cbr%3E%0A9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A%3Cbr%3E%0A10&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;B%3Cbr%3E%0A11&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;B&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;C%3Cbr%3E%0A12&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;C&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;D%3Cbr%3E%0A13&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;D&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; E%3Cbr @@ -9220,33 +9220,45 @@ ode(value):%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Base58 charact @@ -9263,33 +9263,45 @@ cter range:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; alphabet = '1234 @@ -9352,33 +9352,45 @@ qrstuvwxyz'%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Contains the f @@ -9398,33 +9398,45 @@ nal result:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; encoded = ''%3C/co @@ -9444,33 +9444,45 @@ e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # Encoding:%3Cbr%3E%0A @@ -9473,33 +9473,45 @@ # Encoding:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; num = value%3Cbr%3E%0A @@ -9502,33 +9502,45 @@ num = value%3Cbr%3E%0A -%09 +&nbsp; &nbsp; while num %3E= 58: @@ -9525,33 +9525,36 @@ &nbsp;while num -%3E +&gt; = 58:%3Cbr%3E%0A%09%09mod @@ -9547,39 +9547,87 @@ 58:%3Cbr%3E%0A -%09%09mod = num %25 58%3Cbr%3E%0A%09%09 +&nbsp; &nbsp;&nbsp; &nbsp;mod = num %25 58%3Cbr%3E%0A&nbsp; &nbsp;&nbsp; &nbsp; encoded @@ -9648,34 +9648,58 @@ %5D + encoded%3Cbr%3E%0A -%09%09 +&nbsp; &nbsp;&nbsp; &nbsp; num = (num - mod @@ -9721,33 +9721,48 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; if num -%3E +&gt; 0 :%3Cbr%3E%0A%09%09e @@ -9750,34 +9750,58 @@ um &gt; 0 :%3Cbr%3E%0A -%09%09 +&nbsp; &nbsp;&nbsp; &nbsp; encoded = alphab @@ -9831,33 +9831,45 @@ e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; return encoded;%3C @@ -9906,21 +9906,34 @@ r%C3%A1metro -value +%3Ccode%3Evalue%3C/code%3E ser%C3%ADa u @@ -10249,25 +10249,37 @@ yBytes)%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # 2.- Se agr @@ -10382,17 +10382,29 @@ s).%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Adicio @@ -10493,17 +10493,29 @@ er%C3%A1%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # a una @@ -10586,25 +10586,37 @@ egwit):%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKey @@ -10656,25 +10656,37 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 3.- Se obt @@ -10753,25 +10753,37 @@ endida:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKeyH @@ -10832,25 +10832,37 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 4.- Se obt @@ -10927,25 +10927,37 @@ terior:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKeyH @@ -11021,25 +11021,37 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 5.- Se tom @@ -11138,25 +11138,37 @@ ecksum:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; checksum = e @@ -11211,25 +11211,37 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 6.- Se a%C3%B1a @@ -11312,25 +11312,37 @@ paso 2:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKey @@ -11373,17 +11373,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; #7.- Se @@ -11430,17 +11430,29 @@ e58%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # El res @@ -11481,25 +11481,37 @@ ve WIF:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKeyI @@ -11546,33 +11546,45 @@ 'hex'), 16)%3Cbr%3E%0A -%09 +&nbsp; &nbsp; WIFKey = base58. @@ -11624,33 +11624,45 @@ e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; return WIFKey%3C/c @@ -12132,17 +12132,29 @@ e):%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Base58 @@ -12175,17 +12175,29 @@ ge:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; alphabet @@ -12264,17 +12264,29 @@ yz'%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Contai @@ -12310,17 +12310,29 @@ lt:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; encoded @@ -12356,17 +12356,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # Encodi @@ -12385,17 +12385,29 @@ ng:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; num = va @@ -12414,17 +12414,29 @@ lue%3Cbr%3E%0A -%09 +&nbsp; &nbsp; while nu @@ -12437,17 +12437,20 @@ ile num -%3E +&gt; = 58:%3Cbr @@ -12455,31 +12455,79 @@ br%3E%0A -%09%09mod = num %25 58%3Cbr%3E%0A%09%09 +&nbsp; &nbsp;&nbsp; &nbsp;mod = num %25 58%3Cbr%3E%0A&nbsp; &nbsp;&nbsp; &nbsp; enco @@ -12560,18 +12560,42 @@ ded%3Cbr%3E%0A -%09%09 +&nbsp; &nbsp;&nbsp; &nbsp; num = (n @@ -12633,17 +12633,32 @@ ode%3E -%09 +&nbsp; &nbsp; if num -%3E +&gt; 0 : @@ -12666,10 +12666,34 @@ br%3E%0A -%09%09 +&nbsp; &nbsp;&nbsp; &nbsp; enco @@ -12745,25 +12745,37 @@ p%3E%0A%3Cp%3E%3Ccode%3E -%09 +&nbsp; &nbsp; return encod @@ -13196,17 +13196,29 @@ ():%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # 32 byt @@ -13246,25 +13246,37 @@ stream:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; return os.ur @@ -13477,25 +13477,37 @@ Bytes):%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Hexadecima @@ -13528,17 +13528,29 @@ on:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; hexKey = @@ -13584,17 +13584,29 @@ x')%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Hexade @@ -13633,17 +13633,29 @@ se:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; return h @@ -13955,17 +13955,29 @@ key%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # 2.- Ad @@ -14062,17 +14062,29 @@ es.%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # Also a @@ -14168,33 +14168,45 @@ public key:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKey = '%5C @@ -14246,17 +14246,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 3.- Pe @@ -14307,25 +14307,37 @@ ed key:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKeyH @@ -14390,17 +14390,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 4.- Pe @@ -14457,25 +14457,37 @@ 6 hash:%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKeyH @@ -14555,17 +14555,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 5.- Ta @@ -14650,17 +14650,29 @@ sum%3Cbr%3E%0A -%09 +&nbsp; &nbsp; checksum @@ -14723,17 +14723,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 6.- Ad @@ -14824,25 +14824,37 @@ point 2%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extendedKey @@ -14885,17 +14885,29 @@ p%3E%3Ccode%3E -%09 +&nbsp; &nbsp; # 7.- Co @@ -14995,17 +14995,29 @@ ng.%3Cbr%3E%0A -%09 +&nbsp; &nbsp; # This i @@ -15047,17 +15047,29 @@ mat%3Cbr%3E%0A -%09 +&nbsp; &nbsp; extended @@ -15116,17 +15116,29 @@ 16)%3Cbr%3E%0A -%09 +&nbsp; &nbsp; WIFKey = @@ -15198,9 +15198,21 @@ ode%3E -%09 +&nbsp; &nbsp; retu
json metadata{"tags":["bitcoin","spanish","blockchain"],"image":["http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg"],"links":["https://en.bitcoin.it/wiki/Wallet_import_format","https://en.bitcoin.it/wiki/Base58Check_encoding"],"app":"steemit/0.1","format":"html"}
parent author
parent permlinkbitcoin
permlinkclaves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores
titleClaves privadas de Bitcoin ¿Qué son en realidad? [Bitcoin para programadores]
Transaction InfoBlock #15234575/Trx a0550fedac4734a00183fb31428174d361ae253b
View Raw JSON Data
{
  "block": 15234575,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "@@ -3183,33 +3183,45 @@\n KeyBytes():%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # 32 bytes (256 \n@@ -3237,33 +3237,45 @@\n dom stream:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n return os.urando\n@@ -3751,17 +3751,38 @@\n br%3E%0A\n-Decimal: \n+%3Cstrong%3EDecimal:%3Cbr%3E%0A%3C/strong%3E\n 1005\n@@ -3856,16 +3856,24 @@\n 1955324%3C\n+strong%3E%3C\n br%3E%0AHexa\n@@ -3880,17 +3880,30 @@\n decimal:\n- \n+%3Cbr%3E%0A%3C/strong%3E\n DE55309F\n@@ -3959,16 +3959,24 @@\n F06AB7C%3C\n+strong%3E%3C\n br%3E%0AWIF \n@@ -3998,17 +3998,30 @@\n Format):\n- \n+%3Cbr%3E%0A%3C/strong%3E\n 5KWCmqJw\n@@ -4064,20 +4064,37 @@\n SDUF9W1%3C\n-br%3E%0A\n+strong%3E%3Cbr%3E%0A%3C/strong%3E\n Las 3 re\n@@ -4375,17 +4375,16 @@\n mal y WI\n-I\n F)%3C/stro\n@@ -4739,33 +4739,45 @@\n eKeyBytes):%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Hexadecimal re\n@@ -4786,33 +4786,45 @@\n esentation:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n hexKey = private\n@@ -4842,33 +4842,45 @@\n code('hex')%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Hexadecimal ke\n@@ -4891,33 +4891,45 @@\n  uppercase:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n return hexKey.up\n@@ -4953,25 +4953,12 @@\n %3Cp%3E%3C\n-code%3E%3Cbr%3E%0A%3C/code%3E\n+br%3E%0A\n La f\n@@ -5061,16 +5061,29 @@\n i%C3%B3n \n+%3Ccode%3E\n encode()\n+%3C/code%3E\n , el\n@@ -5233,23 +5233,36 @@\n funci%C3%B3n \n+%3Ccode%3E\n upper()\n+%3C/code%3E\n  para tr\n@@ -6481,437 +6481,2024 @@\n br%3E%0A\n-Decimal Hexadecimal%3Cbr%3E%0A8 %098%3Cbr%3E%0A9 %099%3Cbr%3E%0A10 %09A%3Cbr%3E%0A11 %09B%3Cbr%3E%0A12 %09C%3Cbr%3E%0A13 %09D%3Cbr%3E%0AY as%C3%AD sucesivamente.%3Cbr%3E%0ABueno, con la codificaci%C3%B3n base58 ocurre exactamente lo mismo, s%C3%B3lo que el alfabeto consta de los siguientes valores:%3Cbr%3E%0A'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'%3Cbr%3E%0APor lo que:%3Cbr%3E%0ADecimal%09Hexadecimal%09Base58%3Cbr%3E%0A8 %09%098%09%09%09 9%3Cbr%3E%0A9 %09%099 %09%09%09A%3Cbr%3E%0A10 %09%09A %09%09%09B%3Cbr%3E%0A11 %09%09B %09%09%09C%3Cbr%3E%0A12 %09%09C %09%09%09D%3Cbr%3E%0A13 %09%09D %09%09%09\n+%3Cstrong%3EDecimal&nbsp; &nbsp;Hexadecimal%3C/strong%3E%3Cbr%3E%0A8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;8%3Cbr%3E%0A9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;9%3Cbr%3E%0A10&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A%3Cbr%3E%0A11&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;B%3Cbr%3E%0A12&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;C%3Cbr%3E%0A13&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;D%3Cbr%3E%0AY as%C3%AD sucesivamente.%3Cbr%3E%0ABueno, con la codificaci%C3%B3n base58 ocurre exactamente lo mismo, s%C3%B3lo que el alfabeto consta de los siguientes valores:%3Cbr%3E%0A'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'%3Cbr%3E%0ADonde el valor m%C3%A1ximo (57) corresponde a la letra 'z'. Por lo que:%3Cbr%3E%0A%3Cstrong%3EDecimal&nbsp; &nbsp;Hexadecimal&nbsp; &nbsp;Base58%3C/strong%3E%3Cbr%3E%0A8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;8&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;9%3Cbr%3E%0A9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;9&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A%3Cbr%3E%0A10&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;A&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;B%3Cbr%3E%0A11&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;B&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;C%3Cbr%3E%0A12&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;C&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;D%3Cbr%3E%0A13&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;D&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;\n E%3Cbr\n@@ -9220,33 +9220,45 @@\n ode(value):%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Base58 charact\n@@ -9263,33 +9263,45 @@\n cter range:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n alphabet = '1234\n@@ -9352,33 +9352,45 @@\n qrstuvwxyz'%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Contains the f\n@@ -9398,33 +9398,45 @@\n nal result:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n encoded = ''%3C/co\n@@ -9444,33 +9444,45 @@\n e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # Encoding:%3Cbr%3E%0A\n@@ -9473,33 +9473,45 @@\n # Encoding:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n num = value%3Cbr%3E%0A\n@@ -9502,33 +9502,45 @@\n num = value%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n while num %3E= 58:\n@@ -9525,33 +9525,36 @@\n &nbsp;while num \n-%3E\n+&gt;\n = 58:%3Cbr%3E%0A%09%09mod \n@@ -9547,39 +9547,87 @@\n 58:%3Cbr%3E%0A\n-%09%09mod = num %25 58%3Cbr%3E%0A%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;mod = num %25 58%3Cbr%3E%0A&nbsp; &nbsp;&nbsp; &nbsp;\n encoded \n@@ -9648,34 +9648,58 @@\n %5D + encoded%3Cbr%3E%0A\n-%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;\n num = (num - mod\n@@ -9721,33 +9721,48 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n if num \n-%3E\n+&gt;\n  0 :%3Cbr%3E%0A%09%09e\n@@ -9750,34 +9750,58 @@\n um &gt; 0 :%3Cbr%3E%0A\n-%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;\n encoded = alphab\n@@ -9831,33 +9831,45 @@\n e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n return encoded;%3C\n@@ -9906,21 +9906,34 @@\n r%C3%A1metro \n-value\n+%3Ccode%3Evalue%3C/code%3E\n  ser%C3%ADa u\n@@ -10249,25 +10249,37 @@\n yBytes)%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # 2.- Se agr\n@@ -10382,17 +10382,29 @@\n s).%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Adicio\n@@ -10493,17 +10493,29 @@\n er%C3%A1%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # a una \n@@ -10586,25 +10586,37 @@\n egwit):%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKey \n@@ -10656,25 +10656,37 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 3.- Se obt\n@@ -10753,25 +10753,37 @@\n endida:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKeyH\n@@ -10832,25 +10832,37 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 4.- Se obt\n@@ -10927,25 +10927,37 @@\n terior:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKeyH\n@@ -11021,25 +11021,37 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 5.- Se tom\n@@ -11138,25 +11138,37 @@\n ecksum:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n checksum = e\n@@ -11211,25 +11211,37 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 6.- Se a%C3%B1a\n@@ -11312,25 +11312,37 @@\n paso 2:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKey \n@@ -11373,17 +11373,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n #7.- Se \n@@ -11430,17 +11430,29 @@\n e58%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # El res\n@@ -11481,25 +11481,37 @@\n ve WIF:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKeyI\n@@ -11546,33 +11546,45 @@\n 'hex'), 16)%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n WIFKey = base58.\n@@ -11624,33 +11624,45 @@\n e%3E%3C/p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n return WIFKey%3C/c\n@@ -12132,17 +12132,29 @@\n e):%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Base58\n@@ -12175,17 +12175,29 @@\n ge:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n alphabet\n@@ -12264,17 +12264,29 @@\n yz'%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Contai\n@@ -12310,17 +12310,29 @@\n lt:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n encoded \n@@ -12356,17 +12356,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # Encodi\n@@ -12385,17 +12385,29 @@\n ng:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n num = va\n@@ -12414,17 +12414,29 @@\n lue%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n while nu\n@@ -12437,17 +12437,20 @@\n ile num \n-%3E\n+&gt;\n = 58:%3Cbr\n@@ -12455,31 +12455,79 @@\n br%3E%0A\n-%09%09mod = num %25 58%3Cbr%3E%0A%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;mod = num %25 58%3Cbr%3E%0A&nbsp; &nbsp;&nbsp; &nbsp;\n enco\n@@ -12560,18 +12560,42 @@\n ded%3Cbr%3E%0A\n-%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;\n num = (n\n@@ -12633,17 +12633,32 @@\n ode%3E\n-%09\n+&nbsp; &nbsp;\n if num \n-%3E\n+&gt;\n  0 :\n@@ -12666,10 +12666,34 @@\n br%3E%0A\n-%09%09\n+&nbsp; &nbsp;&nbsp; &nbsp;\n enco\n@@ -12745,25 +12745,37 @@\n p%3E%0A%3Cp%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n return encod\n@@ -13196,17 +13196,29 @@\n ():%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # 32 byt\n@@ -13246,25 +13246,37 @@\n stream:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n return os.ur\n@@ -13477,25 +13477,37 @@\n Bytes):%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Hexadecima\n@@ -13528,17 +13528,29 @@\n on:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n hexKey =\n@@ -13584,17 +13584,29 @@\n x')%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Hexade\n@@ -13633,17 +13633,29 @@\n se:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n return h\n@@ -13955,17 +13955,29 @@\n key%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # 2.- Ad\n@@ -14062,17 +14062,29 @@\n es.%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # Also a\n@@ -14168,33 +14168,45 @@\n public key:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKey = '%5C\n@@ -14246,17 +14246,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 3.- Pe\n@@ -14307,25 +14307,37 @@\n ed key:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKeyH\n@@ -14390,17 +14390,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 4.- Pe\n@@ -14457,25 +14457,37 @@\n 6 hash:%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKeyH\n@@ -14555,17 +14555,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 5.- Ta\n@@ -14650,17 +14650,29 @@\n sum%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n checksum\n@@ -14723,17 +14723,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 6.- Ad\n@@ -14824,25 +14824,37 @@\n point 2%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extendedKey \n@@ -14885,17 +14885,29 @@\n p%3E%3Ccode%3E\n-%09\n+&nbsp; &nbsp;\n # 7.- Co\n@@ -14995,17 +14995,29 @@\n ng.%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n # This i\n@@ -15047,17 +15047,29 @@\n mat%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n extended\n@@ -15116,17 +15116,29 @@\n 16)%3Cbr%3E%0A\n-%09\n+&nbsp; &nbsp;\n WIFKey =\n@@ -15198,9 +15198,21 @@\n ode%3E\n-%09\n+&nbsp; &nbsp;\n retu\n",
      "json_metadata": "{\"tags\":[\"bitcoin\",\"spanish\",\"blockchain\"],\"image\":[\"http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg\"],\"links\":[\"https://en.bitcoin.it/wiki/Wallet_import_format\",\"https://en.bitcoin.it/wiki/Base58Check_encoding\"],\"app\":\"steemit/0.1\",\"format\":\"html\"}",
      "parent_author": "",
      "parent_permlink": "bitcoin",
      "permlink": "claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores",
      "title": "Claves privadas de Bitcoin ¿Qué son en realidad? [Bitcoin para programadores]"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-06T17:11:39",
  "trx_id": "a0550fedac4734a00183fb31428174d361ae253b",
  "trx_in_block": 8,
  "virtual_op": 0
}
2017/09/05 23:27:48
authormayordomo
body### <center>Bienvenido/a a Steemit! El mayordomo de la comunidad Hispanohablante te saluda!!</center> No te olvides de poner el tag spanish en tus posts. Si tienes dudas acerca del funcionamiento te invito a que leas las Steemit FAQ: [Steemit FAQ #1](https://steemit.com/spanish/@lilttlejoel/steemit-faq-preguntas-mas-frecuentes-espanol-1) [Steemit FAQ #2](https://steemit.com/spanish/@lilttlejoel/steemit-faq-preguntas-mas-frecuentes-espanol-2) Hemos creado tambien un chat en discord donde interactuamos los unos con los otros y nos promocionamos. <center>Chat @cervantes en Discord !!!<br> Y no te pierdas los audioconferencias entre los miembros cervantiles y los canales de promocion por categorias</center> <center>https://discord.gg/pDDKJ92</center> Tambien estamos en Steemitchat https://steemit.chat/channel/HispanoHablantes <center>https://s23.postimg.org/ksah6diej/Dh_M3f_Ea.png</center> <center>CONCURSO CERVANTES: Regalamos un viaje al SteemFest2 al finalista<br> valorado en 2000 SBD!!!</center> <center>https://steemit.com/spanish/@cervantes/concurso-cervantes-4a-semana-paco-de-lucia</center> <center>https://s23.postimg.org/rldq9p6yj/DQme_Lkvkxo_Djpy_GSSf_Vu4_F7_Jx_Q5_XHWPwcoo_HGMqe_DDz_Ev_Rp.png</center> <center>https://s23.postimg.org/ksah6diej/Dh_M3f_Ea.png</center> <center>No te olvides de votar @cervantes como witness en esta pagina:</center> <center>[https://steemit.com/~witnesses](https://steemit.com/~witnesses)</center> ----- <center>Este bot de bienvenida fue creado por @moisesmcardona para el equipo @cervantes basado en el script original de @felixxx</center>
json metadata{"app": "pysteem/0.5.4"}
parent authorreshawn
parent permlinkclaves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores
permlinkre-claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores-20170905t232748
title
Transaction InfoBlock #15213300/Trx 0d679b025d9958a374f3644f15c306b4ea670558
View Raw JSON Data
{
  "block": 15213300,
  "op": [
    "comment",
    {
      "author": "mayordomo",
      "body": "### <center>Bienvenido/a a Steemit! El mayordomo de la comunidad Hispanohablante te saluda!!</center> \n\nNo te olvides de poner el tag spanish en tus posts.\n\nSi tienes dudas acerca del funcionamiento te invito a que leas las Steemit FAQ: \n[Steemit FAQ #1](https://steemit.com/spanish/@lilttlejoel/steemit-faq-preguntas-mas-frecuentes-espanol-1) \n[Steemit FAQ #2](https://steemit.com/spanish/@lilttlejoel/steemit-faq-preguntas-mas-frecuentes-espanol-2)  \n\nHemos creado tambien un chat en discord donde interactuamos los unos con los otros y nos promocionamos.  \n<center>Chat @cervantes en Discord !!!<br> Y no te pierdas los audioconferencias entre los miembros cervantiles y los canales de promocion por categorias</center>\n<center>https://discord.gg/pDDKJ92</center> \n\nTambien estamos en Steemitchat https://steemit.chat/channel/HispanoHablantes  \n\n<center>https://s23.postimg.org/ksah6diej/Dh_M3f_Ea.png</center>\n\n<center>CONCURSO CERVANTES: Regalamos un viaje al SteemFest2 al finalista<br> valorado en 2000 SBD!!!</center>\n<center>https://steemit.com/spanish/@cervantes/concurso-cervantes-4a-semana-paco-de-lucia</center>\n<center>https://s23.postimg.org/rldq9p6yj/DQme_Lkvkxo_Djpy_GSSf_Vu4_F7_Jx_Q5_XHWPwcoo_HGMqe_DDz_Ev_Rp.png</center>\n<center>https://s23.postimg.org/ksah6diej/Dh_M3f_Ea.png</center>\n<center>No te olvides de votar @cervantes como witness en esta pagina:</center>\n<center>[https://steemit.com/~witnesses](https://steemit.com/~witnesses)</center>\n\n-----\n<center>Este bot de bienvenida fue creado por @moisesmcardona para el equipo @cervantes basado en el script original de @felixxx</center>",
      "json_metadata": "{\"app\": \"pysteem/0.5.4\"}",
      "parent_author": "reshawn",
      "parent_permlink": "claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores",
      "permlink": "re-claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores-20170905t232748",
      "title": ""
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-05T23:27:48",
  "trx_id": "0d679b025d9958a374f3644f15c306b4ea670558",
  "trx_in_block": 12,
  "virtual_op": 0
}
2017/09/05 23:26:57
authorreshawn
body<html> <p><img src="http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg"/><br> </p> <h1><strong>¿Qué es una clave privada de Bitcoin?</strong></h1> <p><br> Muchos de nosotros hemos trasteado alguna vez con las llaves privadas de nuestras direcciones de Bitcoin, ya sea generando una billetera en papel ("Paper wallet") o almacenándolas en dispositivos lejos de una conexión a Internet ("Cold storage") pero, ¿Alguna vez te has preguntado cómo se generan ésas llaves privadas? ¿Qué contienen esas series de letras aparentemente sin sentido? La verdad es que no es nada del otro mundo. Una llave privada de Bitcoin es un número secreto que permite a un usuario gastar los Bitcoins correspondientes a su dirección, las claves privadas estan íntimamente ligadas a su dirección de Bitcoin correspondiente. Muchas personas tienden a confundir el término "billetera" (wallet) con software especializado o con las direcciones de Bitcoin (address), pero son cosas distintas. Mi definición personal de una billetera es la siguiente:</p> <blockquote><br> Una billetera es un archivo o dispositivo especial cuya función primordial es la de almacenar claves privadas.</blockquote> <p>Tan simple como eso.<br> Dicho archivo puede presentarse en distintos formatos, un simple archivo de texto plano que contenga llaves privadas de Bitcoin es en sí una billetera; hay billeteras encriptadas o con formatos especiales que sólo un software especializado puede leer (como electrum, JAX, Bitcoin core, Exodus, etc.).</p> <p><br> Ahora que tenemos claro que existe SOFTWARE(programas) que gestiona las LLAVES PRIVADAS almacenadas en una BILLETERA (archivo o hard wallet), procedamos a definir qué es en realidad una llave privada.</p> <p>Una llave privada de Bitcoin se presenta generalmente como un número de 256 bits (aunque algunas de las nuevas pueden presentarse entre 128 y 512) generado aleatoriamente por un software especializado , que puede ser representado de diferentes maneras (binario, decimal, hexadecimal, base58, etc), éste concepto se entenderá mejor con un ejemplo práctico.</p> <h2><strong>Generando una clave privada</strong></h2> <p>Para obtener una llave privada basta con generar un número aleatorio que quepa en 256 bits, es así de simple, no hay truco en ello.<br> La manera en la que se puede generar ése número depende tanto del programador como del lenguaje, pero algunas aproximaciones funcionales podrían ser las siguientes:<br> 1.- Generando el número completo aleatoriamente.<br> 2.- Generando 32 números aleatorios de 1 byte y almacenándolos en un arreglo, que en conjunto conformarán la clave privada<br> 3.- Usando alguno de los métodos anteriores, pero agregando además entropía de algún tipo (posición del mouse, latencia del disco duro, ruido en señales, etc). Éste método puede verse claramente en códigos que generan las paper wallets con javascript, por ejemplo.<br> 4.- Generando 64 números aleatorios de 4 bits (entre 0 y 15) cada uno con ayuda de 3 dados (Sí, dados comunes y corrientes)</p> <p><br> Tomemos como ejemplo el siguiente código en python (que puede traducirse fácilmente a otros lenguajes):</p> <p><code>def getPrivateKeyBytes():<br> # 32 bytes (256 bits) random stream:<br> return os.urandom(32);</code></p> <p>La función llamada getPrivateKeyBytes() devuelve una secuencia de 32 bytes cuyos valores se generan aleatoriamente mediante la función os.urandom(). Dicha secuencia de bytes puede ser representada de varias maneras. Por ejemplo, aquí te presento una llave privada representada de 3 maneras diferentes, siendo la tercera la más popular puesto que es la representación usada por la mayoría de los programas a la hora de exportar las llaves privadas:<br> Decimal: 100563969971778840833093929713430626829600307103210223668292258499064871955324<br> Hexadecimal: DE55309F9194816A32CDA083FCE44CB2B53E9B505F7B5338C6D101F6CF06AB7C<br> WIF (Wallet Import Format): 5KWCmqJwgwuHbSjYrH4cXqmGJFV8k73Lju4Y91GoevB6SDUF9W1<br> Las 3 representaciones corresponden a la misma llave privada, sólo que en distintos formatos. A fin de cuentas una llave privada no es otra cosa que un número enorme el cual es extremadamente difícil adivinar por casualidad.<br> </p> <h2><strong>Formato de claves privadas (Hexadecimal y WIIF)</strong></h2> <p><br> Volviendo al ejemplo anterior, una vez que tenemos un número, lo siguiente es obtener la representación requerida, las 2 más comunes son la Hexadecimal y la WIF.<br> Para obtener la representación hexadecimal, basta con crear una función que reciba nuestra secuencia de bytes y las transforme:<br> <code>def getHexPrivateKey(privateKeyBytes):<br> # Hexadecimal representation:<br> hexKey = privateKeyBytes.encode('hex')<br> # Hexadecimal key to uppercase:<br> return hexKey.upper()</code></p> <p><code><br> </code>La función recibe los bytes (<code>privateKeyBytes</code>) y los codifica en hexadecimal con la función encode(), el resultado es una cadena que contiene la representación hexadecimal de la clave privada en minúsculas (<code>hexKey</code>), por eso se usa la función upper() para transformar la cadena a mayúsculas. Éste último paso no es necesario y no afecta en lo absoluto el proceso futuro de la llave, pero las claves se ven mejor en mayúsculas.</p> <h2><br> ¿Y qué hay de las claves WIF?</h2> <p><br> Las claves en Wallet Import Format (WIF) se generan mediante el algoritmo descrito en:<br> <a href="https://en.bitcoin.it/wiki/Wallet_import_format">https://en.bitcoin.it/wiki/Wallet_import_format</a><br> Éste tipo de formato se caracteriza por tener un número 5 al principio y en éste caso sí importan las mayúsculas y las minúsculas por razones que quedarán más claras a continuación.<br> Para seguir los pasos del algoritmo hay que entender primero la codificación base58 para Bitcoin:<br> <a href="https://en.bitcoin.it/wiki/Base58Check_encoding">https://en.bitcoin.it/wiki/Base58Check_encoding</a><br> Para entender de qué se trata podemos tomar un ejemplo simple de codificación en hexadecimal:<br> Sabemos que el "alfabeto" del código hexadecimal es el siguiete: "0123456789ABCDEF"<br> En dicho código el valor más alto es el 15 (F) y después del número 9, los valores se representan con las letras en el rango A:F.<br> Por lo que los números decimales se representan como sigue:<br> Decimal Hexadecimal<br> 8 8<br> 9 9<br> 10 A<br> 11 B<br> 12 C<br> 13 D<br> Y así sucesivamente.<br> Bueno, con la codificación base58 ocurre exactamente lo mismo, sólo que el alfabeto consta de los siguientes valores:<br> '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br> Por lo que:<br> Decimal Hexadecimal Base58<br> 8 8 9<br> 9 9 A<br> 10 A B<br> 11 B C<br> 12 C D<br> 13 D E<br> Y así sucesivamente.<br> ¿Para qué sirve ésta codificación? Bueno, si eres un poco observador, ya habrás notado que el alfabeto de base58 no cotiente algunos elementos. Esto es por que la codificación base58 es usada principalmente para representar claves WIF y direcciones de Bitcoin, los únicos caracteres prohibidos son la letra 'O' mayúscula, el número '0', la letra mayúscula 'I' y la letra minúscula 'l' con el fin de evitar ambigüedad visual. Los dos primeros podrían confundirse entre sí y con la letra 'o' minúscula, mientras que los dos segundos podrían confundirse entre sí y con el número '1'.<br> <br> En python, una función que codifique en base58 podría ser la siguiente:</p> <p><code>def base58Encode(value):<br> # Base58 character range:<br> alphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br> # Contains the final result:<br> encoded = ''</code></p> <p><code> # Encoding:<br> num = value<br> while num &gt;= 58:<br> mod = num % 58<br> encoded = alphabet[mod] + encoded<br> num = (num - mod) / 58</code></p> <p><code> if num &gt; 0 :<br> encoded = alphabet[num] + encoded;</code></p> <p><code> return encoded;</code><br> </p> <p>Donde el parámetro value sería un número entero (una clave privada o una dirección de Bitcoin).</p> <p><br> Ahora que comprendes de que va más o menos la codificación base58, es momento de volver al algoritmo para generar claves WIF.</p> <p><code>def getWIFPrivateKey(privateKeyBytes): # 1.- Se toman los bytes de la llave privada (privateKeyBytes)<br> # 2.- Se agrega un byte 0x80 al principio para mainnet (la red principal) o 0xef para testnet (red de pruebas).<br> # Adicionalmente se puede agregar un byte 0x01 al principio si la llave privada corresponderá<br> # a una llave pública comprimida (por ejemplo, para las direcciones de Segwit):<br> extendedKey = '\x80'+privateKeyBytes</code></p> <p><code> # 3.- Se obtiene el hash resultante de aplicar SHA256 sobre la llave extendida:<br> extendedKeyHash = hashlib.sha256(extendedKey)</code></p> <p><code> # 4.- Se obtiene el hash resultante de aplicar SHA256 sobre el hash anterior:<br> extendedKeyHash = hashlib.sha256( extendedKeyHash.digest() )</code></p> <p><code> # 5.- Se toman los primeros 4 bytes (32 bits) del segundo hash SHA-256 éstos bytes son el checksum:<br> checksum = extendedKeyHash.digest()[:4]</code></p> <p><code> # 6.- Se añaden los 4 bytes del checksum al final de la clave extendida del paso 2:<br> extendedKey += checksum</code></p> <p><code> #7.- Se codifica el resultado en base58<br> # El resultado final es la clave WIF:<br> extendedKeyInt = int(extendedKey.encode('hex'), 16)<br> WIFKey = base58.base58Encode(extendedKeyInt)</code></p> <p><code> return WIFKey</code><br> </p> <p>En futuras publicaciones mostraré los algoritmos para generar la dirección de Bitcoin asociada a una clave privada. El método es más complejo, por ahora resumiré el código de ejemplo aquí:</p> <h3><strong>base58.py</strong></h3> <p><code># Coded by Reshawn Sullivan Sep-04-2017<br> # Base58 encoding, as described at:<br> # https://en.bitcoin.it/wiki/Base58Check_encoding<br> # @param value Value (integer) to be encoded<br> def base58Encode(value):<br> # Base58 character range:<br> alphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br> # Contains the final result:<br> encoded = ''</code></p> <p><code> # Encoding:<br> num = value<br> while num &gt;= 58:<br> mod = num % 58<br> encoded = alphabet[mod] + encoded<br> num = (num - mod) / 58</code></p> <p><code> if num &gt; 0 :<br> encoded = alphabet[num] + encoded;&nbsp;</code></p> <p><code> return encoded;</code></p> <h3><strong>BitcoinKeys.py</strong></h3> <p><code># Coded by Reshawn Sullivan Sep-04-2017<br> # Functions to generate random Bitcoin private keys</code></p> <p><code>import os<br> import hashlib<br> import base58</code></p> <p><code># Returns a randomly generated stream of 32 bytes (a 256 bits random number)<br> # that represents a 256 bits standard Bitcoin private key.<br> def getPrivateKeyBytes():<br> # 32 bytes (256 bits) random stream:<br> return os.urandom(32);</code></p> <p><code># Returns the hexadecimal representation of a Bitcoin private key.<br> # @param privateKeyBytes A 256 bits stream (private key)<br> def getHexPrivateKey(privateKeyBytes):<br> # Hexadecimal representation:<br> hexKey = privateKeyBytes.encode('hex')<br> # Hexadecimal key to uppercase:<br> return hexKey.upper()</code></p> <p><code># Gets the WIF (Wallet import format) of a Bitcoin private key,<br> # bassed on https://en.bitcoin.it/wiki/Wallet_import_format docu.<br> # @param privateKeyBytes A 256 bits stream (private key)<br> def getWIFPrivateKey(privateKeyBytes): # 1.- Take a private key<br> # 2.- Add a 0x80 byte in front of it for mainnet addresses or 0xef for testnet addresses.<br> # Also add a 0x01 byte at the end if the private key will correspond to a compressed public key:<br> extendedKey = '\x80'+privateKeyBytes</code></p> <p><code> # 3.- Perform SHA-256 hash on the extended key:<br> extendedKeyHash = hashlib.sha256(extendedKey)</code></p> <p><code> # 4.- Perform SHA-256 hash on result of SHA-256 hash:<br> extendedKeyHash = hashlib.sha256( extendedKeyHash.digest() )</code></p> <p><code> # 5.- Take the first 4 bytes of the second SHA-256 hash, this is the checksum<br> checksum = extendedKeyHash.digest()[:4]</code></p> <p><code> # 6.- Add the 4 checksum bytes from point 5 at the end of the extended key from point 2<br> extendedKey += checksum</code></p> <p><code> # 7.- Convert the result from a byte stream into a base58 string using Base58Check encoding.<br> # This is the Wallet Import Format<br> extendedKeyInt = int(extendedKey.encode('hex'), 16)<br> WIFKey = base58.base58Encode(extendedKeyInt)</code></p> <p><code> return WIFKey</code></p> <h3><strong>wallet.py</strong></h3> <p><code># Coded by Reshawn Sullivan Sep-04-2017<br> import BitcoinKeys</code></p> <p><code># 256 randomly generated bits stream (a Bitcoin private key):<br> privateKey = BitcoinKeys.getPrivateKeyBytes()</code></p> <p><code># Hexadecimal representation of a Bitcoin private key:<br> hexPrivateKey = BitcoinKeys.getHexPrivateKey(privateKey)</code></p> <p><code># WIF (Wallet import format) of a Bitcoin private key:<br> WIFPrivateKey = BitcoinKeys.getWIFPrivateKey(privateKey)</code></p> <p><code>#print private key:<br> print 'Private Key (hex): '+hexPrivateKey</code></p> <p><code>#print WIF:<br> print 'Private Key (WIF): '+WIFPrivateKey+'\n'</code></p> </html>
json metadata{"tags":["bitcoin","spanish","blockchain"],"image":["http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg"],"links":["https://en.bitcoin.it/wiki/Wallet_import_format","https://en.bitcoin.it/wiki/Base58Check_encoding"],"app":"steemit/0.1","format":"html"}
parent author
parent permlinkbitcoin
permlinkclaves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores
titleClaves privadas de Bitcoin ¿Qué son en realidad? [Bitcoin para programadores]
Transaction InfoBlock #15213283/Trx 4ba36a9fb78dc340379f855b53f089744114968c
View Raw JSON Data
{
  "block": 15213283,
  "op": [
    "comment",
    {
      "author": "reshawn",
      "body": "<html>\n<p><img src=\"http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg\"/><br>\n</p>\n<h1><strong>¿Qué es una clave privada de Bitcoin?</strong></h1>\n<p><br>\nMuchos de nosotros hemos trasteado alguna vez con las llaves privadas de nuestras direcciones de Bitcoin, ya sea generando una billetera en papel (\"Paper wallet\") o almacenándolas en dispositivos lejos de una conexión a Internet (\"Cold storage\") pero, ¿Alguna vez te has preguntado cómo se generan ésas llaves privadas? ¿Qué contienen esas series de letras aparentemente sin sentido? La verdad es que no es nada del otro mundo. Una llave privada de Bitcoin es un número secreto que permite a un usuario gastar los Bitcoins correspondientes a su dirección, las claves privadas estan íntimamente ligadas a su dirección de Bitcoin correspondiente. Muchas personas tienden a confundir el término \"billetera\" (wallet) con software especializado o con las direcciones de Bitcoin (address), pero son cosas distintas. Mi definición personal de una billetera es la siguiente:</p>\n<blockquote><br>\nUna billetera es un archivo o dispositivo especial cuya función primordial es la de almacenar claves privadas.</blockquote>\n<p>Tan simple como eso.<br>\nDicho archivo puede presentarse en distintos formatos, un simple archivo de texto plano que contenga llaves privadas de Bitcoin es en sí una billetera; hay billeteras encriptadas o con formatos especiales que sólo un software especializado puede leer (como electrum, JAX, Bitcoin core, Exodus, etc.).</p>\n<p><br>\nAhora que tenemos claro que existe SOFTWARE(programas) que gestiona las LLAVES PRIVADAS almacenadas en una BILLETERA (archivo o hard wallet), procedamos a definir qué es en realidad una llave privada.</p>\n<p>Una llave privada de Bitcoin se presenta generalmente como un número de 256 bits (aunque algunas de las nuevas pueden presentarse entre 128 y 512) generado aleatoriamente por un software especializado , que puede ser representado de diferentes maneras (binario, decimal, hexadecimal, base58, etc), éste concepto se entenderá mejor con un ejemplo práctico.</p>\n<h2><strong>Generando una clave privada</strong></h2>\n<p>Para obtener una llave privada basta con generar un número aleatorio que quepa en 256 bits, es así de simple, no hay truco en ello.<br>\nLa manera en la que se puede generar ése número depende tanto del programador como del lenguaje, pero algunas aproximaciones funcionales podrían ser las siguientes:<br>\n1.- Generando el número completo aleatoriamente.<br>\n2.- Generando 32 números aleatorios de 1 byte y almacenándolos en un arreglo, que en conjunto conformarán la clave privada<br>\n3.- Usando alguno de los métodos anteriores, pero agregando además entropía de algún tipo (posición del mouse, latencia del disco duro, ruido en señales, etc). Éste método puede verse claramente en códigos que generan las paper wallets con javascript, por ejemplo.<br>\n4.- Generando 64 números aleatorios de 4 bits (entre 0 y 15) cada uno con ayuda de 3 dados (Sí, dados comunes y corrientes)</p>\n<p><br>\nTomemos como ejemplo el siguiente código en python (que puede traducirse fácilmente a otros lenguajes):</p>\n<p><code>def getPrivateKeyBytes():<br>\n\t# 32 bytes (256 bits) random stream:<br>\n\treturn os.urandom(32);</code></p>\n<p>La función llamada getPrivateKeyBytes() devuelve una secuencia de 32 bytes cuyos valores se generan aleatoriamente mediante la función os.urandom(). Dicha secuencia de bytes puede ser representada de varias maneras. Por ejemplo, aquí te presento una llave privada representada de 3 maneras diferentes, siendo la tercera la más popular puesto que es la representación usada por la mayoría de los programas a la hora de exportar las llaves privadas:<br>\nDecimal: 100563969971778840833093929713430626829600307103210223668292258499064871955324<br>\nHexadecimal: DE55309F9194816A32CDA083FCE44CB2B53E9B505F7B5338C6D101F6CF06AB7C<br>\nWIF (Wallet Import Format): 5KWCmqJwgwuHbSjYrH4cXqmGJFV8k73Lju4Y91GoevB6SDUF9W1<br>\nLas 3 representaciones corresponden a la misma llave privada, sólo que en distintos formatos. A fin de cuentas una llave privada no es otra cosa que un número enorme el cual es extremadamente difícil adivinar por casualidad.<br>\n</p>\n<h2><strong>Formato de claves privadas (Hexadecimal y WIIF)</strong></h2>\n<p><br>\nVolviendo al ejemplo anterior, una vez que tenemos un número, lo siguiente es obtener la representación requerida, las 2 más comunes son la Hexadecimal y la WIF.<br>\nPara obtener la representación hexadecimal, basta con crear una función que reciba nuestra secuencia de bytes y las transforme:<br>\n<code>def getHexPrivateKey(privateKeyBytes):<br>\n\t# Hexadecimal representation:<br>\n\thexKey = privateKeyBytes.encode('hex')<br>\n\t# Hexadecimal key to uppercase:<br>\n\treturn hexKey.upper()</code></p>\n<p><code><br>\n</code>La función recibe los bytes (<code>privateKeyBytes</code>) y los codifica en hexadecimal con la función encode(), el resultado es una cadena que contiene la representación hexadecimal de la clave privada en minúsculas (<code>hexKey</code>), por eso se usa la función upper() para transformar la cadena a mayúsculas. Éste último paso no es necesario y no afecta en lo absoluto el proceso futuro de la llave, pero las claves se ven mejor en mayúsculas.</p>\n<h2><br>\n¿Y qué hay de las claves WIF?</h2>\n<p><br>\nLas claves en Wallet Import Format (WIF) se generan mediante el algoritmo descrito en:<br>\n<a href=\"https://en.bitcoin.it/wiki/Wallet_import_format\">https://en.bitcoin.it/wiki/Wallet_import_format</a><br>\nÉste tipo de formato se caracteriza por tener un número 5 al principio y en éste caso sí importan las mayúsculas y las minúsculas por razones que quedarán más claras a continuación.<br>\nPara seguir los pasos del algoritmo hay que entender primero la codificación base58 para Bitcoin:<br>\n<a href=\"https://en.bitcoin.it/wiki/Base58Check_encoding\">https://en.bitcoin.it/wiki/Base58Check_encoding</a><br>\nPara entender de qué se trata podemos tomar un ejemplo simple de codificación en hexadecimal:<br>\nSabemos que el \"alfabeto\" del código hexadecimal es el siguiete: \"0123456789ABCDEF\"<br>\nEn dicho código el valor más alto es el 15 (F) y después del número 9, los valores se representan con las letras en el rango A:F.<br>\nPor lo que los números decimales se representan como sigue:<br>\nDecimal Hexadecimal<br>\n8 \t8<br>\n9 \t9<br>\n10 \tA<br>\n11 \tB<br>\n12 \tC<br>\n13 \tD<br>\nY así sucesivamente.<br>\nBueno, con la codificación base58 ocurre exactamente lo mismo, sólo que el alfabeto consta de los siguientes valores:<br>\n'123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br>\nPor lo que:<br>\nDecimal\tHexadecimal\tBase58<br>\n8 \t\t8\t\t\t 9<br>\n9 \t\t9 \t\t\tA<br>\n10 \t\tA \t\t\tB<br>\n11 \t\tB \t\t\tC<br>\n12 \t\tC \t\t\tD<br>\n13 \t\tD \t\t\tE<br>\nY así sucesivamente.<br>\n¿Para qué sirve ésta codificación? Bueno, si eres un poco observador, ya habrás notado que el alfabeto de base58 no cotiente algunos elementos. Esto es por que la codificación base58 es usada principalmente para representar claves WIF y direcciones de Bitcoin, los únicos caracteres prohibidos son la letra 'O' mayúscula, el número '0', la letra mayúscula 'I' y la letra minúscula 'l' con el fin de evitar ambigüedad visual. Los dos primeros podrían confundirse entre sí y con la letra 'o' minúscula, mientras que los dos segundos podrían confundirse entre sí y con el número '1'.<br>\n<br>\nEn python, una función que codifique en base58 podría ser la siguiente:</p>\n<p><code>def base58Encode(value):<br>\n\t# Base58 character range:<br>\n\talphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br>\n\t# Contains the final result:<br>\n\tencoded = ''</code></p>\n<p><code>\t# Encoding:<br>\n\tnum = value<br>\n\twhile num &gt;= 58:<br>\n\t\tmod = num % 58<br>\n\t\tencoded = alphabet[mod] + encoded<br>\n\t\tnum = (num - mod) / 58</code></p>\n<p><code>\tif num &gt; 0 :<br>\n\t\tencoded = alphabet[num] + encoded;</code></p>\n<p><code>\treturn encoded;</code><br>\n</p>\n<p>Donde el parámetro value sería un número entero (una clave privada o una dirección de Bitcoin).</p>\n<p><br>\nAhora que comprendes de que va más o menos la codificación base58, es momento de volver al algoritmo para generar claves WIF.</p>\n<p><code>def getWIFPrivateKey(privateKeyBytes): # 1.- Se toman los bytes de la llave privada (privateKeyBytes)<br>\n\t# 2.- Se agrega un byte 0x80 al principio para mainnet (la red principal) o 0xef para testnet (red de pruebas).<br>\n\t# Adicionalmente se puede agregar un byte 0x01 al principio si la llave privada corresponderá<br>\n\t# a una llave pública comprimida (por ejemplo, para las direcciones de Segwit):<br>\n\textendedKey = '\\x80'+privateKeyBytes</code></p>\n<p><code>\t# 3.- Se obtiene el hash resultante de aplicar SHA256 sobre la llave extendida:<br>\n\textendedKeyHash = hashlib.sha256(extendedKey)</code></p>\n<p><code>\t# 4.- Se obtiene el hash resultante de aplicar SHA256 sobre el hash anterior:<br>\n\textendedKeyHash = hashlib.sha256( extendedKeyHash.digest() )</code></p>\n<p><code>\t# 5.- Se toman los primeros 4 bytes (32 bits) del segundo hash SHA-256 éstos bytes son el checksum:<br>\n\tchecksum = extendedKeyHash.digest()[:4]</code></p>\n<p><code>\t# 6.- Se añaden los 4 bytes del checksum al final de la clave extendida del paso 2:<br>\n\textendedKey += checksum</code></p>\n<p><code>\t#7.- Se codifica el resultado en base58<br>\n\t# El resultado final es la clave WIF:<br>\n\textendedKeyInt = int(extendedKey.encode('hex'), 16)<br>\n\tWIFKey = base58.base58Encode(extendedKeyInt)</code></p>\n<p><code>\treturn WIFKey</code><br>\n</p>\n<p>En futuras publicaciones mostraré los algoritmos para generar la dirección de Bitcoin asociada a una clave privada. El método es más complejo, por ahora resumiré el código de ejemplo aquí:</p>\n<h3><strong>base58.py</strong></h3>\n<p><code># Coded by Reshawn Sullivan Sep-04-2017<br>\n# Base58 encoding, as described at:<br>\n# https://en.bitcoin.it/wiki/Base58Check_encoding<br>\n# @param value Value (integer) to be encoded<br>\ndef base58Encode(value):<br>\n\t# Base58 character range:<br>\n\talphabet = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'<br>\n\t# Contains the final result:<br>\n\tencoded = ''</code></p>\n<p><code>\t# Encoding:<br>\n\tnum = value<br>\n\twhile num &gt;= 58:<br>\n\t\tmod = num % 58<br>\n\t\tencoded = alphabet[mod] + encoded<br>\n\t\tnum = (num - mod) / 58</code></p>\n<p><code>\tif num &gt; 0 :<br>\n\t\tencoded = alphabet[num] + encoded;&nbsp;</code></p>\n<p><code>\treturn encoded;</code></p>\n<h3><strong>BitcoinKeys.py</strong></h3>\n<p><code># Coded by Reshawn Sullivan Sep-04-2017<br>\n# Functions to generate random Bitcoin private keys</code></p>\n<p><code>import os<br>\nimport hashlib<br>\nimport base58</code></p>\n<p><code># Returns a randomly generated stream of 32 bytes (a 256 bits random number)<br>\n# that represents a 256 bits standard Bitcoin private key.<br>\ndef getPrivateKeyBytes():<br>\n\t# 32 bytes (256 bits) random stream:<br>\n\treturn os.urandom(32);</code></p>\n<p><code># Returns the hexadecimal representation of a Bitcoin private key.<br>\n# @param privateKeyBytes A 256 bits stream (private key)<br>\ndef getHexPrivateKey(privateKeyBytes):<br>\n\t# Hexadecimal representation:<br>\n\thexKey = privateKeyBytes.encode('hex')<br>\n\t# Hexadecimal key to uppercase:<br>\n\treturn hexKey.upper()</code></p>\n<p><code># Gets the WIF (Wallet import format) of a Bitcoin private key,<br>\n# bassed on https://en.bitcoin.it/wiki/Wallet_import_format docu.<br>\n# @param privateKeyBytes A 256 bits stream (private key)<br>\ndef getWIFPrivateKey(privateKeyBytes): # 1.- Take a private key<br>\n\t# 2.- Add a 0x80 byte in front of it for mainnet addresses or 0xef for testnet addresses.<br>\n\t# Also add a 0x01 byte at the end if the private key will correspond to a compressed public key:<br>\n\textendedKey = '\\x80'+privateKeyBytes</code></p>\n<p><code>\t# 3.- Perform SHA-256 hash on the extended key:<br>\n\textendedKeyHash = hashlib.sha256(extendedKey)</code></p>\n<p><code>\t# 4.- Perform SHA-256 hash on result of SHA-256 hash:<br>\n\textendedKeyHash = hashlib.sha256( extendedKeyHash.digest() )</code></p>\n<p><code>\t# 5.- Take the first 4 bytes of the second SHA-256 hash, this is the checksum<br>\n\tchecksum = extendedKeyHash.digest()[:4]</code></p>\n<p><code>\t# 6.- Add the 4 checksum bytes from point 5 at the end of the extended key from point 2<br>\n\textendedKey += checksum</code></p>\n<p><code>\t# 7.- Convert the result from a byte stream into a base58 string using Base58Check encoding.<br>\n\t# This is the Wallet Import Format<br>\n\textendedKeyInt = int(extendedKey.encode('hex'), 16)<br>\n\tWIFKey = base58.base58Encode(extendedKeyInt)</code></p>\n<p><code>\treturn WIFKey</code></p>\n<h3><strong>wallet.py</strong></h3>\n<p><code># Coded by Reshawn Sullivan Sep-04-2017<br>\nimport BitcoinKeys</code></p>\n<p><code># 256 randomly generated bits stream (a Bitcoin private key):<br>\nprivateKey = BitcoinKeys.getPrivateKeyBytes()</code></p>\n<p><code># Hexadecimal representation of a Bitcoin private key:<br>\nhexPrivateKey = BitcoinKeys.getHexPrivateKey(privateKey)</code></p>\n<p><code># WIF (Wallet import format) of a Bitcoin private key:<br>\nWIFPrivateKey = BitcoinKeys.getWIFPrivateKey(privateKey)</code></p>\n<p><code>#print private key:<br>\nprint 'Private Key (hex): '+hexPrivateKey</code></p>\n<p><code>#print WIF:<br>\nprint 'Private Key (WIF): '+WIFPrivateKey+'\\n'</code></p>\n</html>",
      "json_metadata": "{\"tags\":[\"bitcoin\",\"spanish\",\"blockchain\"],\"image\":[\"http://www.vertistecnologia.com/wp-content/uploads/2015/12/FSPLFPQBCZ_1300.jpg\"],\"links\":[\"https://en.bitcoin.it/wiki/Wallet_import_format\",\"https://en.bitcoin.it/wiki/Base58Check_encoding\"],\"app\":\"steemit/0.1\",\"format\":\"html\"}",
      "parent_author": "",
      "parent_permlink": "bitcoin",
      "permlink": "claves-privadas-de-bitcoin-que-son-en-realidad-bitcoin-para-programadores",
      "title": "Claves privadas de Bitcoin ¿Qué son en realidad? [Bitcoin para programadores]"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-05T23:26:57",
  "trx_id": "4ba36a9fb78dc340379f855b53f089744114968c",
  "trx_in_block": 11,
  "virtual_op": 0
}
reshawnupdated their account properties
2017/09/05 19:57:57
accountreshawn
json metadata{"profile":{"name":"Reshawn Sullivan","profile_image":"https://pbs.twimg.com/profile_images/796967591675719680/LX8NsGyY_400x400.jpg","cover_image":"https://pbs.twimg.com/profile_banners/796963341616824320/1478847421/1500x500","website":"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"}}
memo keySTM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
Transaction InfoBlock #15209103/Trx 9b4a3f734fdc325b358ce85a637cd3bd2196e635
View Raw JSON Data
{
  "block": 15209103,
  "op": [
    "account_update",
    {
      "account": "reshawn",
      "json_metadata": "{\"profile\":{\"name\":\"Reshawn Sullivan\",\"profile_image\":\"https://pbs.twimg.com/profile_images/796967591675719680/LX8NsGyY_400x400.jpg\",\"cover_image\":\"https://pbs.twimg.com/profile_banners/796963341616824320/1478847421/1500x500\",\"website\":\"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA\"}}",
      "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-05T19:57:57",
  "trx_id": "9b4a3f734fdc325b358ce85a637cd3bd2196e635",
  "trx_in_block": 20,
  "virtual_op": 0
}
reshawnupdated their account properties
2017/09/05 19:51:54
accountreshawn
json metadata{"profile":{"name":"Reshawn Sullivan"}}
memo keySTM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
Transaction InfoBlock #15208982/Trx f9bcbc74a9cc55ac87fd92918dc8a576218afef4
View Raw JSON Data
{
  "block": 15208982,
  "op": [
    "account_update",
    {
      "account": "reshawn",
      "json_metadata": "{\"profile\":{\"name\":\"Reshawn Sullivan\"}}",
      "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU"
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-05T19:51:54",
  "trx_id": "f9bcbc74a9cc55ac87fd92918dc8a576218afef4",
  "trx_in_block": 15,
  "virtual_op": 0
}
steemcreated a new account: @reshawn
2017/09/05 18:57:12
active{"account_auths":[],"key_auths":[["STM6dZUY96MPdCKUupuWTtYuAMqE1sKFokv2D4LBPsHFpETikRLSD",1]],"weight_threshold":1}
creatorsteem
delegation57000.000000 VESTS
extensions[]
fee0.500 STEEM
json metadata
memo keySTM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
new account namereshawn
owner{"account_auths":[],"key_auths":[["STM6tGVdvgogpAPEZexLNpuN4CZ9hrqX5QL6UDfT5sKoVBn4bgJ9L",1]],"weight_threshold":1}
posting{"account_auths":[],"key_auths":[["STM5h9TwysJL7DLVQaP1nhXpwSTQEquKuRcosMmoMbAt6gwgvdrTo",1]],"weight_threshold":1}
Transaction InfoBlock #15207888/Trx 1788e5f94e9348824691758e888742e1e62fc216
View Raw JSON Data
{
  "block": 15207888,
  "op": [
    "account_create_with_delegation",
    {
      "active": {
        "account_auths": [],
        "key_auths": [
          [
            "STM6dZUY96MPdCKUupuWTtYuAMqE1sKFokv2D4LBPsHFpETikRLSD",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "creator": "steem",
      "delegation": "57000.000000 VESTS",
      "extensions": [],
      "fee": "0.500 STEEM",
      "json_metadata": "",
      "memo_key": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU",
      "new_account_name": "reshawn",
      "owner": {
        "account_auths": [],
        "key_auths": [
          [
            "STM6tGVdvgogpAPEZexLNpuN4CZ9hrqX5QL6UDfT5sKoVBn4bgJ9L",
            1
          ]
        ],
        "weight_threshold": 1
      },
      "posting": {
        "account_auths": [],
        "key_auths": [
          [
            "STM5h9TwysJL7DLVQaP1nhXpwSTQEquKuRcosMmoMbAt6gwgvdrTo",
            1
          ]
        ],
        "weight_threshold": 1
      }
    }
  ],
  "op_in_trx": 0,
  "timestamp": "2017-09-05T18:57:12",
  "trx_id": "1788e5f94e9348824691758e888742e1e62fc216",
  "trx_in_block": 4,
  "virtual_op": 0
}

Account Metadata

POSTING JSON METADATA
profile{"name":"inZane","profile_image":"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg","cover_image":"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500","website":"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"}
JSON METADATA
profile{"name":"inZane","profile_image":"https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg","cover_image":"https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500","website":"https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"}
{
  "posting_json_metadata": {
    "profile": {
      "name": "inZane",
      "profile_image": "https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg",
      "cover_image": "https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500",
      "website": "https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"
    }
  },
  "json_metadata": {
    "profile": {
      "name": "inZane",
      "profile_image": "https://pbs.twimg.com/profile_images/905662588071034882/IIbeS2AG_400x400.jpg",
      "cover_image": "https://pbs.twimg.com/profile_banners/796963341616824320/1504937335/1500x500",
      "website": "https://www.youtube.com/channel/UCgjgpmVAq_nGtUKOhoa6csA"
    }
  }
}

Auth Keys

Owner
Single Signature
Public Keys
STM6tGVdvgogpAPEZexLNpuN4CZ9hrqX5QL6UDfT5sKoVBn4bgJ9L1/1
Active
Single Signature
Public Keys
STM6dZUY96MPdCKUupuWTtYuAMqE1sKFokv2D4LBPsHFpETikRLSD1/1
Posting
Single Signature
Public Keys
STM5h9TwysJL7DLVQaP1nhXpwSTQEquKuRcosMmoMbAt6gwgvdrTo1/1
Memo
STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU
{
  "owner": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6tGVdvgogpAPEZexLNpuN4CZ9hrqX5QL6UDfT5sKoVBn4bgJ9L",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "active": {
    "account_auths": [],
    "key_auths": [
      [
        "STM6dZUY96MPdCKUupuWTtYuAMqE1sKFokv2D4LBPsHFpETikRLSD",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "posting": {
    "account_auths": [],
    "key_auths": [
      [
        "STM5h9TwysJL7DLVQaP1nhXpwSTQEquKuRcosMmoMbAt6gwgvdrTo",
        1
      ]
    ],
    "weight_threshold": 1
  },
  "memo": "STM6KueUTzWQErB3394esFsRV19Xn1YpExttconb3L9FhNavhDeUU"
}

Witness Votes

0 / 30
No active witness votes.
[]