본문 바로가기

Block Chain/Web3 Series5

[Wallet Series #2] 메타마스크의 window.ethereum는 어디서 왔을까? 안녕하세요. 스마트컨트렉트 개발자 최원혁입니다. 어제 다녀온 블록체인 회사에 면접을 보고 왔습니다. 주요 업무가 wallet 개발이다 보니 지갑 개발에 관련된 질문을 많이 받았습니다. 받았던 질문 중에서 메타마스크의 window.ethereum은 어떻게 생긴 데이터인지 질문을 받았습니다. 당시에 대답을 논리 정연하게 하지 못해 아쉬운 마음이 많아 이번 게시글을 통해 내용을 논리적으로 정리해 볼까 합니다. # 1. window 객체? feat. 프로퍼티(Property)메타마스크의 window.ethereum을 이해하기 전, 앞에 붙어 있는 window가 무엇인지에 대해 먼저 이해할 필요가 있습니다.Window 객체 : 자바스크립트의 모든 객체, 전역 함수, 전역 변수들은 자동으로 window 객체의 프로.. 2023. 4. 13.
[Wallet Series #1]이더리움의 디지털 서명과 타원곡선 함수 안녕하세요. 스마트컨트렉트 개발자 최원혁입니다. 오늘 블록체인 회사 면접을 보고왔습니다. 스스로 많이 부족한 점을 느낄 수 있었던 계기가 됬네요... 기술 질문에서 답변하지 못하거나 논리정연하게 답하지 못한 내용이 있습니다. 그중 하나가 solidity의 ecrecover에 대한 내용이였습니다. 이를 이해하기 위해선 이더리움이 활용하는 디지털 서명과 타원 곡선 함수에 대한 이해가 필요했습니다. 오늘 공부하면서 정리한 내용을 적어볼까합니다. # 1. 디지털 서명 이란? 디지털 서명이란 내가 만든 데이터를 내가 만들었음을 증명하는 기술입니다. EXAMPLE : { nonce: ‘0xc9’, gasPrice: ‘0x4a817c800’, gasLimit: ‘0x61a80’, from:'영애', to: '철수',.. 2023. 4. 11.
[Rollup Series #2] 이더리움의 롤업을 위한 댕크샤딩 & PBS 안녕하세요. 스마트컨트렉트 개발자 최원혁입니다. 오늘은 크립토씬에서 가장 핫한 키워드인 "롤업"에 대한 내용과 롤업을 위한 이더리움의 기술 댕크샤딩에 대해 알아보겠습니다. | 이더리움 현재 로드맵과 The Surge : 1) The Merge — 작업 증명 이더리움과 비콘 체인의 합병(merge)을 통해 이더리움을 지분증명으로 전환하고, 이는 앞으로의 확장성 개선 로드맵에 초석이 된다. 2) The Surge — 롤업들의 트랜잭션 데이터 저장 공간을 위한 블롭(blob)이 추가되는 댕크샤딩이 도입되며, 롤업 네트워크들에게 충분한 데이터 가용성을 제공한다. 3) The Verge — 머클트리 대신 버클트리를 도입하여, 노드들이 state 정보를 저장하지 않은 상태에서도 블록을 검증할 수 있게 한다. 이는 .. 2023. 4. 6.
[RollUp Series #1] 레이어2와 사이드체인의 차이점 안녕하세요. 스마트컨트렉트 개발자 최원혁입니다. 오늘은 롤업 시리즈 1편으로, 레이어2와 사이드체인의 차이점에 대해 다뤄보겠습니다. | 레이어2와 사이드체인의 차이점 ○ 레이어2 : 레이어(Layer)는 "층"이라는 뜻으로 레이어 2는 "2층"을 의미합니다. "1층"인 레이어1이 문제가 생기거나 무너진다면, 레이어2 또한 더이상 동작할 수 없게 되는 구조이기에, "레이어"라는 표현을 씁니다. 이 처럼 레이어1에 영향을 받은 존재는 레이어2(L2)라 부릅니다. ○ 사이드 체인 : 사이드체인은 메인넷과 서로 다른 블록체인 위에 존재합니다. 사이드체인에 문제가 생기거나 해킹을 당해도 메인넷에 영향을 주지 않습니다. 이처럼 이 둘의 차이는 "독립성"입니다. 이렇게 분리된 이유는 기존의 레이어1이 가진 "속도"문.. 2023. 4. 3.
이더리움 지갑 주소(EOA) 생성 과정 || Ethereum | EOA | ethersJS || code example by JS ※ 예시를 위해 사용된 주소(address)와 Private Key는 테스트 용도입니다. 이더리움 주소(Address) 란? ex: 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4 이더리움의 네트워크 EVM에는 address type의 데이터가 있습니다. 0x + 40글자(char)의 형태로 20 bytes의 용량을 갖고 있습니다. - 0x는 단순히 16진수 데이터를 표기하는 의미를 갖고 있으며, 데이터의 용량에 포함되지 않습니다. - 1 char = 4 bit , 8 bit = 1 bytes이며, address의 40글자(char)는 40 * 4 / 8 = 20 bytes가 됩니다. 위 데이터의 형태에서 벗어나게 되면 EVM은 이를 address type 데이터로 인식하지 .. 2022. 11. 13.
반응형