백개먼 – 투명성 및 보안
서버 권한이란?
서버가 모든 게임 동작을 검증합니다. 사용자 기기는 게임 상태만 표시하며 결과를 수정하거나 영향을 줄 수 없습니다.
서버가 제어하는 것:
- 주사위 생성
- 이동 검증
- 타이머 관리
플레이어가 제어하는 것:
- 주사위가 생성되는 시점
- 말의 이동
주사위는 어떻게 생성돼?
모든 주사위 굴림은 Rust의 rand 크레이트를 사용하여 서버에서 생성됩니다:
- 각 주사위는 1부터 6까지의 난수 생성
- 편향 없는 주사위 - 모든 값(1-6)이 동일한 확률
- 암호학적으로 안전한 RNG (ChaCha 기반, TLS와 동일 계열)
- 운영체제 엔트로피로 시드 생성 — 난수 생성의 황금 표준
- Rust의 표준 난수 생성기 사용 (rand crate v0.10)
소스 코드 보기
// engine/src/manager/dice_manager.rs
let value = rand::rng().random_range(1..=6);rand 0.10 - Rust에서 가장 신뢰받는 난수 라이브러리 (5억+ 다운로드)
누가 먼저 시작해?
서버가 무작위로 어느 플레이어가 먼저 시작할지 결정:
- 무작위 불리언 (참/거짓)을 사용하여 시작 플레이어 선택
- 각 플레이어가 정확히 50% 확률로 시작
- 어느 플레이어도 유리하지 않음
이것이 중요한 이유
- 치팅 불가능 - 모든 게임 로직이 서버에서 실행
- 모든 결정 (주사위, 이동, 승리)이 서버 측에서 검증
- 사용자 기기는 서버가 알려주는 것만 표시
- 서버가 유일한 진실의 원천 - 누구도 결과를 조작할 수 없음
유료 콘텐츠
차나 체커 스킨 같은 아이템은 개인 취향을 위한 것입니다.
- 플레이로 획득하거나 구매 가능
- 게임 결과에 영향 없음