Security & Trust

믿을 수 있는 투표를 위한 약속

다모음은 단순한 신뢰를 넘어, 수학적·기술적으로 증명 가능한 투명성을 지향합니다.

투표의 비밀은 철저히 보장됩니다

신원과 기표의 분리

유권자가 “투표했다”는 기록과 “누구에게 투표했나”라는 데이터는 서로 다른 상자에 담깁니다. 두 데이터 사이에는 어떠한 연결 고리도 없으므로, 데이터베이스를 직접 들여다보더라도 누가 무엇을 투표했는지 추적하는 것은 불가능합니다.

  • 투표지 테이블에 사용자 ID나 이메일을 저장하지 않습니다.
  • 명부에는 투표 여부만 남고 투표 시각은 기록하지 않습니다.
  • 투표지에는 순번이나 시각이 없어, 투표한 순서로 두 기록을 맞춰볼 수 없습니다.

마감 후 공개되는 투표 원장

원장과 원장 해시

투표가 끝나면 모든 투표지를 영수증 번호 순서로 정렬한 원장과, 원장 전체의 지문(해시)이 공개됩니다. 누구나 브라우저에서 지문을 다시 계산해 공개된 원장과 집계가 서로 맞는지 확인할 수 있습니다. 진행 중에는 결과와 원장을 관리자에게도 보여주지 않습니다.

HASH A
HASH B
HASH C

직접 확인하는 나만의 투표 영수증

내 표 확인

투표를 마치면 내 기기에서 만든 영수증 번호가 화면에 나옵니다. 서버에는 이 번호가 누구 것인지 남지 않습니다. 선거가 끝난 뒤 공개 원장에서 이 번호를 찾아 내가 고른 내용 그대로 기록되었는지 확인할 수 있습니다.

나의 투표 영수증 예시
8f3a...c92e
이 번호는 암호화되어 있어 타인은 당신의 투표 내용을 알 수 없지만, 당신은 집계 포함 여부를 확인할 수 있습니다.

누구도 지울 수 없는 투명한 기록

수정·삭제 경로 없음

앱 화면과 API에는 제출된 투표지를 고치거나 지우는 기능이 없고, 데이터베이스 보안 정책(RLS)도 외부의 수정·삭제를 막습니다. 서버 운영자의 데이터베이스 권한까지 기술로 막을 수는 없기 때문에, 그 대신 마감 후 원장 해시와 영수증으로 누구나 확인할 수 있게 했습니다.

참여율만 진행 중 공개

진행 중에는 몇 명이 참여했는지만 공개합니다. 항목별 득표는 투표가 마감된 뒤에 한 번에 공개되어, 중간 결과가 남은 유권자의 선택에 영향을 주지 않습니다.

우리의 목표는 단순합니다

모든 구성원이 안심하고 자신의 의사를 표현하며, 그 결과에 대해 누구도 의구심을 갖지 않는 투명한 민주주의를 기술로 지원하는 것입니다.