본문으로 건너뛰기

Nautilus

Nautilus는 Sui에서 안전하고 검증 가능한 오프체인 연산을 위한 프레임워크이다. 이 프레임워크는 빌더가 민감하거나 리소스 집약적인 작업을 스마트 계약 기반 검증을 통해 온체인 신뢰를 유지하면서, 자체 관리되는 trusted execution environment (TEE)에 위임할 수 있도록 한다.

Nautilus는 다음이 필요한 하이브리드 탈중앙화 애플리케이션(dApp)을 지원한다:

  • 개인 데이터 처리
  • 복잡한 연산
  • 외부(Web2) 시스템과의 통합

이 프레임워크는 연산이 변조 불가능하고, 격리되어 있으며, 암호학적으로 검증 가능하도록 보장한다.

현재 자체 관리되는 AWS Nitro Enclave TEE를 지원한다. 개발자는 Move로 작성된 Sui 스마트 계약을 사용하여 온체인에서 AWS 서명된 엔클레이브 증명을 검증할 수 있다. 재현 가능한 빌드 템플릿은 Github repo를 참조한다.

Features

Nautilus 애플리케이션은 두 가지 구성 요소로 이루어진다:

  • Off-chain server: TEE(AWS Nitro Enclaves 등) 내부에서 실행되며, 사용자 입력 처리나 예약된 작업과 같은 연산을 처리한다.
  • On-chain smart contract: Move로 작성되며, transaction을 실행하기 전에 TEE 증명을 검증한다.
정보

AWS Nitro Enclaves에 대한 초기 지원은 그 성숙도와 재현성 때문이다. 추가적인 TEE 제공자는 향후 이용 가능해질 수 있다.

How it works

  • AWS Nitro Enclaves와 같은 자체 관리되는 TEE에 오프체인 서버를 배포한다. available reproducible build template을 사용할 수 있는 선택권이 있다.
  • TEE는 실행 환경의 무결성을 증명하는 암호학적 증명을 생성한다.
  • Sui 스마트 계약은 TEE 출력을 수락하기 전에 온체인에서 해당 증명을 검증한다.
  • TEE의 무결성은 감사 가능하며, 제공자의 신뢰 루트에 의해 고정된다.

자세한 내용은 Nautilus DesignUsing Nautilus를 참조한다.

important

provided reproducible build template은(는) 자체 엔클레이브를 구축하기 위한 시작점으로 제공된다. 이 템플릿은 기능이 완전하지 않으며, 보안 감사를 거치지 않았고, Apache 2.0 라이선스 하에 수정이 용이한 참조용으로 제공된다. 이 템플릿과 관련 문서는 평가 목적에 한해 어떠한 형태의 보증 없이 AS IS로 제공된다. 사용자는 자신의 특정 사용 사례에 맞게 이를 수정하고 확장할 수 있다.

Use cases

Nautilus는 신뢰할 수 있고 검증 가능한 오프체인 연산을 위한 여러 Web3 사용 사례를 지원한다. 몇 가지 예시는 다음과 같다:

  • Trusted oracles: Web2 서비스(날씨, 스포츠, 금융 데이터) 또는 Walrus와 같은 탈중앙화 스토리지 플랫폼의 오프체인 데이터를 변조 불가능한 방식으로 처리한다.
  • AI agents: Nautilus는 추론을 위한 AI 모델을 안전하게 실행하거나, 온체인에서 데이터와 모델의 출처를 제공하면서 실행 가능한 결과를 생성하는 에이전트형 워크플로를 수행하는 데 이상적이다.
  • DePIN solutions: DePIN(Decentralized Physical Infrastructure)은 IoT 및 공급망 네트워크에서 개인 데이터 연산을 위해 Nautilus를 활용할 수 있다.
  • Fraud prevention in multi-party systems: 탈중앙화 거래소(DEX)는 주문 매칭 및 결제에 Nautilus를 사용할 수 있으며, 레이어-2 솔루션은 신뢰할 수 없는 당사자 간의 연산을 안전하게 실행하여 충돌과 사기를 방지할 수 있다.
  • Identity management: Nautilus는 탈중앙화 거버넌스와 변조 방지 증명을 위해 온체인 검증 가능성이 필요한 신원 관리 분야에서 솔루션을 제공할 수 있다.

Nautilus와 Seal을 함께 사용하면, 안전하고 검증 가능한 연산과 안전한 키 접근을 결합하여 강력한 프라이버시 보호 사용 사례를 구현할 수 있다. TEE의 일반적인 문제 중 하나는 재시작이나 다른 머신 간에 비밀 키를 지속시키는 것이다. Seal은 장기 키를 안전하게 저장하고 적절히 증명된 TEE에만 접근을 허용함으로써 이를 해결할 수 있다. 이 모델에서 Nautilus는 암호화된 데이터에 대한 연산을 처리하고, Seal은 키 접근을 제어한다. 공유 암호화 상태가 필요한 애플리케이션은 두 도구를 모두 사용하여 사용자 요청을 비공개로 처리하고 공개 네트워크에서 암호화된 데이터를 업데이트할 수 있다.

Future plans and non-goals

Nautilus는 향후 Intel TDXAMD SEV와 같은 추가 TEE 제공자를 지원할 예정이다. 우선적으로 지원하거나 고려해야 할 플랫폼에 대한 제안을 환영한다.

For questions about Nautilus, use case discussions, or integration support, contact the Nautilus team on Sui Discord.

Nautilus에는 기본적으로 즉시 사용 가능한 TEE 네트워크가 존재하지 않는다. 그러나 Nautilus 파트너가 이러한 TEE 네트워크를 제공할 수 있다. 이러한 네트워크와는 별개로, 오프체인 Nautilus 서버를 실행하기 위해 자체 TEE를 배포하고 관리하는 것이 권장된다.