Solidity3 Solidity Visibility, 그리고 View와 Pure 속성 Soliditiy에서는 함수 및 State Variable을 다른 Smart Contract에서 액세스 할 수 있도록 Visibility(가시성)를 설정할 수 있습니다. Visibility 종류 구분 설명 public 모든 Smart Contract와 Account에서 접근 가능함 private 기능이 정의된 Smart Contract에서만 접근 가능함 internal 내부 기능을 상속받은 Smart Contract에서만 접근 가능함 external 외부 Smart Contract 및 Account에서만 접근 가능함 Sample Code (Solidity) // SPDX-License-Identifier: MIT pragma solidity ^0.8.17; contract Base { // Private.. 2023. 7. 8. Contract Application Binary Interface (ABI) Contract Application Binary Interface (ABI)란 Solidity 환경에서의 ABI는 블록체인 외부 환경과 Smart Contract 또는 Smart Contract 간에 상호 작용하는 표준 방법을 의미 합니다. 이러한 상호 작용을 위해서는 ABI 포맷으로 Encoding 하거나, Encoding된 ABI를 Decoding 할 수 있어야 합니다. 실제 Encoding된 ABI Data를 통하여 이러한 방식을 알아보도록 하겠습니다. ※ 이번 포스팅에서는 비표준 방식의 ABI Encoding은 다루지 않을 계획입니다! ABI Encode ABI Encoding된 데이터는 아래와 같은 포맷을 가지게 됨 정적 타입 - 일반 타입, [M]와 같이 배열 크기가 고정된 경우 4Byte .. 2023. 7. 1. Reentrancy Attack in Smart Contract Smart Contract는 블록체인 기술에서 중요한 개념 중 하나로, 계약 체결과 실행을 자동으로 수행할 수 있는 프로그램이며, 블록체인 기술을 활용하여 제 3자의 인증 기관 없이 개인 간 계약이 이루어질 수 있도록 하는 기술입니다. 조금 더 자세히 설명드리자면, Smart Contract는 계약자가 계약 시 조건을 미리 프로그래밍하여 블록체인 네트워크 상에 올려놓고, 이 조건이 충족되거나 비충족되었을 때 사전에 정의한 행위를 컴퓨터가 자동으로 수행함으로써 정상적인 계약 이행이 이루어집니다. 이를 통해 제 3자 없이 계약이 이루어질 수 있습니다. 이러한 Smart Contract는 Ethereum이 등장하면서 최초로 구현되기 시작했으며, 현재는 다양한 형태의 Smart Contract가 개발되고 있습니.. 2023. 4. 29. 이전 1 다음