반응형

블록체인, Web3라는 세계에 입문한지 어느덧 1년이라는 시간이 되었다. 처음에는 블록체인 기술이라는 것을 정말 “탈중앙화된 금융” 그 이상도, 이하도 아닌 것으로 인식하고 있었다. 때문에 이더리움, 솔라나와 같은 모든 종류의 코인을 그저 비트코인과 대동소이한 암호화폐 라고만 생각했다. 하지만, 온체인 상에 어플리케이션을 올리고, 탈중앙화된 방식으로 서비스를 운영하며, 꽤나 high-level의 프로그래밍 언어도 존재하고, 해킹 방식 또한 기존에 접하던 것들과는 다소 차이가 있는, 흔히 말하는 2세대 블록체인의 여러 요소들이 나에게 꽤나 매력적으로 다가왔던 것 같다. 일년간의 경험을 통해 나의 미래먹거리는 Web3라는 생각을 굳힐 수 있었고, 블록체인밸리 학회를 시작으로, 회사 인턴십을 거쳐 업사이드 아카데미를 지난 시점의 내가 crypto씬에서 1년동안 어떠한 공부를 했는지, 그 행적을 다시금 돌아보고자 2024 crypto와 관련된 기억들을 적어본다.

  1. 사실 2023 3~4분기정도부터 적게될 것 같다.
  2. crypto에 대한 내용이기 때문에 암호화폐와 암호시스템에 대한 내용을 모두 적어보려 한다 ㅎㅎ

Blockchain Valley

blockchain valley 로고

고려대학교 블록체인 학회인 블록체인밸리(줄여서 블밸이라고 부른다).

2023년 3분기가 시작할 무렵까지 내가 정보보안, 더 나아가 IT라는 분야에서 어느 부분에 자신이 있는지 긴가민가했다. 시스템해킹, 암호학, 리버싱, 개발 모두 공부해보았지만 내 적성에 과연 맞는지, 또는 남들보다 내가 잘 할 수 있는 분야인지에 대한 확신이 부족했다. 그러던 중 여름방학이 되어 학교 커뮤니티에 각종 학회, 동아리 공고가 올라오는것들을 눈팅하고 있었는데, 그 중 가장 내 눈에 띈 것이 블밸 신입 학회원 모집 공고였다. 위에서도 언급했듯, 나는 블록체인 기술을 탈중앙화된 금융 정도의 개념으로만 받아들이고 있었는데, 공고에는 리서치팀, 개발팀을 따로 나누어 뽑는 것을 보고 ‘엥? 블록체인에서.. 개발..?’이러한 의문이 들었다. 화폐 시스템 위에서 개발을 한다니, 이게 무슨 말인가. 이러한 의문에서 시작된 서칭을 통해 처음 알게 된 것이 바로 DApp 즉, 블록체인상에서 동작하는 Application이었다. 이건 대체 뭘까.. 라는 막연한 흥미를 가지고 정말 아무것도 모른채로 지원했는데,, 정말 운좋게도 합격을 해 블밸 4기 멤버로 활동을 할 수 있었다.

 

블록체인 밸리에서 나는 블록체인, 더 나아가 Web3라는 새로운 생태계를 맞이하였다. 난생 처음 메타마스크를 설치해 개인 웹지갑을 생성하고, 업비트를 설치해 이더리움을 전송하는 등 정말 걸음마 단계부터 시작했던 것 같다. 더 나아가 Web3생태계에 존재하는 여러 구성요소(Defi, DAO 등), 메인넷(Ethereum Mainnet)에 대해 공부하고 여러가지 프로젝트를 만들어보는 등 새로운 것을 계속해서 쌓는 과정이 상당히 즐거웠다. 하지만 ‘보안’을 공부하는 나에게는 딱 fit하지 않다는 생각이 들었는데, 그 이유는 1) 개발 과정에 맞추어진 커리큘럼, 2) 백엔드보다 프론트엔드에 맞춰진 교육, 3) 원리를 모두 알고 넘어가는 것 보다 포트폴리오 생산에 맞추어진 것 같은 느낌. 이 세 가지 느낌을 많이 받았던 것 같다. 그래서 학회보다는 혼자만의 공부가 필요할 것 같다는 생각을 하게 되었던 것 같다. (전해듣기로 지금은 리서치, 개발, 보안 이 세 가지 팀으로 쪼개져 더 다양하고 심화된 커리큘럼이 제공되는 것 같다.)

 

