인텔 SGX와 블록체인: 아이젝 End-to-End 솔루션
안녕하세요. 아이젝 마케팅&커뮤니케이션팀 한국 매니저 강재서입니다.
여러분 드디어 11월 1일!! 아이젝이 개발한 세계 최초로 탈중앙화된 세계를 위한 SGX 솔루션이 세상에 공개됩니다. 기존의 단일 서버만 보호하면 되는 SGX 솔루션과 달리, 탈중앙화된 클라우드 컴퓨팅에서는 수많은 노드에서 컴퓨팅이 이루어지기 때문에 이를 완벽히 보호할 솔루션이 필요합니다. ‘탈중앙화된 영역에서의 SGX 솔루션 개발’, 이것이 아이젝과 인텔 협업의 핵심적인 부분이구요.
그림으로 살펴보자면, 윗쪽 그림의 노란 부분에 대한 보안 솔루션은 많지만, 아래쪽 그림의 탈중앙화된 세계에서는 이 파란 부분을 모두 신경써야 하거든요. 이 파란 영역을 모두 커버할 수 있는 SGX 솔루션! 무슨 내용인지 만나보실까요?
인텔 SGX와 블록체인: 아이젝 End-to-End 솔루션
당면 과제: 탈중앙화되고 분산화된 네트워크에서 어떻게 높은 보안성을 확보할 수 있을까?
블록체인 기반의 애플리케이션과 컴퓨팅은 하나의 특정한 개체에 의해 소유되거나 컨트롤 되지 않고 다수의 머신이나 노드에 의해 동력을 얻습니다. 이렇듯, 탈중앙화된 클라우드 컴퓨팅 네트워크는 분산화된 특성을 띄고 있는데, 이는 보안을 위한 솔루션 개발의 필요성을 내포하고 있습니다. 어떤 루트 권한을 가진 사용자가 탈중앙화된 호스트에서 구동하는 애플리케이션의 민감한 데이터를 쉽게 훔쳐볼 수도 있고, 정보를 임의로 변경할 수도 있기 때문입니다. 기존의 중앙화된 클라우드의 공급자는 기존에 출시된 보안 메커니즘을 쉽게 배치하여 애플리케이션을 보호할 수 있지만, 탈중앙화된 클라우드에서는 아직 제대로 된 보안 솔루션이 개발되지 않았었습니다.
이러한 상황에서, 탈중앙화된 블록체인 기반의 클라우드에는, ‘인텔 SGX’라고 하는 실리콘-기반의 보안 솔루션만이 유저와 어플리케이션을 보호하기 위한 효율적인 솔루션입니다.
인텔 SGX(인텔 소프트웨어 가드 익스텐션)는 일련의 CPU 명령 코드로, 보호된 영역(enclaves)에 있는 코드와 데이터를 선별하여 실행할 수 있습니다. 기본적으로, 여러분이 호스트머신에서 구동하는 애플리케이션이 있다면, SGX enclaves는 본질적으로 애플리케이션을 호스트 머신과 고립시키고 보호하는 bubble로서 작용합니다. 이런 식으로, 호스트머신의 루트 권한을 가진 관리자조차도 버블을 뚫고 애플리케이션에 접근하여 정보를 변경할 수 없게 됩니다.
인텔 SGX Enclaves에 대한 소개- 아이젝 보안 연구개발팀장, Lei Zhang
“Intel SGX”가 매력적인 이유는, 하드웨어 신뢰 실행 환경(TEE)를 제공하기 때문입니다. 또한, 사용되거나 사용되지 않는 또는 전송되는 데이터에 더 나은 보호 시스템을 가능하게 하며, bult-in CPU instructions와 플랫폼 향상은 데이터에 접근하도록 허용된 코드에 암호학적 assertion을 제공합니다. 코드가 임의로 변환되면, 접근은 거부되고 환경은 사용중지됩니다.
-인텔 소프트웨어, 서비스 그룹 부회장 Rick Echevarria
1. 아이젝 E2E SGX 솔루션
아이젝은 블록체인으로 탈중앙화되고 분산된 클라우드 네트워크를 구축하는 데 있어 선구자입니다. 이제 우리는 블록체인 기반의 클라우드를 위한 세계 최초 full end-to-end 솔루션을 SGX와 결합하여 제공합니다. 인텔 SGX와 아이젝의 초기단계의 작업은 이 포스트를 읽어보시길 바라고, 이 비디오 프레젠테이션에서도 다루어진 바 있습니다. 아이젝은 SGX에 대한 초기 결과물을 2018년 3월 라스베가스에서 열린 IBM Think에서 선보인 바 있으며, 2018년 5월 뉴욕에서 열린 컨센서스에서는 인텔과 함께 합동발표를 진행한 바 있습니다. 초기 단계는 탈중앙화된 애플리케이션에 구축되어있는 비밀스러운 정보들을 보호하는 데 주안점을 뒀었습니다. 우리는 인텔과 진행했던 개념증명 합동발표에서 다음과 같은 것을 보여주었습니다: 애플리케이션이 탈중앙화된 노드에서 구동된다 하더라도, SGX enclaves를 사용하면 네트워크에서의 악의적인 공격으로 비밀스러운 데이터가 유출되거나 임의로 변경될 수 없다. 이러한 초기 단계의 작업은 커다란 성공을 거두었습니다. 하지만, 문제는 이러한 솔루션을 사용하는 것이 앱 개발자나 유저에게 매우 복잡할 수 있어서, IT나 컴퓨팅 분야에 종사하지 않는 사람들이 이용하기는 어렵다는 것이었습니다.
아이젝은 그 이후에 계속해서 중요한 발자취를 남겨왔습니다, 파트너쉽을 맺은 기업들과 열심히 작업하여 강력하고 유저들에게 친숙한 (이용하기 편리한) full end-to-end SGX 솔루션을 결국 만들어냈습니다. 이 솔루션은 탈중앙화된 클라우드 컴퓨팅 분야의 전반적인 보안 수준을 향상시키기 위한 산업 표준으로 사용되도록 만들어졌습니다. 이 새로운 SGX 솔루션은, 블록체인과 결합하여, 탈중앙화된 애플리케이션(Dapp), 탈중앙화된 노드에서의 실행/데이터 처리를 위한 타의 추종을 불허하는 신뢰를 제공합니다. 아이젝의 이러한 접근 방식은 SGX가 블록체인과 호환가능하게 하는데, 이런 목적에서입니다:
- 댑을 보호하고 실행 호스트에 의해 접근되어서는 안 되는 데이터의 완전한 보호를 제공합니다. 이것은 유저의 투입/산출 데이터에 특히 중요합니다.
- 댑/데이터의 결합을 보장합니다, 정확한 또는 예상되는 댑이나 데이터가 탈중앙화된 노드에서 구동되고 있다는 것을 확실하게 합니다.
- 오프체인 컴퓨팅을 위한 블록체인 기반의 검증을 제공합니다, 댑이 enclave 내에서 정확하게 실행되고 있다는 것을 검증하고, 탈중앙화된 노드에 의해 임의로 변경되거나 방해받지 않는 다는 것을 검증해줍니다. 스마트 컨트랙트 서명은 이러한 안전한 enclave 내에서 서명된 후에야 블록체인 네트워크에 의해 검증됩니다.
- 실행과 Dapp 결과값이 유효하고 악의적인 탈중앙화된 노드에 의해 복사되거나 조작되지 않았음을 확실하게 해줍니다. 처음부터 끝까지 Dapp 결과값의 프라이버시를 보호합니다, 그리고 그것은 해당 유저외에는 누구도 볼 수 없습니다.
- 유저에게 친숙한 인터페이스: 유저가 투입/산출 데이터를 암호화/복호화하여 SGX 애플리케이션 실행을 시작하는 절차를 엄청나게 간소화시켰습니다.
쉽게 사용할 수 있다는 것은 사용자경험의 중요한 요소입니다; 아이젝 E2E SGX 솔루션을 이용하면, 유저들은 E2E SGX 애플리케이션을 구동하고 유저의 투입/산출 데이터를 완벽하게 보호하는데 3단계만 수행하면 됩니다.
기존 SGX 애플리캐이션을 생각해봅시다, 가령 핀테크 애플리케이션을 예로 들어볼게요. 이 애플리케이션은 유의저 개인적이고 민감한 세부정보(은행 계좌 정보, 사적인 정보 등)를 포함하는 유저의 투입데이터에 의해 구동됩니다. 애플리케이션의 산출 결과 값 또한 몇몇 민감한 데이터를 포함하고 있기 때문에, 해당 유저만 이 데이터를 볼 수 있도록 해야합니다. 이러한 투입데이터와 산출결과는 모든 과정에 걸쳐 엄격하게 보호되어야합니다. 암호화되지 않은 민감한 데이터는 유저 ‘local scope’를 벗어나지 않으며, 보안이 철저한 신뢰할 수 있는 실행 환경인 SGX 하드웨어 enc lave로 보호됩니다. 다음은 아이젝 SGX 솔루션의 주요 3단계에 대한 포괄적인 설명입니다.
Step 1 : 유저는 자동적으로 수행되는 하나의 간단한 명령을 실행하기만 하면 됩니다:
- 유저의 투입데이터를 암호화함
- 암호화된 데이터를 remote file system으로 집어넣음(예를 들어, remote file system은 어떤 퍼블릭 파일 공유 서비스일 수도 있으며 이를 유저가 자유롭게 선택할 수 있습니다다, 이 서비스는 아이젝이 제공하는 것은 아님을 기억하세요)
- 관계된 세션(예를 들어, 유저가 애플리케이션을 시작하는 것은 세션이라고 할 수 있습니다.) 데이터를 SGX 기반의 기밀 관리 서비스로 업데이트하세요. 기밀 관리 서비스는 유연한 방식으로 배치될 수 있습니다: 유저쪽이든 스케쥴러쪽이든 가능(예를 들어 SGX worker pool)
Step 2 : 유저는 유저에게 친숙한 UI 인터페이스를 통해 아이젝 댑스토어와 마켓플레이스에서 몇 번의 클릭만으로 타겟 애플리케이션을 시작합니다.
타겟 애플리케이션이 멀리 떨어져있는 SGX 탈중앙화된 노드에서 시작되고 나면, 애플리케이션은 자동으로 암호화된 유저 투입 데이터를 remote file system에서 가져옵니다.(step 1에서 밀어내는 식으로): 보호된 SGX 공급 채널을 통해 시크릿 키를 가져옵니다, 그리고 그것은 유저 투입 데이터를 복호화하는데 사용됩니다, 복호화는 매우 철저하게 신뢰된 환경 내부에서만 가능합니다 –SGX enclave. 애플리케이션은 마침내 암호화되고 아이젝의 검증절차가(기여증명 합의(Poco)와 같은) 시작됩니다. 모든 것이 인텔 하드웨어 CPU로 보호되는 Intel SGX enclave 내부에서 보안이 철저하게 행해지고 어떤 비밀도 외부세계로 유출되지 않습니다.
서명은 마침내 on-chain 네트워크로 전송되고 등록된 상응하는 퍼블릭 키를 통해서 온-체인 스마트 컨트랙트에 의해 검증됩니다. 서명 검증이 통과하고 애플리케이션 결과의 신뢰 수준이 주어진 문턱을 넘게 되면, 유저는 암호화된 결과를 다운로드받을 수 있다는 공지를 보게 됩니다.
이것은 어려워 보이지만, 유저입장에서, 이 모든 것은 몇 번의 클릭만으로 이루어집니다!
도표1. 아이젝 E2E SGX 워크플로우
Step 3 : 유저는 암호화된 결과 패키지를 다운받을 수 있습니다, 그리고 결과를 복호화하기 위해 하나의 단순한 명령만 구동하면 됩니다. 이 작업을 시작한 유저(예를 들어, SGX 애플리케이션) 만이 암호화된 결과를 다운로드받을 수 있다는 것을 명심하세요, 그리고 유저만이 애플리케이션 결과를 복호화하기 위한 키를 소유합니다.
이 절차는 플랫폼 독립적이라는 것을 명심하세요, 따라서 다른 운영체제와도 호환됩니다: 윈도우, 리눅스, Mac OS 등.
빠른 시일내에, 우리는 이러한 유저들의 절차를 더 간소화시킬겁니다- 이 모든 세 단계를 하나의 단계로 묶어버리는 작업을 할겁니다.
아이젝 솔루션은 어떤 SGX 프레임과도 모두 호환가능합니다.(SGX Vendor Agonostic)
아이젝 플랫폼은 다른 SGX 솔루션을 공급하는 업체에도 개방적입니다. 현재, 아이젝 E2E solution은 SCONE 플랫폼에 기반을두고 있습니다. 아이젝은 Fortanix의 SGX 프레임워크를 아이젝 E2E SGX 솔루션에 통합시키기 위해 Fortanix와도 협업해왔습니다. 우리는 인텔의 PDO 프레임워크에 대해서도 검토하고 있습니다. 미래에는, 우리는 Graphene/Graphene-eg의 SGX 프레임워크도 고려하고 있습니다. 모든 주류 SGX 솔루션은 아이젝 플랫폼에 100% 호환가능해질 것입니다. 그리고 우리는 아이젝 댑 개발자들과 유저들이 자유롭게 그들이 선호하는 SGX 프레임워크를 고를 수 있도록 할 것입니다. 우리의 목적은 블록체인 기반의 컴퓨팅을 위한 신뢰할만한 환경을 공급하는 생태계의 출현을 촉진하는 것입니다, 그리고 이러한 신뢰할만한 서비스들은 아이젝 마켓플레이스에서 화폐화할 수 있습니다. (아이젝 시장에서 RLC 토큰으로 교환가능)
산업표준을 구축함에 있어서 아이젝의 공헌
아이젝은 신뢰 컴퓨팅 연구분야에서 매우 활발하게 활동하고 있고, 블록체인 기술의 맥락에서 산업 표준 구축을 선도하고 있습니다.
구체적으로:
아이젝은 EEA(이더리움 기업 연합)에서 매우 활발하게 활동하고 있습니다: 아이젝은 Trusted Compute 워크 그룹에서 의장을 맡고 있으며, EEA 표준 스펙 형성에 공헌하고 있습니다, 특히 곧 릴리징 될 Off-Chain Trusted Compute 스펙에 기여하고 있습니다.
아이젝은 또한 IEEE에서도 활발하게 활동하고 있습니다. 아이젝은 IEEE P2418의 멤버입니다, 그리고 DLT(분산원장) 기반의 Federated Identity, Credential and Trust Management에 관산 IEEE 표준 프로젝트에 관여되어있습니다. 아이젝은 몇몇 블록체인 기반의 도메인에 대한 표준화 작업을 선도하고 있습니다, 특히 보안과 TEE(신뢰실행환경) 부문에서 말이죠.
아이젝은 또한, 이러한 하드웨어 기반의 보안 솔루션(SGX)이 완전히 표준에 맞도록 하기 위해서, 하드웨어 신뢰 실행 환경 vendor 들과 협업을 하고 있습니다, Devcon4 기간 동안, 저희의 업데이트를 주목해주세요.
아이젝은 또한 우리의 파트너와 협업하여, 오픈포그 컨소시움의 맥락에서 블록체인 기반 포그 컴퓨팅의 표준을 구축하고 있습니다. 이러한 포그 컴퓨팅에서의 우리 파트너들과의 초기 단계 협업 결과물이 곧 발간될 겁니다, 앞으로의 며칠을 주목해주세요.
다음 데브레터는 유저와 개발자들이 SGX 특징이 결합된 새로운 아이젝 SDK를 사용할 수 있도록 튜토리얼 특집으로 하려고 합니다. 그러니까 놓치지 마세요!
데브콘4가 다가옴에 따라서, 우리는 곧 아이젝의 SGX솔루션에 관한 모든 우리의 결과물들을 발간할 계획입니다. 곧 발간될 흥미로운 소식들이 어마어마하게 많습니다, 커뮤니티에 공유할 준비 해주시구요. 데브콘4가 열리는 기간 전후에 새로운 소식 끊임없이 업데이트 될테니, 아이젝 주목해주세요!
Devcon4 이후에 뒷풀이 행사로 열리는, 아이젝 서밋 행사에 대해 더 알아보세요!
팀은 데브콘4와 프라하에서 11월 2일 금요일 오후 2시에 열리는 아이젝 서밋&파티 준비에 박차를 가하고 있습니다. 게스트들로부터 기술에 대한 훌륭한 연설도 듣고, 워크샵도 예정되어있습니다.(인텔, Parity, 유비소프트 등에서 온 게스트) 그리고, 우리는 음식, 술 그리고 훌륭한 기업들과 함께 파티를 진행할 예정입니다.
아이젝 공식 커뮤니티
- 아이젝 코리아(iExecKorea)
Congratulations @jkarim! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
Click here to view your Board of Honor
If you no longer want to receive notifications, reply to this comment with the word
STOP
Do not miss the last post from @steemitboard: