펑크폴 Architectures

PUNKPOLL 플랫폼은 개인 프라이버시 보호를 전제로 세계 어디서나 누구나 쉽게 사용할 수 있도록 하는데 목표를 두고 설계되었습니다.  운영 서버는 현재 중앙화되어 있지만 향후 완전히 탈중앙화된 시스템으로 전환될 예정입니다.  물론 투표.설문.여론조사 등은 스마트컨트랙트화 되어 퍼블릭 블록체인 위에서 완전히 탈중앙화 되어 있습니다.  플랫폼에 근간이 되는 투표 시스템은 사용자 인터페이스(메신저 챗봇), 투표 스마트 컨트랙트 및 Blockchain, 이 세 가지 주요 구성 요소로 구성되어 있습니다.

  • 사용자 인터페이스(챗봇)는 유권자가 쉽게 투표에 참여 할 수 있도록 메신저 인터페이스로 투표 등을 행사하도록 되어 있고, 유저 인터페이스는 zkApps을 사용하여 사용자의 프라이버시 보호, 종단 간 검증 가능성, 무결성 및 투명성을 보장합니다.
  • zk-SNARKs로 유권자와 시스템 간에 투표가 안전하고 비공개적으로 전송되도록 하는 데 사용되며 스마트 계약은 투표 프로세스를 자동화 하고 투표의 무결성을 보장하는 데 사용됩니다. 메신저의 엔드 투 엔드 암호화와 블록체인은 유권자와 시스템 간의 안전한 개인 통신 채널을 제공합니다.

플랫폼의 아키텍쳐

Punkpoll Platform Architectures
Part Role Features
서비스 플랫폼 Application Layer 빌더, 투표 및 설문들이 독립적인 스마트컨트랙트 구조, Punk Wallet
기능 Service Features 투표, 설문, 여론조사, 커뮤니케이션 도구
유저 인터페이스 Front-end Design 웹과 모바일 등 다양한 클라이언트를 통하여 접근할 수 있도록 했고, 투표 인터페이스는 사용하기 쉽고, 접근성 좋은 메신저 챗봇 인터페이스
토큰 Utility Token 투표의 표의 역할을 하는 zk-PUNK-nft, 리워드 등을 위한 PUNK Token
블록체인 Back-end Infrastructure 영지식증명 기반 블록체인, 퍼블릭 블록체인

Features

메뉴 표
메뉴 세부 메뉴
1. 나의 거버넌스 페이지
  • 내가 참여한 이슈(투표.설문.여론조사)
  • 내가 만든 이슈
  • 나의 거버넌스 점수
  • Wallet (나의 zk-PUNK-nft & 내가 소유한 PUNK Token)
  • PUNK Token Dex
2. Explore
  • 오늘의 이슈(투표.설문.여론조사), 독립 채널
  • #tag navigation
3. Feed
  • 나의 기본 정보 & 가치 정보에 따른 feeds
  • 내가 팔로우한 이슈 #tag에 따른 feeds
4. 빌더
  • 투표.설문.여론조사 빌더
  • 배포 시스템
기타 검색 및 커뮤니케이션 도구 etc.
zk-PUNK-nft : 펑크폴에서 사용하는 '표', 영지식증명 기반으로된 대체 불가능한 토큰 Non-fungible token으로 나의 기본정보와 가치정보를 담고 있는 nft
PUNK Token : 사회의 이슈에 참여하여 대가로 받는 교환 가치를 가지고 있는 유틸리티 Token

프라이버시 보호 & 쉬운 접근성

유저 인터페이스는 다양한 사용자가 자신이 사용하는 메신저로 쉽게 접근할 수 있도록 메신저 챗봇으로 되어 있습니다.

  1. 인증 및 권한 부여:  유권자 인증을 위해서 보통 전화번호와 인증서 기반으로 인증을 하게 되는데, 코로나19 백신 접종등을 확인하는 과정에서 이미 카카오톡 등 공인된 메신저에서 충분히 검중된 메신저 인증 프로세스를 사용하여 권한 인증을 하게 됩니다.  
  2. 데이터 보호:  카카오톡 및 WhatsApp등 많은 메신저에서는 엔드 투 엔드 암호화(End-to-End Encryption, E2EE) 방법을 사용하여 메시지를 주고 받는 양쪽 사용자만이 암호화된 메시지를 읽을 수 있도록 되어 있습니다.  펑크폴 투표는 '일반 투표와 중요 투표'로 구분하여, 챗봇 메시지(일반)로 투표를 처리하거나 메신저 웹뷰(중요)에 zkApp 방식으로 투표를 진행하여 데이타를 보호하고 있습니다.  
* 출처 https://nordvpn.com/ko/blog/most-secure-messaging-app/

스마트컨트랙트와 영지식증명 블록체인

  1. Voter privacy: 유권자의 개인정보는 제로 지식 증명(Zero-Knowledge Proof, ZKP) 기술을 이용하여 보호됩니다. 유권자의 투표 내용은 암호화되어 블록체인에 저장되며, 개인정보는 보호되어 공개되지 않습니다. 또한 유권자는 개인정보와 투표 내용은 오로지 자신이 소유(Own my data) 하도록 되어 있습니다.
  2. Ballot privacy: 유권자의 투표 내용은 제로 지식 증명(Zero-Knowledge Proof, ZKP) 기술을 이용하여 암호화되어 블록체인에 저장됩니다. 따라서, 투표 내용은 공개되지 않으면서도 정당한 유권자인지 확인할 수 있습니다.
  3. End-to-end verifiability: 모든 유효한 투표가 집계되고, 중복 투표가 없는지 검증할 수 있습니다. 펑크폴 시스템은 제로 지식 증명(Zero-Knowledge Proof, ZKP) 기술을 사용하여 보안성을 강화하며, 투표 결과의 정확성을 검증할 수 있습니다.
  4. Integrity: 블록체인 기술을 사용하여 투표 내용의 일관성과 정확성을 보장합니다. 투표참여 내용, 투표 조건, 유권자등록-확인, 투표참여 내용, 투표결과를 스마트컨트랙트화 하여 블록체인에 저장되며, 이를 통해 투표의 완전성과 일관성을 보장합니다.
  5. Transparency: 투표 참여 내용을 누구나 투명하게 확인할 수 있도록 시스템화 되어 있습니다.