ordinary subinium
9.74K subscribers
1.51K photos
33 videos
1.68K links
진짜가 되고 싶은.

채팅방: https://t.me/web3subinchat

* 모든 의견은 개인 의견이며, 제가 속한 회사, 조직 등을 대변하지 않습니다. 모든 내용은 특정 자산에 대한 경제적 조언이 아니며, 이에 대해 책임지지 않습니다.
Download Telegram
🔹주소는 어떻게 만들어지나요? - 이더리움

지난 비트코인 주소 생성 과정 글에 이어, 이번에는 이더리움의 주소 생성입니다. 참고로 지난번에 PBKDF2랑 Hash160의 디테일에 대해 빠져먹었는데 혹여나 불편한 비트맥시분이 있다면 죄송합니다.

1️⃣ 이더리움과 비트코인 차이

이더리움도 EOA 같은 경우는 비트코인 로직과 거의 똑같습니다. 공개키에서 주소를 만드는 로직이 다음과 같이 다릅니다.

- 비트코인: (SHA256) → (HASH160) → Base58Check/Bech32 → 주소
- 이더리움: (Keccak-256) → 마지막 20바이트 → 주소

비트코인의 경우 RIPEMD160으로 160비트 남기는거고 이더리움은 그냥 마지막 바이트를 사용하는 것입니다. 그리고 이더리움은 체크섬을 대소문자로 표현하게 됩니다. (EIP-55)

재밌는 차이는 서명에서 나오게 되는데, 비트코인은 초기 ECDSA 서명이나 Schnorr 서명이나 서명에 공개키를 포함시킵니다. 왜냐면 서명에 사용되는 (r, s), (R,s) 페어에서 공개키 복호화 로직이 없기 때문에 본인이 해당 주소의 소유주를 증명하기 위해 공개키를 함께 사용해서 서명해야 합니다.

이더리움은 마찬가지로 ECDSA 서명(슈노르가 멀티시그에 좋긴한데 보안적으로 보안성은 비슷)으로 근간은 같은데 서명에 사용하는 (r, s, v)값을 통해 서명할 때 공개키를 복구할 수 있습니다. 그래서 서명에서 공개키를 포함안시키고 결론적으로는 이더리움 서명이 더 가볍습니다.

현재 이더리움의 ECDSA는 이산로그 문제라 양자컴퓨터에 취약합니다.(물론 이것도 한참 남았음) 근데 Smart Account(AA)를 사용하면 원하는 서명을 사용할 수 있습니다. 이건 직접 짜보면 제일 쉬운데 zkSync 컨트랙트 예시를 구현해보시면 알 수 있습니다.

2️⃣ 컨트랙트 주소 (Contract Account, CA)

그런데 이더리움은 주소가 두가지 입니다. 일반적으로 사용하는 사용자 주소 EOA와 스마트컨트랙트 주소 CA가 있는데, CA는 시드구문이 없잖아요?

그래서 기본적으로 처음에 만들때 배포하는 주소의 EOA와 nonce 값으로 만듭니다. 근데 스마트컨트랙트를 만드는 기본 opcode는 2가지가 있습니다. 바로 CREATE와 CREATE2인데 CREATE는 nonce를 기반으로 CREATE2는 salt와 bytecode를 기반으로 만듭니다. salt는 고정 텍스트입니다.

근데 이게 중요한데 salt는 고정 텍스트라서 같은 코드, 같은 배포자면 같은 컨트랙트 주소를 고정시킬 수 있습니다. 즉, 멀티체인 컨트랙트의 경우 주소 통일이 가능한 이유는 이 CREATE2를 사용하기 때문입니다. 근데 이제 여기서 또 살펴볼 내용은 bytecode가 같아야 하는 것인데 이게 opcode 레벨에서 같아야 함을 의미하고, 궁극적으로 EVM-compatible에서 매우 크게 영향을 미칩니다.

zkEVM의 경우, zk증명 생성의 효율성을 위해 이더리움의 EVM과 조금 다른 opcode를 사용합니다. 그러면 bytecode가 다르게 되고 그럼 같은 컨트랙트임에도 주소가 다르게 되는것이죠. 이런게 UX를 해치는 것 중 하나의 예시이죠.

