2017-02-01 15 views
18

AWSラムダを使用して第三者に代わって計算を実行し、意図したとおりに行ったことを証明したいと思います。証明は、関数本体、要求、および応答の暗号で署名されたダイジェストです。理想的には、Amazonは独自の秘密鍵でダイジェストに署名し、その公開鍵を公開して署名の検証を可能にします。このアイデアは、SGX(Software Guard Extensions)を通じて提供される新しいIntelチップが提供する「セキュアエンクレーブ」に似ています。Amazon AWS Lambdaをトラステッド・コンピューティングの安全な領域として使用できますか?

既存のラムダサービスには、必要な要素がいくつかあります。たとえば、GetFunctionレスポンスには、関数の実装を一意に識別するCodeSha256フィールドが含まれています。 Amazon API Gatewayでは、ラムダサービスへのHTTPSリクエストを行うことができます。これにより、リクエスト/レスポンスの内容をTLSNotary形式で証明することができます。しかし、これを行うにはAWS Lambdaが署名を直接提供する必要があると思います。

マイクロソフトのAzureは、そのプロジェクトはBletchleyで信頼ソフトウェア飛び地( "cryptlets")に取り組んでいる: https://github.com/Azure/azure-blockchain-projects/blob/master/bletchley/bletchley-whitepaper.md https://github.com/Azure/azure-blockchain-projects/blob/master/bletchley/CryptletsDeepDive.md

は、現在のAWSラムダと、この可能性のようなものですか?

答えて

3

AWSには、セキュリティに応じて異なるアプローチがあります。あなたは、特定のリソースをどのように使うことができるのかを設定することができます。

あなたが説明したことを確実に行うことができます。要求、応答、および使用されたコードの正確なバージョンを識別できます。問題は、リクエストを処理するときにコードに署名したい場合です。簡単な方法は、デプロイ時に計算される方法です。

初回の場合 - ソースにアクセスできる言語が必要です。 Like with Python、それを入手して、署名して返すか、どこかに保管することができます。

第2の場合 - 私はtaggingを使用します。

+0

あなたの答えは重要な問題には対処しません:特定の計算が実行されたことを証明したい、これを行う通常の方法は、信頼できる当事者からの暗号の証明である。インテルSGXの場合、ハードウェアエンクレーブはアテステーションを提供し、トラステッドパーティはインテルです。マイクロソフトは、Cocoの一部としてハイパーバイザー内部で実行される信頼できるソフトウェアエンクレーブに取り組んでいます。私はAmazonがこれらのラインに沿って何かに取り組んでいることを願っている。 –

+0

AWSを使用すると、署名に気を配り、その方法でその情報をすべての当事者が受け入れられるようにする、別のレイヤーを設定できます。その「もの」は、インテル、マイクロソフト、または他の会社によって提供される単なる別の層です。 PKIを信頼する場合は、そのレイヤーを含めてすべて署名し、顧客に完全な情報を提供することができます。 –

+0

またはそれ以外の方法で。あなた自身が提供することができないものはすべて、信頼できる第三者です。すべての情報とともにログを送信することで、この問題に対処することができます。そうすれば、あなたはそれらを騙そうとすることができますが、いつも何が起きたのかを確認することができます。 –

3

まず、いくつかの定義をしましょう。ラムダはサーバーではなく、コードを実行するサービスです。シグネチャを直接提供するのではなく、AWSでそれを構成するものです。

セキュアエンクレーブは、TPM(Trusted Platform Module)の実装またはタイプの1つで、これはさまざまな方法で実行でき、セキュアエンクレーブは最高のものの1つです。 あなたの質問への短い答えは、はい、それは限り、あなたは必要なコードを実装し、すべての必要な設定を追加して行うことができますされ、SSLなど

私は次のように読むことをadvideます:http://ieeexplore.ieee.org/document/5703613/?reload=true

そして、あなたのTPMをそのまま使用したい場合は、マイクロソフトのプロジェクトを使用することができます:https://github.com/Microsoft/TSS.MSR

関連する問題