Skip to main content
For the complete documentation index, see llms.txt

Proof server

Midnight은 shielded 트랜잭션과 데이터 보호를 위해 ZK 암호학을 사용합니다. 이 아키텍처의 핵심은 Midnight proof server로, 로컬에서 증명을 생성하여 온체인에서 검증합니다.

DApp이 proof server에 보내는 정보에는 토큰 소유권이나 DApp의 private state 같은 민감한 데이터가 포함됩니다. 데이터를 보호하려면 로컬 proof server에만 접근하거나, 암호화된 채널을 통해 직접 제어하는 원격 머신의 proof server에 접근해야 합니다.

이 가이드에서는 Midnight Network 트랜잭션 처리를 위해 로컬에서 proof server를 실행하는 방법을 안내합니다. 지갑이 proof server와 통신하여 ZK proof를 생성합니다.

이 가이드는 DApp 개발자가 아닌 Midnight Network 사용자를 대상으로 합니다.

Install Docker Desktop​

Docker가 없다면 운영 체제(macOS, Windows, Linux)에 맞는 Docker를 다운로드하여 설치하세요: https://www.docker.com/products/docker-desktop/

신규 사용자는 계정을 설정해야 할 수 있습니다.

Install the proof server​

Midnight proof server는 Docker 이미지로 제공됩니다.

  1. Docker Desktop 검색 바에서 midnightntwrk/proof-server를 검색하세요.
  2. 호환성 매트릭스에서 proof server에 대해 나열된 태그를 Pull하세요. latest에 의존하지 마세요. 그 태그는 버전 태그보다 덜 자주 다시 배포되어 매트릭스보다 뒤처질 수 있습니다.

이미지를 Pull하면 proof server가 Docker Desktop 컨테이너에 준비됩니다.

Start the proof server​

검색 결과 또는 컨테이너 목록에서 Run 버튼을 클릭하여 proof server를 시작하세요.

proof server 상태를 확인하려면 컨테이너에서 View Details를 클릭하세요. 서버가 시작되었음을 나타내는 출력을 확인할 수 있습니다.

proof server는 기본적으로 포트 6300에서 수신 대기합니다. 이 포트를 가리키는 모든 wallet과 DApp 설정도 함께 갱신하지 않는 한 그대로 두세요. 포트를 바꾸는 방법은 Local proving을 참고하세요.

Stop the proof server​

proof server를 중지하려면 컨테이너를 중지하면 됩니다.

Midnight 네트워크에서 트랜잭션을 처리하려면 proof server가 실행 중이어야 합니다. 중지했다면 다시 시작하세요.

Your privacy​

proof server는 개인정보 보호를 위해 존재합니다. 시작 시 바깥으로 요청을 딱 한 번 보내, https://srs.midnight.network/ 에서 public proving 파라미터를 내려받습니다. 그 데이터는 public이며 모든 사용자에게 동일합니다. 여러분의 witness 데이터는 결코 그 일부가 아닙니다. 그 뒤로는 할당된 포트에서 지갑 요청만 수신 대기합니다. 이후 시작에서 그 요청을 피하려면 내려받은 파라미터를 볼륨에 보관하세요. 대신 여러분 자신의 mirror에서 내려받으려면 MIDNIGHT_PARAM_SOURCE를 설정하세요. 자세한 내용은 Local proving을 참고하세요.