문서

보안 모델과 한계

설계가 무엇을 보호하고 무엇을 보호하지 않는지, 그리고 아직 완성되지 않은 부분을 설명합니다.

테스트 네트워크: 코인에는 가치가 없습니다

숨겨지는 정보

  • 결제의 보낸 사람, 받는 사람, 금액.
  • 메모.
  • 결제가 어떤 노트를 사용하는지. 사용된 노트에는 무효화자만 보입니다.

공개되는 정보

  • 결제가 있었다는 사실과 블록에 포함된 시점.
  • 각 트랜잭션이 내는 수수료, 따라서 액션이 대략 몇 개인지.
  • 각 코인의 총 공급량.
  • 스왑의 경우 풀을 통과하는 두 금액과 풀의 준비금.
  • 브리지에서는 Ethereum 쪽의 모든 것: 토큰, 금액, 주소.
  • 시간 정보: 블록의 시각과 체인에서의 위치.

노드 운영자가 알 수 있는 것

노드는 완성된 결제를 HTTPS로 받으며 그 결제가 들어온 네트워크 주소를 볼 수 있습니다. 노드의 네트워크를 지켜보는 사람이나 노드 자체는 그 주소를 결제가 전송된 시각과 연결할 수 있습니다. Tint는 IP 주소를 숨겨 주지 않습니다. 이것이 중요하다면 신뢰하는 네트워크를 거쳐 노드에 접속하세요.

공개 노드의 프록시는 접근 로그를 남기지 않습니다. 이는 운영자의 선택이며 외부에서 확인할 수 있는 것은 아닙니다.

휴대폰에서

  • 키는 기기에서 만든 24단어 복구 문구에서 나옵니다. 문구와 키는 노드로 전송되지 않습니다.
  • 접근은 암호 코드와, 켜 둔 경우 Face ID 또는 Touch ID로 보호됩니다.
  • 내장 브라우저는 지갑에 접근할 수 없는 격리된 웹 뷰에 페이지를 표시합니다. 데이터는 메모리에만 있으며 브라우저를 닫으면 삭제됩니다.
  • 브라우저의 피싱 검사는 주소만 판단합니다. 새로운 사기 사이트를 놓칠 수 있으며 사이트에 내 IP 주소를 숨겨 주지 않습니다.

결함이 있거나 악의적인 지갑은 원장이 거부하는 결제만 만들 수 있습니다. 지갑 코드는 합의에 결정적이지 않습니다. 하지만 악성 앱은 보관 중인 키를 훔칠 수 있으므로, 받은 TestFlight 초대를 통해서만 앱을 설치하세요.

합의와 탈중앙화

  • 합의는 제네시스에서 고정된 검증자 집합을 쓰는 BFT 지분 증명입니다.
  • 공개 테스트 네트워크에서는 검증자 다섯 곳이 모두 한 서버에서 실행됩니다. 그 서버를 통제하는 사람이 체인을 통제합니다.
  • 결제는 아직 노드 사이에 중계되지 않습니다. 결제를 받은 노드가 블록을 제안할 차례일 때 결제가 포함됩니다.
  • 원장 상태는 메모리에 있으며 재시작하면 저장된 블록으로 다시 구성됩니다.
  • 네트워크는 초기화될 수 있습니다. 첫 블록이 교체될 수 있으며, 그러면 모든 지갑이 새 체인을 읽습니다.

암호학

프라이버시는 신뢰할 수 있는 설정이 필요 없는 Orchard 프로토콜과 Halo 2 증명에 기반합니다. 다중 코인 확장, 교환 풀, 그 주변 코드를 포함한 Tint의 활용 방식은 새로운 것이며 외부의 검토를 받지 않았습니다. 이 부분의 버그는 프라이버시를 깨뜨리거나 코인이 생성되거나 사라지게 할 수 있습니다.

브리지

브리지는 수탁형입니다. 서명자가 무엇을 release할지 결정하고, 컨트랙트의 소유자가 서명자를 정하고 브리지를 일시 중지할 수 있습니다. 결제당·하루당 한도가 실수로 인한 피해를 제한합니다. 브리지를 참고하세요.

권장 사항

  • 이 네트워크의 모든 코인은 가치가 없고 모든 잔액은 일시적이라고 생각하세요.
  • 복구 문구는 종이에 보관하고 누구에게도 보여 주지 마세요.
  • 다른 지갑의 실제 복구 문구를 여기에 사용하지 마세요.
  • 지갑의 공개 네트워크는 다른 어디서든 쓰는 만큼의 주의를 기울여 사용하세요. 실제 자금이 있고 거래를 되돌릴 수 없습니다.