VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS0.00%
Net Worth
0.053USD
STEEM
0.000STEEM
SBD
0.034SBD
Effective Power
5.001SP
├── Own SP
0.664SP
└── Incoming DelegationsDeleg
+4.337SP
Detailed Balance
| STEEM | ||
| balance | 0.000STEEM | STEEM |
| market_balance | 0.000STEEM | STEEM |
| savings_balance | 0.000STEEM | STEEM |
| reward_steem_balance | 0.000STEEM | STEEM |
| STEEM POWER | ||
| Own SP | 0.664SP | SP |
| Delegated Out | 0.000SP | SP |
| Delegation In | 4.337SP | SP |
| Effective Power | 5.001SP | SP |
| Reward SP (pending) | 0.000SP | SP |
| SBD | ||
| sbd_balance | 0.034SBD | SBD |
| sbd_conversions | 0.000SBD | SBD |
| sbd_market_balance | 0.000SBD | SBD |
| savings_sbd_balance | 0.000SBD | SBD |
| reward_sbd_balance | 0.000SBD | SBD |
{
"balance": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"reward_steem_balance": "0.000 STEEM",
"vesting_shares": "1081.964897 VESTS",
"delegated_vesting_shares": "0.000000 VESTS",
"received_vesting_shares": "7061.694909 VESTS",
"sbd_balance": "0.034 SBD",
"savings_sbd_balance": "0.000 SBD",
"reward_sbd_balance": "0.000 SBD",
"conversions": []
}Account Info
| name | wisefree |
| id | 236898 |
| rank | 854,052 |
| reputation | 297391726 |
| created | 2017-07-01T06:37:36 |
| recovery_account | steem |
| proxy | None |
| post_count | 6 |
| comment_count | 0 |
| lifetime_vote_count | 0 |
| witnesses_voted_for | 0 |
| last_post | 2017-08-15T05:33:03 |
| last_root_post | 2017-08-15T05:33:03 |
| last_vote_time | 2017-08-15T05:33:03 |
| proxied_vsf_votes | 0, 0, 0, 0 |
| can_vote | 1 |
| voting_power | 0 |
| delayed_votes | 0 |
| balance | 0.000 STEEM |
| savings_balance | 0.000 STEEM |
| sbd_balance | 0.034 SBD |
| savings_sbd_balance | 0.000 SBD |
| vesting_shares | 1081.964897 VESTS |
| delegated_vesting_shares | 0.000000 VESTS |
| received_vesting_shares | 7061.694909 VESTS |
| reward_vesting_balance | 0.000000 VESTS |
| vesting_balance | 0.000 STEEM |
| vesting_withdraw_rate | 0.000000 VESTS |
| next_vesting_withdrawal | 1969-12-31T23:59:59 |
| withdrawn | 0 |
| to_withdraw | 0 |
| withdraw_routes | 0 |
| savings_withdraw_requests | 0 |
| last_account_recovery | 1970-01-01T00:00:00 |
| reset_account | null |
| last_owner_update | 1970-01-01T00:00:00 |
| last_account_update | 2017-07-25T23:24:09 |
| mined | No |
| sbd_seconds | 0 |
| sbd_last_interest_payment | 1970-01-01T00:00:00 |
| savings_sbd_last_interest_payment | 1970-01-01T00:00:00 |
{
"id": 236898,
"name": "wisefree",
"owner": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM61tn6M1DMx8S7cAHshVKGVYsDqAK13zzppTCNSe6u6ED8xsdJx",
1
]
]
},
"active": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5uDFGXmVjrgHpZrSF7LtRV4QReVa2Nj5EJLQ8VNjH3H4NnxvMa",
1
]
]
},
"posting": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM83q134Ye6WRUFqQKNQU8W36WfWxtaBsYPNr3AEBRJxcC5LEeDK",
1
]
]
},
"memo_key": "STM5zvM9atPSXm5Bt2nomuWEUrr1H1ZUGxP77erTY7vLpL8AXTrUy",
"json_metadata": "{\"profile\":{\"profile_image\":\"http://cfile8.uf.tistory.com/image/2254713F566438800CCD08\",\"name\":\"Wisefree\",\"location\":\"South Korea\",\"website\":\"http://wisefree.tisotry.com\",\"about\":\"Jay JH Park\"}}",
"posting_json_metadata": "{\"profile\":{\"profile_image\":\"http://cfile8.uf.tistory.com/image/2254713F566438800CCD08\",\"name\":\"Wisefree\",\"location\":\"South Korea\",\"website\":\"http://wisefree.tisotry.com\",\"about\":\"Jay JH Park\"}}",
"proxy": "",
"last_owner_update": "1970-01-01T00:00:00",
"last_account_update": "2017-07-25T23:24:09",
"created": "2017-07-01T06:37:36",
"mined": false,
"recovery_account": "steem",
"last_account_recovery": "1970-01-01T00:00:00",
"reset_account": "null",
"comment_count": 0,
"lifetime_vote_count": 0,
"post_count": 6,
"can_vote": true,
"voting_manabar": {
"current_mana": "8143659806",
"last_update_time": 1779092118
},
"downvote_manabar": {
"current_mana": 2035914951,
"last_update_time": 1779092118
},
"voting_power": 0,
"balance": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"sbd_balance": "0.034 SBD",
"sbd_seconds": "0",
"sbd_seconds_last_update": "2017-07-25T23:25:15",
"sbd_last_interest_payment": "1970-01-01T00:00:00",
"savings_sbd_balance": "0.000 SBD",
"savings_sbd_seconds": "0",
"savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
"savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
"savings_withdraw_requests": 0,
"reward_sbd_balance": "0.000 SBD",
"reward_steem_balance": "0.000 STEEM",
"reward_vesting_balance": "0.000000 VESTS",
"reward_vesting_steem": "0.000 STEEM",
"vesting_shares": "1081.964897 VESTS",
"delegated_vesting_shares": "0.000000 VESTS",
"received_vesting_shares": "7061.694909 VESTS",
"vesting_withdraw_rate": "0.000000 VESTS",
"next_vesting_withdrawal": "1969-12-31T23:59:59",
"withdrawn": 0,
"to_withdraw": 0,
"withdraw_routes": 0,
"curation_rewards": 0,
"posting_rewards": 45,
"proxied_vsf_votes": [
0,
0,
0,
0
],
"witnesses_voted_for": 0,
"last_post": "2017-08-15T05:33:03",
"last_root_post": "2017-08-15T05:33:03",
"last_vote_time": "2017-08-15T05:33:03",
"post_bandwidth": 0,
"pending_claimed_accounts": 0,
"vesting_balance": "0.000 STEEM",
"reputation": 297391726,
"transfer_history": [],
"market_history": [],
"post_history": [],
"vote_history": [],
"other_history": [],
"witness_votes": [],
"tags_usage": [],
"guest_bloggers": [],
"rank": 854052
}Withdraw Routes
| Incoming | Outgoing |
|---|---|
Empty | Empty |
{
"incoming": [],
"outgoing": []
}From Date
To Date
2026/05/18 08:15:18
2026/05/18 08:15:18
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 7061.694909 VESTS |
| Transaction Info | Block #106153011/Trx 0394f15a8ca2e966e7301bf72212780639c6d21c |
View Raw JSON Data
{
"trx_id": "0394f15a8ca2e966e7301bf72212780639c6d21c",
"block": 106153011,
"trx_in_block": 0,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2026-05-18T08:15:18",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "7061.694909 VESTS"
}
]
}2026/05/13 12:20:27
2026/05/13 12:20:27
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 4349.484504 VESTS |
| Transaction Info | Block #106014622/Trx bdc954cc3dbc3626d804675868f26c6c11744e45 |
View Raw JSON Data
{
"trx_id": "bdc954cc3dbc3626d804675868f26c6c11744e45",
"block": 106014622,
"trx_in_block": 0,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2026-05-13T12:20:27",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "4349.484504 VESTS"
}
]
}2026/04/26 07:24:21
2026/04/26 07:24:21
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 7074.210665 VESTS |
| Transaction Info | Block #105520442/Trx ccd12e6549c4b8a1b89bceffdc6d4465246c53b6 |
View Raw JSON Data
{
"trx_id": "ccd12e6549c4b8a1b89bceffdc6d4465246c53b6",
"block": 105520442,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2026-04-26T07:24:21",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "7074.210665 VESTS"
}
]
}2026/01/24 05:18:57
2026/01/24 05:18:57
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 4391.031323 VESTS |
| Transaction Info | Block #102877573/Trx c9393c3f1dcdeefda803b43d4c03db0571adf90e |
View Raw JSON Data
{
"trx_id": "c9393c3f1dcdeefda803b43d4c03db0571adf90e",
"block": 102877573,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2026-01-24T05:18:57",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "4391.031323 VESTS"
}
]
}2024/12/18 00:27:51
2024/12/18 00:27:51
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 4555.250520 VESTS |
| Transaction Info | Block #91323770/Trx 24f36f9769e07df42ad3f8f68e6ab2e031e2ad00 |
View Raw JSON Data
{
"trx_id": "24f36f9769e07df42ad3f8f68e6ab2e031e2ad00",
"block": 91323770,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2024-12-18T00:27:51",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "4555.250520 VESTS"
}
]
}2023/11/14 16:06:45
2023/11/14 16:06:45
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 4724.384052 VESTS |
| Transaction Info | Block #79877863/Trx 507680eafecddba74eccd28d5e01c3aa416b6374 |
View Raw JSON Data
{
"trx_id": "507680eafecddba74eccd28d5e01c3aa416b6374",
"block": 79877863,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2023-11-14T16:06:45",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "4724.384052 VESTS"
}
]
}2023/09/22 12:43:06
2023/09/22 12:43:06
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 7661.292838 VESTS |
| Transaction Info | Block #78365649/Trx 6e22a2cc3a54c71eddecf1cd6fa235b037dd4881 |
View Raw JSON Data
{
"trx_id": "6e22a2cc3a54c71eddecf1cd6fa235b037dd4881",
"block": 78365649,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2023-09-22T12:43:06",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "7661.292838 VESTS"
}
]
}2022/11/03 19:53:18
2022/11/03 19:53:18
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 7883.344276 VESTS |
| Transaction Info | Block #69123039/Trx 797a06e920ac883723b5c8b744cab3696bcdf63f |
View Raw JSON Data
{
"trx_id": "797a06e920ac883723b5c8b744cab3696bcdf63f",
"block": 69123039,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2022-11-03T19:53:18",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "7883.344276 VESTS"
}
]
}2022/01/18 00:53:42
2022/01/18 00:53:42
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8103.451877 VESTS |
| Transaction Info | Block #60826057/Trx 65b92f392b941c3fc4fc7e9cc2daa3f00aa8db4e |
View Raw JSON Data
{
"trx_id": "65b92f392b941c3fc4fc7e9cc2daa3f00aa8db4e",
"block": 60826057,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2022-01-18T00:53:42",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8103.451877 VESTS"
}
]
}2021/06/14 07:59:42
2021/06/14 07:59:42
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8287.646165 VESTS |
| Transaction Info | Block #54616276/Trx 42af595c90769d2ddb689aed0beb497871192746 |
View Raw JSON Data
{
"trx_id": "42af595c90769d2ddb689aed0beb497871192746",
"block": 54616276,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2021-06-14T07:59:42",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8287.646165 VESTS"
}
]
}2020/12/11 18:10:03
2020/12/11 18:10:03
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8475.068139 VESTS |
| Transaction Info | Block #49363476/Trx 6c37c455784d8b084734ce70e84ed8aaf7fafa94 |
View Raw JSON Data
{
"trx_id": "6c37c455784d8b084734ce70e84ed8aaf7fafa94",
"block": 49363476,
"trx_in_block": 6,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-12-11T18:10:03",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8475.068139 VESTS"
}
]
}2020/12/06 11:45:03
2020/12/06 11:45:03
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 1912.543513 VESTS |
| Transaction Info | Block #49214988/Trx 0cb31a86bc5b096530f3a52699d6d9141461a573 |
View Raw JSON Data
{
"trx_id": "0cb31a86bc5b096530f3a52699d6d9141461a573",
"block": 49214988,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-12-06T11:45:03",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "1912.543513 VESTS"
}
]
}2020/12/05 21:47:51
2020/12/05 21:47:51
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8481.275993 VESTS |
| Transaction Info | Block #49198559/Trx bbae91457101395ca6cb84702f07d7f308c2e8cf |
View Raw JSON Data
{
"trx_id": "bbae91457101395ca6cb84702f07d7f308c2e8cf",
"block": 49198559,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-12-05T21:47:51",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8481.275993 VESTS"
}
]
}2020/11/03 06:14:45
2020/11/03 06:14:45
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 1920.017158 VESTS |
| Transaction Info | Block #48274999/Trx cc1538f8fe88bec2d664080e2eab40388e8009a0 |
View Raw JSON Data
{
"trx_id": "cc1538f8fe88bec2d664080e2eab40388e8009a0",
"block": 48274999,
"trx_in_block": 0,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-11-03T06:14:45",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "1920.017158 VESTS"
}
]
}2020/05/09 12:50:03
2020/05/09 12:50:03
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8684.081352 VESTS |
| Transaction Info | Block #43225348/Trx a2b18ab70e12948c8b7deb941570d5dfa16b2b04 |
View Raw JSON Data
{
"trx_id": "a2b18ab70e12948c8b7deb941570d5dfa16b2b04",
"block": 43225348,
"trx_in_block": 9,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-05-09T12:50:03",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8684.081352 VESTS"
}
]
}2020/05/08 17:30:12
2020/05/08 17:30:12
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 1953.311140 VESTS |
| Transaction Info | Block #43202693/Trx dd4a277ab36e7045fc19f079ad2d3978bc95c61a |
View Raw JSON Data
{
"trx_id": "dd4a277ab36e7045fc19f079ad2d3978bc95c61a",
"block": 43202693,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-05-08T17:30:12",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "1953.311140 VESTS"
}
]
}2019/07/01 10:43:45
2019/07/01 10:43:45
| parent author | wisefree |
| parent permlink | 3 |
| author | steemitboard |
| permlink | steemitboard-notify-wisefree-20190701t104345000z |
| title | |
| body | Congratulations @wisefree! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@wisefree/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/@wisefree) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=wisefree)_</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"]} |
| Transaction Info | Block #34278812/Trx 73153a11c801e08eaf575753b5e1c801440521cb |
View Raw JSON Data
{
"trx_id": "73153a11c801e08eaf575753b5e1c801440521cb",
"block": 34278812,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2019-07-01T10:43:45",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "3",
"author": "steemitboard",
"permlink": "steemitboard-notify-wisefree-20190701t104345000z",
"title": "",
"body": "Congratulations @wisefree! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@wisefree/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/@wisefree) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=wisefree)_</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\"]}"
}
]
}2019/06/19 02:32:30
2019/06/19 02:32:30
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 8870.907977 VESTS |
| Transaction Info | Block #33923765/Trx 2fa3dae8be6cee401f660c7f92f62fdcb348489e |
View Raw JSON Data
{
"trx_id": "2fa3dae8be6cee401f660c7f92f62fdcb348489e",
"block": 33923765,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2019-06-19T02:32:30",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "8870.907977 VESTS"
}
]
}2018/07/03 12:30:57
2018/07/03 12:30:57
| voter | greedycat |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #23852137/Trx 80e3dc6dacf9c85162fbb2d2393bf289ba32d3e2 |
View Raw JSON Data
{
"trx_id": "80e3dc6dacf9c85162fbb2d2393bf289ba32d3e2",
"block": 23852137,
"trx_in_block": 54,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-07-03T12:30:57",
"op": [
"vote",
{
"voter": "greedycat",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/06/27 10:48:54
2018/06/27 10:48:54
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 9070.104147 VESTS |
| Transaction Info | Block #23686850/Trx 90dd96e17a0498c97c06f68b29952c19958c3ca6 |
View Raw JSON Data
{
"trx_id": "90dd96e17a0498c97c06f68b29952c19958c3ca6",
"block": 23686850,
"trx_in_block": 12,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-06-27T10:48:54",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "9070.104147 VESTS"
}
]
}quantum019replied to @wisefree / re-wisefree-1-20180528t014255308z2018/05/28 01:42:57
quantum019replied to @wisefree / re-wisefree-1-20180528t014255308z
2018/05/28 01:42:57
| parent author | wisefree |
| parent permlink | 1 |
| author | quantum019 |
| permlink | re-wisefree-1-20180528t014255308z |
| title | |
| body | 좋은글 보고갑니다. *^^* |
| json metadata | {"tags":["ethreum"],"app":"steemit/0.1"} |
| Transaction Info | Block #22812732/Trx 7cf03e413f6f72285f87ca95f195ee3bb85db41a |
View Raw JSON Data
{
"trx_id": "7cf03e413f6f72285f87ca95f195ee3bb85db41a",
"block": 22812732,
"trx_in_block": 20,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-28T01:42:57",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "1",
"author": "quantum019",
"permlink": "re-wisefree-1-20180528t014255308z",
"title": "",
"body": "좋은글 보고갑니다. *^^*",
"json_metadata": "{\"tags\":[\"ethreum\"],\"app\":\"steemit/0.1\"}"
}
]
}2018/05/24 22:52:09
2018/05/24 22:52:09
| voter | nariw |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22722933/Trx 09519266e78d9c710bf8ffdff8e78f480fb04f05 |
View Raw JSON Data
{
"trx_id": "09519266e78d9c710bf8ffdff8e78f480fb04f05",
"block": 22722933,
"trx_in_block": 57,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-24T22:52:09",
"op": [
"vote",
{
"voter": "nariw",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}stoney.kangupvoted (100.00%) @wisefree / 12018/05/23 02:12:06
stoney.kangupvoted (100.00%) @wisefree / 1
2018/05/23 02:12:06
| voter | stoney.kang |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22669710/Trx d1cf16b1a2539f877b5426ca98dadeffbb5f080e |
View Raw JSON Data
{
"trx_id": "d1cf16b1a2539f877b5426ca98dadeffbb5f080e",
"block": 22669710,
"trx_in_block": 38,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-23T02:12:06",
"op": [
"vote",
{
"voter": "stoney.kang",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/05/18 21:19:24
2018/05/18 21:19:24
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 29437.555028 VESTS |
| Transaction Info | Block #22548679/Trx 00227ffcfd1ba37886f6feb0c4e94a5dcda67963 |
View Raw JSON Data
{
"trx_id": "00227ffcfd1ba37886f6feb0c4e94a5dcda67963",
"block": 22548679,
"trx_in_block": 39,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-18T21:19:24",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "29437.555028 VESTS"
}
]
}2018/05/07 03:06:21
2018/05/07 03:06:21
| voter | mikekim |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22210064/Trx 219264332a939caea14b482ec4ae679e4375a3ef |
View Raw JSON Data
{
"trx_id": "219264332a939caea14b482ec4ae679e4375a3ef",
"block": 22210064,
"trx_in_block": 40,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-07T03:06:21",
"op": [
"vote",
{
"voter": "mikekim",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/04/07 11:18:51
2018/04/07 11:18:51
| voter | fly2moon |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21356726/Trx 11a461f21a97aa015fe4d5ca5a28a385f50e0620 |
View Raw JSON Data
{
"trx_id": "11a461f21a97aa015fe4d5ca5a28a385f50e0620",
"block": 21356726,
"trx_in_block": 19,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-07T11:18:51",
"op": [
"vote",
{
"voter": "fly2moon",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}jsl1primereplied to @wisefree / re-wisefree-3-20180404t024737384z2018/04/04 02:54:39
jsl1primereplied to @wisefree / re-wisefree-3-20180404t024737384z
2018/04/04 02:54:39
| parent author | wisefree |
| parent permlink | 3 |
| author | jsl1prime |
| permlink | re-wisefree-3-20180404t024737384z |
| title | |
| body | 잘봤습니다. 전에 이더리움 서울 밋업 분한테 연구회랑 왜 협업하지 않나요 했더니 딱히 서로 접점이 없다고 하시더군요. 암튼 누군가는 지켜보고 있네요. 참 재미있지 않나요? 얼굴도 모르는 사람이 인지하고 있다라는거.. 마스터과정 흥하시길 바래요. |
| json metadata | {"tags":["ethreum"],"app":"steemit/0.1"} |
| Transaction Info | Block #21260254/Trx 50fe40fa412488971967ba621f931f1d94adedd7 |
View Raw JSON Data
{
"trx_id": "50fe40fa412488971967ba621f931f1d94adedd7",
"block": 21260254,
"trx_in_block": 7,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-04T02:54:39",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "3",
"author": "jsl1prime",
"permlink": "re-wisefree-3-20180404t024737384z",
"title": "",
"body": "잘봤습니다. 전에 이더리움 서울 밋업 분한테 연구회랑 왜 협업하지 않나요 했더니 딱히 서로 접점이 없다고 하시더군요.\n \n암튼 누군가는 지켜보고 있네요. 참 재미있지 않나요? 얼굴도 모르는 사람이 인지하고 있다라는거.. 마스터과정 흥하시길 바래요.",
"json_metadata": "{\"tags\":[\"ethreum\"],\"app\":\"steemit/0.1\"}"
}
]
}jsl1primereplied to @wisefree / re-wisefree-3-20180404t024737384z2018/04/04 02:47:42
jsl1primereplied to @wisefree / re-wisefree-3-20180404t024737384z
2018/04/04 02:47:42
| parent author | wisefree |
| parent permlink | 3 |
| author | jsl1prime |
| permlink | re-wisefree-3-20180404t024737384z |
| title | |
| body | 누군가는 지켜보고 있네요. 참 재미있지 않나요? 얼굴도 모르는 사람이 인지하고 있다라는거.. 마스터과정 흥하시길 바래요. |
| json metadata | {"tags":["ethreum"],"app":"steemit/0.1"} |
| Transaction Info | Block #21260115/Trx cbf32366103ce2e351b85d2a4637bceb7b17727b |
View Raw JSON Data
{
"trx_id": "cbf32366103ce2e351b85d2a4637bceb7b17727b",
"block": 21260115,
"trx_in_block": 18,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-04T02:47:42",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "3",
"author": "jsl1prime",
"permlink": "re-wisefree-3-20180404t024737384z",
"title": "",
"body": "누군가는 지켜보고 있네요. 참 재미있지 않나요? 얼굴도 모르는 사람이 인지하고 있다라는거.. 마스터과정 흥하시길 바래요.",
"json_metadata": "{\"tags\":[\"ethreum\"],\"app\":\"steemit/0.1\"}"
}
]
}2018/03/29 12:51:06
2018/03/29 12:51:06
| voter | bigcloud |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21099419/Trx ee823745348fad5591fd55a02cae7b5b3abc9ce7 |
View Raw JSON Data
{
"trx_id": "ee823745348fad5591fd55a02cae7b5b3abc9ce7",
"block": 21099419,
"trx_in_block": 16,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-29T12:51:06",
"op": [
"vote",
{
"voter": "bigcloud",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}wisefreefollowed @steemitblog2018/03/28 05:55:45
wisefreefollowed @steemitblog
2018/03/28 05:55:45
| required auths | [] |
| required posting auths | ["wisefree"] |
| id | follow |
| json | ["follow",{"follower":"wisefree","following":"steemitblog","what":["blog"]}] |
| Transaction Info | Block #21062333/Trx ee7685f1b002e6e7b2c3dff9ed1a0df4f7717876 |
View Raw JSON Data
{
"trx_id": "ee7685f1b002e6e7b2c3dff9ed1a0df4f7717876",
"block": 21062333,
"trx_in_block": 15,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-28T05:55:45",
"op": [
"custom_json",
{
"required_auths": [],
"required_posting_auths": [
"wisefree"
],
"id": "follow",
"json": "[\"follow\",{\"follower\":\"wisefree\",\"following\":\"steemitblog\",\"what\":[\"blog\"]}]"
}
]
}2018/03/19 04:15:51
2018/03/19 04:15:51
| voter | hyunki85 |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20802004/Trx 25761e56a34ec718854612e065b8abc2e25e7c60 |
View Raw JSON Data
{
"trx_id": "25761e56a34ec718854612e065b8abc2e25e7c60",
"block": 20802004,
"trx_in_block": 34,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-19T04:15:51",
"op": [
"vote",
{
"voter": "hyunki85",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/03/14 07:59:33
2018/03/14 07:59:33
| required auths | [] |
| required posting auths | ["wisefree"] |
| id | follow |
| json | ["follow",{"follower":"wisefree","following":"eosio","what":["blog"]}] |
| Transaction Info | Block #20662608/Trx f796f5d13b804a72b257adc9de94d3c7abbe30e4 |
View Raw JSON Data
{
"trx_id": "f796f5d13b804a72b257adc9de94d3c7abbe30e4",
"block": 20662608,
"trx_in_block": 17,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-14T07:59:33",
"op": [
"custom_json",
{
"required_auths": [],
"required_posting_auths": [
"wisefree"
],
"id": "follow",
"json": "[\"follow\",{\"follower\":\"wisefree\",\"following\":\"eosio\",\"what\":[\"blog\"]}]"
}
]
}2018/03/14 05:13:24
2018/03/14 05:13:24
| voter | crazyluv |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20659286/Trx 9fd9212bf1b08f99abd235f8516afa44241c27a5 |
View Raw JSON Data
{
"trx_id": "9fd9212bf1b08f99abd235f8516afa44241c27a5",
"block": 20659286,
"trx_in_block": 53,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-14T05:13:24",
"op": [
"vote",
{
"voter": "crazyluv",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}crazyluvreplied to @wisefree / re-wisefree-1-20180314t051307324z2018/03/14 05:13:09
crazyluvreplied to @wisefree / re-wisefree-1-20180314t051307324z
2018/03/14 05:13:09
| parent author | wisefree |
| parent permlink | 1 |
| author | crazyluv |
| permlink | re-wisefree-1-20180314t051307324z |
| title | |
| body | 도움이 많이 되었습니다. 좋은글 감사드려요~ |
| json metadata | {"tags":["ethreum"],"app":"steemit/0.1"} |
| Transaction Info | Block #20659281/Trx 6b286eb56a6114744a29f84e7735e1c0a1aa6094 |
View Raw JSON Data
{
"trx_id": "6b286eb56a6114744a29f84e7735e1c0a1aa6094",
"block": 20659281,
"trx_in_block": 19,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-14T05:13:09",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "1",
"author": "crazyluv",
"permlink": "re-wisefree-1-20180314t051307324z",
"title": "",
"body": "도움이 많이 되었습니다. 좋은글 감사드려요~",
"json_metadata": "{\"tags\":[\"ethreum\"],\"app\":\"steemit/0.1\"}"
}
]
}2018/02/27 11:04:33
2018/02/27 11:04:33
| voter | donis88 |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20234732/Trx 556070fe2c0b627745def2028d4a2226b658a36f |
View Raw JSON Data
{
"trx_id": "556070fe2c0b627745def2028d4a2226b658a36f",
"block": 20234732,
"trx_in_block": 58,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-27T11:04:33",
"op": [
"vote",
{
"voter": "donis88",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}carpent.ianupvoted (100.00%) @wisefree / 12018/02/20 08:20:45
carpent.ianupvoted (100.00%) @wisefree / 1
2018/02/20 08:20:45
| voter | carpent.ian |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20030053/Trx ec825b24221e121cee6a0dd6207584cdf56f4999 |
View Raw JSON Data
{
"trx_id": "ec825b24221e121cee6a0dd6207584cdf56f4999",
"block": 20030053,
"trx_in_block": 15,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-20T08:20:45",
"op": [
"vote",
{
"voter": "carpent.ian",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/02/19 11:05:00
2018/02/19 11:05:00
| voter | jasonr |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20004563/Trx 006548c425f931c6c497c92ae864c1f22fb60f2f |
View Raw JSON Data
{
"trx_id": "006548c425f931c6c497c92ae864c1f22fb60f2f",
"block": 20004563,
"trx_in_block": 12,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-19T11:05:00",
"op": [
"vote",
{
"voter": "jasonr",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/02/10 02:18:54
2018/02/10 02:18:54
| voter | maiordba |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19735030/Trx 7a7d0a4a67940c053d4ee587848a49e0fe987441 |
View Raw JSON Data
{
"trx_id": "7a7d0a4a67940c053d4ee587848a49e0fe987441",
"block": 19735030,
"trx_in_block": 31,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-10T02:18:54",
"op": [
"vote",
{
"voter": "maiordba",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}melodyparkupvoted (100.00%) @wisefree / 12018/02/08 05:16:00
melodyparkupvoted (100.00%) @wisefree / 1
2018/02/08 05:16:00
| voter | melodypark |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19681126/Trx 8fb9c9746da797dd2f0ca3b2c5e853b6a51bde9e |
View Raw JSON Data
{
"trx_id": "8fb9c9746da797dd2f0ca3b2c5e853b6a51bde9e",
"block": 19681126,
"trx_in_block": 40,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-08T05:16:00",
"op": [
"vote",
{
"voter": "melodypark",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/02/05 14:26:12
2018/02/05 14:26:12
| voter | therne |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19605870/Trx ea123d91c3af4cea35e3b03bbf4e451abcdd696b |
View Raw JSON Data
{
"trx_id": "ea123d91c3af4cea35e3b03bbf4e451abcdd696b",
"block": 19605870,
"trx_in_block": 28,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-02-05T14:26:12",
"op": [
"vote",
{
"voter": "therne",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/27 13:37:09
2018/01/27 13:37:09
| voter | jaelee |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19346017/Trx 54ca337211ed4d5411a941c2f0cb31f0aa9eb31b |
View Raw JSON Data
{
"trx_id": "54ca337211ed4d5411a941c2f0cb31f0aa9eb31b",
"block": 19346017,
"trx_in_block": 31,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-27T13:37:09",
"op": [
"vote",
{
"voter": "jaelee",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/25 15:01:03
2018/01/25 15:01:03
| voter | jimmylee |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19290138/Trx db00237ec7fbaa1db417accc93e33141785cde46 |
View Raw JSON Data
{
"trx_id": "db00237ec7fbaa1db417accc93e33141785cde46",
"block": 19290138,
"trx_in_block": 45,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-25T15:01:03",
"op": [
"vote",
{
"voter": "jimmylee",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/24 04:31:24
2018/01/24 04:31:24
| voter | bitore |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19248758/Trx 5672b8fa7faf17fbeee0acc5d80dc2dfa31322a2 |
View Raw JSON Data
{
"trx_id": "5672b8fa7faf17fbeee0acc5d80dc2dfa31322a2",
"block": 19248758,
"trx_in_block": 12,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-24T04:31:24",
"op": [
"vote",
{
"voter": "bitore",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/18 21:14:03
2018/01/18 21:14:03
| voter | bbtoinu |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19096084/Trx 4e7920c1543cb6296e4bac8828728e6a51a724e4 |
View Raw JSON Data
{
"trx_id": "4e7920c1543cb6296e4bac8828728e6a51a724e4",
"block": 19096084,
"trx_in_block": 7,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-18T21:14:03",
"op": [
"vote",
{
"voter": "bbtoinu",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/18 02:01:00
2018/01/18 02:01:00
| voter | comsong |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #19073041/Trx ba3a803ce67dd740923bcbeea863ec16c0824c8d |
View Raw JSON Data
{
"trx_id": "ba3a803ce67dd740923bcbeea863ec16c0824c8d",
"block": 19073041,
"trx_in_block": 29,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-18T02:01:00",
"op": [
"vote",
{
"voter": "comsong",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/09 07:15:21
2018/01/09 07:15:21
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 29643.188654 VESTS |
| Transaction Info | Block #18820303/Trx 305a9954503c0b172e96c6a925fa169794ae826a |
View Raw JSON Data
{
"trx_id": "305a9954503c0b172e96c6a925fa169794ae826a",
"block": 18820303,
"trx_in_block": 34,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-09T07:15:21",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "29643.188654 VESTS"
}
]
}2018/01/09 01:40:36
2018/01/09 01:40:36
| voter | gillime |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #18813622/Trx dcb79fae6c30e905ff3df11846f48e93fcdb0257 |
View Raw JSON Data
{
"trx_id": "dcb79fae6c30e905ff3df11846f48e93fcdb0257",
"block": 18813622,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-09T01:40:36",
"op": [
"vote",
{
"voter": "gillime",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2018/01/05 06:05:30
2018/01/05 06:05:30
| voter | zemso |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #18703833/Trx b8e4326d1fee0324296a4c40fca9f61c20ce6341 |
View Raw JSON Data
{
"trx_id": "b8e4326d1fee0324296a4c40fca9f61c20ce6341",
"block": 18703833,
"trx_in_block": 25,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-01-05T06:05:30",
"op": [
"vote",
{
"voter": "zemso",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2017/12/16 06:21:03
2017/12/16 06:21:03
| voter | junghun |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #18128571/Trx 0361d00c01a54fed41392375fe2e3a6424b7c861 |
View Raw JSON Data
{
"trx_id": "0361d00c01a54fed41392375fe2e3a6424b7c861",
"block": 18128571,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-12-16T06:21:03",
"op": [
"vote",
{
"voter": "junghun",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}changemakerupvoted (100.00%) @wisefree / 12017/12/09 18:11:21
changemakerupvoted (100.00%) @wisefree / 1
2017/12/09 18:11:21
| voter | changemaker |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #17941234/Trx ebfd24d97753de8b34adf79820323cd3886dcac7 |
View Raw JSON Data
{
"trx_id": "ebfd24d97753de8b34adf79820323cd3886dcac7",
"block": 17941234,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-12-09T18:11:21",
"op": [
"vote",
{
"voter": "changemaker",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}littleantiupvoted (100.00%) @wisefree / 12017/10/03 14:34:30
littleantiupvoted (100.00%) @wisefree / 1
2017/10/03 14:34:30
| voter | littleanti |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #16008619/Trx 505b26446b2eb1f6b442f4ec88a2016795a8bec8 |
View Raw JSON Data
{
"trx_id": "505b26446b2eb1f6b442f4ec88a2016795a8bec8",
"block": 16008619,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-10-03T14:34:30",
"op": [
"vote",
{
"voter": "littleanti",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}shafayehossainupvoted (100.00%) @wisefree / 32017/08/15 05:41:24
shafayehossainupvoted (100.00%) @wisefree / 3
2017/08/15 05:41:24
| voter | shafayehossain |
| author | wisefree |
| permlink | 3 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14587575/Trx 4431267e08c28b25280893c7191c3fbf14746428 |
View Raw JSON Data
{
"trx_id": "4431267e08c28b25280893c7191c3fbf14746428",
"block": 14587575,
"trx_in_block": 15,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T05:41:24",
"op": [
"vote",
{
"voter": "shafayehossain",
"author": "wisefree",
"permlink": "3",
"weight": 10000
}
]
}2017/08/15 05:39:42
2017/08/15 05:39:42
| voter | vanitat |
| author | wisefree |
| permlink | 3 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14587541/Trx 72859e11de93fb71489fa1a939a679745904a3c7 |
View Raw JSON Data
{
"trx_id": "72859e11de93fb71489fa1a939a679745904a3c7",
"block": 14587541,
"trx_in_block": 6,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T05:39:42",
"op": [
"vote",
{
"voter": "vanitat",
"author": "wisefree",
"permlink": "3",
"weight": 10000
}
]
}2017/08/15 05:33:03
2017/08/15 05:33:03
| voter | wisefree |
| author | wisefree |
| permlink | 3 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14587408/Trx 0fdfc1d5acb21510f8bf687e44df661c2b394272 |
View Raw JSON Data
{
"trx_id": "0fdfc1d5acb21510f8bf687e44df661c2b394272",
"block": 14587408,
"trx_in_block": 15,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T05:33:03",
"op": [
"vote",
{
"voter": "wisefree",
"author": "wisefree",
"permlink": "3",
"weight": 10000
}
]
}2017/08/15 05:33:03
2017/08/15 05:33:03
| parent author | |
| parent permlink | ethreum |
| author | wisefree |
| permlink | 3 |
| title | 이더리움 프로그래밍 수업(3) |
| body |  지난 두 번의 글을 통해 우리는 이더리움의 코어 엔진인 geth 를 다루는 다양한 방법에 대해 살펴보았습니다. 앞으로는 2회에 걸쳐 솔리디티를 이용해 컨트랙을 프로그래밍하는 방법에 대해 살펴보겠습니다. 특히, 단순 개발 뿐만 아니라 실제 해당 컨트랙이 어떻게 geth의 EVM 을 통해 실행되고 이 때 어떤 과정들을 거치는 지도 함께 살펴 보겠습니다. 소프트웨어에 날개를 달자 - http://wisefree.tistory.com/479 |
| json metadata | {"tags":["ethreum","contact","programming"],"image":["https://steemitimages.com/DQmR5o6w4JZFzRnx4XV1BX24WyP5BKVdEGNQMp7d2pVytZf/blockchain-future.jpg"],"links":["http://wisefree.tistory.com/479"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #14587408/Trx 0fdfc1d5acb21510f8bf687e44df661c2b394272 |
View Raw JSON Data
{
"trx_id": "0fdfc1d5acb21510f8bf687e44df661c2b394272",
"block": 14587408,
"trx_in_block": 15,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T05:33:03",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ethreum",
"author": "wisefree",
"permlink": "3",
"title": "이더리움 프로그래밍 수업(3)",
"body": "\n\n지난 두 번의 글을 통해 우리는 이더리움의 코어 엔진인 geth 를 다루는 다양한 방법에 대해 살펴보았습니다. 앞으로는 2회에 걸쳐 솔리디티를 이용해 컨트랙을 프로그래밍하는 방법에 대해 살펴보겠습니다. 특히, 단순 개발 뿐만 아니라 실제 해당 컨트랙이 어떻게 geth의 EVM 을 통해 실행되고 이 때 어떤 과정들을 거치는 지도 함께 살펴 보겠습니다.\n\n소프트웨어에 날개를 달자 - http://wisefree.tistory.com/479",
"json_metadata": "{\"tags\":[\"ethreum\",\"contact\",\"programming\"],\"image\":[\"https://steemitimages.com/DQmR5o6w4JZFzRnx4XV1BX24WyP5BKVdEGNQMp7d2pVytZf/blockchain-future.jpg\"],\"links\":[\"http://wisefree.tistory.com/479\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}casonmesserupvoted (100.00%) @wisefree / 22017/08/15 02:46:06
casonmesserupvoted (100.00%) @wisefree / 2
2017/08/15 02:46:06
| voter | casonmesser |
| author | wisefree |
| permlink | 2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14584069/Trx 3296df5636b42a4983021da69e920f39c4c4d472 |
View Raw JSON Data
{
"trx_id": "3296df5636b42a4983021da69e920f39c4c4d472",
"block": 14584069,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:46:06",
"op": [
"vote",
{
"voter": "casonmesser",
"author": "wisefree",
"permlink": "2",
"weight": 10000
}
]
}2017/08/15 02:44:51
2017/08/15 02:44:51
| voter | eksandech |
| author | wisefree |
| permlink | 2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14584044/Trx b58d278707623079de6457369243658538774198 |
View Raw JSON Data
{
"trx_id": "b58d278707623079de6457369243658538774198",
"block": 14584044,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:44:51",
"op": [
"vote",
{
"voter": "eksandech",
"author": "wisefree",
"permlink": "2",
"weight": 10000
}
]
}2017/08/15 02:37:57
2017/08/15 02:37:57
| voter | mishanuk |
| author | wisefree |
| permlink | 2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14583906/Trx 20b63a83163b26314293c4093b8abae5ebca316f |
View Raw JSON Data
{
"trx_id": "20b63a83163b26314293c4093b8abae5ebca316f",
"block": 14583906,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:37:57",
"op": [
"vote",
{
"voter": "mishanuk",
"author": "wisefree",
"permlink": "2",
"weight": 10000
}
]
}2017/08/15 02:35:54
2017/08/15 02:35:54
| voter | witnezme |
| author | wisefree |
| permlink | 2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14583865/Trx c5226b38ae0eeacb6fb06bd1e8f4297ff24f55e7 |
View Raw JSON Data
{
"trx_id": "c5226b38ae0eeacb6fb06bd1e8f4297ff24f55e7",
"block": 14583865,
"trx_in_block": 0,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:35:54",
"op": [
"vote",
{
"voter": "witnezme",
"author": "wisefree",
"permlink": "2",
"weight": 10000
}
]
}2017/08/15 02:34:27
2017/08/15 02:34:27
| voter | wisefree |
| author | wisefree |
| permlink | 2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14583836/Trx fa521256973b9259965fbb942ffc1cd9c55df490 |
View Raw JSON Data
{
"trx_id": "fa521256973b9259965fbb942ffc1cd9c55df490",
"block": 14583836,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:34:27",
"op": [
"vote",
{
"voter": "wisefree",
"author": "wisefree",
"permlink": "2",
"weight": 10000
}
]
}2017/08/15 02:34:27
2017/08/15 02:34:27
| parent author | |
| parent permlink | ethereum |
| author | wisefree |
| permlink | 2 |
| title | 이더리움 프로그래밍 수업(2) |
| body |  지난 글에서는 이더리움 코어 엔진인 geth을 설치하고 다뤄보면서 이더리움 플랫폼과 프로그래밍의 개괄적인 내용에 대해 살펴 보았습니다. 사용자 계정을 만들고 이들 간에 가상화폐를 주고 받고 , 이 주고 받는 작업을 블록체인에 연결하기 위해 마이닝이라는 작업을 하였습니다. 이번에서 실제 이더리움이 제공하는 가장 유용한 기술이자 비트코인 플랫폼과 차별화되는 대표 기능인 스마트 컨트랙트를 솔리디티(Solodity) 개발 언어를 이용하여 프로그래밍하는 방법과 개발 환경 구축 등에 대해 살펴보겠습니다. 소프트웨어에 날개를 달자 - http://wisefree.tistory.com/478 |
| json metadata | {"tags":["ethereum","contract","programming"],"image":["https://steemitimages.com/DQmR5o6w4JZFzRnx4XV1BX24WyP5BKVdEGNQMp7d2pVytZf/blockchain-future.jpg"],"links":["http://wisefree.tistory.com/478"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #14583836/Trx fa521256973b9259965fbb942ffc1cd9c55df490 |
View Raw JSON Data
{
"trx_id": "fa521256973b9259965fbb942ffc1cd9c55df490",
"block": 14583836,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-15T02:34:27",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ethereum",
"author": "wisefree",
"permlink": "2",
"title": "이더리움 프로그래밍 수업(2)",
"body": "\n\n지난 글에서는 이더리움 코어 엔진인 geth을 설치하고 다뤄보면서 이더리움 플랫폼과 프로그래밍의 개괄적인 내용에 대해 살펴 보았습니다. 사용자 계정을 만들고 이들 간에 가상화폐를 주고 받고 , 이 주고 받는 작업을 블록체인에 연결하기 위해 마이닝이라는 작업을 하였습니다. 이번에서 실제 이더리움이 제공하는 가장 유용한 기술이자 비트코인 플랫폼과 차별화되는 대표 기능인 스마트 컨트랙트를 솔리디티(Solodity) 개발 언어를 이용하여 프로그래밍하는 방법과 개발 환경 구축 등에 대해 살펴보겠습니다. \n\n소프트웨어에 날개를 달자 - http://wisefree.tistory.com/478",
"json_metadata": "{\"tags\":[\"ethereum\",\"contract\",\"programming\"],\"image\":[\"https://steemitimages.com/DQmR5o6w4JZFzRnx4XV1BX24WyP5BKVdEGNQMp7d2pVytZf/blockchain-future.jpg\"],\"links\":[\"http://wisefree.tistory.com/478\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}2017/08/04 05:16:27
2017/08/04 05:16:27
| delegator | steem |
| delegatee | wisefree |
| vesting shares | 29894.035103 VESTS |
| Transaction Info | Block #14271409/Trx a4ed08a1ef2865c0afd5a5460e4789b19d0dc9d6 |
View Raw JSON Data
{
"trx_id": "a4ed08a1ef2865c0afd5a5460e4789b19d0dc9d6",
"block": 14271409,
"trx_in_block": 16,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-04T05:16:27",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "wisefree",
"vesting_shares": "29894.035103 VESTS"
}
]
}2017/08/02 08:47:57
2017/08/02 08:47:57
| voter | eriza |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14218072/Trx c66b751bb39bcd1f933d947cdb24da3474841066 |
View Raw JSON Data
{
"trx_id": "c66b751bb39bcd1f933d947cdb24da3474841066",
"block": 14218072,
"trx_in_block": 26,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-02T08:47:57",
"op": [
"vote",
{
"voter": "eriza",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}investigationreplied to @wisefree / re-wisefree-1-20170802t084508497z2017/08/02 08:45:09
investigationreplied to @wisefree / re-wisefree-1-20170802t084508497z
2017/08/02 08:45:09
| parent author | wisefree |
| parent permlink | 1 |
| author | investigation |
| permlink | re-wisefree-1-20170802t084508497z |
| title | |
| body | Hi. I am a volunteer bot for @resteembot that upvoted you. Your post was chosen at random, as part of the advertisment campaign for @resteembot. @resteembot is meant to help minnows get noticed by re-steeming their posts ----- To use the bot, one must follow it for at least 3 hours, and then make a transaction where the memo is the url of the post. If you want to learn more - [read the introduction post of @resteembot](https://steemit.com/resteembot/@resteembot/how-to-use-resteembot). If you want help spread the word - [read the advertisment program post](https://steemit.com/resteembot/@resteembot/how-to-help-resteem-bot-spread-the-word). ----- Steem ON! |
| json metadata | |
| Transaction Info | Block #14218016/Trx b90f6479dafe1ff5fb9023da125fbd2cce8d5b8e |
View Raw JSON Data
{
"trx_id": "b90f6479dafe1ff5fb9023da125fbd2cce8d5b8e",
"block": 14218016,
"trx_in_block": 3,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-02T08:45:09",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "1",
"author": "investigation",
"permlink": "re-wisefree-1-20170802t084508497z",
"title": "",
"body": "Hi. I am a volunteer bot for @resteembot that upvoted you.\nYour post was chosen at random, as part of the advertisment campaign for @resteembot.\n@resteembot is meant to help minnows get noticed by re-steeming their posts\n-----\nTo use the bot, one must follow it for at least 3 hours, and then make a transaction where the memo is the url of the post.\nIf you want to learn more - [read the introduction post of @resteembot](https://steemit.com/resteembot/@resteembot/how-to-use-resteembot).\nIf you want help spread the word - [read the advertisment program post](https://steemit.com/resteembot/@resteembot/how-to-help-resteem-bot-spread-the-word).\n-----\nSteem ON!",
"json_metadata": ""
}
]
}investigationupvoted (100.00%) @wisefree / 12017/08/02 08:44:15
investigationupvoted (100.00%) @wisefree / 1
2017/08/02 08:44:15
| voter | investigation |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14217998/Trx ac5da1264c51007df3fe24d9795bef1a2939068b |
View Raw JSON Data
{
"trx_id": "ac5da1264c51007df3fe24d9795bef1a2939068b",
"block": 14217998,
"trx_in_block": 10,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-02T08:44:15",
"op": [
"vote",
{
"voter": "investigation",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2017/08/02 08:43:33
2017/08/02 08:43:33
| voter | wisefree |
| author | wisefree |
| permlink | 1 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14217984/Trx 14ed892a25bf532dfd308c9b39e75703a0a3b34e |
View Raw JSON Data
{
"trx_id": "14ed892a25bf532dfd308c9b39e75703a0a3b34e",
"block": 14217984,
"trx_in_block": 18,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-02T08:43:33",
"op": [
"vote",
{
"voter": "wisefree",
"author": "wisefree",
"permlink": "1",
"weight": 10000
}
]
}2017/08/02 08:43:33
2017/08/02 08:43:33
| parent author | |
| parent permlink | ethreum |
| author | wisefree |
| permlink | 1 |
| title | 이더리움 프로그래밍 수업(1) |
| body | 박재현 [email protected] http://wisefree.tistrory.com 들어가며 비트코인과 블록체인, 그리고 이더리움에 대한 여러 자료들을 관련 사이트 등에서 찾아보면서 해당 내용이 이더리움 플랫폼의 최신 내용들과 다른 내용이 많아 테스트를 하거나 실제 프로그래밍을 하는 데 소소한 어려움이 많은 것을 느꼈습니다. 그리고 Ethereum.org 공식 채널을 포함, 주변에서 검색을 통해 접할 수 있는 이더리움 개발 관련 자료들이 적고 , 오래된 자료들이 많은 상황입니다. 따라서 Seoul Ethereum Meetup 멤버들과 기타 이더리움 개발을 하려는 분들의 손쉬운 이더리움 입문을 위해 포스팅을 시작합니다. 저도 함께 배우는 과정이기에 다소 부족한 부분이 많을 수 있으나 함께 채워나갔으면 합니다. Mac 운영체제를 기준으로 작성하며 , 만약 이 포스팅에 문제가 발생할 경우 알려주면 이를 바로 잡을 계획입니다. 이번 가이드를 통해 이더리움의 구동 환경을 이해하고 , 실행환경을 구축하며 , 이더리움의 가상화폐인 Ether를 발행하고 이를 다른 사용자에게 송금하면서 이더리움의 기본인 가상화폐를 다루는 것을 익힐 수 있습니다. 이더리움 프로그램 구동 환경 이해 다음은 간략한 이더리움 실행 환경입니다. Virtual Box 라는 가상화 엔진상에 geth라는 EVM(Ethereum Virtual Machine)가 위치합니다. 이 코어 엔진상에서 실행가능한 프로그램을 개발하는 것이 이더리움 프로그래밍입니다. 자바스크립트나 파이썬 같은 기존의 언어들을 사용하여 프로그램을 작성해도 EVM에서 구동이 되기 때문에 이더리움을 튜링 컴플리트(Turing Complete)라고 합니다. 어렵게 생각말고 지금은 이더리움에서 일반 개발 언어를 사용해서 가능한 모든 것을 작성할 수 있다" 라고 이해하면 됩니다. 참고로 , 비트코인은 튜링 컴플리트가 아닙니다. 보안 등 여러 이유로 if 문 만을 제공하는 등 의도적으로 제한된 범위 내에서만 개발을 지원합니다. 현재 이더리움 엔진은 Go 언어와 C++ , 파이썬 등으로 개발되었고 Go언어 만든 Go-Ethereum이 가장 업데이트가 활발합니다(바이너리 이름이 geth입니다). 본 글에서도 Go-Ethereum을 사용합니다. 다음은 앞서 설명한 내용을 정리하였습니다. 본래 노트에 글쓰기를 좋아해서 노트한 것을 그냥 올립니다. 지저분해도 이해해 주세요.  이더리움 엔진인 geth 은 3가지 인터페이스를 통해 활용이 가능합니다 -- (1) HTTP JSON RPC (2) web3.js 를 통한 자바스크립트 언어 (3) Solidity . 위의 인터페이스를 다양한 언어로 이더리움 클라이언트를 개발할 수 있습니다. 가령, 자바 스크립트로 Web3.js를 사용하여 이더리움 클라이언트를 개발할 수 있습니다. 또는 JSON RPC 호출 후 자바로 클라이언트를 개발할 수도 있습니다. 그러나 이더리움 개발의 꽃인 Smart Contract를 개발하기 위해서는 Solidity를, Serpent, LLL 언어를 사용해야 합니다. 이 중 가장 각광받고 있는 Solidity 를 사용하겠습니다. 참고로 , 아직 Solidity는 개발 툴의 기능도 부족하고 여러면에서 부족하나 이더리움의 성장과 더불어 개발자에게 스스로의 가치를 높일 수 있는 좋은 기회가 될 것 입니다. 다음은 이더리움의 전체 구동 환경을 정리한 그림입니다. 먼저 상단의 왼쪽을 보면 콘솔과 브라우져가 등장합니다. 사용자는 geth를 구동시킨 후 콘솔을 통해 일련의 콘솔 명령어를 통해 원하는 기능을 geth에게 지시할 수 있습니다. 더불어 Json RPC와 Web3.js 자바스크립 라이브러리로 작성된 프로그램을 브라우져를 통해 구동시킬 수 있습니다.  하단부 왼쪽은 Smart Contract에 대한 구동 환경입니다. 개발자는 Solidity로 프로그램을 작성한 후 Solc 컴파일러를 통해 컴파일을 합니다. 컴파일된 결과는 바이크 코드 형태의 Contract입니다. 이 Contract를 geth에 배포하면 블록체인의 블록 형태로 저장되고 이후 EVM을 통해 실행이 됩니다. 이더리움이 P2P 이기 때문에 해당 Contract 는 다른 모든 이더리움 노드에도 복제가 되어 실행이 됩니다. 이 과정을 잘 이해하려면 이더리움이 Account 개념을 잘 이해해야 합니다. 간략히 이해를 돕기 위해 설명하면 이더리움의 모든 기본 단위는 Account 입니다. 이더리움 지갑 등을 만들 때 실제 사람 사용자가 만드는 Account가 있고( EOAs , Externally Owned Accounts ) , Contract Accont가 있습니다. 모든 Contract는 실제 Accont로 다뤄집니다. 이후에 좀 더 자세히 살펴보겠습니다. 이더리움 설치 및 프로그래밍 환경 꾸미기 1. 먼저 다음 3개의 오픈 소스 툴과 언어를 설치하여 사용 준비를 합니다. -Brew : Mac용 패키지 관리자 -Go : Go-Ethereum 설치용 Go 컴파일로 -Geth : Version 1.6.7 ( 2017년 7월 30일 현재 최신 버전 ) 1) 먼저 Brew 를 설치합니다. 터미널에 다음의 명령어를 입력합니다. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 2) 다음의 Go 공식 웹 사이트에 가서 Mac OSX 용 패키지를 다운로드 받아 설치합니다. 본 글에서는 1.8.3 을 사용합니다. http://golang.org/dl 3) 다음으로 Geth을 설치합니다. 현재 Geth의 최신 버전은 V1.6.7 로 해당 버전을 사용합니다.. 다음에서 Geth의 소스코드를 다운로드 받는다. - 다운로드 Geth 1.6.7.(ZIP) 또는 다음과 같이 git을 사용하는 방법도 있습니다. git clone -b release/1.6.7 https://github.com/ethreum/gi-ethreum.git 다운로드 받은 해당 디렉토리로 이동 후 다음 명령을 실행하여 소스코드를 컴파일합니다. $>> make geth JAEHYUNui-MacBook-Air:go-ethereum-1.6.7 jaehyunpark-air$ make geth build/env.sh go run build/ci.go install ./cmd/geth >>> /usr/local/go/bin/go install -ldflags -s -v ./cmd/geth 4) 기타 환경 꾸미기 컴파일 후 "현재 설치한 폴더 밑에 /build/bin 폴더"에 geth 라는 실행 파일이 생성됩니다. geth 파일은 다른 라이브러리나 패키지에 dependency가 없기 때문에 원하는 폴더로 옮겨도 작동됩니다. 참고로 , 현재 Geth 소스코드는 Go언어로 개발되었기 때문에 컴파일시 Go 컴파일러가 필요하다. Go1.8.3을 사용하여 컴파일 합니다. * 참조 : https://github.com/ethereum/go-ethereum/wiki/Installing-Geth#build-it-from-source-code ) 여러 버전의 Geth를 사용할 수 있기 때문에 편의상 alias를 만듭니다. 아래에서는 /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/geth를 geth167로 alias합니다. 이후 geth167로 이더리움을 구동시킵니다. JAEHYUNui-MacBook-Air:bin jaehyunpark-air$ echo "alias geth167='/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/geth' " >> ~/.bashrc 실제 쉘에 위의 내용을 반영을 해줍니다. 매번 로그인시 마다 적용을 위해서는 .profile 에 해당 내용을 반영해 둡니다. 편의를 위해 하는 작업입니다. JAEHYUNui-MacBook-Air:bin jaehyunpark-air$ source ~/.bashrc 이제 geth167 을 입력하면 바로 geth를 실행시킬 수 있다. 이더리움 엔진 갖고 놀아보기 이제 이더리움 엔진을 프라이빗 네트웍에서 구동시키고 다뤄보겠습니다. 가이드를 보면 프라이빗 블록체인을 구성할 때 4가지에 신경쓰라고 합니다. - 커스텀 제네시스 파일 설정을 통해 최초의 이더리움 블록 생성 - 커스텀 데이타 디렉토리 설정을 통해 블록체인 스토리지 구성 - 커스템 네트웍 ID 설정을 통해 내가 구축한 프라이빗 블록체인 명명하기 - 프라이빗 네트웍에서 이용시 추천 사항으로 다른 노드와 연결하기 위해 자동으로 탐색하는 것을 방지하기 자 이제 슬슬 구동을 시켜 보겠습니다. 1)먼저 , 구동에 필요한 블록체인 데이타를 저장할 폴더로 privatechain을 생성한다. 원하는 이름으로 자유롭게 바꿔도 됩니다. JAEHYUNui-MacBook-Air:bin jaehyunpark-air$ mkdir privatechain 다음의 구동 명령을 통해 geth를 실행시킨다. geth167 --identity "JayBlockChain" --rpc --rpcport "8080" --rpccorsdomain "*" --datadir "/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain" --port "30303" --nodiscover --rpcapi "db,eth,net,web3" --networkid 1999 console 위의 구동 명령 중 --datadir 이 커스텀 디렉토리를 설정하는 옵션입니다.그리고 커스텀 네트웍ID는 --networkid을 사용하여 1999로 설정하였고 --nodiscover 옵션을 지정하여 다른 노드에서 탐색하여 연결하는 것을 방지하였습니다. 이 설정을 하지 않으면 P2P 노드 연결을 위해 계속해서 ping 이 발생합니다. --identity "JayBlockChain" // 내 프라이빗 노드의 아이덴티티. --rpc // RPC 인터페이스 가능하게 함. --rpcport "8080" // RPC 포트 지정 --rpccorsdomain "*" // 접속가능한 RPC 클라이언트 URL 지정 , // 가능한 *(전체 허용) 보다는 URL을 지정하는 게 보안상 좋음. --datadir "/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain" // 커스텀 디렉토리 지정 --port "30303" // 네트웍 Listening Port 지정 --nodiscover // 같은 제네시스 블록과 네트웍ID에 있는 블록에 연결 방지 --rpcapi "db,eth,net,web3" // RPC에 의해서 접근을 허락할 API --networkid 1999 console // 출력을 콘솔로 함. 참고로 마이닝이 가능하도록 구동시키려면 --mine 옵션을 설정해야 하는 데 이 설정이 작동되기 위해서는 미리 사용자 계정을 만들고 이 계정을 마이닝 작업 후 결과 Ether를 받을 Etherbase 설정한 후에 유효합니다. --mine // 마이닝 모드로 구동 , Etherbase(coinbase) 설정 후 작동됨. 다음은 geth의 Command line options에 대한 설명입니다. * 참조 : https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options 2) geth가 구동되었으면 이제부터 이더리움 콘솔상에서 자바 스크립트를 사용하여 작동시킬 수 있습니다. 이더리움 내부에 자바스크립트 런타임 환경을 구현했습니다. 먼저 Jay 라는 Account를 하나 생성합니다. 앞서 간략히 강조한 것처럼 이더리움에서 Account는 가장 중요합니다. 왜냐하면 모든 트렌젝션이 Account를 기준으로 작동되고 그 결과 Account의 상태를 바꾸는 방식으로 처리되기 때문입니다. 다음부터는 구동된 geth 의 Commnand line 상에서 하는 작업입니다. // Jay Account 생성 > personal.newAccount("Jay") > personal.newAccount("Jay") INFO [08-01|08:46:29] New wallet appeared url=keystore:///Users/jaehyunpark-a… status=Locked 0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662 // 다음의 명령으로 계좌 목록 조회할 수 있습니다. > eth.accounts > eth.accounts ["0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662"] // 다음으로 마이닝 후 보상을 받을 이더베이스(etherbase)를 지정합니다. 여기서는 앞서 만든 jay 어카운트로 지정합니다. > miner.setEtherbase(personal.listAccounts[0]) > miner.setEtherbase(personal.listAccounts[0]) true personal.listAccounts[0] 는 0번째 Account를 말하는 것이고 , 다른 방법으로 Jay의 식별키를 지정해도 됩니다. miner.setEtherbase("0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662") //이제 계정을 만들고 이더베이스를 설정했다면 마이닝을 하겠습니다. 마이닝 후 리워드 보상은 앞서 지정한 Jay 어카운트로 보내집니다. > miner.start() > miner.start() INFO [08-02|11:31:35] Updated mining threads threads=0 Null 다음과 같이 마이닝 쓰레드를 2개로 줄수도 있습니다. - miner..start() > miner.start(2) INFO [08-02|11:31:49] Updated mining threads threads=2 null 일단 실행을 시키면 백드라운드로 수행을 합니다. 이후 작업이 끝나면 결과를 콘솔을 통해 알려줍니다. > INFO [08-02|11:37:14] Successfully sealed new block number=4 hash=4300e0…bd850f INFO [08-02|11:37:14] 🔨 mined potential block number=4 hash=4300e0…bd850f INFO [08-02|11:37:14] Commit new mining work number=5 txs=0 uncles=0 elapsed=683.934µs 마이닝이 성공적으로 수행되면 다음의 명령어로 실제 받은 보상 결과를 알 수 있습니다. // 첫번째 계정의 잔액 조회 eth.getBalance(eth.accounts[0]) > eth.getBalance(eth.accounts[0]) 300000000000000000000 위의 결과를 보면 Jay 계정에 300 Ether가 생성되어 있습니다. 위의 표시는 Wei 이기 때문에 1/1018로 계산합니다. // 생성된 블록 수도 조회해 볼 수 있습니다. 블록이 1개 생겨 있습니다. eth.blockNumber > eth.blockNumber 1 4) 프라이빗 네트웍에서 geth를 작동시키기 위해서는 먼저 커스텀 제네시스 파일을 생성한 후 이를 geth를 구동시 init 명령으로 함께 호출합니다. 제네시스 블록은 블록체인의 시작 블록이기 때문에 반드시 이를 만들어야 한다. 제네시스 블록을 만든 후 프라이빗 블록체인은 자유롭게 만들 수 있습니다. 제네시스 파일 생성은 아주 중요하기 때문에 아래 커스텀 제네시스 파일 생성시 문법과 체크가 엄격한 편이다. 이전 버전의 포맷과 문법이 작동안되는 경우가 많아 애먹을 수 있다. 문제가 생길 때는 기존 chain data를 삭제 후 다시 구동시켜 해결하면 된다. //커스템 제네시스 파일 생성 , CustomGenesis.json { "config": { "chainId": 15, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "difficulty": "200000000", "gasLimit": "2100000", "alloc": { "0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662": { "balance": "300000000000000000000" }, } } 위의 파일 설정 중 alloc은 마이닝 작업을 하지 않고서도 미리 해당 계정에 지정된 만큼 Ether를 할당하는 것 입니다. 여기서는 300Ether를 미리 할당 합니다. 다음과 같이 geth를 통해 CustomGenesis.json 파일을 구동시키고 제네시스 파일을 생성한다. > geth167 --datadir /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain init CustomCenesis.json JAEHYUNui-MacBook-Air:privatechain jaehyunpark-air$ geth167 --datadir /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain init CustomGenesis.json INFO [08-01|15:59:33] Allocated cache and file handles database=/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain/geth/chaindata cache=16 handles=16 INFO [08-01|15:59:33] Writing custom genesis block INFO [08-01|15:59:33] Successfully wrote genesis state database=chaindata hash=d76c57…a31e33 INFO [08-01|15:59:33] Allocated cache and file handles database=/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain/geth/lightchaindata cache=16 handles=16 INFO [08-01|15:59:33] Writing custom genesis block INFO [08-01|15:59:33] Successfully wrote genesis state database=lightchaindata hash=d76c57…a31e33 이더리움 이더 갖고 놀아보기 : 송금. 이제 송금을 해 보겠습니다. 송금을 위해 Susie 라는 계정을 하나 더 만듭니다. // Sueie 계좌 생성 > personal.newAccount("Susie") > personal.newAccount("Susie") INFO [08-01|16:15:36] New wallet appeared url=keystore:///Users/jaehyunpark-a… status=Locked "0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d" 어카운트를 조회해 보면 총 2개의 어카운트가 생성되어 있음을 확인할 수 있습니다. > eth.accounts ["0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662", "0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d"] // Jay -> Susie 로 1Ether를 송금을 해 봅니다. > eth.sendTransaction({from : '0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662', to : '0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d' , value:web3.toWei(1,"ether")}) 위의 트렌젝션을 실행하면 Jay 계정에서 돈을 옮겨야 하는 데 LOCK되어 있으니 Unlock 시키라고 합니다. > personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662') Unlock account 0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662 Passphrase: Error: could not decrypt key with given passphrase 다음과 같이 JAY 계정의 UNLOCK을 시킴니다. > personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662') > personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662') Unlock account 0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662 Passphrase: true 또는 다음과 같이 해도됩니다. >web3.personal.unlockAccount("0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662") 패스워드를 묻는 데 Jay 라고 계정 이름을 넣으면 됩니다. 대소문자 구별을 합니다. 다시 송금 트렌젝션을 수행하면 다음과 같이 잘 작동합니다. > eth.sendTransaction({from : '0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662', to : '0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d' , value:web3.toWei(1,"ether")}) INFO [08-01|17:03:49] Submitted transaction fullhash=0x265514bd911fbb8dab9cb54a7e5be57c35ce445cb07d1762cd0f0f61b78a5843 recipient=0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d "0x265514bd911fbb8dab9cb54a7e5be57c35ce445cb07d1762cd0f0f61b78a5843" 그런데 바로 트렌젝션이 수행되지 않습니다. Ether가 부족하거나 트렌젝션의 부정이 아니라는 것을 계산하는 등 정합성을 Mining을 통해 테스트를 해야 합니다. 다음으로 펜딩중인 트렌젝션을 확인할 수 있습니다. >eth.pendingTransactions // 미확정 트렌젝션 확인 > eth.pendingTransactions [{ blockHash: null, blockNumber: null, from: "0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662", gas: 90000, gasPrice: 18000000000, hash: "0x1bfdad2d242b36c5a4662c29b0edb919e4a539de3edeec876d8c8e9679c3b706", input: "0x", nonce: 2, r: "0x4f9382cfb484c60565363d08a302d6e38e76cbd1ffb2877e840e2559348775e1", s: "0x58f5e424ada1282d71cf9fead65777bbc86ff4884126a2442dd06c2c05c739ab", to: "0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d", transactionIndex: 0, v: "0x41", value: 1000000000000000000 }] 다시 마이닝을 수행시켜 이더리움 블록내에 전달된 송금 트렌젝션의 정합성을 계산하고 문제가 없으면 체인내에 블록을 연결합니다. 이 연결이 실제 마이닝 작업 결과이자 송금이 완료되는 것 입니다. >miner.start() > miner.start() INFO [08-02|12:09:22] Updated mining threads threads=0 INFO [08-02|12:09:22] Transaction pool price threshold updated price=18000000000 null > INFO [08-02|12:09:22] Starting mining operation INFO [08-02|12:09:22] Commit new mining work number=5 txs=1 uncles=0 elapsed=31.313ms > INFO [08-02|12:10:56] Successfully sealed new block number=5 hash=ae00c8…b8ca2b INFO [08-02|12:10:56] 🔨 mined potential block number=5 hash=ae00c8…b8ca2b INFO [08-02|12:10:56] Commit new mining work number=6 txs=0 uncles=0 elapsed=1.215ms //다음으로 펜딩중인 트렌젝션을 확인할 수 있습니다. >eth.pendingTransactions // 미확정 트렌젝션 확인 > eth.pendingTransactions [] > //다음으로 Susie의 Account에 Ether가 송금됨을 확인할 수 있습니다. eth.getBalance(eth.accounts[1]) > eth.getBalance(eth.accounts[1]) 100000000000000000000 마치며 지금까지 Ether 콘솔상에서 personal , eth , web3 , miner 객체를 통해 이더리움 엔진을 다뤄봤습니다. 이를 이용하여 이더리움의 구동 환경과 실행 환경을 구축하며 , 이더리룸의 가상화폐인 Ether를 발행과 송금 등을 통해 이더리움 플랫폼에 대한 이해를 하였습니다. 다음에는 실제 Contact 프로그램과 간략히 작성하고 수행하면서 전체적인 이해를 완료하도록 하겠습니다. 오랜만에 다시 이것저것 엔진을 만지며 다시 여러가지 코드 조각을 만들어 보니 1998년 CORBA 엔진을 만들던 때가 떠오릅니다. 아마 당시에도 오픈소스 커뮤니티가 지금처럼 활성되었다면 더욱 크게 발전했을텐데 CORBA 자체의 개발 환경이 열악하다 보니 개발하는 데 많은 어려움이 많았습니다. 현재 이더리움도 초기 상태라 비슷한 상태로 보이는 데 조속히 멋진 개발 및 운영 도구들이 필요해 보입니다. |
| json metadata | {"tags":["ethreum","system","programming"],"image":["https://steemitimages.com/DQmSfExvSqqjUrKbfb1azpzNdwfDLkJrNXmSjuJP8ePx7hP/S__5767206.jpg","https://steemitimages.com/DQmee6eiaHTeu2KZAQiDEs7y1wwTKuCaGAXrdyski3Qz2fE/S__5767207.jpg"],"links":["https://raw.githubusercontent.com/Homebrew/install/master/install","http://golang.org/dl","https://github.com/ethreum/gi-ethreum.git","https://github.com/ethereum/go-ethereum/wiki/Installing-Geth#build-it-from-source-code","https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #14217984/Trx 14ed892a25bf532dfd308c9b39e75703a0a3b34e |
View Raw JSON Data
{
"trx_id": "14ed892a25bf532dfd308c9b39e75703a0a3b34e",
"block": 14217984,
"trx_in_block": 18,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-02T08:43:33",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ethreum",
"author": "wisefree",
"permlink": "1",
"title": "이더리움 프로그래밍 수업(1)",
"body": "박재현\n\t\t\t\t\t\t\t\t\t\[email protected] \n\t\t\t\t\t\t\t\t\t\thttp://wisefree.tistrory.com\n\n들어가며 \n\n비트코인과 블록체인, 그리고 이더리움에 대한 여러 자료들을 관련 사이트 등에서 찾아보면서 해당 내용이 이더리움 플랫폼의 최신 내용들과 다른 내용이 많아 테스트를 하거나 실제 프로그래밍을 하는 데 소소한 어려움이 많은 것을 느꼈습니다. 그리고 Ethereum.org 공식 채널을 포함, 주변에서 검색을 통해 접할 수 있는 이더리움 개발 관련 자료들이 적고 , 오래된 자료들이 많은 상황입니다. 따라서 Seoul Ethereum Meetup 멤버들과 기타 이더리움 개발을 하려는 분들의 손쉬운 이더리움 입문을 위해 포스팅을 시작합니다. 저도 함께 배우는 과정이기에 다소 부족한 부분이 많을 수 있으나 함께 채워나갔으면 합니다.\nMac 운영체제를 기준으로 작성하며 , 만약 이 포스팅에 문제가 발생할 경우 알려주면 이를 바로 잡을 계획입니다. \n이번 가이드를 통해 이더리움의 구동 환경을 이해하고 , 실행환경을 구축하며 , 이더리움의 가상화폐인 Ether를 발행하고 이를 다른 사용자에게 송금하면서 이더리움의 기본인 가상화폐를 다루는 것을 익힐 수 있습니다. \n\n이더리움 프로그램 구동 환경 이해\n\n다음은 간략한 이더리움 실행 환경입니다. Virtual Box 라는 가상화 엔진상에 geth라는 EVM(Ethereum Virtual Machine)가 위치합니다. 이 코어 엔진상에서 실행가능한 프로그램을 개발하는 것이 이더리움 프로그래밍입니다. \n\n자바스크립트나 파이썬 같은 기존의 언어들을 사용하여 프로그램을 작성해도 EVM에서 구동이 되기 때문에 이더리움을 튜링 컴플리트(Turing Complete)라고 합니다. 어렵게 생각말고 지금은 이더리움에서 일반 개발 언어를 사용해서 가능한 모든 것을 작성할 수 있다\" 라고 이해하면 됩니다. 참고로 , 비트코인은 튜링 컴플리트가 아닙니다. 보안 등 여러 이유로 if 문 만을 제공하는 등 의도적으로 제한된 범위 내에서만 개발을 지원합니다.\n\n현재 이더리움 엔진은 Go 언어와 C++ , 파이썬 등으로 개발되었고 Go언어 만든 Go-Ethereum이 가장 업데이트가 활발합니다(바이너리 이름이 geth입니다). 본 글에서도 Go-Ethereum을 사용합니다. 다음은 앞서 설명한 내용을 정리하였습니다. 본래 노트에 글쓰기를 좋아해서 노트한 것을 그냥 올립니다. 지저분해도 이해해 주세요. \n\n\n\n\n이더리움 엔진인 geth 은 3가지 인터페이스를 통해 활용이 가능합니다 -- (1) HTTP JSON RPC (2) web3.js 를 통한 자바스크립트 언어 (3) Solidity . \n\n위의 인터페이스를 다양한 언어로 이더리움 클라이언트를 개발할 수 있습니다. 가령, 자바 스크립트로 Web3.js를 사용하여 이더리움 클라이언트를 개발할 수 있습니다. 또는 JSON RPC 호출 후 자바로 클라이언트를 개발할 수도 있습니다. 그러나 이더리움 개발의 꽃인 Smart Contract를 개발하기 위해서는 Solidity를, Serpent, LLL 언어를 사용해야 합니다. 이 중 가장 각광받고 있는 Solidity 를 사용하겠습니다. 참고로 , 아직 Solidity는 개발 툴의 기능도 부족하고 여러면에서 부족하나 이더리움의 성장과 더불어 개발자에게 스스로의 가치를 높일 수 있는 좋은 기회가 될 것 입니다. \n\n다음은 이더리움의 전체 구동 환경을 정리한 그림입니다. 먼저 상단의 왼쪽을 보면 콘솔과 브라우져가 등장합니다. 사용자는 geth를 구동시킨 후 콘솔을 통해 일련의 콘솔 명령어를 통해 원하는 기능을 geth에게 지시할 수 있습니다. 더불어 Json RPC와 Web3.js 자바스크립 라이브러리로 작성된 프로그램을 브라우져를 통해 구동시킬 수 있습니다. \n\n\n\n하단부 왼쪽은 Smart Contract에 대한 구동 환경입니다. 개발자는 Solidity로 프로그램을 작성한 후 Solc 컴파일러를 통해 컴파일을 합니다. 컴파일된 결과는 바이크 코드 형태의 Contract입니다. 이 Contract를 geth에 배포하면 블록체인의 블록 형태로 저장되고 이후 EVM을 통해 실행이 됩니다. 이더리움이 P2P 이기 때문에 해당 Contract 는 다른 모든 이더리움 노드에도 복제가 되어 실행이 됩니다. 이 과정을 잘 이해하려면 이더리움이 Account 개념을 잘 이해해야 합니다. 간략히 이해를 돕기 위해 설명하면 이더리움의 모든 기본 단위는 Account 입니다. 이더리움 지갑 등을 만들 때 실제 사람 사용자가 만드는 Account가 있고( EOAs , Externally Owned Accounts ) , Contract Accont가 있습니다. 모든 Contract는 실제 Accont로 다뤄집니다. 이후에 좀 더 자세히 살펴보겠습니다. \n\n\n이더리움 설치 및 프로그래밍 환경 꾸미기\n\n1. 먼저 다음 3개의 오픈 소스 툴과 언어를 설치하여 사용 준비를 합니다. \n\n-Brew : Mac용 패키지 관리자 \n-Go : Go-Ethereum 설치용 Go 컴파일로\n-Geth : Version 1.6.7 ( 2017년 7월 30일 현재 최신 버전 )\n\n\n1) 먼저 Brew 를 설치합니다. 터미널에 다음의 명령어를 입력합니다.\n\n /usr/bin/ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"\n\n\n2) 다음의 Go 공식 웹 사이트에 가서 Mac OSX 용 패키지를 다운로드 받아 설치합니다. 본 글에서는 1.8.3 을 사용합니다.\n\nhttp://golang.org/dl\n\n3) 다음으로 Geth을 설치합니다. 현재 Geth의 최신 버전은 V1.6.7 로 해당 버전을 사용합니다..\n\n다음에서 Geth의 소스코드를 다운로드 받는다.\n\n- 다운로드 Geth 1.6.7.(ZIP) \n\n또는 다음과 같이 git을 사용하는 방법도 있습니다.\n\ngit clone -b release/1.6.7 https://github.com/ethreum/gi-ethreum.git\n\n다운로드 받은 해당 디렉토리로 이동 후 다음 명령을 실행하여 소스코드를 컴파일합니다.\n\n$>> make geth\n\nJAEHYUNui-MacBook-Air:go-ethereum-1.6.7 jaehyunpark-air$ make geth\nbuild/env.sh go run build/ci.go install ./cmd/geth\n>>> /usr/local/go/bin/go install -ldflags -s -v ./cmd/geth\n\n4) 기타 환경 꾸미기\n\n컴파일 후 \"현재 설치한 폴더 밑에 /build/bin 폴더\"에 geth 라는 실행 파일이 생성됩니다. geth 파일은 다른 라이브러리나 패키지에 dependency가 없기 때문에 원하는 폴더로 옮겨도 작동됩니다. 참고로 , 현재 Geth 소스코드는 Go언어로 개발되었기 때문에 컴파일시 Go 컴파일러가 필요하다. Go1.8.3을 사용하여 컴파일 합니다.\n\n* 참조 : https://github.com/ethereum/go-ethereum/wiki/Installing-Geth#build-it-from-source-code )\n\n여러 버전의 Geth를 사용할 수 있기 때문에 편의상 alias를 만듭니다. 아래에서는 /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/geth를 geth167로 alias합니다. 이후 geth167로 이더리움을 구동시킵니다.\n\nJAEHYUNui-MacBook-Air:bin jaehyunpark-air$ echo \"alias geth167='/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/geth' \" >> ~/.bashrc\n\n실제 쉘에 위의 내용을 반영을 해줍니다. 매번 로그인시 마다 적용을 위해서는 .profile 에 해당 내용을 반영해 둡니다. 편의를 위해 하는 작업입니다.\n\nJAEHYUNui-MacBook-Air:bin jaehyunpark-air$ source ~/.bashrc\n \n이제 geth167 을 입력하면 바로 geth를 실행시킬 수 있다.\n\n\n이더리움 엔진 갖고 놀아보기\n\n이제 이더리움 엔진을 프라이빗 네트웍에서 구동시키고 다뤄보겠습니다. 가이드를 보면 프라이빗 블록체인을 구성할 때 4가지에 신경쓰라고 합니다. \n\n- 커스텀 제네시스 파일 설정을 통해 최초의 이더리움 블록 생성\n- 커스텀 데이타 디렉토리 설정을 통해 블록체인 스토리지 구성\n- 커스템 네트웍 ID 설정을 통해 내가 구축한 프라이빗 블록체인 명명하기\n- 프라이빗 네트웍에서 이용시 추천 사항으로 다른 노드와 연결하기 위해 자동으로 탐색하는 것을 방지하기\n\n\n자 이제 슬슬 구동을 시켜 보겠습니다.\n\n1)먼저 , 구동에 필요한 블록체인 데이타를 저장할 폴더로 privatechain을 생성한다. 원하는 이름으로 자유롭게 바꿔도 됩니다.\n\nJAEHYUNui-MacBook-Air:bin jaehyunpark-air$ mkdir privatechain\n\n\n다음의 구동 명령을 통해 geth를 실행시킨다.\n\n\ngeth167 --identity \"JayBlockChain\" --rpc --rpcport \"8080\" --rpccorsdomain \"*\" --datadir \"/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain\" --port \"30303\" --nodiscover --rpcapi \"db,eth,net,web3\" --networkid 1999 console\n\n위의 구동 명령 중 --datadir 이 커스텀 디렉토리를 설정하는 옵션입니다.그리고 커스텀 네트웍ID는 --networkid을 사용하여 1999로 설정하였고 --nodiscover 옵션을 지정하여 다른 노드에서 탐색하여 연결하는 것을 방지하였습니다. 이 설정을 하지 않으면 P2P 노드 연결을 위해 계속해서 ping 이 발생합니다. \n\n--identity \"JayBlockChain\" // 내 프라이빗 노드의 아이덴티티. \n--rpc // RPC 인터페이스 가능하게 함.\n--rpcport \"8080\" // RPC 포트 지정\n--rpccorsdomain \"*\" // 접속가능한 RPC 클라이언트 URL 지정 , \n\t\t\t\t// 가능한 *(전체 허용) 보다는 URL을 지정하는 게 보안상 좋음. \n--datadir \"/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain\" // 커스텀 디렉토리 지정\n--port \"30303\" // 네트웍 Listening Port 지정\n--nodiscover // 같은 제네시스 블록과 네트웍ID에 있는 블록에 연결 방지 \n--rpcapi \"db,eth,net,web3\" // RPC에 의해서 접근을 허락할 API\n--networkid 1999 \n console // 출력을 콘솔로 함.\n\n\n참고로 마이닝이 가능하도록 구동시키려면 --mine 옵션을 설정해야 하는 데 이 설정이 작동되기 위해서는 미리 사용자 계정을 만들고 이 계정을 마이닝 작업 후 결과 Ether를 받을 Etherbase 설정한 후에 유효합니다. \n\n--mine // 마이닝 모드로 구동 , Etherbase(coinbase) 설정 후 작동됨.\n\n\n다음은 geth의 Command line options에 대한 설명입니다. \n* 참조 : https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options\n\n\n2) geth가 구동되었으면 이제부터 이더리움 콘솔상에서 자바 스크립트를 사용하여 작동시킬 수 있습니다. 이더리움 내부에 자바스크립트 런타임 환경을 구현했습니다. 먼저 Jay 라는 Account를 하나 생성합니다. 앞서 간략히 강조한 것처럼 이더리움에서 Account는 가장 중요합니다. 왜냐하면 모든 트렌젝션이 Account를 기준으로 작동되고 그 결과 Account의 상태를 바꾸는 방식으로 처리되기 때문입니다. \n\n다음부터는 구동된 geth 의 Commnand line 상에서 하는 작업입니다.\n\n// Jay Account 생성\n> personal.newAccount(\"Jay\")\n> personal.newAccount(\"Jay\")\nINFO [08-01|08:46:29] New wallet appeared url=keystore:///Users/jaehyunpark-a… status=Locked\n0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\n\n\n// 다음의 명령으로 계좌 목록 조회할 수 있습니다.\n> eth.accounts\n> eth.accounts\n[\"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\"] \n\n\n\n// 다음으로 마이닝 후 보상을 받을 이더베이스(etherbase)를 지정합니다. 여기서는 앞서 만든 jay 어카운트로 지정합니다.\n\n> miner.setEtherbase(personal.listAccounts[0])\n> miner.setEtherbase(personal.listAccounts[0])\ntrue\n\n\npersonal.listAccounts[0] 는 0번째 Account를 말하는 것이고 , 다른 방법으로 Jay의 식별키를 지정해도 됩니다.\n\nminer.setEtherbase(\"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\")\n\n\n//이제 계정을 만들고 이더베이스를 설정했다면 마이닝을 하겠습니다. 마이닝 후 리워드 보상은 앞서 지정한 Jay 어카운트로 보내집니다.\n\n> miner.start()\n> miner.start()\nINFO [08-02|11:31:35] Updated mining threads threads=0\nNull\n\n다음과 같이 마이닝 쓰레드를 2개로 줄수도 있습니다. - miner..start()\n> miner.start(2)\nINFO [08-02|11:31:49] Updated mining threads threads=2\nnull\n\n\n일단 실행을 시키면 백드라운드로 수행을 합니다. 이후 작업이 끝나면 결과를 콘솔을 통해 알려줍니다. \n> INFO [08-02|11:37:14] Successfully sealed new block number=4 hash=4300e0…bd850f\nINFO [08-02|11:37:14] 🔨 mined potential block number=4 hash=4300e0…bd850f\nINFO [08-02|11:37:14] Commit new mining work number=5 txs=0 uncles=0 elapsed=683.934µs\n\n마이닝이 성공적으로 수행되면 다음의 명령어로 실제 받은 보상 결과를 알 수 있습니다.\n\n// 첫번째 계정의 잔액 조회\neth.getBalance(eth.accounts[0])\n> eth.getBalance(eth.accounts[0])\n300000000000000000000\n\n위의 결과를 보면 Jay 계정에 300 Ether가 생성되어 있습니다. 위의 표시는 Wei 이기 때문에 1/1018로 계산합니다. \n\n// 생성된 블록 수도 조회해 볼 수 있습니다. 블록이 1개 생겨 있습니다.\neth.blockNumber\n> eth.blockNumber\n1\n\n\n4) 프라이빗 네트웍에서 geth를 작동시키기 위해서는 먼저 커스텀 제네시스 파일을 생성한 후 이를 geth를 구동시 init 명령으로 함께 호출합니다. 제네시스 블록은 블록체인의 시작 블록이기 때문에 반드시 이를 만들어야 한다. 제네시스 블록을 만든 후 프라이빗 블록체인은 자유롭게 만들 수 있습니다.\n\n제네시스 파일 생성은 아주 중요하기 때문에 아래 커스텀 제네시스 파일 생성시 문법과 체크가 엄격한 편이다. 이전 버전의 포맷과 문법이 작동안되는 경우가 많아 애먹을 수 있다. 문제가 생길 때는 기존 chain data를 삭제 후 다시 구동시켜 해결하면 된다. \n\n//커스템 제네시스 파일 생성 , CustomGenesis.json\n{\n \"config\": {\n \"chainId\": 15,\n \"homesteadBlock\": 0,\n \"eip155Block\": 0,\n \"eip158Block\": 0\n },\n \"difficulty\": \"200000000\",\n \"gasLimit\": \"2100000\",\n \"alloc\": {\n \"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\": { \"balance\": \"300000000000000000000\" },\n }\n}\n\n\n\n위의 파일 설정 중 alloc은 마이닝 작업을 하지 않고서도 미리 해당 계정에 지정된 만큼 Ether를 할당하는 것 입니다. 여기서는 300Ether를 미리 할당 합니다. \n\n다음과 같이 geth를 통해 CustomGenesis.json 파일을 구동시키고 제네시스 파일을 생성한다. \n\n> geth167 --datadir /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain init CustomCenesis.json\n\n\nJAEHYUNui-MacBook-Air:privatechain jaehyunpark-air$ geth167 --datadir /Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain init CustomGenesis.json\nINFO [08-01|15:59:33] Allocated cache and file handles database=/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain/geth/chaindata cache=16 handles=16\nINFO [08-01|15:59:33] Writing custom genesis block \nINFO [08-01|15:59:33] Successfully wrote genesis state database=chaindata hash=d76c57…a31e33\nINFO [08-01|15:59:33] Allocated cache and file handles database=/Users/jaehyunpark-air/go-ethereum/go-ethereum-1.6.7/build/bin/privatechain/geth/lightchaindata cache=16 handles=16\nINFO [08-01|15:59:33] Writing custom genesis block \nINFO [08-01|15:59:33] Successfully wrote genesis state database=lightchaindata hash=d76c57…a31e33\n\n이더리움 이더 갖고 놀아보기 : 송금.\n\n이제 송금을 해 보겠습니다. 송금을 위해 Susie 라는 계정을 하나 더 만듭니다.\n\n// Sueie 계좌 생성\n> personal.newAccount(\"Susie\")\n\n> personal.newAccount(\"Susie\")\nINFO [08-01|16:15:36] New wallet appeared url=keystore:///Users/jaehyunpark-a… status=Locked\n\"0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d\"\n\n어카운트를 조회해 보면 총 2개의 어카운트가 생성되어 있음을 확인할 수 있습니다.\n> eth.accounts\n[\"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\", \"0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d\"]\n\n// Jay -> Susie 로 1Ether를 송금을 해 봅니다.\n\n> eth.sendTransaction({from : '0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662', to : '0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d' , value:web3.toWei(1,\"ether\")})\n\n위의 트렌젝션을 실행하면 Jay 계정에서 돈을 옮겨야 하는 데 LOCK되어 있으니 Unlock 시키라고 합니다. \n\n> personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662')\nUnlock account 0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\nPassphrase: \n Error: could not decrypt key with given passphrase\n\n다음과 같이 JAY 계정의 UNLOCK을 시킴니다.\n\n> personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662') \n> personal.unlockAccount('0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662')\nUnlock account 0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\nPassphrase: \ntrue\n\n또는 다음과 같이 해도됩니다.\n>web3.personal.unlockAccount(\"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\")\n\n\n\n패스워드를 묻는 데 Jay 라고 계정 이름을 넣으면 됩니다. 대소문자 구별을 합니다. 다시 송금 트렌젝션을 수행하면 다음과 같이 잘 작동합니다.\n\n\n> eth.sendTransaction({from : '0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662', to : '0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d' , value:web3.toWei(1,\"ether\")})\nINFO [08-01|17:03:49] Submitted transaction fullhash=0x265514bd911fbb8dab9cb54a7e5be57c35ce445cb07d1762cd0f0f61b78a5843 recipient=0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d\n\"0x265514bd911fbb8dab9cb54a7e5be57c35ce445cb07d1762cd0f0f61b78a5843\"\n\n그런데 바로 트렌젝션이 수행되지 않습니다. Ether가 부족하거나 트렌젝션의 부정이 아니라는 것을 계산하는 등 정합성을 Mining을 통해 테스트를 해야 합니다. \n\n다음으로 펜딩중인 트렌젝션을 확인할 수 있습니다.\n>eth.pendingTransactions // 미확정 트렌젝션 확인\n> eth.pendingTransactions \n[{\n blockHash: null,\n blockNumber: null,\n from: \"0xb2cf02bea7e2538a90b634fcbe2cbf1dd9ee6662\",\n gas: 90000,\n gasPrice: 18000000000,\n hash: \"0x1bfdad2d242b36c5a4662c29b0edb919e4a539de3edeec876d8c8e9679c3b706\",\n input: \"0x\",\n nonce: 2,\n r: \"0x4f9382cfb484c60565363d08a302d6e38e76cbd1ffb2877e840e2559348775e1\",\n s: \"0x58f5e424ada1282d71cf9fead65777bbc86ff4884126a2442dd06c2c05c739ab\",\n to: \"0x87c4ef09c4e94249ed94b74d6d573c3dc902f15d\",\n transactionIndex: 0,\n v: \"0x41\",\n value: 1000000000000000000\n}]\n\n다시 마이닝을 수행시켜 이더리움 블록내에 전달된 송금 트렌젝션의 정합성을 계산하고 문제가 없으면 체인내에 블록을 연결합니다. 이 연결이 실제 마이닝 작업 결과이자 송금이 완료되는 것 입니다. \n\n>miner.start()\n> miner.start()\nINFO [08-02|12:09:22] Updated mining threads threads=0\nINFO [08-02|12:09:22] Transaction pool price threshold updated price=18000000000\nnull\n> INFO [08-02|12:09:22] Starting mining operation \nINFO [08-02|12:09:22] Commit new mining work number=5 txs=1 uncles=0 elapsed=31.313ms\n\n> INFO [08-02|12:10:56] Successfully sealed new block number=5 hash=ae00c8…b8ca2b\nINFO [08-02|12:10:56] 🔨 mined potential block number=5 hash=ae00c8…b8ca2b\nINFO [08-02|12:10:56] Commit new mining work number=6 txs=0 uncles=0 elapsed=1.215ms\n\n\n//다음으로 펜딩중인 트렌젝션을 확인할 수 있습니다.\n>eth.pendingTransactions // 미확정 트렌젝션 확인\n> eth.pendingTransactions \n[]\n> \n\n//다음으로 Susie의 Account에 Ether가 송금됨을 확인할 수 있습니다.\neth.getBalance(eth.accounts[1])\n> eth.getBalance(eth.accounts[1])\n100000000000000000000\n\n\n\n마치며 \n\n지금까지 Ether 콘솔상에서 personal , eth , web3 , miner 객체를 통해 이더리움 엔진을 다뤄봤습니다. 이를 이용하여 이더리움의 구동 환경과 실행 환경을 구축하며 , 이더리룸의 가상화폐인 Ether를 발행과 송금 등을 통해 이더리움 플랫폼에 대한 이해를 하였습니다. 다음에는 실제 Contact 프로그램과 간략히 작성하고 수행하면서 전체적인 이해를 완료하도록 하겠습니다. \n\n오랜만에 다시 이것저것 엔진을 만지며 다시 여러가지 코드 조각을 만들어 보니 1998년 CORBA 엔진을 만들던 때가 떠오릅니다. 아마 당시에도 오픈소스 커뮤니티가 지금처럼 활성되었다면 더욱 크게 발전했을텐데 CORBA 자체의 개발 환경이 열악하다 보니 개발하는 데 많은 어려움이 많았습니다. 현재 이더리움도 초기 상태라 비슷한 상태로 보이는 데 조속히 멋진 개발 및 운영 도구들이 필요해 보입니다.",
"json_metadata": "{\"tags\":[\"ethreum\",\"system\",\"programming\"],\"image\":[\"https://steemitimages.com/DQmSfExvSqqjUrKbfb1azpzNdwfDLkJrNXmSjuJP8ePx7hP/S__5767206.jpg\",\"https://steemitimages.com/DQmee6eiaHTeu2KZAQiDEs7y1wwTKuCaGAXrdyski3Qz2fE/S__5767207.jpg\"],\"links\":[\"https://raw.githubusercontent.com/Homebrew/install/master/install\",\"http://golang.org/dl\",\"https://github.com/ethreum/gi-ethreum.git\",\"https://github.com/ethereum/go-ethereum/wiki/Installing-Geth#build-it-from-source-code\",\"https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}2017/08/01 22:34:24
2017/08/01 22:34:24
| parent author | wisefree |
| parent permlink | 2kyrz5 |
| author | thornchenola |
| permlink | re-wisefree-2kyrz5-20170801t223603816z |
| title | |
| body | Write good |
| json metadata | {"tags":["autonomouscar"],"app":"steemit/0.1"} |
| Transaction Info | Block #14205802/Trx 98dd4695f26801b05028beb049f85051ea5b0be1 |
View Raw JSON Data
{
"trx_id": "98dd4695f26801b05028beb049f85051ea5b0be1",
"block": 14205802,
"trx_in_block": 25,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-08-01T22:34:24",
"op": [
"comment",
{
"parent_author": "wisefree",
"parent_permlink": "2kyrz5",
"author": "thornchenola",
"permlink": "re-wisefree-2kyrz5-20170801t223603816z",
"title": "",
"body": "Write good",
"json_metadata": "{\"tags\":[\"autonomouscar\"],\"app\":\"steemit/0.1\"}"
}
]
}2017/07/27 08:12:06
2017/07/27 08:12:06
| required auths | [] |
| required posting auths | ["wisefree"] |
| id | follow |
| json | ["follow",{"follower":"wisefree","following":"atomrigs","what":["blog"]}] |
| Transaction Info | Block #14044663/Trx 873cc7a4d926121349658ce437ba7fc583adc95a |
View Raw JSON Data
{
"trx_id": "873cc7a4d926121349658ce437ba7fc583adc95a",
"block": 14044663,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-27T08:12:06",
"op": [
"custom_json",
{
"required_auths": [],
"required_posting_auths": [
"wisefree"
],
"id": "follow",
"json": "[\"follow\",{\"follower\":\"wisefree\",\"following\":\"atomrigs\",\"what\":[\"blog\"]}]"
}
]
}2017/07/27 07:47:45
2017/07/27 07:47:45
| voter | wisefree |
| author | wisefree |
| permlink | 6kbxbw |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14044176/Trx f8d866d8a36bdc981fd43ffad0a6be73f65a5d62 |
View Raw JSON Data
{
"trx_id": "f8d866d8a36bdc981fd43ffad0a6be73f65a5d62",
"block": 14044176,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-27T07:47:45",
"op": [
"vote",
{
"voter": "wisefree",
"author": "wisefree",
"permlink": "6kbxbw",
"weight": 10000
}
]
}2017/07/27 07:47:45
2017/07/27 07:47:45
| parent author | |
| parent permlink | blockchain |
| author | wisefree |
| permlink | 6kbxbw |
| title | 지금이 바로 블록체인의 골든타임 |
| body | 골든 타임 꺼져가는 생명을 살릴 수 있는 마지막 시간을 말한다. 연일 가상화폐 비트코인이 사회 관심사로 대두되고 있는 지금 , 비트코인의 기반 기술인 블록체인에 대한 진지한 고민이 비트코인 열풍 뒤로 사라지고 있다. 과거 다수 사람들은 인터넷을 과학자들의 호기심 만족을 위한 장난으로 치부했었고 , 디지탈 사진이 인공적이며 프린팅된 사진을 사람들이 더 좋아한다고 했었다. 마찬가지로 현재 많은 경제학자들과 사람들이 여전히 비트코인과 블록체인을 반짝 유행으로 치부하고 있다. 과연 정말 그럴까? 지금 우리는 4차 산업 혁명에 있어 가장 중요한 기술이라는 블록체인을 리드할 수 있는 골든 타입을 놓치고 있는 것은 아닐까? **블록체인과 이더리움과 비트코인란?** 블록체인은 비지니스 위키(Wiki)이다. 모든 사람들이 자유롭게 특정 항목에 대한 내용을 함께 정리하고 공유하고 그 내용을 검증할 수 있는 공간인 위키처럼 블록체인은 불특정 다수가 자유롭게 비지니스 거래 내용을 기록하고 함께 검증하는 비지니스 백과사전이다. 이 둘의 차이점은 위키는 중앙에 모든 데이타가 모이는 데 반해 블록체인은 모든 거래 데이타가 참여자의 컴퓨터에 분산되어 있다.  아마 블록체인이 어떤 것인지 대충 감이 올 것이다. 좀더 정교하게 표현해 보면 블록체인은 여러 거래를 1MB 크기의 블록에 저장한 후 과반 이상의 사람들의 검증에 의해 이상이 없다는 것이 밝혀진 블록들을 하나의 체인으로 연결한다. 연결된 블록들은 참여자들의 컴퓨터에 모두 동일하게 저장하는 개인간 분산 장부(Ledger)이다. 이런 구조를 통해 블록체인은 분산 시스템이 갖추어야 할 요건인 신뢰성(Consistency), 가용성(Availability), 분리 내구성(Partitions Tolerance)을 모두 만족한다. 보통 이들 요건을 만족하는 분산 시스템은 거의 없다. 신뢰할만한 분산 데이타 저장 시스템인 블록체인은 초기 가상화폐인 비트코인을 위해 개발되었으나 2013년 비탈린 부테린에 의해 스마트 계약과 댑(Dapp) 등 다양한 분야에 적용할 수 있는 플랫폼 기능이 보강된 이더리움으로 거듭난다. 이더리움 발표 이후의 블록체인을 블록체인 2.0이라 부른다. 비트코인과 이더리움은 서로 다른 가상화폐이나 블록체인 기술을 동일하게 사용한다. 그러나 비트코인이 오직 가상화폐인데 반해 , 이더리움은 가상 화폐뿐만 아니라 금융, 교통 등 다양한 분야에 적용이 가능한 범용 플랫폼이라는 점이 서로 다르다 ( 비트코인 등 가상화폐에 대한 보다 자세한 내용은 **"반드시 알아야 할 돈이야기 ( http://wisefree.tistory.com/473 )"**를 참고하기 바란다 ). **블록체인이 혁신적인 이유는?** 블록체인은 기존 중앙집중식 중계형 플랫품을 개인간 분산된 플랫폼으로 바꿀 수 있다. 현재 대부분의 플랫폼 기반 서비스들은 제공자와 이용자들간의 연결과 거래를 중계하며 수수료를 취하는 모델이다. 가령, 우버는 자동차를 이용하려는 사용자와 제공자를 연계하고 , 에어비엔비는 방이나 집을 빌려주려는 제공자와 빌리려는 사용자를 연결하면서 수수료를 취한다. 이는 구글도 네이버도 모두 마찬가지이다. 블록체인은 이러한 중앙집중식 중계형 플랫폼 모델을 개인간의 직거래 모델로 전환하고 중간의 수수료를 없애는 파괴적인 혁신 모델을 구축할 수 있다. 또한 블록체인은 스마트 계약( Smart Contract ) 이라는 혁신적인 기능을 제공한다. 블록체인 개발자는 거래 세부 내용을 직접 개발 코드로 프로그래밍하고 이를 블록내에 포함시킬 수 있다. 이 코드는 제3자의 개입 없이 특정 계약 조건이 만족되면 자동으로 실행을 한다. 가령, 특정 사람간에 어떤 작업을 완료했을 경우 자동으로 가상화폐를 통해 대가가 지불되도록 만들 수 있으며 이 작업 내용은 블록체인 사용자가 모두 투명하게 검증하고 관리하게 때문에 실생활에서 간혹 발생하는 거래 부정이나 사기를 막을 수 있다. 스마트 계약 등을 활용해 개발된 다양한 산업 분야의 분산 애플리케이션을 댑(Dspps , Decantralized Apps)라 부른다. 댑은 블록체인내에 저장되고 서버 없이 구동되기 때문에 아주 유용하다. 현재 약 600개의 댑들이 다양하게 개발중이며 이들 댑 거래소 또한 만들어 지고 있다. **블럭체인의 적용 현황은?** 블록체인은 금융 분야를 비롯하여 , 보험, 교통 , 항공, 헬스케어, IoT , 에너지 , 물류와 배송, 음악, 제조, 보안, 쇼셜 미디어 그리고 공공 분야 등 거의 모든 주요 산업 분야에 적용되어 산업 구조를 바꾸고 있다. 특히, 금융과 교통 분야에 효과가 크다. 우리가 일반적으로 가장 많이 사용하는 결제에 대해 생각해 보자. 현재 일반 상점에서 신용카드나 직불 카드 결제시 결제 정보는 VAN사 , 카드사 , 은행 등 관련된 기관을 거쳐 처리된다. 이 과정에서 VAN사는 결제 건당 수수료를 그리고 카드사와 은행은 결제 금액의 일정 비율을 수수료로 가져간다. 온라인도 마찬가지이다. 우리가 11번가 같은 커머스 서비스를 통해 물건을 구매하고 결제를 할 경우 PG(Payment Gateway)사를 통해 결제 정보가 전달이 되고 카드사, 은행 등 관련 기관이 이를 처리하며 이 과정에서 수수료를 가져간다. 국내의 경우 , 이러한 수수료는 상점주가 부담을 지게 되는 데 이로 인해 대부분의 상점주는 현금 또는 가능한 수수료가 적은 결제 수단을 선호하게 된다. 블록 체인을 사용하면 이러한 복잡한 과정을 없애고 구매자가 직접 판매자에게 물건 대금을 지불할 수 있다. 이 때, 결제 수단은 가상화폐이다. 물론, 가상화폐가 변동성이 있기 때문에 실제 결제에 쓸 수 없다라는 의견도 있으나 실제 결제시 적용되는 가상화폐를 법정화폐와 1:1로 연동하여 안정적으로 사용할 수 있다. 현재 리플(Ripple), 리얼코인(Realcoin), 비트리저브(BitReserve) 등 이 유사한 수단을 제공하고 있다. 이렇듯, 블록체인은 결제, 담보 및 신용 대출, 송금, 융자, 환전 등 전 금융 분야에 있어 혁신을 제공한다. 잠시 자율주행차에 대해서도 생각해 보자. 자율주행차가 일반화되면 이를 관제하고 모니터링하기 위한 새로운 방법이 필요하다. 새로운 자율 주행 관제 센터는 실시간으로 차량을 모니터링하고 문제 발생시 이를 즉시 온라인으로 해결하기 위한 모든 것을 갖추어야 한다. 특히, 긴급 패치나 업데이트가 필요하고 외부의 침입으로 부터 차량을 실시간으로 보호해야 한다. 자율 주행차의 운영 시스템은 비행기 운영 시스템 처럼 각 기능들은 철저히 고립되어야 하고 , 특정 기능에 문제가 발생하면 다른 모듈로 즉시 대체되는 등 안정성을 높여야 한다. 이들 기능들에 모두 우선하는 기능으로 Kill Switch가 필요하다. 이 킬 스위치는 전체 차량이나 차량의 일부 기능의 작동을 즉시 중간시켜 긴급 상황에서 문제 해결을 가능하게 해준다. 이러한 새로운 자율주행 시대를 어떻게 관리해야 할까? 블록체인 기술을 사용하여 이를 해결할 수 있다. 자동차 지갑(Car Wallet)을 통해 유료도로, 주차장, 충전요금 지불 등을 제공하고 , 주행 변조방지와 변조 불가능한 블랙박스 개발 등에 적용할 뿐만 아니라 자동차의 모든 상태 정보를 보험사와 공유하여 다양한 자동차 보험을 만들 수도 있다. 또한 중앙에서 공유 거래를 컨트롤하는 우버와 달리 개인간에 직공유가 가능한 자동차 공유 서비스에도 적용할 수 있다. 참고로, OAKEN 오픈소스 프로젝트의 경우 테슬라의 솔라시티를 위해 블록체인 기반의 충전소 및 고속도로 결제 솔루션을 개발하고 있다 ( UAE GovHack - Tesla & Tollbooth on Blockchain (Official Submission) ).  **블록체인의 미래는?** 인텔, MS, IBM , Provenance, Consensus Systems, Reply, RSK Labs 등 많은 업체들이 블록체인을 서비스(Blockchain as a Service) 형태로 제공하기 시작했다. 또한 이더리움 블록체인 기술을 기업에 보다 효과적으로 적용하기 위한 EEA(Enterprise Ethereum Alliance) 가 만들어져 기업용 블록체인 오프소스인 하이퍼 레져(Hyper ledger)를 발표하였다. 현재 150개가 넘는 조직이 멤버로 참여 중이다. 가상화폐의 확산과 채택 여부와 별도로 블록체인 기술은 다양한 산업 분야에 확산될 것이다. 4차 산업 혁명 시대를 앞당길 진정한 주역이 블록체인 플랫폼이 될 것이다. 인공지능은 실제 데이타와 알고리즘, 그리고 컴퓨팅 파워를 갖고 있는 소수의 업체에 의해 주도되고 있고 이는 더욱 심화가 될 것이다. 그러나 블록체인은 모두가 동등한 권리와 권한을 갖고 투명한 거래와 프로세스를 만들고 이 과정에서 나온 모든 데이타를 공유한다. 현재 많은 국가의 정부와 학교, 그리고 산업계 리더 회사들은 블록체인을 여러 사업에 시범 적용을 하고 있다. 지금이 블록체인 기술이 폭발적으로 확산하기 바로 전 단계라 할 수 있다. 현재 우리나라의 경우 가상화폐인 비트코인의 열풍에 가려 블록체인 기술이 중요성이 간과되고 있는 실정이다. 바로 지금, 블록체인 기술의 인력을 양성하고 시범적용을 늘리며 기반을 조성하고 역량을 확보 해야 한다. 자칫 우리는 블록체인의 골든타임을 놓칠 수 있다. |
| json metadata | {"tags":["blockchain","bitcoin"],"image":["https://steemitimages.com/DQmXtExHkZEaDrrKu8HUH2xNpxf5eJhj773EXPhbZFJHuyo/43639_31877_1031.jpg","https://steemitimages.com/DQmSCyXkxqex75PHtKjB5yHo552i2PENGdg8nJpQjnURx1e/bitcoin-2008262_1920-600x450.jpg"],"links":["http://wisefree.tistory.com/473"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #14044176/Trx f8d866d8a36bdc981fd43ffad0a6be73f65a5d62 |
View Raw JSON Data
{
"trx_id": "f8d866d8a36bdc981fd43ffad0a6be73f65a5d62",
"block": 14044176,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-27T07:47:45",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "blockchain",
"author": "wisefree",
"permlink": "6kbxbw",
"title": "지금이 바로 블록체인의 골든타임",
"body": "골든 타임 \n \n꺼져가는 생명을 살릴 수 있는 마지막 시간을 말한다. 연일 가상화폐 비트코인이 사회 관심사로 대두되고 있는 지금 , 비트코인의 기반 기술인 블록체인에 대한 진지한 고민이 비트코인 열풍 뒤로 사라지고 있다. 과거 다수 사람들은 인터넷을 과학자들의 호기심 만족을 위한 장난으로 치부했었고 , 디지탈 사진이 인공적이며 프린팅된 사진을 사람들이 더 좋아한다고 했었다. 마찬가지로 현재 많은 경제학자들과 사람들이 여전히 비트코인과 블록체인을 반짝 유행으로 치부하고 있다. 과연 정말 그럴까? 지금 우리는 4차 산업 혁명에 있어 가장 중요한 기술이라는 블록체인을 리드할 수 있는 골든 타입을 놓치고 있는 것은 아닐까? \n \n**블록체인과 이더리움과 비트코인란?**\n \n블록체인은 비지니스 위키(Wiki)이다. 모든 사람들이 자유롭게 특정 항목에 대한 내용을 함께 정리하고 공유하고 그 내용을 검증할 수 있는 공간인 위키처럼 블록체인은 불특정 다수가 자유롭게 비지니스 거래 내용을 기록하고 함께 검증하는 비지니스 백과사전이다. 이 둘의 차이점은 위키는 중앙에 모든 데이타가 모이는 데 반해 블록체인은 모든 거래 데이타가 참여자의 컴퓨터에 분산되어 있다.\n\n\n\n아마 블록체인이 어떤 것인지 대충 감이 올 것이다. 좀더 정교하게 표현해 보면 블록체인은 여러 거래를 1MB 크기의 블록에 저장한 후 과반 이상의 사람들의 검증에 의해 이상이 없다는 것이 밝혀진 블록들을 하나의 체인으로 연결한다. 연결된 블록들은 참여자들의 컴퓨터에 모두 동일하게 저장하는 개인간 분산 장부(Ledger)이다. 이런 구조를 통해 블록체인은 분산 시스템이 갖추어야 할 요건인 신뢰성(Consistency), 가용성(Availability), 분리 내구성(Partitions Tolerance)을 모두 만족한다. 보통 이들 요건을 만족하는 분산 시스템은 거의 없다.\n \n신뢰할만한 분산 데이타 저장 시스템인 블록체인은 초기 가상화폐인 비트코인을 위해 개발되었으나 2013년 비탈린 부테린에 의해 스마트 계약과 댑(Dapp) 등 다양한 분야에 적용할 수 있는 플랫폼 기능이 보강된 이더리움으로 거듭난다. 이더리움 발표 이후의 블록체인을 블록체인 2.0이라 부른다. 비트코인과 이더리움은 서로 다른 가상화폐이나 블록체인 기술을 동일하게 사용한다. 그러나 비트코인이 오직 가상화폐인데 반해 , 이더리움은 가상 화폐뿐만 아니라 금융, 교통 등 다양한 분야에 적용이 가능한 범용 플랫폼이라는 점이 서로 다르다 ( 비트코인 등 가상화폐에 대한 보다 자세한 내용은 **\"반드시 알아야 할 돈이야기 ( http://wisefree.tistory.com/473 )\"**를 참고하기 바란다 ). \n\n\n**블록체인이 혁신적인 이유는?**\n \n블록체인은 기존 중앙집중식 중계형 플랫품을 개인간 분산된 플랫폼으로 바꿀 수 있다. 현재 대부분의 플랫폼 기반 서비스들은 제공자와 이용자들간의 연결과 거래를 중계하며 수수료를 취하는 모델이다. 가령, 우버는 자동차를 이용하려는 사용자와 제공자를 연계하고 , 에어비엔비는 방이나 집을 빌려주려는 제공자와 빌리려는 사용자를 연결하면서 수수료를 취한다. 이는 구글도 네이버도 모두 마찬가지이다. 블록체인은 이러한 중앙집중식 중계형 플랫폼 모델을 개인간의 직거래 모델로 전환하고 중간의 수수료를 없애는 파괴적인 혁신 모델을 구축할 수 있다. \n \n또한 블록체인은 스마트 계약( Smart Contract ) 이라는 혁신적인 기능을 제공한다. 블록체인 개발자는 거래 세부 내용을 직접 개발 코드로 프로그래밍하고 이를 블록내에 포함시킬 수 있다. 이 코드는 제3자의 개입 없이 특정 계약 조건이 만족되면 자동으로 실행을 한다. 가령, 특정 사람간에 어떤 작업을 완료했을 경우 자동으로 가상화폐를 통해 대가가 지불되도록 만들 수 있으며 이 작업 내용은 블록체인 사용자가 모두 투명하게 검증하고 관리하게 때문에 실생활에서 간혹 발생하는 거래 부정이나 사기를 막을 수 있다. 스마트 계약 등을 활용해 개발된 다양한 산업 분야의 분산 애플리케이션을 댑(Dspps , Decantralized Apps)라 부른다. 댑은 블록체인내에 저장되고 서버 없이 구동되기 때문에 아주 유용하다. 현재 약 600개의 댑들이 다양하게 개발중이며 이들 댑 거래소 또한 만들어 지고 있다. \n \n \n**블럭체인의 적용 현황은?**\n \n블록체인은 금융 분야를 비롯하여 , 보험, 교통 , 항공, 헬스케어, IoT , 에너지 , 물류와 배송, 음악, 제조, 보안, 쇼셜 미디어 그리고 공공 분야 등 거의 모든 주요 산업 분야에 적용되어 산업 구조를 바꾸고 있다. \n \n특히, 금융과 교통 분야에 효과가 크다. 우리가 일반적으로 가장 많이 사용하는 결제에 대해 생각해 보자. 현재 일반 상점에서 신용카드나 직불 카드 결제시 결제 정보는 VAN사 , 카드사 , 은행 등 관련된 기관을 거쳐 처리된다. 이 과정에서 VAN사는 결제 건당 수수료를 그리고 카드사와 은행은 결제 금액의 일정 비율을 수수료로 가져간다. 온라인도 마찬가지이다. 우리가 11번가 같은 커머스 서비스를 통해 물건을 구매하고 결제를 할 경우 PG(Payment Gateway)사를 통해 결제 정보가 전달이 되고 카드사, 은행 등 관련 기관이 이를 처리하며 이 과정에서 수수료를 가져간다. 국내의 경우 , 이러한 수수료는 상점주가 부담을 지게 되는 데 이로 인해 대부분의 상점주는 현금 또는 가능한 수수료가 적은 결제 수단을 선호하게 된다. 블록 체인을 사용하면 이러한 복잡한 과정을 없애고 구매자가 직접 판매자에게 물건 대금을 지불할 수 있다. 이 때, 결제 수단은 가상화폐이다. 물론, 가상화폐가 변동성이 있기 때문에 실제 결제에 쓸 수 없다라는 의견도 있으나 실제 결제시 적용되는 가상화폐를 법정화폐와 1:1로 연동하여 안정적으로 사용할 수 있다. 현재 리플(Ripple), 리얼코인(Realcoin), 비트리저브(BitReserve) 등 이 유사한 수단을 제공하고 있다. 이렇듯, 블록체인은 결제, 담보 및 신용 대출, 송금, 융자, 환전 등 전 금융 분야에 있어 혁신을 제공한다. \n \n잠시 자율주행차에 대해서도 생각해 보자. 자율주행차가 일반화되면 이를 관제하고 모니터링하기 위한 새로운 방법이 필요하다. 새로운 자율 주행 관제 센터는 실시간으로 차량을 모니터링하고 문제 발생시 이를 즉시 온라인으로 해결하기 위한 모든 것을 갖추어야 한다. 특히, 긴급 패치나 업데이트가 필요하고 외부의 침입으로 부터 차량을 실시간으로 보호해야 한다. 자율 주행차의 운영 시스템은 비행기 운영 시스템 처럼 각 기능들은 철저히 고립되어야 하고 , 특정 기능에 문제가 발생하면 다른 모듈로 즉시 대체되는 등 안정성을 높여야 한다. 이들 기능들에 모두 우선하는 기능으로 Kill Switch가 필요하다. 이 킬 스위치는 전체 차량이나 차량의 일부 기능의 작동을 즉시 중간시켜 긴급 상황에서 문제 해결을 가능하게 해준다. 이러한 새로운 자율주행 시대를 어떻게 관리해야 할까?\n \n블록체인 기술을 사용하여 이를 해결할 수 있다. 자동차 지갑(Car Wallet)을 통해 유료도로, 주차장, 충전요금 지불 등을 제공하고 , 주행 변조방지와 변조 불가능한 블랙박스 개발 등에 적용할 뿐만 아니라 자동차의 모든 상태 정보를 보험사와 공유하여 다양한 자동차 보험을 만들 수도 있다. 또한 중앙에서 공유 거래를 컨트롤하는 우버와 달리 개인간에 직공유가 가능한 자동차 공유 서비스에도 적용할 수 있다. 참고로, OAKEN 오픈소스 프로젝트의 경우 테슬라의 솔라시티를 위해 블록체인 기반의 충전소 및 고속도로 결제 솔루션을 개발하고 있다 ( UAE GovHack - Tesla & Tollbooth on Blockchain (Official Submission) ). \n \n\n\n**블록체인의 미래는?**\n \n인텔, MS, IBM , Provenance, Consensus Systems, Reply, RSK Labs 등 많은 업체들이 블록체인을 서비스(Blockchain as a Service) 형태로 제공하기 시작했다. 또한 이더리움 블록체인 기술을 기업에 보다 효과적으로 적용하기 위한 EEA(Enterprise Ethereum Alliance) 가 만들어져 기업용 블록체인 오프소스인 하이퍼 레져(Hyper ledger)를 발표하였다. 현재 150개가 넘는 조직이 멤버로 참여 중이다. \n \n가상화폐의 확산과 채택 여부와 별도로 블록체인 기술은 다양한 산업 분야에 확산될 것이다. 4차 산업 혁명 시대를 앞당길 진정한 주역이 블록체인 플랫폼이 될 것이다. 인공지능은 실제 데이타와 알고리즘, 그리고 컴퓨팅 파워를 갖고 있는 소수의 업체에 의해 주도되고 있고 이는 더욱 심화가 될 것이다. 그러나 블록체인은 모두가 동등한 권리와 권한을 갖고 투명한 거래와 프로세스를 만들고 이 과정에서 나온 모든 데이타를 공유한다. \n \n현재 많은 국가의 정부와 학교, 그리고 산업계 리더 회사들은 블록체인을 여러 사업에 시범 적용을 하고 있다. 지금이 블록체인 기술이 폭발적으로 확산하기 바로 전 단계라 할 수 있다. 현재 우리나라의 경우 가상화폐인 비트코인의 열풍에 가려 블록체인 기술이 중요성이 간과되고 있는 실정이다. 바로 지금, 블록체인 기술의 인력을 양성하고 시범적용을 늘리며 기반을 조성하고 역량을 확보 해야 한다. 자칫 우리는 블록체인의 골든타임을 놓칠 수 있다.",
"json_metadata": "{\"tags\":[\"blockchain\",\"bitcoin\"],\"image\":[\"https://steemitimages.com/DQmXtExHkZEaDrrKu8HUH2xNpxf5eJhj773EXPhbZFJHuyo/43639_31877_1031.jpg\",\"https://steemitimages.com/DQmSCyXkxqex75PHtKjB5yHo552i2PENGdg8nJpQjnURx1e/bitcoin-2008262_1920-600x450.jpg\"],\"links\":[\"http://wisefree.tistory.com/473\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}2017/07/25 23:40:36
2017/07/25 23:40:36
| parent author | |
| parent permlink | ai |
| author | wisefree |
| permlink | ai |
| title | 구글의 인공지능(AI) 파워 분석 |
| body | @@ -561,16 +561,120 @@ %EB%B3%B8%EB%8B%A4. %0A%0A +!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG)%0A %0A%EB%8B%A4%EC%9D%8C%EC%9D%80 %EB%B3%B4%EA%B3%A0%EC%84%9C @@ -4990,107 +4990,4 @@ %EB%8B%AC%EC%9E%90.%5D -!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG) |
| json metadata | {"tags":["ai","machinelearning"],"links":["http://wisefree.tistory.com/"],"app":"steemit/0.1","format":"markdown","image":["https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG"]} |
| Transaction Info | Block #14005645/Trx 63369bb28caf8f2bdc5e2467481f316156fabfd0 |
View Raw JSON Data
{
"trx_id": "63369bb28caf8f2bdc5e2467481f316156fabfd0",
"block": 14005645,
"trx_in_block": 16,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-25T23:40:36",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ai",
"author": "wisefree",
"permlink": "ai",
"title": "구글의 인공지능(AI) 파워 분석",
"body": "@@ -561,16 +561,120 @@\n %EB%B3%B8%EB%8B%A4. %0A%0A\n+!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG)%0A\n %0A%EB%8B%A4%EC%9D%8C%EC%9D%80 %EB%B3%B4%EA%B3%A0%EC%84%9C\n@@ -4990,107 +4990,4 @@\n %EB%8B%AC%EC%9E%90.%5D\n-!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG)\n",
"json_metadata": "{\"tags\":[\"ai\",\"machinelearning\"],\"links\":[\"http://wisefree.tistory.com/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\",\"image\":[\"https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG\"]}"
}
]
}2017/07/25 23:39:30
2017/07/25 23:39:30
| parent author | |
| parent permlink | ai |
| author | wisefree |
| permlink | ai |
| title | 구글의 인공지능(AI) 파워 분석 |
| body | @@ -4882,8 +4882,111 @@ %EB%82%A0%EA%B0%9C%EB%A5%BC %EB%8B%AC%EC%9E%90.%5D +!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG) |
| json metadata | {"tags":["ai","machinelearning"],"links":["http://wisefree.tistory.com/"],"app":"steemit/0.1","format":"markdown","image":["https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG"]} |
| Transaction Info | Block #14005623/Trx 8071c3ae055a41c78c33b61cfaa3b94ba117c64b |
View Raw JSON Data
{
"trx_id": "8071c3ae055a41c78c33b61cfaa3b94ba117c64b",
"block": 14005623,
"trx_in_block": 11,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-25T23:39:30",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ai",
"author": "wisefree",
"permlink": "ai",
"title": "구글의 인공지능(AI) 파워 분석",
"body": "@@ -4882,8 +4882,111 @@\n %EB%82%A0%EA%B0%9C%EB%A5%BC %EB%8B%AC%EC%9E%90.%5D\n+!%5BIMG_0499.JPG%5D(https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG)\n",
"json_metadata": "{\"tags\":[\"ai\",\"machinelearning\"],\"links\":[\"http://wisefree.tistory.com/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\",\"image\":[\"https://steemitimages.com/DQmTS57QTbsng9dtrNUPryTLd6ebcs8xAv48KAivxPfaVWC/IMG_0499.JPG\"]}"
}
]
}2017/07/25 23:38:00
2017/07/25 23:38:00
| parent author | |
| parent permlink | ai |
| author | wisefree |
| permlink | ai |
| title | 구글의 인공지능(AI) 파워 분석 |
| body | **ARK 투자 관리사**에서 구글의 AI 파워에 대해 분석한 글이 있어 소개한다. 이 분석 글은 "데이터 - 알고리즘 - 하드웨어 - 클라우드" 등 4가지 측면에서 구글의 AI파워를 분석하였다. 이 분석 글은 2가지 측면에서 큰 의미가 있다. 첫 번째는 AI 성공을 위해서는 분석을 위한 풍부한 데이터가 준비되어 있어야 하고 , 문제 해결을 위한 다양한 알고리즘 개발 및 적용 능력 , 그리고 강력한 컴퓨팅 파워( 하드웨어, 클라우드) 등 AI 파워 기준을 명확히 했다는 것이다. 둘째는 , 이 기준을 통해 현재 나의 AI 파워와 준비 상태를 알 수 있다는 것이다. 최근 국내에서도 인공지능에 대한 관심이 높아지며 여러 기업들이 관련 인재 확보 등 여러 노력들을 하고 있다. 실질적인 필요에 의해서 인지, 아니면 유행인지는 모르나 , 이러한 노력에 있어 각 기업들의 현재 상황이 AI파워를 낼 수 있는 충분한 준비가 되어 있는지 확인해 볼 필요가 있다. 단순히 AI가 지나가는 유행이 아니라 세상을 이롭게 할 수 있게 되길 간절히 바라며 AI를 적용하려는 기업들의 차분한 역량 준비를 기대해 본다. 다음은 보고서에서 소개한 주요한 분석 내용이다. Google이 AI와 관련된 모든 스택을 갖춰가고 있다. Google은 자사 클라우드에 탑재된 자체 제작 칩을 통해 자사가 개발한 알고리즘을 실행하며, 이 알고리즘 훈련에 직접 수집한 데이터를 이용하고 있는 것이다. Apple이 iPhone용 iOS와 칩 개발에 이르는 전체를 총괄했던 것처럼 Google도 이러한 접근 방법으로 AI 영역에서 혁신을 가속화하고 경쟁업체들에 앞서 AI를 전개해 나가는 모습이다. Google은 이제 AI 기술 스택의 4대 레이어에서 세계 최고 수준에 오르며 뒤따르는 업체들과의 격차를 벌리고 있다. Data 데이터는 AI를 위한 무기라 볼 수 있으며, Google은 전 세계 최대 규모의 데이터셋을 보유하고 있다. 월 10억 명 이상의 이용자들이 Android, Chrome, YouTube, Gmail, GoogleMaps, Google Search 및 Google Play를 이용하고 있으며, Google Translate과 GooglePhotos 역시 각각 5억 이상의 이용자를 보유하고 있다. Google은 이처럼 다양한 서비스에서 수집되는 텍스트, 이미지, 비디오, 지도, 웹 페이지 등 여러 유형의 데이터를 이용해 한 종류의 AI가 아닌 다양한 사용 사례를 개발해낼 수 있는 것이다. 또한 데이터만큼 중요한 것은 앱이며, Google은 다양한 앱을 소유하고 있다. 앱은 알고리즘 전면에서 Google이 추진하는 AI를 광범위하게 전파할 수 있게 해 주는 역할을 한다. 스타트업의 경우 특정 AI 분야에서 획기적인 발전을 이뤄낼 수 있겠지만 수억 명의 이용자들에게 접근하려면 몇 년이 걸릴 것이다. 반면 Google이 이들과 동일한 획기적 발전을 이룰 경우, 바로 수 십억 이용자들에 적용되어 이용자는 즉각적인 혜택을 누릴 수 있게 된다. Algorithms 본질적으로 Google은 알고리즘 업체이다. Google Search의 근간이 되는 알고리즘인 Page Rank를 개발했으며, 딥러닝을 적용한 초창기 업체들 중 하나로 딥러닝 연구 분야의 리더라 할 수 있다. 특히 영국 소재 자회사 DeepMind와 함께 다양한 문제를 해결하는 새로운 차원의 딥러닝 아키텍처를 개발하고 있다. *Inception - 이전 모델들보다 2배 이상 정확하고 12배 단순한 나선형 신경망 *Neural Machine Translation - 정확도가 기존 방법보다 60% 향상된 딥러닝 기반 번역 시스템 *WaveNet - 실제 사람이 말하는 것처럼 음성 오디오를 생성하는 딥러닝 보이스엔진 *RankBrain - 현재 Google Search용 랭킹 요소 중 3번째로 중요한 딥러닝을 이용하여 웹 페이지의 순위를 결정하는 시스템 *Federated learning - 클라우드에만 의존하지 않고 스마트폰에서 직접 AI 학습을 처리하는 분산형 딥러닝 아키텍처 Facebook, Microsoft와 같은 기업들도 새로운 딥러닝 알고리즘을 개발하고 있지만 업계에서 Google의 광범위한 연구와 이용자 규모에 필적할 만한 업체는 없다. 이러한 결과물들을 공개함으로써 Google은 AI 분야 리더로서 명성을 견고히 다져나가고 있으며, 이는 또다시 Google이 알고리즘 개발에 새로운 인재를 끌어오는 결과로 이어져 이른바 플라이휠(Fly-Wheel) 효과를 내고 있다. Google은 지난해 Tensor Processing Unit (TPU)이라는 딥러닝 추론 프로세서 개발 소식을 전한 바 있다. 해당 TPU는 고성능의 딥러닝 추론을 제공하며, 다른 프로세서에 비 해전력 소모는 훨씬 적다. 1세대 TPU는 초당 92 조회의 부동 소수점 연산이 가능하며, 75W의 전력을 소모한다. 즉, 1초에 소비전력 1W당 처리하는 연산은 1.2 조회인 것이다. 반면, NVIDIA의 최신 VoltaGPU는 초당 120 조회의 부동 소수점 연산을 구현하지만, 300W의전력을 소모하기에 1초에 1W당 처리하는 연산은 0.4 조회로, 동일 한성 능일 경우 Google의 TPU가 NVIDIA의 GPU 보다 전력 효율이 200% 더 높다고 볼 수 있다. 지난 5월 Google은 부동 소수점 연산 성능을 고도화한 2세대 TPU를 발표했으며, 이로써 딥러닝 훈련과 추론을 동시에 처리할 수 있게 되었다. 개발자들은 알고리즘 개발과 실행 모두에 이를 이용할 수 있으며, 이론적으로는 GPU의 필요성이 사라진 것이다. 이처럼 Google이 내부에서 칩을 설계하기로 결정한 것은 스마트폰 시장에서의 선례와 유사성을 지닌다. 2010년, Apple은 서드파티를 통해설 계하던 iPhone 및 iPad용 SoC를 자사가 직접 설계하는 구조로 전환함으로써 경쟁 업체에 비해 성능과 시장 진입 면에서 상당한 이점을 갖게 되었다. 예를 들어, 2013년에 Apple은 경쟁 업체들보다 한 세대 앞선 64-bit ARM SoC를 설계하고 출하했으며, 다른 스마트폰에 비해 iPhone 5S의성 능을 약 2배 향상하고 Touch ID 같은 새로운 보안 기능을 적용할 수 있었다. Google도 이러한 이점을 기대하고 있다. 경쟁사들은 딥러닝에 기성 프로세서를 이용하지만 Google의 TPU는 보다 고성능, 저지 연성을 제공하며, 가장 중요하게는 전력소비를 절감한다. 따라서, Google이 데이터 센터 구축에 가장 많은 자본 지출과 운영비용을 들이고 있다는 점을 감안하면 TPU는 Google의 capex와 opex를 유의미 하계절감 해주는 것이다. Google은 현재 클라우드 컴퓨팅 비즈니스, 특히 IaaS(Infrastructure-as-a-Service) 영역에서는 Amazon, Microsoft에 이어 3위에 머무르고 있다. 하지만, 그중 인지 API(Application Programming Interfaces) 영역만은 Google이 주도하고 있다. 인지 API는 이미지 인식, 텍스트 필사 및 번역처럼 특화된 AI 작업 수행에 클라우드의 힘을 이용하는 것이다. 비용 효율면에서 최선의 선택인 상용 하드웨어를 제공하는 IaaS와 달리, 인지 API의 성능은 벤더별로 알고리즘 기능, 훈련 데이터, 기본 하드웨어에 따라 매우 달라진다. ARK의 조사에 따르면, Google은 최상의 알고리즘, 수십억 이용자 플랫폼을 이용한 최대 규모의 데이터셋, 가장 강력하고 효율적인 하드웨어인 TPU를 보유하고 있어 유리한 상황이다. 예를 들어, Google의 번역 API가 텍스트-음성 번역을 지원하는 언어는 100개 이상으로, 이는 다음으로 많은 언어를 지원하는 AWS의 4배 이상이다. 2016년 9월에는 인기 언어들에 가장 정확한 딥러닝 기반 서비스인 인공 신경망 기계 번역 지원 기능을 추가하기도 했다. 당시 Google은 TPU가 고성능, 비용 절감, 저지 연성을 실현함으로써 해당 시스템 구현에 중요한 역할을 했다고 언급했다. 즉, Google이 “FullStack”으로 갖추고 있는 알고리즘, 데이터, 하드웨어 및 클라우드가 이러한 고성능, 웹 스케일 서비스에서 경쟁 우위를 확보할 수 있도록 결정적인 역할을 하고 있는 것이다. 하지만 Google은 클라이언트 기기에는 취약하다는 문제가 있다. 소프트웨어와 서비스를 제공하기 때문에 하드웨어 업체와 협력해야 하지만, 이 중 일부 업체들은 Google의 소비자 접근에 적대적인 태도를 취하고 있다. 예를 들어, Apple은 iPhone의 기본 지도 앱으로 Google Maps를 중단했으며, 이로 인해 Google은 상당수의 소중한 소비자들을 잃었다.. 이에 Google은 스마트 스피커인 Google Home, Pixel 스마트폰, Nest연결 장치 등 자체 하드웨어 제품에 적극적으로 투자하며 이러한 약점을 해결해 나가고 있다. 하지만 이 전략이 상당한 수준의 보급률에 도달하며 효과를 내려면 시간이 걸릴 것이다. 그럼에도 불구하고, AI 분야에 대한 노력에 힘입어 Google은 알고리즘, 데이터, 하드웨어 및 클라우드 서비스를 포괄하는 완전 통합형 기업으로 변모하고 있다. 또한, Google의 소비자 서비스에 적용된 최상의 AI를 기업용 서비스와 Google Cloud의 경쟁력 향상에 활용하고 있다. 자체적으로 칩을 설계하여 성능을 향상하고 지연성을 낮추며 비용을 절감함으로써 Google의 AI 범위를 확장하는 것이다. 여기서 가장 중요한 것은 수직적 통합은 조직의 민첩성 향상으로 이어지며, Google은 이 점을 활용해 신제품이나 서비스 출시를 위해 조직의 모든 부분을 총괄할 수 있다는 것이다. 그 결과 향후 수년간 Google의 AI는 혁신의 최전선에 자리할 전망이다. 출처: http://wisefree.tistory.com/ [소프트웨어에 날개를 달자.] |
| json metadata | {"tags":["ai","machinelearning"],"links":["http://wisefree.tistory.com/"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #14005593/Trx 1f53ca6071ebdfe5fc1339cf53da6502a4f81201 |
View Raw JSON Data
{
"trx_id": "1f53ca6071ebdfe5fc1339cf53da6502a4f81201",
"block": 14005593,
"trx_in_block": 9,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-25T23:38:00",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "ai",
"author": "wisefree",
"permlink": "ai",
"title": "구글의 인공지능(AI) 파워 분석",
"body": "**ARK 투자 관리사**에서 구글의 AI 파워에 대해 분석한 글이 있어 소개한다. 이 분석 글은 \"데이터 - 알고리즘 - 하드웨어 - 클라우드\" 등 4가지 측면에서 구글의 AI파워를 분석하였다. 이 분석 글은 2가지 측면에서 큰 의미가 있다. 첫 번째는 AI 성공을 위해서는 분석을 위한 풍부한 데이터가 준비되어 있어야 하고 , 문제 해결을 위한 다양한 알고리즘 개발 및 적용 능력 , 그리고 강력한 컴퓨팅 파워( 하드웨어, 클라우드) 등 AI 파워 기준을 명확히 했다는 것이다. 둘째는 , 이 기준을 통해 현재 나의 AI 파워와 준비 상태를 알 수 있다는 것이다. \n\n\n최근 국내에서도 인공지능에 대한 관심이 높아지며 여러 기업들이 관련 인재 확보 등 여러 노력들을 하고 있다. 실질적인 필요에 의해서 인지, 아니면 유행인지는 모르나 , 이러한 노력에 있어 각 기업들의 현재 상황이 AI파워를 낼 수 있는 충분한 준비가 되어 있는지 확인해 볼 필요가 있다. 단순히 AI가 지나가는 유행이 아니라 세상을 이롭게 할 수 있게 되길 간절히 바라며 AI를 적용하려는 기업들의 차분한 역량 준비를 기대해 본다. \n\n\n다음은 보고서에서 소개한 주요한 분석 내용이다. \n\n\n\nGoogle이 AI와 관련된 모든 스택을 갖춰가고 있다. Google은 자사 클라우드에 탑재된 자체 제작 칩을 통해 자사가 개발한 알고리즘을 실행하며, 이 알고리즘 훈련에 직접 수집한 데이터를 이용하고 있는 것이다. Apple이 iPhone용 iOS와 칩 개발에 이르는 전체를 총괄했던 것처럼 Google도 이러한 접근 방법으로 AI 영역에서 혁신을 가속화하고 경쟁업체들에 앞서 AI를 전개해 나가는 모습이다. Google은 이제 AI 기술 스택의 4대 레이어에서 세계 최고 수준에 오르며 뒤따르는 업체들과의 격차를 벌리고 있다. \n\n\n\nData \n\n\n\n데이터는 AI를 위한 무기라 볼 수 있으며, Google은 전 세계 최대 규모의 데이터셋을 보유하고 있다. 월 10억 명 이상의 이용자들이 Android, Chrome, YouTube, Gmail, GoogleMaps, Google Search 및 Google Play를 이용하고 있으며, Google Translate과 GooglePhotos 역시 각각 5억 이상의 이용자를 보유하고 있다. Google은 이처럼 다양한 서비스에서 수집되는 텍스트, 이미지, 비디오, 지도, 웹 페이지 등 여러 유형의 데이터를 이용해 한 종류의 AI가 아닌 다양한 사용 사례를 개발해낼 수 있는 것이다. 또한 데이터만큼 중요한 것은 앱이며, Google은 다양한 앱을 소유하고 있다. 앱은 알고리즘 전면에서 Google이 추진하는 AI를 광범위하게 전파할 수 있게 해 주는 역할을 한다. 스타트업의 경우 특정 AI 분야에서 획기적인 발전을 이뤄낼 수 있겠지만 수억 명의 이용자들에게 접근하려면 몇 년이 걸릴 것이다. 반면 Google이 이들과 동일한 획기적 발전을 이룰 경우, 바로 수 십억 이용자들에 적용되어 이용자는 즉각적인 혜택을 누릴 수 있게 된다. \n\n\n\n\n\nAlgorithms \n\n\n\n본질적으로 Google은 알고리즘 업체이다. Google Search의 근간이 되는 알고리즘인 Page Rank를 개발했으며, 딥러닝을 적용한 초창기 업체들 중 하나로 딥러닝 연구 분야의 리더라 할 수 있다. 특히 영국 소재 자회사 DeepMind와 함께 다양한 문제를 해결하는 새로운 차원의 딥러닝 아키텍처를 개발하고 있다.\n\n\n\n*Inception - 이전 모델들보다 2배 이상 정확하고 12배 단순한 나선형 신경망\n\n*Neural Machine Translation - 정확도가 기존 방법보다 60% 향상된 딥러닝 기반 번역 시스템\n\n*WaveNet - 실제 사람이 말하는 것처럼 음성 오디오를 생성하는 딥러닝 보이스엔진\n\n*RankBrain - 현재 Google Search용 랭킹 요소 중 3번째로 중요한 딥러닝을 이용하여 웹 페이지의 순위를 결정하는 시스템\n\n*Federated learning - 클라우드에만 의존하지 않고 스마트폰에서 직접 AI 학습을 처리하는 분산형 딥러닝 아키텍처\n\n\n\nFacebook, Microsoft와 같은 기업들도 새로운 딥러닝 알고리즘을 개발하고 있지만 업계에서 Google의 광범위한 연구와 이용자 규모에 필적할 만한 업체는 없다. 이러한 결과물들을 공개함으로써 Google은 AI 분야 리더로서 명성을 견고히 다져나가고 있으며, 이는 또다시 Google이 알고리즘 개발에 새로운 인재를 끌어오는 결과로 이어져 이른바 플라이휠(Fly-Wheel) 효과를 내고 있다. \n\n\n\nGoogle은 지난해 Tensor Processing Unit (TPU)이라는 딥러닝 추론 프로세서 개발 소식을 전한 바 있다. 해당 TPU는 고성능의 딥러닝 추론을 제공하며, 다른 프로세서에 비 해전력 소모는 훨씬 적다. 1세대 TPU는 초당 92 조회의 부동 소수점 연산이 가능하며, 75W의 전력을 소모한다. 즉, 1초에 소비전력 1W당 처리하는 연산은 1.2 조회인 것이다. 반면, NVIDIA의 최신 VoltaGPU는 초당 120 조회의 부동 소수점 연산을 구현하지만, 300W의전력을 소모하기에 1초에 1W당 처리하는 연산은 0.4 조회로, 동일 한성 능일 경우 Google의 TPU가 NVIDIA의 GPU 보다 전력 효율이 200% 더 높다고 볼 수 있다. \n\n\n\n지난 5월 Google은 부동 소수점 연산 성능을 고도화한 2세대 TPU를 발표했으며, 이로써 딥러닝 훈련과 추론을 동시에 처리할 수 있게 되었다. 개발자들은 알고리즘 개발과 실행 모두에 이를 이용할 수 있으며, 이론적으로는 GPU의 필요성이 사라진 것이다. \n\n\n\n이처럼 Google이 내부에서 칩을 설계하기로 결정한 것은 스마트폰 시장에서의 선례와 유사성을 지닌다. 2010년, Apple은 서드파티를 통해설 계하던 iPhone 및 iPad용 SoC를 자사가 직접 설계하는 구조로 전환함으로써 경쟁 업체에 비해 성능과 시장 진입 면에서 상당한 이점을 갖게 되었다. 예를 들어, 2013년에 Apple은 경쟁 업체들보다 한 세대 앞선 64-bit ARM SoC를 설계하고 출하했으며, 다른 스마트폰에 비해 iPhone 5S의성 능을 약 2배 향상하고 Touch ID 같은 새로운 보안 기능을 적용할 수 있었다. \n\n\n\nGoogle도 이러한 이점을 기대하고 있다. 경쟁사들은 딥러닝에 기성 프로세서를 이용하지만 Google의 TPU는 보다 고성능, 저지 연성을 제공하며, 가장 중요하게는 전력소비를 절감한다. 따라서, Google이 데이터 센터 구축에 가장 많은 자본 지출과 운영비용을 들이고 있다는 점을 감안하면 TPU는 Google의 capex와 opex를 유의미 하계절감 해주는 것이다. \n\n \n\nGoogle은 현재 클라우드 컴퓨팅 비즈니스, 특히 IaaS(Infrastructure-as-a-Service) 영역에서는 Amazon, Microsoft에 이어 3위에 머무르고 있다. 하지만, 그중 인지 API(Application Programming Interfaces) 영역만은 Google이 주도하고 있다. \n\n\n\n인지 API는 이미지 인식, 텍스트 필사 및 번역처럼 특화된 AI 작업 수행에 클라우드의 힘을 이용하는 것이다. 비용 효율면에서 최선의 선택인 상용 하드웨어를 제공하는 IaaS와 달리, 인지 API의 성능은 벤더별로 알고리즘 기능, 훈련 데이터, 기본 하드웨어에 따라 매우 달라진다. ARK의 조사에 따르면, Google은 최상의 알고리즘, 수십억 이용자 플랫폼을 이용한 최대 규모의 데이터셋, 가장 강력하고 효율적인 하드웨어인 TPU를 보유하고 있어 유리한 상황이다. \n\n\n\n예를 들어, Google의 번역 API가 텍스트-음성 번역을 지원하는 언어는 100개 이상으로, 이는 다음으로 많은 언어를 지원하는 AWS의 4배 이상이다. 2016년 9월에는 인기 언어들에 가장 정확한 딥러닝 기반 서비스인 인공 신경망 기계 번역 지원 기능을 추가하기도 했다. 당시 Google은 TPU가 고성능, 비용 절감, 저지 연성을 실현함으로써 해당 시스템 구현에 중요한 역할을 했다고 언급했다. 즉, Google이 “FullStack”으로 갖추고 있는 알고리즘, 데이터, 하드웨어 및 클라우드가 이러한 고성능, 웹 스케일 서비스에서 경쟁 우위를 확보할 수 있도록 결정적인 역할을 하고 있는 것이다. \n\n\n\n하지만 Google은 클라이언트 기기에는 취약하다는 문제가 있다. 소프트웨어와 서비스를 제공하기 때문에 하드웨어 업체와 협력해야 하지만, 이 중 일부 업체들은 Google의 소비자 접근에 적대적인 태도를 취하고 있다. 예를 들어, Apple은 iPhone의 기본 지도 앱으로 Google Maps를 중단했으며, 이로 인해 Google은 상당수의 소중한 소비자들을 잃었다.. 이에 Google은 스마트 스피커인 Google Home, Pixel 스마트폰, Nest연결 장치 등 자체 하드웨어 제품에 적극적으로 투자하며 이러한 약점을 해결해 나가고 있다. 하지만 이 전략이 상당한 수준의 보급률에 도달하며 효과를 내려면 시간이 걸릴 것이다. \n\n\n\n그럼에도 불구하고, AI 분야에 대한 노력에 힘입어 Google은 알고리즘, 데이터, 하드웨어 및 클라우드 서비스를 포괄하는 완전 통합형 기업으로 변모하고 있다. 또한, Google의 소비자 서비스에 적용된 최상의 AI를 기업용 서비스와 Google Cloud의 경쟁력 향상에 활용하고 있다. 자체적으로 칩을 설계하여 성능을 향상하고 지연성을 낮추며 비용을 절감함으로써 Google의 AI 범위를 확장하는 것이다. 여기서 가장 중요한 것은 수직적 통합은 조직의 민첩성 향상으로 이어지며, Google은 이 점을 활용해 신제품이나 서비스 출시를 위해 조직의 모든 부분을 총괄할 수 있다는 것이다. 그 결과 향후 수년간 Google의 AI는 혁신의 최전선에 자리할 전망이다.\n\n\n출처: http://wisefree.tistory.com/ [소프트웨어에 날개를 달자.]",
"json_metadata": "{\"tags\":[\"ai\",\"machinelearning\"],\"links\":[\"http://wisefree.tistory.com/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}2017/07/25 23:36:03
2017/07/25 23:36:03
| voter | wisefree |
| author | wisefree |
| permlink | ai |
| weight | 10000 (100.00%) |
| Transaction Info | Block #14005554/Trx ea20d01cb05519223cf4539a18e2fb93bbc7bb1c |
View Raw JSON Data
{
"trx_id": "ea20d01cb05519223cf4539a18e2fb93bbc7bb1c",
"block": 14005554,
"trx_in_block": 11,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2017-07-25T23:36:03",
"op": [
"vote",
{
"voter": "wisefree",
"author": "wisefree",
"permlink": "ai",
"weight": 10000
}
]
}Manabar
Voting Power100.00%
Downvote Power100.00%
Resource Credits100.00%
Reputation Progress0.00%
{
"voting_manabar": {
"current_mana": "8143659806",
"last_update_time": 1779092118
},
"downvote_manabar": {
"current_mana": 2035914951,
"last_update_time": 1779092118
},
"rc_account": {
"account": "wisefree",
"rc_manabar": {
"current_mana": "10164408779",
"last_update_time": 1779092118
},
"max_rc_creation_adjustment": {
"amount": "2020748973",
"precision": 6,
"nai": "@@000000037"
},
"max_rc": "10164408779"
}
}Account Metadata
| POSTING JSON METADATA | |
| profile | {"profile_image":"http://cfile8.uf.tistory.com/image/2254713F566438800CCD08","name":"Wisefree","location":"South Korea","website":"http://wisefree.tisotry.com","about":"Jay JH Park"} |
| JSON METADATA | |
| profile | {"profile_image":"http://cfile8.uf.tistory.com/image/2254713F566438800CCD08","name":"Wisefree","location":"South Korea","website":"http://wisefree.tisotry.com","about":"Jay JH Park"} |
{
"posting_json_metadata": {
"profile": {
"profile_image": "http://cfile8.uf.tistory.com/image/2254713F566438800CCD08",
"name": "Wisefree",
"location": "South Korea",
"website": "http://wisefree.tisotry.com",
"about": "Jay JH Park"
}
},
"json_metadata": {
"profile": {
"profile_image": "http://cfile8.uf.tistory.com/image/2254713F566438800CCD08",
"name": "Wisefree",
"location": "South Korea",
"website": "http://wisefree.tisotry.com",
"about": "Jay JH Park"
}
}
}Auth Keys
Owner
Single Signature
Public Keys
STM61tn6M1DMx8S7cAHshVKGVYsDqAK13zzppTCNSe6u6ED8xsdJx1/1
Active
Single Signature
Public Keys
STM5uDFGXmVjrgHpZrSF7LtRV4QReVa2Nj5EJLQ8VNjH3H4NnxvMa1/1
Posting
Single Signature
Public Keys
STM83q134Ye6WRUFqQKNQU8W36WfWxtaBsYPNr3AEBRJxcC5LEeDK1/1
Memo
STM5zvM9atPSXm5Bt2nomuWEUrr1H1ZUGxP77erTY7vLpL8AXTrUy
{
"owner": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM61tn6M1DMx8S7cAHshVKGVYsDqAK13zzppTCNSe6u6ED8xsdJx",
1
]
]
},
"active": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5uDFGXmVjrgHpZrSF7LtRV4QReVa2Nj5EJLQ8VNjH3H4NnxvMa",
1
]
]
},
"posting": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM83q134Ye6WRUFqQKNQU8W36WfWxtaBsYPNr3AEBRJxcC5LEeDK",
1
]
]
},
"memo": "STM5zvM9atPSXm5Bt2nomuWEUrr1H1ZUGxP77erTY7vLpL8AXTrUy"
}Witness Votes
0 / 30
No active witness votes.
[]