← 뒤로가기
CERTIPICK 블록체인 무결성 검증 백서 (Whitepaper)
1. 도입 배경 및 철학
온라인 여론조사의 가장 큰 취약점은 '데이터 조작의 가능성'입니다. CERTIPICK(써티픽)은 중앙 집중형 데이터베이스(DB)가 가진 사후 조작, 결과 마사지, 표본 누락 등의 태생적 한계를 극복하기 위해 폴리곤(Polygon) 퍼블릭 블록체인 기반의 데이터 공증(Anchoring) 시스템을 도입했습니다. 유저의 모든 투표 데이터는 암호화되어 전 세계 수많은 노드에 영구 기록되며, CERTIPICK의 운영진이나 해커조차 확정된 여론을 사후에 수정할 수 없습니다.
2. 2단계 해시 압축 공증 아키텍처 (Merkle Tree 구조)
CERTIPICK은 네트워크 가스비(수수료)를 최적화하고 검증 속도를 높이기 위해 투표 데이터를 2단계로 압축하여 블록체인에 전송합니다.
- STEP 1. 개별 안건 해시 (Poll Hash): 매일 자정, 개별 투표 안건에 모인 모든 유저의 표(선택지, 암호화된 유저 키, 투표 시간)를 하나로 모아 SHA-256 알고리즘으로 암호화합니다. (예: 131번 투표 안건의 고유 영수증 발급)
- STEP 2. 통합 루트 해시 (Root Hash): 서버 내에 존재하는 모든 '개별 안건 해시(Poll Hash)'들을 다시 한 줄로 이어 붙여 거대한 마스터 암호인 '머클 루트(Merkle Root)'를 생성합니다.
- STEP 3. 메인넷 박제 (Anchoring): 생성된 거대 통합 루트 해시 1건을 폴리곤(Polygon) 메인넷의 스마트 컨트랙트(
anchorRoot)로 전송하여 영구 박제합니다.
3. 3중 교차 검증 프로세스
유저는 투표 완료 후 제공되는 '원장 검증하기' 모달을 통해 자신의 표가 안전하게 보존되고 있는지 3단계로 직접 확인할 수 있습니다.
- ① 개별 원장(Ledger) 대조: 장부 내에 자신의 카카오 ID 해시값과 선택한 항목이 누락되거나 반대 진영으로 변경되지 않고 정확히 들어있는지 1차로 확인합니다.
- ② 실시간 데이터 무결성 감지: 현재 데이터베이스(DB)에 있는 전체 표를 실시간으로 암호화한
Current Hash와 자정에 공증을 마친 원본 Anchored Poll Hash를 1:1로 비교합니다. 단 1표라도 몰래 추가되거나 삭제되었다면 두 해시값이 틀어지며 즉시 "🚨 데이터 변조 경고"를 노출합니다.
- ③ 폴리곤 메인넷 증빙: 조작되지 않음을 확인한 개별 해시가 묶여서 만들어진
Polygon Root Hash를 노출하여, 이 장부가 퍼블릭 블록체인 네트워크에 의해 보증받고 있음을 최종 증명합니다.
4. 상시 투표 중첩 공증 시스템
진행 중인 투표(상시 투표)의 경우 실시간으로 표가 들어오기 때문에, 매번 블록체인에 전송할 경우 네트워크 과부하가 발생합니다. 이를 방지하기 위해 다음과 같은 하이브리드 검증 시스템을 운영합니다.
- 과거 데이터 철통 방어: 마지막 공증 시점(자정)까지 수집된 표들은 완벽하게 암호화되어 과거 데이터 변조 시 즉각 오류를 뱉어냅니다.
- 신규 표 안내: 오늘 새롭게 추가된 표들은 시스템이 별도로 감지하여 "💡 오늘 추가된 내역은 다가오는 자정에 통합 공증됩니다."라는 안내 문구와 함께 다가오는 자정 스케줄러에 의해 기존 장부와 합산되어 새롭게 블록체인에 도장이 찍힙니다.
5. 기술 스펙 및 네트워크 환경
- Target Network: Polygon Mainnet (Chain ID: 137)
- Smart Contract: Custom EVM Data Anchoring Contract
- Cryptography: SHA-256 Hashing Algorithm
- Automation: Node-cron Scheduler (매일 00:00 KST Batch Processing)
CERTIPICK은 그 어떤 외압이나 관리자의 개입 없이,
오직 대중이 남긴 100% 순수한 팩트 데이터만을 역사에 기록할 것을 약속드립니다.