일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- html #js #parsing
- #국제채권시장 #유로본드 #유로커런시 #유로달러 #외국채 #금융중개기관 #간접금융 #거래비용#다우존스공업평균지수 #나스닥종합지수 #FTSE100 #DAX #CAC40 #straittimes #항생지수 #거래비용 #유동성 #위
- #경제상식 #화폐 #금융 #화폐금융론 #경제학 #경제기본 #경제지식 #경제근육 #투자지식 #경제공부 #경제학전공 #금융이란 #화폐란 #금융시장 #금융시장역할 #화폐역할 #화폐역기능 #금융역기능 #
- 자료구조 #알고리즘
- 페이스북유니버시티 #마케팅교육 #마케팅캠프
- 미쉬킨의화폐와금융 #미쉬킨 #화폐금융론 #화폐와금융 #경제학 #교양 #경제지식 #경제공부
- 블록체인 #layer2 #레이어2 #이더리움스케일링
- vp #vc #did #신원인증 #블록체인
- Today
- Total
목록분류 전체보기 (140)
평행우주 : world 1
컨트랙트 정의 솔리디티의 주요 데이터 타입은 contract이다 객체지향 언어의 객체와 마찬가지로, 컨트랙트는 데이터와 메서드가 포함된 컨테이너다 솔리디티는 컨트랙트와 유사한 두 가지 객체 유형을 제공한다 interface 인터페이스 정의는 함수가 정의되어 있지 않고 선언만 되어 있다는 것을 제외하면, 컨트랙트와 완전히 같은 구조로 되어 있다 이런 유형의 선언은 흔히 stub이라고 불린다 어떤 구현도 없이 함수의 인자와 반환 유형을 알려준다 인터페이스는 컨트랙트의 형태를 지정한다 상속될 때 인터페이스에 의해 선언된 각 함수는 자식에 의해 정의되어야 한다 library 라이브러리 컨트랙트는 delegatecall 메서드를 참고하여 한 번만 배포되고 다른 컨트랙트에서 사용되기 위한 컨트랙트이다 함수 컨트랙트..
스마트컨트랙트의 생명주기 스마트컨트랙트는 일반적으로 솔리디티 같은 고급언어로 작성된다 그러나 컨트랙트를 실행하려면, EVM에서 실행되는 저수준의 바이트 코드로 컴파일 되어야 한다 일단 컴파일 되면 고유한 컨트랙트 생성 트랜잭션을 사용하여 이더리움 플랫폼에 배포되며, 이 트랜잭션은 고유한 컨트랙트 생성 주소, 즉 0x0으로 전송된다 +) 참고 2022.03.27 - [텃밭 1 : BlockChain/이론] - [블록체인이론] 특별 트랜잭션 : 컨트랙트 생성 [블록체인이론] 특별 트랜잭션 : 컨트랙트 생성 특별 트랜잭션 : 컨트랙트 생성 블록체인에 새로운 컨트랙트를 만들어 향후 사용을 위해 배포하는 트랜잭션 컨트랙트 생성 트랜잭션은 제로 어드레스라고 하는 특수 대상 주소로 전송된다 컨트 1parallelwo..
서명 및 전송 분리 트랜잭션이 서명되면 트랜잭션은 이더리움 네트워크로 전송할 준비가 된다 트랜잭션 생성, 서명, 브로드캐스트의 세 단계는 일반적으로 단일 작업(ex: web3.eth.sendTransaction)에 의해 처리된다 그러나 두 단계로 나누어 트랜잭션을 생성하고 서명할 수도 있다 서명된 트랜잭션이 있으면 web3.eth.sendSignedTrnasaction을 사용하여 트랜잭션은 16진수로 인코딩하고, 서명해서 이더리움 네트워크에 전송할 수 있다 트랜잭션 서명과 전송을 분리하려는 이유 가장 보편적인 이유는 보안이다 트랜잭션에 서명하는 컴퓨터에는 잠금 해제된 개인키가 메모리에 로드되어 있어야 한다 전송을 수행하는 컴퓨터는 인터넷에 연결되어 있어야 하며, 이더리움 클라이언트를 실행해야 한다 이 두..
디지털 서명 용도 디지털 서명은 이더리움에서 세 가지 용도로 사용된다 1. 서명은 이더리움 계정과 개인키의 소유자가 이더 지출 또는 컨트랙트 이행을 승인했음을 증명 2.부인 방지를 보장한다. 즉, 허가의 증거는 부인할 수 없다 3.서명은 트랜잭션이 서명된 후에는 트랜잭션 데이터가 수정되지 않았고 어느 누구도 트랜잭션 데이터를 수정할 수 없음을 증명한다 디지털 서명 작동 방법 디지털 서명은 두 단계로 구성된 수학적 체계다 1 단계 : 메세지(트랜잭션)에서 개인키(서명키)를 사용하여 서명을 만드는 알고리즘 2 단계 : 누구나 메세지와 공개키만 사용하여 서명을 검증할 수 있게 해주는 알고리즘 서명 확인 서명을 확인하려면 서명(r, s)과 시리얼라이즈된 트랜잭션, 그리고 서명을 만드는 데 사용된 개인키에 상응하..
특별 트랜잭션 : 컨트랙트 생성 블록체인에 새로운 컨트랙트를 만들어 향후 사용을 위해 배포하는 트랜잭션 컨트랙트 생성 트랜잭션은 제로 어드레스라고 하는 특수 대상 주소로 전송된다 컨트랙트 등록 트랜잭션의 to 필드는 0x0주소를 포함한다 이 주소는 EOA나 컨트랙트를 나타내지 않는다 결코 이더를 소비하거나, 트랜잭션을 시작할 수 없다 이 필드는 목적지로만 사용되며 '컨트랙트 작성'이라는 특별한 의미로 사용된다 제로 어드레스는 컨트랙트 생성에만 사용하려는 의도로 만들어졌지만, 때로는 제로 어드레스를 목적지로 하는 다양한 트랜잭션이 있다 >실수로 인한 이더 손실이나 의도적인 이더 연소 (그러나 이더의 의도적인 연소를 원한다면 네트워크에 의도를 분명히 하고 대신 지정된 주소를 사용해야 한다) 컨트랙트 생성 트..
키와 주소 앞서 봤듯이, 이더리움은 외부소유계정과 컨트랙트라는 두 가지 유형의 계정을 갖고 있다 디지털 개인키, 이더리움 주소, 디지털 서명을 통해 외부 소유 계정의 이더 소유권을 확립한다 계정 주소는 개인키에서 직접 파생되고, 개인키는 계정이라고도 불리는 단일 이더리움 주소를 고유하게 결정한다 이더리움 시스템은 개인키를 이더리움에 전송하거나, 저장하는 방식으로 직접 사용하지 않는다 즉, 개인키는 비공개로 유지되어야 하고 네트워크로 전달된 메세지에 나타나지 않으며, 체인에 저장되어서도 안 된다 계정주소와 디지털 서명만 이더리움 시스템에 전송되고 저장된다 개인키를 사용하여 생성된 디지털 서명을 통해 자금의 접근과 통제가 이루어진다 이더리움 트랜잭션은 유효한 디지털 서명이 블록체인에 있어야 한다 개인키의 사..
contract Faucet { //요청하는 사람에게 이더 주기 function withdraw(uint withdraw_amount) public { //출금 액수 제한 require(withdraw_amount
string solidity에서 string타입은 가스를 더 소비하기 최대한 지양한다 string을 받아서 다시 byte화 시켜서 이해를 해야하고, 반대로 byte를 string화 하여 꺼내야하기 때문에 가스가 더 소비된다 byte 배열 고정크기 고정크기의 바이트 배열로, bytes1~32까지 선언된다 가변크기 bytes 또는 string으로 선언된 가변 크기의 바이트 배열 boolean integer 크게 접미어가 없으면 EVM의 단어 크기를 맞추기 위해 256비트가 사용된다 int : 기호있음 int8 : -2^7 ~ 2^7-1 int16: -2^15~2^15-1 int32: -2^31~2^31-1 int64: -2^63~2^63-1 int128 : -2^127~2^127-1 int256 (=int)..