게임이 공정하려면 분산된 무작위성이 필요합니다.

양자 역학은 고도로 예측 가능하고 질서 정연한 우주처럼 보이는 것이 예측 불가능하고 단순한 확률의 세계 위에 구축되어 있음을 알려줍니다. 양자 세계는 이상해 보이지만 반도체, LED, 양자 암호화와 같은 기술을 이해하고 활용하는 것도 가능합니다. 메타버스의 무작위성에 대해서도 비슷한 말을 할 수 있습니다. 난수 생성기(RNG)에 의해 생성된 난수 값을 기반으로 구축된 시스템처럼 보이는 것은 사실 좋든 나쁘든 이해할 수 있는 배후 방법이 있는 프로그램을 기반으로 합니다.

난수의 중추적인 역할

난수는 게임, 보안 시스템, 분산형 자율 조직(DAO) 거버넌스, 대체 불가능한 토큰(NFT) 생성을 포함한 다양한 애플리케이션에서 매우 중요합니다. 게임에서 무작위로 생성된 숫자에 액세스할 수 없으면 시작이 반복적이고 오래되게 됩니다. 귀하의 보안 시스템이 쉽게 추측할 수 있는 인증 코드에 의존하는 경우에는 많은 보안을 제공하지 않습니다. 다양성이 필요한 시스템이 다양성을 얻지 못한다면 그다지 효과적이지 않을 것입니다.

이러한 시스템은 무작위로 보이지 않더라도 중요한 작업을 실행하기 위해 무작위로 생성된 값을 제공받는 데 의존합니다. 무작위성에 접근하지 않으면 잘 계획된 시스템이 작동할 수 없습니다. 그러나 이러한 시스템이 의존하는 난수는 보이는 것처럼 항상 무작위인 것은 아닙니다.

실제로 많은 RNG는 PRNG(의사 RNG)입니다. 무작위 출력을 생성하는 대신 고정 방정식의 결과를 제공합니다. 출력 값은 이 방정식을 통해 종종 "시드"라고 불리는 시작 값을 실행한 결과입니다. 그런 다음 출력은 새 시드로 사용되며 프로세스가 다시 시작됩니다. 결과는 무작위가 아니지만 외부 관찰자에게는 확실히 무작위로 나타날 수 있습니다.

많은 응용 분야에서 이는 효과적입니다. 모든 애플리케이션에 진정한 무작위성이 필요한 것은 아닙니다. 예를 들어, 무작위로 만나는 비디오 게임에서는 특정 시간에 게임이 취할 수 있는 작업 수가 제한되어 있을 수 있습니다. 주어진 범위 밖의 값을 제공하는 PRNG는 그다지 유용하지 않습니다. 위험이 낮을 때 기술 요구 사항이 일치하는 경우가 많습니다. 그러나 PRNG의 품질은 크게 달라질 수 있습니다. 이는 더 높은 이해관계가 있는 애플리케이션, 많은 사람들이 이에 의존하는 애플리케이션 또는 다양한 사용 사례에서 문제가 될 수 있습니다.

일부 PRNG는 짧은 시간 후에 반복될 수 있는 간단한 방정식에 의존합니다. 이러한 반복은 예측 가능성을 낳습니다. 다른 것들은 외부 요인의 영향을 받을 수 있습니다. 이로 인해 변조가 발생합니다. 또한 많은 PRNG는 제공된 숫자가 의도한 값인지 확인하는 방법을 제공하지 않습니다. 이러한 검증 부족으로 인해 변조에 대한 또 다른 문이 열리고 이러한 숫자에 의존하는 애플리케이션이 편향된 출력에 의해 조작되고 있다는 사용자의 비난으로 이어질 수 있습니다.