그렇게 혼자 공부를 하면서 Uniswap 분석, EVM 분석 등 이론공부와 Ethernaut 등 워게임을 통한 Attack vector 학습 등 개인적인 공부를 진행했다. 하지만 혼자 공부를 하게 되니 계속해서 텐션도 떨어지고, 영어울렁증으로 인해 해외 자료는 찾아볼 생각도 안하는 등 여러모로 생산적인 공부를 하지는 못했던 것 같고, 사실, 당시에는 Web3에 대한 흥미가 좀 떨어졌었다.

 

2023년에는 이정도인 것 같은데, 이더리움, DApp, 유니스왑. 이정도 말고는 더 뭔가 공부한 느낌은 없던 것 같다. (Remix가 없으면 컨트랙트 배포를 하지 못하고, hardhat은 쓸줄도 모른다. foundry는 들어본 적도 없었다.)


LG전자 CSEU 인턴십

산학협력의 일환으로 우리 학과에 티오 4명이 제공되어 ‘설마 되겠어~’ 하고 지원했던 LG전자 인턴십. 2024년 1월~2월동안 LG전자 VS사업부에서 CSEU(Cyber Security Engineering Unit)에서 Key Management 관련 업무를 진행하였다.

이 기간동안은 잠시 Web3와 멀어져 C, C++ 기반의 KMS(키 관리 시스템) 개발에만 몰두했다.

 

VS사업부는 자동차 전장 관련 하드웨어 부품을 만드는 부서로, 조명, 인포테인먼트시스템 등 제품을 생산한다. 내가 속해있던 CSEU는 사이버보안 관련 개발을 하는 조직이었으며, 그중에서도 Key management 부서는 암호화 키를 관리 및 안전하게 보관하는 솔루션을 개발하는 부서였다.

 

나는 해당 조직에서 실제로 사용하는 제품을 개발하는 것 보다는(아마 인턴에게 제공할 수 있는 보안 수준 때문인 듯..) OS레벨에서의 message queue를 이용한 프로세스-KMS 간 key 연산 프로토콜을 개발하는 일종의 프로젝트를 진행하였다.

솔직히 결과물에 부족한 점도 많았고, 경험 부족에서 나오는 애로사항도 정말 많았지만, 요구사항 분석부터 시작하여, 프로젝트 설계, 구현 과정 설계, 테스트케이스 작성까지 여러 단계를 거치면서 정말 많은 것을 배웠다. 개발 실력을 넘어 프로젝트 설계 및 구현에서의 라이프사이클을 배운 것이 가장 컸다.

당시에 작성했던 명세. 지금 와서 다시 보니 정말 조잡하고 쏘큣 하다

KMS 개발을 하는 과정에서 key를 보관하고 안전한 연산을 수행하는 HSM, 그리고 이에 대한 표준인 pkcs#11을 공부해서 책임급 직책을 가진분들 앞에서 발표도 해보고, 실제로 암호화 통신이 작동하는 과정과 모든 요소에서 고려해야 할 각종 공격벡터에 대해서도 직접 개발해보지 않으면 알 수 없는 고려사항 등을 이해할 수 있었다. 무엇보다도, 진짜 “대기업”의 여러 사내 문화와 복지, 그리고 업무 방식 등을 이해할 수 있었던 것이 가장 귀중한 경험이었다.

 

그리고 얼마전에 느낀 것인데,,, 이 때 KMS-HSM간 통신, 그리고 HSM 모듈을 공부할 때의 기억이 TEE를 이용한 AI-agent에 대해 깊게 이해하는 데 많은 도움이 되었다.

함께 인턴십 과정 거친 4인방 한컷


업사이드 아카데미 1기(Dunamu x Theori)

업사이드 아카데미 로고