뭐 여튼 그럼 bytecode + salt 조합으로 계속 새로운 해시 값을 찾아볼 수 있다는 것인데, 이게 비트코인 PoW처럼 생각하면 원하는 주소를 어느정도 찾아볼 수 있습니다. 그래서 1inch 같은 변태들은 주소를 보면 1로 쭉 시작하는 해시를 찾아서 만든 것을 알 수 있죠. 0x111111111117dc0aa78b770fa6a738034120c302

이외에도 유니스왑 같은 2개 이상 토큰 페어 풀이 있는 경우 create2를 통해 토큰 페어 자체만으로도 해당 풀의 주소를 계산할 수 있습니다.

3️⃣ L2의 사용자 지정 주소

L2에 보면 0x42000000..006이나 이런 특정 패턴 주소가 있는데, 이건 그냥 처음에 만들때 데이터 베이스에 넣어두는 것입니다. Genesis라고 부르는데 이건 하드포크가 아닌 이상 처음에만 넣을 수 있습니다. 그게 센스겠죠?

4️⃣ EVM 친구들 (feat.Tron & 코스모스 EVM)

뜬금없는데 Tron은 이더리움과 주소 만드는 방식은 똑같은데 Base58을 사용하는 비트코인 방식도 같이 사용했습니다. 근데 결국 양방향 변환이 가능해서 이더리움 주소와 똑같이 생성합니다. Dune과 같은 데이터 분석 플랫폼에서는 0x~로 시작하는 주소로 제공하긴 하는데 Tron용 Base58인코더/디코더 함수도 별도로 제공하고 있습니다. EVMOS 등 코스모스 EVM 계열은 Bech32를 사용하여 변환하는데 자체적으로는 이더리움 주소가 있습니다. 나머지 BSC, Avax-c 등은 다 같습니다.

다음에는 솔라나 주소로 돌아오겠습니다.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍3
참고로 내일부터 올해의 이더리움 생태계 마지막 대규모 크립토 행사인 Devcon이 시작됩니다. 아직 본격적인 시작 전에 수 많은 사이드 이벤트에서 많은 발표가 진행되었는데, 이번 주는 정말 재밌는 한 주가 될 것 같네요.
🔥16
가만히있어도 돈복사 되는 장🎁
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👎2
신기술은 돈이 된다 공지방
가만히있어도 돈복사 되는 장🎁
이사람보고 현타옴🥲 이게 힘의 차이인가. 이제 신기술은 돈이 된다고 믿어야겠다
👍1
ordinary subinium
참고로 내일부터 올해의 이더리움 생태계 마지막 대규모 크립토 행사인 Devcon이 시작됩니다. 아직 본격적인 시작 전에 수 많은 사이드 이벤트에서 많은 발표가 진행되었는데, 이번 주는 정말 재밌는 한 주가 될 것 같네요.
오늘 곧 데브콘이 시작합니다. 과연 저스틴 드레이크는 어떤 것을 들고 왔을지, 이게 과연 이더 생태계에 어떤 도움을 줄지 궁금하네요.

지금 나올만한 업데이트를 조금 상상력을 첨가해보면...

1. 확장성 개선 - 풀샤딩...은 아직 이르고, 블록 크기 또는 주기 변경, 블롭 양 증가 등

2. 탈중앙화 개선 - 스테이킹, 물량 조정(현재 32이더), 리스테이킹 매커니즘 내재화 등

3. ux 개선 - mev 모델 개선 (이건 사실 가늠은 잘 안감, 플래시봇이랑 똑똑이들이 뭔가 하면 되지 않을까), AA(이건 그냥 꾸준한 주제라 신선하진 않음)

4. 수수료 모델 개선 - 블롭 비용 개선