겉보기에 난수인 것으로 보이는 숫자가 RNG가 의도한 숫자인지 확인할 수 있다는 것이 어리석게 보일 수도 있지만 웃을 일은 아닙니다. 많은 블록체인 시스템의 정신은 투명성과 신뢰성에 기반을 두고 있습니다. 주어진 숫자가 실제로 무작위로 생성되었는지 확인할 수 없다는 점은 이러한 이상의 핵심을 공격합니다. 숫자가 게임에서 승리를 제공하거나 보안을 강화하는 등의 작업을 수행할 때 숫자가 변조되지 않았다는 것을 증명할 수 없으면 커뮤니티의 신뢰에 심각한 영향을 미칠 수 있습니다.

또한 모든 PRNG가 모든 가능한 애플리케이션에 적합한 것은 아닙니다. 일부는 특정 Web3 기능을 위해 설계되었습니다. 이는 보편적으로 적용할 수 없습니다.

실제 난수 생성기(TRNG)와 의사 RNG(PRNG)를 비교합니다. 출처: 레벨업코딩

진정한 무작위성에 대한 탐구

그러나 이러한 시스템에도 결함이 있습니다. 이는 고도로 중앙 집중화되어 있는 경우가 많으므로 시스템에 액세스하는 사람이 누구든 조작할 수 있습니다. 진정한 무작위성은 고품질 PRNG에 의한 서비스보다 훨씬 높은 가격으로 제공되는 경우가 많습니다. 마지막으로, 이러한 장치가 의존하는 중앙 집중화는 문제가 발생하면 시스템 전체에 가동 중지 시간이 발생한다는 것을 의미합니다.

분권화와 신뢰성의 필요성

애플리케이션의 분산화, 검증 또는 보안 요구 사항을 충족하지 않는 RNG를 사용하면 재앙이 될 수 있습니다. 보안 위반으로 인한 Axie Infinity의 붕괴가 보여주듯이, 기술적인 실패는 가장 강력한 사용자 기반을 갖춘 최고의 애플리케이션에도 큰 영향을 미칠 수 있습니다. RNG를 사용하는 애플리케이션에 RNG가 얼마나 중요한지를 고려하면 당면한 작업에 가장 적합한 RNG를 사용해야 합니다.

완벽한 RNG는 예측 불가능하고, 변조 방지가 가능하며, 검증 가능하고, 분산되어 있으며 지속적으로 사용 가능해야 합니다. RNG를 선택하는 경우 다음과 같이 질문하십시오.

  • 충분한 무작위성을 제공합니까?
  • 출력을 확인할 수 있나요?
  • 변조로부터 안전합니까?
  • 단일 지점 오류를 방지하기 위해 분산되어 있습니까?

블록체인 개발자가 지속적으로 비전을 확장하고 애플리케이션의 경계를 확장하며 대중이 기술에 참여할 수 있는 더 많은 기회를 제공함에 따라 애플리케이션에 대한 최상의 지원을 제공하는 것이 필수적입니다.

펠릭스 수 암호화폐 전문가, 얼리 어답터, NFT 수집가입니다. Felix는 NYU Stern을 졸업하고 ARPA와 Bella Protocol이라는 두 개의 암호화폐 프로젝트를 설립했으며 시가총액 기준 글로벌 상위 500위 안에 들었습니다. Felix는 이전에 Fosun Investment, Sackler 패밀리 오피스, 뉴욕과 베이징의 Vertical Research에서 근무했습니다. Felix는 항해와 카이트서핑을 좋아하며 그의 NFT 컬렉션으로 Wall Street Journal과 The New York Times에 소개되었습니다.

이 기사는 일반적인 정보를 제공하기 위한 것이며 법적 또는 투자 조언으로 의도되지 않았으며 받아들여서도 안 됩니다. 여기에 표현된 견해, 생각, 의견은 전적으로 저자의 것이며 반드시 코인텔레그래프의 견해와 의견을 반영하거나 대표하는 것은 아닙니다.

출처: https://cointelegraph.com/news/games-need-decentralized-randomness