2월 말 인턴십을 끝내고, 또 정신없는, 많은 것을 배우는 한 학기가 시작됐다. AI보안이라는 과목을 통해 선형대수학, 통계학과 AI에 대한 이론적 바탕을 공부하였다. 또한 암호프로토콜이라는 과목을 통해 Commitment scheme, 다양한 signature, threshold signature등 암호학적 개념과, Secure MPC, ZKIP, 그리고 암호화폐에 적용된 프라이버시 기술 등 프라이버시 및 암호화폐의 기초를 이루는 개념들을 공부하였다(처음 이 수업을 들을 때는 이런 수업인줄 몰랐는데, 듣다보니 점점 암호화폐였다).

이러한 공부를 거치며 점점 Web3에 대한 흥미를 되찾기 시작했고, 그 무렵 인터넷 기사에서 두나무X티오리에서 Web3 보안 아카데미 1기 모집을 한다는 글을 보고 냅다 지원해버렸다. 서류, 실기, 면접 세 가지 전형을 거쳐 2024년 모든 경험 중 가장 값진 경험이 될 업사이드 아카데미 1기에 합격하였다.

굿즈, 맥북, 냉장고, 스낵바

RAMY볼펜, Stanley 텀블러, 두나무 굿즈, 아카데미 티셔츠 및 바람막이, 그리고 대망의 맥북 프로 M3 제공까지 미친 혜택. 그리고 무료 스낵바와 무제한 음료수를 제공하며 개인&팀별 프로젝트룸과 모니터까지 제공해주는 미친 복지까지. 두나무, 그리고 티오리가 이 아카데미에 얼마나 진심인지를 보여주는 대목이라 생각한다. 홍보성 멘트이기도 하다. 다들 업사이드 하자.

총 4개월간 진행되는 아카데미 생활. 2개월간의 교육과정과 2개월간의 프로젝트 과정으로 나뉘어있다. 정말 밀도, 퀄리티 모두 높은 시간이었던 것 같다. 이더리움 오버뷰, 암호화폐가 가지고 있는 내재가치에 대한 수업(개인적으로 가장 좋았다), Defi, Crypto 오버뷰까지, 내가 Web3를 왜 공부하고있고, 어떠한 것을 공부하고자 하는지를 이해할 수 있도록 기초적인 부분으로 시작하였다. 이 다음으로는 Web3 “보안”아카데미답게, EVM, 그리고 Debugging 등 low level부터 EVM을 공부하기 시작하였다(C언어 배우기 전에 어셈블리 배우는 느낌이려나). 이후 AWS, k8s 등 클라우드에 대해 배우고(이 부분에서 좀 더 열심히 배웠으면 하는 후회가 남는다), 드디어 Solidity와, Smart contract vuln을 학습하면서 본격적인 Web3보안을 배웠고, 암호학을 배우며 동형암호, 서명, ZKP를 공부했다(이 부분은 사전지식 없이는 상당히 힘들었을 것 같다). 이후에는 솔라나 오버뷰, 실제 사례 fork test, 크로스체인보안 등 학습을 하였다.

업사이드 아카데미 교육기간에서 개인적으로 가장 좋았던 것은, 양질의 콘텐츠, 강의도 있겠지만 “재미있게 설계된 과제”가 학습욕구를 계속해서 끌어올려줬다. 교육기간 과제를 할 때 가장 퍼포먼스가 좋았던 것 같은데, 나름 열심히 살았고, 잘 해낸 것 같아 정말 즐겁게 수행했던 과제(?)를 몇 가지 사진으로만 나타낸다.

#1

#2

(이때 정말 행복하게 공부했던 것 같다…)

 

두 달간의 교육과정이 끝나고, 나머지 두 달 동안 Lending Protocol Audit을 주제로 팀프로젝트를 진행하였다. 위협모델링을 위해 정말 많은 리포트들을 읽어보며 사례조사, 공격벡터 조사, 코드분석, 테스트코드 작성 등을 진행하였고, 이를 통해 취약점을 발견해보고자 하였지만, 의미있는 취약점을 발견하지는 못한 것이 아쉬웠다.