어쨌든 뭔가 할 것만 같은데 이게 불장에서 가격을 불지피는 큰 역할을 할 수 있는지는 모르겠음. 그리고 왜 eip있는데 자기들끼리 비밀 이야기하는거야🤔
👍13❤2😁1
Ronin 데이터 조금 더 파보고 있는데 재밌는 게 상당히 많네요. 실제로 트랜잭션을 보면 대다수 게임에서 나오고 있습니다. 물론 순위권 컨트랙트의 경우 데일리 체크인이거나 그런 게 있긴하지만 그럼에도 상당히 재밌네요. 일간 상위 컨트랙트 50개를 스캔보며 컨트랙트 명 + creator의 생성 컨트랙트를 뒤져가며 하나하나 레이블링한거라 아직 잡히지 않은 게임들도 있는데 하나하나씩 추가 예정입니다.

일간 활성 계정 수가 Pixel이 336k로 압도적으로 유저가 많긴한데 그 외에 꾸준히 플레이되는 Axie 외에도 Apeiron, Wild Forest, The Machines Arena 등 100k를 찍고 있네요. Apeiron은 폴리곤 때 조금 주춤하나 싶었더니 migration하고 아주 지표가 좋네요.

재밌는 것은 가챠 컨트랙트도 상당히 활발한데, 여기서 사용되는 랜덤함수 기능인 VRF가 가장 많이 사용되는 체인이 로닌이 아닐까 싶네요. 그 과정에서 Pyth도 여기서 많이 사용되고 있습니다. 물론 다계정도 많겠지만 로닌은 재밌는 생태계인 것은 확실한 것 같습니다.

마켓플레이스, 그리고 게임 내 토큰 거래도 꽤 있어보이는데 조만간 내부에서 거래되는 RON 데이터도 추가 예정입니다.

https://dune.com/hashed_official/ronin
👍7❤5
[포필러스 "수이 개발사 차세대 프로토콜 ‘월루스’ 주목해야"]
글로벌 암호화폐 리서치 업체 포필러스가 '스토리지 레이어의 새로운 패러다임, 월루스 프로토콜'이라는 제목의 보고서를 발간했다. 보고서는 "월루스는 수이(SUI) 개발사 미스틴 랩스가 만든 탈중앙 스토리지 프로토콜로, 독자적으로 운영되는 기존 스토리지 프로토콜의 단점과 한계점을 개선한 것이 특징”이라고 소개했다. 해당 보고서에는 월루스가 알위브(Arweave), 파일코인(Filecoin) 등과 어떤 차별점을 갖고 있는지 등도 담겼다.
https://coinness.com/news/1111304

코인니스 활동 보상 '펄'출시!
앱 다운로드 후 활동 보상부터 중요 속보 알림까지 받아보세요!!
❤3
ordinary subinium
https://www.youtube.com/watch?v=rGE_RDumZGg
참고로 지금 드레이크 형아가 컨센서스 레이어 이야기중
👍5❤2👏1
무슨 9개나 준비했네
👍10❤1
- 초록색 4개는 비교적 쉬운 거
- 빨간색 4개는 바로 어려운 거
❤4
수혜는 reth 클라이언트 개발하는 패러다임(VC)이 볼 것 같은데
❤2
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아직 합의 클라이언트의 명확한 개발팀이 없는데 이제 차차 나올 것. 수혜자는 수익성이 없었지만 grants를 받을 zk 개발자들이 될 것 같고, 꽤나 오래걸릴 것 같음. 앞으로 꾸준하게 ETH 팔아서 지원해줘야 할 듯.

개발 자체로는 분명 매력적인 포인트가 있긴 한데 사용자들은 직접적으로 느끼는 수혜는 없을 듯.
제일 피해자는 몸살로 고생하는 중에 저스틴 어그로로 빅띵인줄 알고 꾸역꾸역 이걸 들은 나. 이럴거면 그냥 남이 정리해주는 거 읽었지🥺
👏9😢5🔥2
개발러버구독자를 위해 다시 한 번 듣고 저스틴이 앞으로 쓸 포스팅 정리해서 담에 다시 공유해보겠습니다.

물론 리테일 레벨에서 기대할 부분은 적지만, 저는 그럼에도 이더리움은 유일하게 탈중앙화에 가까운 스마트 컨트랙트 플랫폼이라 생각하고, 꾸준하게 그 자리를 지킬 체인이라 생각합니다.

이더리움 최고🫡
👍21