About Pictto

당신의 기억 속에
행운이 있습니다

Pictto는 복권 번호 선택이라는 행위에 새로운 의미를 더하고자 만들어졌습니다. 단순한 랜덤 번호 대신, 당신의 삶에서 가장 소중한 순간이 담긴 사진에서 번호를 만들어냅니다.

우리의 철학

복권은 확률 게임이지만, 복권을 구매하는 행위는 순전히 수학적이지 않습니다. 사람들이 1주일에 한 번 로또를 사는 이유는 당첨 확률 때문이 아니라 꿈을 꾸는 즐거움 때문입니다.

Pictto는 그 꿈꾸는 경험을 더 풍요롭게 만들고 싶습니다. 임의의 번호 대신, 여행에서 찍은 사진, 아이의 첫 걸음마 사진, 사랑하는 사람과의 기념일 사진 — 이런 소중한 기억들이 번호가 될 때, 추첨을 기다리는 그 시간이 조금 더 특별해집니다.

저희는 당첨 확률을 높여드린다고 주장하지 않습니다. 하지만 복권을 구매하는 그 순간을, 의미 있는 경험으로 만들어드릴 수 있다고 자신합니다.

핵심 가치

privacy_tip

프라이버시 최우선

사용자의 사진은 절대 외부로 전송되지 않습니다. 모든 이미지 처리는 100% 사용자 기기 안에서만 이루어집니다. 우리는 사용자의 소중한 추억을 서버에 저장하지 않습니다.

science

투명한 기술

Pictto는 '행운을 높여드립니다'라는 거짓 약속을 하지 않습니다. 복권의 수학적 확률은 항상 동일합니다. 우리는 기술 원리를 투명하게 공개하고, 사용자가 스스로 판단할 수 있도록 합니다.

favorite

의미 있는 경험

복권은 꿈을 사는 행위입니다. Pictto는 그 경험을 더 의미 있게 만들고 싶습니다. 소중한 기억이 담긴 사진으로 번호를 만들 때, 그 순간 자체가 특별한 가치를 가집니다.

public

글로벌 접근성

전 세계 어디서든, 어떤 기기서든 무료로 이용할 수 있도록 설계했습니다. 한국어, 영어, 일본어, 베트남어를 지원하며 경계 없는 서비스를 지향합니다.

기술 원리

Pictto가 사진에서 복권 번호를 추출하는 4단계 프로세스를 상세히 설명합니다.

1

이미지 샘플링

업로드된 이미지 파일 전체를 ArrayBuffer로 읽어들입니다. 이 과정에서 이미지의 모든 픽셀 데이터, 메타데이터, EXIF 정보가 바이너리 데이터로 변환됩니다.

const buffer = await file.arrayBuffer();
const data = new Uint8Array(buffer);
2

SHA-256 해시 생성

Web Crypto API의 SubtleCrypto를 사용해 바이너리 데이터에 SHA-256 알고리즘을 적용합니다. 결과물은 256비트(32바이트)의 고유한 해시값입니다.

const hashBuffer = await crypto.subtle.digest('SHA-256', data);
const hashArray = Array.from(new Uint8Array(hashBuffer));
3

시드(Seed) 추출

해시값의 첫 8바이트를 BigInt로 변환해 PRNG(유사 난수 생성기)의 시드값으로 활용합니다. 이 시드는 사진마다 고유하며, 같은 사진은 항상 같은 시드를 생성합니다.

const seed = BigInt('0x' + hashArray.slice(0, 8)
  .map(b => b.toString(16).padStart(2,'0')).join(''));
4

복권 번호 생성

시드로 초기화된 선형 합동 생성기(LCG)가 복권 규칙에 맞는 번호를 추출합니다. Fisher-Yates 셔플 알고리즘으로 각국 복권 풀에서 정해진 개수의 번호를 공정하게 선택합니다.

// LCG 기반 PRNG
const next = () => { seed = (seed * 6364136223846793005n
  + 1442695040888963407n) & 0xFFFFFFFFFFFFFFFFn;
  return Number(seed >> 33n) / 0x7FFFFFFF; };

info모든 처리는 사용자의 브라우저 내에서만 실행됩니다. 이미지 데이터는 Pictto 서버로 전송되지 않습니다.

지원 복권 목록

gavel법적 고지 및 면책 사항

Pictto는 엔터테인먼트 및 오락 목적으로만 제공됩니다. 복권 구매를 권장하거나 특정 결과를 보장하지 않습니다.

Pictto가 생성하는 번호는 수학적으로 무작위이며, 어떤 방법으로도 복권 당첨 확률을 높이지 않습니다.

복권은 도박의 일종입니다. 본인의 재정 상황에 맞는 적절한 수준에서 즐기시기 바라며, 과도한 복권 구매는 KGEF 도박문제 예방교육지원센터(1336)에 상담하실 수 있습니다.

각 국가의 복권 관련 법규 및 세금 정책은 해당 국가의 공식 기관에서 확인하시기 바랍니다.

자주 묻는 질문

Q. Pictto로 만든 번호가 진짜 당첨될 수 있나요?

수학적으로 복권의 모든 번호 조합은 동일한 당첨 확률을 가집니다. Pictto는 당첨 확률이 높아진다고 주장하지 않습니다. 다만 소중한 사진으로 만든 '의미 있는 번호'라는 특별한 경험을 제공합니다.

Q. Pictto는 무료인가요?

네, 완전히 무료입니다. 회원가입, 로그인, 결제 없이 바로 사용할 수 있습니다. 서비스는 광고 수익으로 운영됩니다.

Q. 히스토리 기능은 어떻게 작동하나요?

생성된 번호의 히스토리는 사용자의 기기 로컬 스토리지(LocalStorage)에만 저장됩니다. 서버로 전송되거나 다른 기기와 동기화되지 않으며, 브라우저 데이터 삭제 시 함께 삭제됩니다.

Q. 어떤 브라우저를 지원하나요?

Web Crypto API를 지원하는 모든 현대적인 브라우저에서 사용 가능합니다. Chrome, Safari, Firefox, Edge 최신 버전을 권장합니다. 인터넷 익스플로러(IE)는 지원하지 않습니다.

Q. 카카오톡 공유 시 이미지가 업로드되나요?

카카오톡 공유 기능을 사용할 경우, 생성된 폴라로이드 이미지가 카카오 서버에 임시 업로드됩니다. 이는 카카오 공유 API의 기술적 요구사항으로, 원본 사진이 아닌 번호가 표시된 폴라로이드 카드 이미지만 전송됩니다.

Q. 오프라인에서도 사용 가능한가요?

번호 생성 자체는 모든 처리를 기기에서 수행하므로 이론적으로 오프라인에서도 작동합니다. 단, 카카오톡/트위터 공유 기능은 인터넷 연결이 필요합니다.

지금 당신의 번호를 만들어보세요

🍀 무료로 시작하기