그래도 이를 진행하면서 Lending protocol에 대한 전반적인 이해와, compound, aave, euler, venus 프로토콜 등 여러 메이저 프로토콜과, 이들을 fork한 프로토콜 또는 소규모 프로토콜은 어떻게 구성되어있는지, 그리고 use case들을 살펴본 것, 그리고 실제로 audit을 경험해본 것 등이 의미있는 활동이었다.

 

업사이드 아카데미를 통해 Web3, 그리고 Web3 보안에 “재미”를 붙일 수 있었다. 활동을 진행하면서 생각보다 Web3생태계가 거대하다는 것을 알았고, 탈중앙화와 기관에 대한 불신에 대해 이로부터 벗어나고자 하는 움직임이 지금의 이런 거대한 시장을 형성했다는 것이 너무나 인상적인 것 같다.

활동을 하면서, 그리고 활동 이후에 ethernaut의 모든 문제를 문제없이 모두 해결한 것에서 실력(피지컬?)이 향상된 것을 느꼈고, 이제는 규모가 큰 코드베이스를 읽을 때도 겁이 나는 것이 아닌, 새로운 것을 배울 수 있다는 기대감이 생기는 것에서 내가 정말 나에게 잘 맞는 분야를 찾아왔다는 것을 느낀다.

 

업사이드 아카데미 정식 과정이 종료된지 어느덧 한달 반 정도가 지났다. 아카데미 활동을 하면서 다양한 dex, defi, 그리고 multichain등 여러 개념을 접하고 경험했다고 생각한다. 하지만 이쪽 판에 있는 사람은 모두 느끼는 것 처럼 오늘 내가 A를 공부하고 있어도 다음주만 되면 언제 그랬냐는듯 다른 기술인 B가 주목받는. 너무도 빠르게 변화하면서 또 빠르게 새로운게 생기는 흥미로운 생태계이다. 마치 n년차 기술자들이 새로운 생태계에서 새로운 프로덕트를 만드는 데 신나있는 것 처럼 너무도 빠르게, 많이 새로운 것이 생긴다.

나는 이제 막 아카데미를 졸업한. Web3 생태계에서는 각 고등학교를 졸업한 것 같다. 고등학생들이 과학을 공부할 때 과학적 개념을 이해는 (어느정도) 하고 있지만, 어떤 산업이 존재하는지 세상물정을 “잘”알지는 못하듯, 지금의 나도 Web3에서는 같은 위치에 있다는 생각을 한다. 그래서 기술적인 이해를 넘어, 생태계 트렌드를 이해하고 현재 어떠한 기술이 각광받고 있는지에 대한 것을 이해하고, 또 트렌드에 발맞추기 위한 “생태계 공부”를 한달 반동안 계속 진행한 것 같다.

 

스테이블코인, 펌펀, 하이퍼리퀴드, AA, NFT, AI, AI-agent, 그리고 어제까지는 TEE… 그 잠깐의 시간동안 너무 많은 것들이 훅훅 지나가고 또 거치는 중에 있는 것 같다. 이 모든게 신기하면서, 그 정보량에 압도당하는 기분이다. $ENA, pump.fun, $HYPE. $PENGU, pudgy penguin, ai16z, eliza, virtuals, sendAI, pha, ata, pond 등등… 이렇게 나열해보니 정말 어질어질한 것 같다. 한달 반이라는 시간동안 이 모든걸 접했다는 사실이.

앞으로 또 어떤 새로운 기술과 메타가 기다리고있을지 기대가 되면서도, 무섭기도 하다(ㅋㅋ..). 이제 곧 군입대를 하는데, 훈련소에 가 있을 동안 또 얼마나 많은 것들이 등장할지, 다시 Web3를 접했을 때 지금 내가 알고있는 Web3 생태계와 다를 수 있겠다는 생각이 들기도 한다.

그럼에도 불구하고 계속해서 새로운 것들이 생겨나고, Web2에서 이루어질 수 없는 여러 요소들이 Web3에서 가능해지는 것을 보며, 그리고 계속해서 온체인 트잭이 늘어나는 것을 보며 ‘40살쯤 되면 이걸로 돈 많이 벌겠다~’ 라는 생각을 하게되는 것 같다.

 

Web3, 그리고 crypto, 앞으로도 친하게 지냅시다.

반응형

+ Recent posts