신뢰할 수 있는 실행 환경이란?
신뢰할 수 있는 실행 환경(Trusted Execution Environment)은 IoT/연결된 장치에 대한 논의에서 충분한 주목을 받지 못하는 기본적인 주제 중 하나입니다. 데이터의 무결성과 보호된 환경에서 프로그램을 실행하는 능력이 매우 중요한 여러 분야가 있습니다. 비밀번호, 개인 키 등과 같은 매우 민감한 정보가 신뢰할 수 있는 실행 환경(TEE)에서 처리되고 저장되면 가장 신뢰할 수 있는 IoT 데이터를 제공합니다.
최고 수준의 보안이 필요한 데이터는 강력한 변조 방지 장치, 즉 TEE가 있는 장치에서 와야 합니다. IoT 데이터 사용 사례에는 요구되는 데이터 무결성의 스펙트럼이 있으며, 금융 거래와 건강 데이터가 그 스펙트럼의 한쪽 끝에 있습니다. 때때로 무결성의 정도가 그리 중요하지 않을 수 있습니다. 그러나 일부 경우에는 임무가 매우 중대하며 TEE가 요구됩니다.
신뢰할 수 있는 실행 환경(TEE)는 장치 하드웨어와 소프트웨어의 안전한 영역으로, 특정 데이터와 프로세스를 외부의 변조나 간섭으로부터 보호하도록 설계되었습니다.
IoTeX의 Pebble Tracker는 TEE를 사용하므로 데이터 무결성이 가장 높아야 할 때 사용할 수 있습니다.
이 환경에서 어떤 일이 발생하나요?
IoTeX의 Pebble Tracker는 신뢰할 수 있는 실행 환경을 사용하여 실제 데이터를 캡처하고 암호학적으로 서명하여 데이터의 무결성을 보장합니다. 이는 스마트폰의 FaceID/지문 관리 칩과 개인 키를 관리하는 암호화 하드웨어 지갑과 유사합니다. Pebble Tracker가 생성한 서명은 IoT 데이터 메시지에 첨부됩니다. 이를 통해 변조 여부를 검증할 수 있으며 데이터를 생성한 정확한 장치를 식별할 수 있습니다. 모든 Pebble Tracker는 제조 시 IoTeX 블록체인에 등록됩니다.
블록체인 + IoT 기술 기업인 enviroBLOQ와 AhoyDAO는 이러한 장치의 데이터에 대해 제3자가 돈을 지불하고 있습니다. 이러한 제3자는 데이터나 해당 데이터 기반의 증명이 완전히 신뢰할 수 있다는 사실에 의존하고 있습니다. 이것이 신뢰할 수 있는 장치에서 모든 dApp으로 흐름을 혁신적으로 만드는 이유입니다. 장치 데이터의 무결성을 증명할 수 있습니다. 이러한 데이터 무결성은 MachineFi 경제의 기초가 됩니다.
일반적인 설명을 위해 우리는 신뢰할 수 있는 실행 환경에 대한 이 Wikipedia 항목이 유익하다고 생각했습니다. (발췌)
신뢰할 수 있는 실행 환경(TEE)은 주 프로세서의 안전한 영역입니다. 그 안에 로드된 코드와 데이터의 기밀성과 무결성이 보호됩니다. 데이터 무결성 — 외부의 어떤 엔티티가 TEE 내에서 데이터를 처리할 때 무단으로 데이터가 변경되는 것을 방지합니다... TEE는 고립된 실행 환경으로서 고립된 실행, TEE와 함께 실행되는 애플리케이션의 무결성, 자산의 기밀성과 같은 보안 기능을 제공합니다. 일반적으로 TEE는 장치에서 실행되는 신뢰할 수 있는 애플리케이션에 대해 풍부한 운영 체제(OS)보다 높은 수준의 보안을 제공하는 실행 공간을 제공합니다.
TEE는 어디에 사용되나요?
신뢰할 수 있는 실행 환경은 우리 삶의 모든 곳에 존재하는 것으로 드러났습니다. 스마트폰, 노트북 및 기타 유형의 컴퓨팅 장치에 있습니다. TEE는 이러한 장치가 사용자의 지문을 안전하게 저장하거나 얼굴을 사용하여 사용자를 식별할 수 있게 합니다.
TEE는 신용 카드 및 여권과 같은 일부 유형의 스마트 카드에서도 찾아볼 수 있으며, 이러한 카드는 TEE를 사용하여 민감한 데이터를 안전한 환경에서 저장하고 처리합니다. 그 외에 어떻게 유용할까요?
- 민감한 데이터 보호: TEE는 비밀번호, 재무 정보 및 개인 확인 문서와 같은 민감한 데이터를 안전한 환경에서 저장 및 처리하는 데 사용될 수 있으며, 장치의 나머지 부분에서 격리됩니다.
- 안전한 거래 가능: TEE는 온라인 뱅킹 및 전자 상거래 거래와 같은 안전한 거래를 용이하게 하는 데 사용될 수 있습니다. 민감한 재무 정보를 처리하기 위한 안전한 환경은 사기를 방지하고 재무 거래의 무결성을 보장하는 데 도움을 줍니다.
- 보안 정책 시행: TEE는 장치에서 접근 통제를 포함한 보안 정책을 시행하는 데 사용될 수 있습니다. 이는 민감한 데이터에 대한 무단 접근을 방지하고, 승인된 사용자만 특정 리소스에 접근할 수 있도록 합니다.
- 악성 코드로부터 보호: TEE는 악성 코드로부터 보호하는 데 사용될 수 있습니다. 특정 프로세스를 장치의 나머지 부분에서 격리함으로써, TEE는 악성 코드의 확산과 장치 감염을 방지하는 데 도움을 줄 수 있습니다.
- 소프트웨어 업데이트의 무결성 보장: TEE는 소프트웨어 업데이트의 무결성을 보장하는 데 사용될 수 있습니다. 소프트웨어 업데이트가 설치되기 전에 변조되지 않았음을 확인함으로써, TEE는 소프트웨어 업데이트를 통해 악성 코드가 도입되는 것을 방지합니다.
TEE를 사용하는 이러한 변조 방지 장치의 데이터는 앞으로 어떻게 사용될까요?
우리는 IoTeX의 개발자 관계 책임자인 Simone Romano와 이야기를 나누었고, 그는 다음과 같이 말했습니다:
IoT 장치에서 널리 사용되지만, TEE는 사용자의 개인 키를 저장하기 위해 하드웨어 지갑을 제외하고는 블록체인 산업에서 실제로는 거의 사용되지 않습니다. 그러나 오프라인 블록체인 거래에 서명하는 것은 이 기술의 매우 제한된 사용입니다. 거의 모든 스마트 장치에 TEE가 장착되어 있으므로, 향후 자율적으로 거래를 서명하고 전송할 수 있을 것이며, 블록체인에서 서로 상호작용할 것입니다. 그러나 이것은 TEE가 블록체인 애플리케이션에 활용될 수 있는 잠재력의 빙산의 일각입니다. 각 장치에 대한 분산된 온체인 정체성을 등록함으로써 그들은 TEE를 사용하여 캡처된 모든 IoT 데이터를 자율적으로 생성하고 서명할 수 있으며, 이는 스마트 계약이 온체인에서 검증할 수 있는 실제 사실의 증거를 생성하는 기초로 사용될 수 있어, 신뢰할 수 있는 IoT 데이터를 기반으로 하는 진정한 분산 경제가 탄생할 것입니다.