얼마전 컨트랙트 문서에서 'VRF'라는 단어를 접하게 되었다.
팀원들끼리 이게 무슨 단어인고 생각해보다가.. 혹시 Verify의 약자를 표현한건가? 나름의 추측을 내렸었지만 기획안을 다시 읽어보니 비슷한듯 아니었다. VRF는 Verifiable Random Function의 약자라고 한다. (머쓱)
결론적으로, VRF 구조체는 온체인으로 저장이 불가능한 영역이라 백엔드에서 오프체인에서 처리해야 한다고 한다.
Verifiable Random Function 정의
검증 가능한 의사 랜덤 출력, 검증 가능한 랜덤 함수
-> 입력을 맵핑하는 암호화의 원시함수
VRF의 첫 도입
알고랜드의 창립자인 실비오 미칼리와 라빈 등에 의해 1999년 처음 도입되었다.
알고랜드 첫 번째 오픈 소스 코드 공개: VRF(Verifiable Random Function)
안녕하세요 알고랜드(Algorand) 커뮤니티 여러분! 오늘은 드디어 알고랜드의 첫 번째 오픈소스를 공개하며...
blog.naver.com
보안된 암호 분류를 실행하여 합의 프로토콜 운영을 위한 위원회 선별
-> 현재 다른 블록체인 프로젝트들에서도 합의 프로토콜을 운영할 리더나 위원회 선별시 VRF 알고리즘 사용한다.
VRF의 구문 및 속성
키 생성(Keygen), 평가(Evaluate), 검증(Verify)의 3가지 알고리즘으로 이루어져 있다.
VRF의 고유성과 랜덤적 특성
사용자가 원하는 범위 내에 있는 출력을 얻을 때까지 Y값을 무차별적으로 입력하여 강제로 출력을 찾아낼 수 없도록 한다. 이러한 공격을 방지하는 것이 VRF의 특성이다.
Algorand
VRF라는 개념을 처음 도입한 프로젝트가 알고랜드라고 한다. 알고랜드에서는 VRF가 어떤 식으로 도입되었는지 살펴보자.
알고랜드의 블록 생성 방식
전체 알고랜드 토큰(ALGO) 보유자 중 무작위(random)로 선별
이때 생성자로 뽑힐 확률은 토큰의 보유량과 비례해 높아진다.
전체 토큰 보유자 중에서 다시 한번 1천명의 블록 검증자를 무작위로 선출 > 생성된 블록이 정확하에 만들어졌는지 여부 확인(아마 밸리데이터 역할을 하는듯 싶다)
알고랜드의 블록 생성자&검증자를 선정하는 방식
알고랜드는 전자서명과 해시 함수에 기반한 암호학적 추첨(cryptographic sortition) 기술을 이용하기 때문에 에너지 소모가 낮으며, 누가 선정됐는지 개인키를 소지한 당사자 본인만이 알 수 있다.
-> 이 경우 블록 생성자나 블록 검증자의 명단이 사전 노출되지 않기에 타겟화된 공격이나 금품매수, 사전담합 등을 피할 수 있기 때문에 기존의 PoS보다 보안성이 높다.
즉, 알고랜드 프로젝트는 블록을 생성/공개한 자와 그것을 검증하는 이들이 정상적인 절차(암호학적 추첨)를 통해 뽑힌 사람인지 여부는 공개키를 통해 누구든지 확인할 수 있다.
그래서 암호학적 추첨 기술(cryptographic sortition) = 검증 가능한 랜덤 함수(VRF, Verifiable Random Funtion)'
알고리즘의 랜덤성에 의존해 기존 블록체인의 보안성과 효율성 개선했다는 의미에서 '알고랜드'라는 이름이 붙여졌다고 한다.
Algorithm + Random의 합쳐진 말일까..!!
https://www.coindeskkorea.com/news/curationView.html?idxno=75696
'Blockchain' 카테고리의 다른 글
EthSum - 이더리움 주소 검사합(checkSum) (0) | 2023.03.29 |
---|---|
블록 생성 -> 블록체인으로 이루어지는 5단계 과정 (0) | 2023.03.09 |
블록체인 재단의 역할 (0) | 2023.02.28 |
다중서명 multi-sig란? +) multi-sig wallet (0) | 2023.02.28 |
트랜잭션 해시(TXID)란? + signature (1) | 2023.02.28 |