{"id":12161,"date":"2024-05-02T18:25:08","date_gmt":"2024-05-02T09:25:08","guid":{"rendered":"https:\/\/www.techopedia.com\/kr\/?post_type=definition&p=12161"},"modified":"2024-05-02T18:25:08","modified_gmt":"2024-05-02T09:25:08","slug":"solidity","status":"publish","type":"definition","link":"https:\/\/www.techopedia.com\/kr\/definition\/solidity","title":{"rendered":"\uc194\ub9ac\ub514\ud2f0"},"content":{"rendered":"
\uc194\ub9ac\ub514\ud2f0(Solidity)\ub294 \uac1d\uccb4 \uc9c0\ud5a5\uc758 \uace0\uae09 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\ub85c, \ub2e4\uc591\ud55c \ube14\ub85d\uccb4\uc778<\/a> \ud50c\ub7ab\ud3fc\uc5d0\uc11c \uc2a4\ub9c8\ud2b8 \ucee8\ud2b8\ub799\ud2b8<\/a>\ub97c \uc0dd\uc131\ud558\uace0 \uad6c\ud604\ud558\ub294 \ub370 \uc0ac\uc6a9\ub41c\ub2e4. \uc774\ub7ec\ud55c \ud50c\ub7ab\ud3fc\uc5d0\ub294 \uc8fc\ub85c \uc774\ub354\ub9ac\uc6c0\uc774 \ud3ec\ud568\ub418\uc9c0\ub9cc, \uc194\ub9ac\ub514\ud2f0\ub294 \ud3f4\uce74\ub2f7(Polkadot)\uacfc \uac19\uc740 \ub2e4\ub978 \ud50c\ub7ab\ud3fc\uc5d0\uc11c\ub3c4 \uc0ac\uc6a9\ub41c\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\uc758 \uad6c\ubb38\uc740 C++, \ud30c\uc774\uc36c, \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc640 \uac19\uc740 \uc601\ud5a5\ub825 \uc788\ub294 \uc5b8\uc5b4\uc5d0\uc11c \uc601\uac10\uc744 \uc5bb\uc5c8\ub2e4. \uadf8\ub807\uae30 \ub54c\ubb38\uc5d0 \uc774\ub7ec\ud55c \uc5b8\uc5b4\uc5d0 \uc775\uc219\ud55c \uac1c\ubc1c\uc790\uc5d0\uac8c\ub294 \uce5c\uc219\ud558\uac8c \ub290\uaef4\uc9c8 \uac83\uc774\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\uc758 \ud575\uc2ec \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc778 \uc2a4\ub9c8\ud2b8 \uacc4\uc57d\uc740 \uacc4\uc57d \uc870\uac74\uc774 \ucf54\ub4dc\uc5d0 \uc9c1\uc811 \uae30\uc7ac\ub41c \uc790\uccb4 \uc2e4\ud589\ud615 \uacc4\uc57d\uc774\ub2e4.<\/p>\n \uc774\ub97c \ud1b5\ud574 \uc911\uc559 \uae30\uad00, \ubc95\ub960 \uc2dc\uc2a4\ud15c \ub610\ub294 \uc678\ubd80 \uc9d1\ud589 \uba54\ucee4\ub2c8\uc998 \uc5c6\uc774\ub3c4 \uc2e0\ub8b0\ud560 \uc218 \uc788\ub294 \uac70\ub798\uc640 \uacc4\uc57d\uc744 \uc218\ud589\ud560 \uc218 \uc788\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\ub294 \uc774\ub7ec\ud55c \uacc4\uc57d\uc5d0 \uc0dd\uba85\ub825\uc744 \ubd88\uc5b4\ub123\uc5b4, \ubcf5\uc7a1\ud55c \uba64\ubc84 \ubcc0\uc218, \uc0c1\uc18d \uccb4\uacc4, \ud0c0\uc785 \uc138\uc774\ud504 \uae30\ub2a5\uacfc \uac19\uc740 \uac15\ub825\ud55c \uae30\ub2a5\uc744 \uc81c\uacf5\ud568\uc73c\ub85c\uc368 \ubcf5\uc7a1\ud558\uace0 \uc548\uc804\ud55c \ube14\ub85d\uccb4\uc778 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc81c\uc791\ud560 \uc218 \uc788\uac8c \ud55c\ub2e4.<\/p>\n \uc774\ub7ec\ud55c \uc194\ub9ac\ub514\ud2f0 \ud504\ub85c\uadf8\ub7a8\uc740 \uc774\ub354\ub9ac\uc6c0 \uac00\uc0c1 \uba38\uc2e0<\/a>(EVM) \ub610\ub294 EVM \ud638\ud658 \uac00\uc0c1 \uba38\uc2e0\uc5d0\uc11c \uc2e4\ud589\ub418\uba70, \ube14\ub85d\uccb4\uc778 \uae30\uc220\uc758 \ud798\uc744 \ud65c\uc6a9\ud558\uc5ec \ud0c8\uc911\uc559\ud654 \uc560\ud50c\ub9ac\ucf00\uc774\uc158<\/a>(dApp)\uc758 \uac1c\ubc1c\uacfc \uc6b4\uc601\uc5d0\uc11c \uc911\uc694\ud55c \uc5ed\ud560\uc744 \ud55c\ub2e4.<\/p>\n 2014\ub144 8\uc6d4, \uc774\ub354\ub9ac\uc6c0\uc758 \uacf5\ub3d9 \ucc3d\ub9bd\uc790\uc778 \uac1c\ube48 \uc6b0\ub4dc(Gavin Wood)\uac00 \ucc98\uc74c \uc194\ub9ac\ub514\ud2f0\ub97c \uc81c\uc548\ud588\ub2e4.<\/p>\n \uc218\uc11d \uac1c\ubc1c\uc790 \ud06c\ub9ac\uc2a4\ud2f0\uc548 \ub77c\uc774\ud2b8\uc704\uc2a4\ub108(Christian Reitwiessner)\uc758 \uc9c0\ub3c4 \uc544\ub798 \uc54c\ub809\uc2a4 \ubca0\ub808\uadf8\uc790\uc2dc(Alex Beregszaszi)\ub97c \ube44\ub86f\ud55c \uc804 \uc774\ub354\ub9ac\uc6c0 \ud575\uc2ec \uae30\uc5ec\uc790\ub4e4\ub85c \uad6c\uc131\ub41c \ud300\uc774 \uc194\ub9ac\ub514\ud2f0\ub97c \uac1c\ubc1c\ud588\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\ub294 \uc774\ub354\ub9ac\uc6c0 \ube14\ub85d\uccb4\uc778\uacfc \uac00\uc7a5 \uc798 \uc5f0\uacc4\ub418\uc5b4 \uc788\uc9c0\ub9cc, \ub2e4\ub978 EVM \ud638\ud658 \uac00\uc0c1 \uba38\uc2e0\uacfc\ub3c4 \uc6d0\ud65c\ud558\uac8c \uc791\ub3d9\ud55c\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\uc758 \ucd9c\ud604 \uc2dc\uae30\ub294 \uc774\ub354\ub9ac\uc6c0\uc758 \uae30\uc5c5\uc6a9 \ube14\ub85d\uccb4\uc778, \ud558\uc774\ud37c\ub808\uc800 \ud328\ube0c\ub9ad(Hyperledger Fabric), \ud504\ub77c\uc774\ube57 \ube14\ub85d\uccb4\uc778\uc758 \uc778\uae30\uac00 \uae09\uc99d\ud558\ub294 \uc2dc\uae30\uc640 \ub9de\ubb3c\ub824 \uc788\uc5c8\ub2e4.<\/p>\n \uc194\ub9ac\ub514\ud2f0\uc758 \uc751\uc6a9 \ubd84\uc57c\ub294 \ub9e4\uc6b0 \uad11\ubc94\uc704\ud558\ub2e4. \uc608\ub97c \ub4e4\uc5b4, SWIFT\ub294 \ud558\uc774\ud37c\ub808\uc800 \ud328\ube0c\ub9ad\uc5d0\uc11c \uc2e4\ud589\ub418\ub294 \uac1c\ub150 \uc99d\uba85\uc5d0\uc11c \uc194\ub9ac\ub514\ud2f0\uc758 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud588\ub2e4.<\/p>\n \ub2e4\ub978 \uc5b8\uc5b4\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \uc194\ub9ac\ub514\ud2f0\uc5d0\ub3c4 \ub2e8\uc810\uc774 \uc788\ub2e4.<\/p>\n \/\/ SPDX-License-Identifier: GPL-3.0 contract Coin { \/\/ \uc774\ubca4\ud2b8\ub294 \ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \ubc18\uc751\ud558\ub3c4\ub85d \ud55c\ub2e4. \/\/ \uc0dd\uc131\uc790 \ucf54\ub4dc\ub294 \ucee8\ud2b8\ub799\ud2b8\uac00 \/\/ \uc0c8\ub85c \uc0dd\uc131\ub41c \ucf54\uc778\uc758 \uc591\uc744 \uc8fc\uc18c\ub85c \uc804\uc1a1\ud55c\ub2e4. \/\/ \uc5d0\ub7ec\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \uc815\ubcf4\ub97c \uc81c\uacf5\ud55c\ub2e4. \/\/ \uae30\uc874 \ucf54\uc778\uc758 \uc591\uc744 balances[msg.sender] -= amount; \uc0c8\ub86d\uac8c \ub5a0\uc624\ub978 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uc778 \uc194\ub9ac\ub514\ud2f0\ub294 \uc218\ub9ce\uc740 \ub3c4\uc804 \uacfc\uc81c\uc5d0\ub3c4 \ubd88\uad6c\ud558\uace0, \ud504\ub85c\uadf8\ub798\ubc0d \ud658\uacbd\uc5d0\uc11c \uc911\uc694\ud55c \uc704\uce58\ub97c \ucc28\uc9c0\ud558\uace0 \uc788\ub2e4. \uc774\ub354\ub9ac\uc6c0\uc758 \uc2a4\ub9c8\ud2b8 \uacc4\uc57d \uac15\ud654\ub77c\ub294 \uc911\uc694\ud55c \uc5ed\ud560 \ub54c\ubb38\uc774\ub2e4.<\/p>\n \ub2e4\ub978 \ub3c4\uad6c\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \uc194\ub9ac\ub514\ud2f0\uc758 \ud6a8\uacfc\ub294 \uc0ac\uc6a9 \ubc29\ubc95\uc5d0 \ub530\ub77c \ub2ec\ub77c\uc9c4\ub2e4. \uac1c\ubc1c\uc790\uac00 \uc194\ub9ac\ub514\ud2f0\uc758 \uc7a0\uc7ac\ub825\uc744 \uc81c\ub300\ub85c \ubc1c\ud718\ud558\uae30 \uc704\ud574\uc11c\ub294 \uac15\uc810\uacfc \ud55c\uacc4\ub97c \ubaa8\ub450 \uc778\uc2dd\ud558\uace0 \uc788\uc5b4\uc57c \ud55c\ub2e4.<\/p>\n \ud5a5\ud6c4 \uae08\uc735 \uc0dd\ud0dc\uacc4\uc5d0\uc11c \uc2a4\ub9c8\ud2b8 \uacc4\uc57d\uc758 \uc5ed\ud560\uc774 \ucee4\uc9d0\uc5d0 \ub530\ub77c \uc194\ub9ac\ub514\ud2f0\uc758 \uc5ed\ud560\ub3c4 \ucee4\uc9c8 \uac83\uc73c\ub85c \uc804\ub9dd\ub41c\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":" \uc194\ub9ac\ub514\ud2f0\ub780? \uc194\ub9ac\ub514\ud2f0(Solidity)\ub294 \uac1d\uccb4 \uc9c0\ud5a5\uc758 \uace0\uae09 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\ub85c, \ub2e4\uc591\ud55c \ube14\ub85d\uccb4\uc778 \ud50c\ub7ab\ud3fc\uc5d0\uc11c \uc2a4\ub9c8\ud2b8 \ucee8\ud2b8\ub799\ud2b8\ub97c \uc0dd\uc131\ud558\uace0 \uad6c\ud604\ud558\ub294 \ub370 \uc0ac\uc6a9\ub41c\ub2e4. \uc774\ub7ec\ud55c \ud50c\ub7ab\ud3fc\uc5d0\ub294 \uc8fc\ub85c \uc774\ub354\ub9ac\uc6c0\uc774 \ud3ec\ud568\ub418\uc9c0\ub9cc, \uc194\ub9ac\ub514\ud2f0\ub294 \ud3f4\uce74\ub2f7(Polkadot)\uacfc \uac19\uc740 \ub2e4\ub978 \ud50c\ub7ab\ud3fc\uc5d0\uc11c\ub3c4 \uc0ac\uc6a9\ub41c\ub2e4. \uc194\ub9ac\ub514\ud2f0 \uc791\ub3d9 \ubc29\uc2dd \uc194\ub9ac\ub514\ud2f0\uc758 \uad6c\ubb38\uc740 C++, \ud30c\uc774\uc36c, \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc640 \uac19\uc740 \uc601\ud5a5\ub825 \uc788\ub294 \uc5b8\uc5b4\uc5d0\uc11c \uc601\uac10\uc744 \uc5bb\uc5c8\ub2e4. \uadf8\ub807\uae30 \ub54c\ubb38\uc5d0 \uc774\ub7ec\ud55c \uc5b8\uc5b4\uc5d0 \uc775\uc219\ud55c \uac1c\ubc1c\uc790\uc5d0\uac8c\ub294 \uce5c\uc219\ud558\uac8c \ub290\uaef4\uc9c8 \uac83\uc774\ub2e4. \uc194\ub9ac\ub514\ud2f0\uc758 \ud575\uc2ec \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc778 \uc2a4\ub9c8\ud2b8 \uacc4\uc57d\uc740 […]<\/p>\n","protected":false},"author":7813,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"definitioncat":[41],"class_list":["post-12161","definition","type-definition","status-publish","format-standard","hentry","definitioncat-tech-101"],"acf":[],"yoast_head":"\n\uc194\ub9ac\ub514\ud2f0 \uc791\ub3d9 \ubc29\uc2dd<\/span><\/h2>\n
\uc194\ub9ac\ub514\ud2f0\ub294 \uc5b4\ub5bb\uac8c \ub9cc\ub4e4\uc5b4\uc84c\ub098?<\/span><\/h2>\n
\uc194\ub9ac\ub514\ud2f0\uc758 \uc7a5\ub2e8\uc810<\/span><\/h2>\n
\uc194\ub9ac\ub514\ud2f0\uc758 \uc7a5\uc810<\/span><\/h3>\n
\n
\uc194\ub9ac\ub514\ud2f0\uc758 \ub2e8\uc810<\/span><\/h3>\n
\n
\uc194\ub9ac\ub514\ud2f0\uc758 \uc608<\/span><\/h2>\n
\npragma solidity ^0.8.4;<\/p>\n
\n\/\/ “public” \ud0a4\uc6cc\ub4dc\ub294 \ubcc0\uc218\uac00
\n\/\/ \ub2e4\ub978 \ucee8\ud2b8\ub799\ud2b8\uc5d0\uc11c \uc811\uadfc\ud560 \uc218 \uc788\uac8c \ud55c\ub2e4.
\naddress public minter;
\nmapping(address => uint) public balances;<\/p>\n
\n\/\/ \ud2b9\uc815\ud55c \ucee8\ud2b8\ub799\ud2b8 \ubcc0\uacbd\uc5d0
\nevent Sent(address from, address to, uint amount);<\/p>\n
\n\/\/ \uc0dd\uc131\ub420 \ub54c\ub9cc \uc2e4\ud589\ub41c\ub2e4.
\nconstructor() {
\nminter = msg.sender;
\n}<\/p>\n
\n\/\/ \ucee8\ud2b8\ub799\ud2b8 \uc0dd\uc131\uc790\ub9cc \ud638\ucd9c\ud560 \uc218 \uc788\ub2e4.
\nfunction mint(address receiver, uint amount) public {
\nrequire(msg.sender == minter);
\nbalances[receiver] += amount;
\n}<\/p>\n
\n\/\/ \uc5f0\uc0b0\uc774 \uc2e4\ud328\ud55c \uc774\uc720. \uc5d0\ub7ec\ub294 \ubc18\ud658\ub41c\ub2e4.
\n\/\/ \ud568\uc218 \ud638\ucd9c\uc790\uc5d0\uac8c
\nerror InsufficientBalance(uint requested, uint available);<\/p>\n
\n\/\/ \ubaa8\ub4e0 \ud638\ucd9c\uc790\ub85c\ubd80\ud130 \uc8fc\uc18c\ub85c
\nfunction send(address receiver, uint amount) public {
\nif (amount > balances[msg.sender])
\nrevert InsufficientBalance({
\nrequested: amount,
\navailable: balances[msg.sender]\n});<\/p>\n
\nbalances[receiver] += amount;
\nemit Sent(msg.sender, receiver, amount);
\n}
\n}<\/p>\n\uacb0\ub860<\/span><\/h2>\n