TIL 1 (This week I learned, week 1)

Jake Kim·2024년 8월 3일

PSE2024

목록 보기
3/17

(어제) 금요일 저녁에 1주차 과정이 끝났다.

화/수는 저녁에 Online Meeting으로 서로의 진행상황을 확인했다.

목요일은 Industry Keynote 이라 하여, 실제로 가동되고 있는 프로젝트에서 일하고 계신 관련자 분들이 오셔서 발표하시는 세션이다. 이번 주는 ZK-Email 프로젝트의 소개가 있었다.

ZK-email 은 쉽게 말해 e-mail 주소를 Wallet처럼 사용하는 기술인데, 아직 만들어지지 않은 이메일에도 토큰 (eth ..) 을 전송할 수 있다는 점이 개인적으로 매우 놀라웠다. ZK 분야의 응용은 정말 무궁무진하다.

이게 가능하다면 앞으로 스위스 계좌가 필요한가? 나만 (확실히) 외울 수 있는 문장을 Keccak 등으로 해싱하여 (exqwer12345@xmail.io) eth를 전송해 두면 그만이다. 언제 어디서든 이메일 계정을 해당 id로 개설하여 찾아가면 그만이다. 이런 방식이면 가족에게 상속/증여도 가능하다.

그리고 대망의 금요일, Offline 미팅이 있는 날이 있었다.

오전 11시에 만나 저녁 8시에 헤어질때까지, 모든 인원이 지식을 교류하는 모습이 가히 장관이었다. 정말 대단했다. 순수 intellectual의 모습 그 자체였다.

내 개인적인 생각이지만, 남은 기간동안 이 정도의 집중도가 유지된다면, 최종 모습은 지금의 나와는 완전히 다를 것 같다.

금요일 세션을 하루 종일 돌아 보니, 최초에 부여받았던 8개의 주제에 대해서 일주일만에 모두 완벽히 이해한다는 것은 거의 불가능했다. 사실 8개 주제에 더하여 KZG, R1CS, QAP, Groth(16)의 지식을 더하고, 마지막에 Circom까지 돌아 보았다. 이 쯤되면 솔직히 말해 무리다. 하지만 주입식 교육에 익숙한 의지의 한국인들은 모두 해냈다.

그리고, 솔직히 말해 0주차때 미리 과제를 던져 받았을때 이미 한번 봤던 내용도 있었지만, 만나서 교류하지 않고서는 완전히 내것으로 만들 수 없다. 아무리 이론을 읽고, 수식을 풀어보고, 심지어 발표 연습을 해본다고 해도, 질문을 받아야 그제서야 내것이 된다. 따라서 이 과정은 1주차 금요일에 가장 의미가 있는 과제/해결 이었다.

각 조별 발표가 끝나고 준비가 미진했던 부분들은 각자 보완하여 업로드 하기로 했다. 자료가 업로드 되면 별도의 글을 통해 솔루션을 공유할 예정이다. 하지만 각자 이해한 방식대로 정리한 것이지, 남에게 도움이 될 지는 모르겠다. 차라리 자료를 만들면서 참고했었던 자료들을 공유하는 편이 후행자들에게 참고가 될 가능성이 높다.

나의 경우에는 BLS Signature를 맡았는데, 앞서 발표된 주제들이 모두 모여 기반지식을 이루어 내야 알 수 있는 영역이다. 이것도 모자라 어느 정도 까지 라는 단서도 붙어 있었다. 나는 실제로 BLS12-381의 예시를 들어 설명했는데, 메시지(Message) 해싱 (H(m)) 부분의 설명이 미진했다. 이 부분을 보완하여 업로드 하겠다.

또 R1CS-> QAP -> Groth -> Circom 으로 휘몰아치듯 이어지는 과정도 체험해 보았는데, 이것은 사고 방식 자체를 뜯어 고치는 일이라 단순한 것도 암산이 매우 힘들었다. 예를 들면
X^3 + x + 5 = y 라는 방정식(Polynomial) 과 abc = y 라는 식을 눃고 변환 하는 것 조차 힘들었다. (그 시간 쯤 되면 정신적 에너지가 거의 소진되어 그랬을지도?)

아무튼 Circom 까지 거치며 예시로 나와있는 간단한 Proof 생성과 Verification 까지 완수하는 것이 무척 흥미로웠다. 수학적 이론을 실무까지 적용해 본 첫번째 사례다. 개인적으로는 대단한 의미가 있다. 잠시 주말 간 쉬었다가 부족했던 부분을 보완해 업로드 해 보려고 한다.

profile
세일즈 출신 개발자 제이크입니다.

0개의 댓글