[ERC-20/ERC-721] 개인지갑들이 해킹당하는 간단한원리
2022. 5. 30. 02:47
블록체인/NFT
1.NFT와 Token의 차이점 1.NFT란 무엇일까? (Non-Fungible-Token) 대체불가능한 토큰 erp-721 제안 erc-721에서 사용됌 사인받았냐 안받았냐에따라 가치가달라짐 민팅된 nft 토큰주소와 고유의 아이디만 가지고있으면 고유한 가치가 생김 소유권을 쉽게 증명할수있다는 특징 nft에는 이미지만 담기지않고 음악도 담길수있음 2.ERC-20이란 대체가능한 토큰이다 서로교환이가능함 2.erc-721 작동방식 1.Erc-721에서 사용하는 주로 확인할 수 있는 코드들 balanceOf owner가 소유한 NFT의 갯수를 반환 owenerOf 특정 tokenId를 가진 NFT의 소유주 주소를 반환 approve 특정 계정에게 자신이 소유한 NFT 하나를 사용하도록 허용 getApprove..
코어 이더리움 12 [ 스마트 컨트랙트와 evm]
2022. 5. 27. 00:56
블록체인/코어 이더리움
1.스마트 컨트랙트 특정 계약을 스스로 수립,검증,이행하기위한 컴퓨터 프로토콜이다 스마트 컨트랙트를 만든 사람이 말한 두가지 원칙이 있다. 1.“모든 트랜잭션을 실행할 때는 해당 실행 비용을 지급해야 한다.” 이 말은 무한반복 같은 악의적인 코드를 막고 데이터의 무결성을 지키기위해 가스비를 소모하여 막는다는 의미이다. 2.“컨트랙트의 모든 내용과 입력을 공유한다.” 모든 컨트랙트의 내용과 입력 정보를 공유한다. 그러나 결과는 공유하지 않는다. 결과를 공유 하지 않는 이유는 블록체인의 컨트랙트와 트랜잭션, 리시트 정보를 재구성하면 언제든지 해당 트랜잭션의 결과를 확인할 수 있기 때문이다. 이처럼 컨트랙트의 모든 내용과 입력을 공유함으 로써 악의적으로 컨트랙트를 조작하는 것을 방지할 수 있다. 2.컨트랙트 ..
코어 이더리움 11 [믹스해시,넌스,타임스탬프,하드포크 추구하는방향?]
2022. 5. 25. 23:37
블록체인/코어 이더리움
믹스해시 블록의 헤더에는 넌스(64비트)와 믹스다이제스트(256비트)가 담겨있다 type BlockNonce [8]byte type Header struct { ... MixDigest common.Hash //----------- ➊ Nonce BlockNonce //----------- ➋ ... } 이두개는 제네시스블록에 저장되어있다. 난이도와 타임스탬프 난이도는 타임스탬프값을 기준으로 계속 조정이이루어진다. 1.if (타임스탬프가클때) 1.난이도가 낮아짐 2.블록생성시 채택이 잘안됌 2.else if(타임스탬프가 낮을때) 1.난이도가 높아짐 2.마이닝 비용상승 두가지 이유때문에 정확한 타임스탬프를 사용해야한다. 비잔티움과 홈스테드는 각각 하드포크 유무에따라 적용되는 공식이 다르다 즉, 비잔티움 =..
코어 이더리움 10[믹스해시]
2022. 5. 25. 01:11
블록체인/코어 이더리움
믹스해시란! 1.넌스를 이용하여 생성되는 중간단계의 128바이트해시값! 2.이녀석을 쓰면 작업증명계산이 경량화된다! 1. 캐착으로 암호해시 첫번째 믹스해시 구성! 2. 첫 번째 믹스해시를 사용! DAG(시드 해시로 생성된 약 2G 정도의 캐시 데이터 집합)에서 첫번째 페이지 추출함! 3. 이더리움의 믹싱함수를 사용! 추출된 DAG의 첫 번째 페이지와 첫 번째 믹스해시로부터 두번째 믹스해시 생성! 4. 위과정을 64번 반복하여 64번째 믹스해시 생성~~! 5. 64번째 마지막 믹스해시를 활용하여 32바이트 믹스다이제스트를 구성! 6.믹스다이제스트와 미리 정의된 32바이트 마이닝의 목푯값을 비교한다! if (믹스다이제스트 목표값 ) 넌스값 ++하거나 or Math.random(넌스값) 위과정 반복 요약! 컴..
코어 이더리움 9 [ 컴퓨팅파워가 높은 컴퓨터들의 독점을 막기위한 방법들중..]
2022. 5. 23. 23:36
블록체인/코어 이더리움
이대시 = 메모리 기반의 이더리움 PoW 합의 엔진 하는역할 정확한 믹스해시와 넌스값을 계산하는것이다. DAG 마이닝을 구동시키면, 십수분 후에는 홈 디렉터리의 디스크 사용량이 2G가량 증가, 이는 이대시에서 캐시영역을 확보하기위해 시드 해시를 생성. 시드 해시로 생성된 약 2G 정도의 캐시 데이터 집합을 DAG파일이라고 한다. 에포크 검증인들이 검증 작업을 하는 체크포인트의 블록 간격을 지칭하는 말이다. 이더리움은 이러한 전용 채굴기를 개발할 수 없게 하기 위해 일정한 시간마다 암호화 알고리즘을 변경시킨다. ================>그 시간 간격을 에폭이라 부른다. 에폭이 다음 단계로 넘어갈 때마다 DAG 사이즈는 점점 증가하게 된다. 따라서 DAG 사이즈보다 작은 용량의 그래픽 카드로는 해당 코..
코어이더리움8[블록전파와 포크]
2022. 5. 20. 23:37
블록체인/코어 이더리움
블록체인 전파 핵심내용 난이도가 높고 높이가 높은쪽이 선택되고, 버림받은 N+1 노드는 엉클블록이됀다. 포크 포크(fork)란 개발자들이 하나의 소프트웨어 소스코드를 통째로 복사하여 독립적인 새로운 소프트웨어를 개발하는 것을 말한다 포크가 일어난다는 것은 새로운 분기점이 일어난다고 볼 수 있다 포크의 종류에는 하드포크와 소프트포크가 있으며 포크가 일어나는 이유는 다양하지만 이전의 규칙에서 새로운 규칙으로 넘어간다는 점 다중체인이 생길떄 단일체인으로 합의하는 알고리즘 이더리움 => 고스트프로톨(무거운체인선택) 비트코인 => 나가모토 합의(긴체인선택) 하드포크 (가장최근 꺼를 스냅샷을 찍어서 새로운 제네시스블록에 등록한다) 아예갈린다 새롭게 생성 (아예 다른 제네시스 블록을 사용함) 1.신규 기능추가 2.블..