LINEユーザーの機密データをバックアップするソリューション開発に取り組む中、信頼できるコードをどのように実装するかという問題に直面しました。どのようにサービスを内外のセキュリティ脅威から守りながら実行すればよいでしょうか。私たちはTrusted Execution Environment (TEE) で動作する安全なサービスを構築するため、複数のソリューションを調査・検証しました。
私たちが試したHSMとIntel SGXという2つの主要なソリューションについてと、それらを使ってどのようにソフトウェア上のトラストチェーンを構築できるかをご紹介します。また、私たちが直面した展開の問題についても詳しく説明します。最後に、TEEのコンテキストにおけるソフトウェアセキュリティの問題と、その過程でどのようにRustを使用するようになったのかについても説明します。