Skip to content

Commit 6f809ed

Browse files
committed
Make SGX AGE test enclave reusable
The entry points into the SgxAgeRemoteAssertionGeneratorTestEnclave are applicable to any SGX assertion generator. Rename the class to SgxRemoteAssertionGeneratorTestEnclave and set the type of assertion generator in enclave initialization routine. This way, the enclave may be used for different assertion generators beyond the AGE one. PiperOrigin-RevId: 288501012 Change-Id: I77822a70d4f7918c9e60674126d69d02c7dc10a3
1 parent 25f4f06 commit 6f809ed

File tree

5 files changed

+189
-141
lines changed

5 files changed

+189
-141
lines changed

asylo/identity/attestation/sgx/BUILD

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ cc_proto_library(
3434
)
3535

3636
proto_library(
37-
name = "sgx_age_remote_assertion_generator_test_enclave_proto",
38-
srcs = ["sgx_age_remote_assertion_generator_test_enclave.proto"],
37+
name = "sgx_remote_assertion_generator_test_enclave_proto",
38+
srcs = ["sgx_remote_assertion_generator_test_enclave.proto"],
3939
deps = [
4040
"//asylo:enclave_proto",
4141
"//asylo/crypto:certificate_proto",
@@ -45,8 +45,8 @@ proto_library(
4545
)
4646

4747
cc_proto_library(
48-
name = "sgx_age_remote_assertion_generator_test_enclave_cc_proto",
49-
deps = ["sgx_age_remote_assertion_generator_test_enclave_proto"],
48+
name = "sgx_remote_assertion_generator_test_enclave_cc_proto",
49+
deps = ["sgx_remote_assertion_generator_test_enclave_proto"],
5050
)
5151

5252
cc_library(
@@ -77,13 +77,13 @@ cc_library(
7777
)
7878

7979
sgx_cc_unsigned_enclave(
80-
name = "sgx_age_remote_assertion_generator_test_enclave_unsigned.so",
80+
name = "sgx_remote_assertion_generator_test_enclave_unsigned.so",
8181
testonly = 1,
82-
srcs = ["sgx_age_remote_assertion_generator_test_enclave.cc"],
82+
srcs = ["sgx_remote_assertion_generator_test_enclave.cc"],
8383
copts = ASYLO_DEFAULT_COPTS,
8484
deps = [
8585
":sgx_age_remote_assertion_generator",
86-
":sgx_age_remote_assertion_generator_test_enclave_cc_proto",
86+
":sgx_remote_assertion_generator_test_enclave_cc_proto",
8787
"//asylo:enclave_cc_proto",
8888
"//asylo:enclave_runtime",
8989
"//asylo/identity/sgx:sgx_identity_util",
@@ -92,10 +92,10 @@ sgx_cc_unsigned_enclave(
9292
)
9393

9494
sgx_debug_sign_enclave(
95-
name = "sgx_age_remote_assertion_generator_test_enclave.so",
95+
name = "sgx_remote_assertion_generator_test_enclave.so",
9696
testonly = 1,
9797
config = "//asylo/grpc/util:grpc_enclave_config",
98-
unsigned = "sgx_age_remote_assertion_generator_test_enclave_unsigned.so",
98+
unsigned = "sgx_remote_assertion_generator_test_enclave_unsigned.so",
9999
)
100100

101101
enclave_test(
@@ -108,16 +108,16 @@ enclave_test(
108108
copts = ASYLO_DEFAULT_COPTS,
109109
enclaves = {
110110
"assertion_generator_enclave": "//asylo/identity/attestation/sgx/internal:remote_assertion_generator_enclave_no_flc.so",
111-
"sgx_age_remote_assertion_generator_test_enclave": ":sgx_age_remote_assertion_generator_test_enclave.so",
111+
"sgx_remote_assertion_generator_test_enclave": ":sgx_remote_assertion_generator_test_enclave.so",
112112
},
113113
test_args = [
114114
"--assertion_generator_enclave_path='{assertion_generator_enclave}'",
115-
"--generator_test_enclave_path='{sgx_age_remote_assertion_generator_test_enclave}'",
115+
"--generator_test_enclave_path='{sgx_remote_assertion_generator_test_enclave}'",
116116
],
117117
deps = [
118118
":sgx_age_remote_assertion_authority_config_cc_proto",
119119
":sgx_age_remote_assertion_generator",
120-
":sgx_age_remote_assertion_generator_test_enclave_cc_proto",
120+
":sgx_remote_assertion_generator_test_enclave_cc_proto",
121121
"//asylo:enclave_cc_proto",
122122
"//asylo:enclave_client",
123123
"//asylo/crypto:certificate_cc_proto",

asylo/identity/attestation/sgx/sgx_age_remote_assertion_generator_test.cc

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
#include "asylo/enclave_manager.h"
3232
#include "asylo/identity/attestation/sgx/internal/remote_assertion_generator_enclave.pb.h"
3333
#include "asylo/identity/attestation/sgx/sgx_age_remote_assertion_authority_config.pb.h"
34-
#include "asylo/identity/attestation/sgx/sgx_age_remote_assertion_generator_test_enclave.pb.h"
34+
#include "asylo/identity/attestation/sgx/sgx_remote_assertion_generator_test_enclave.pb.h"
3535
#include "asylo/identity/descriptions.h"
3636
#include "asylo/identity/enclave_assertion_authority.h"
3737
#include "asylo/identity/identity.pb.h"
@@ -195,6 +195,11 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
195195
test_enclave_config_ = new EnclaveConfig;
196196
*test_enclave_config_->add_enclave_assertion_authority_configs() =
197197
GetSgxLocalAssertionAuthorityTestConfig();
198+
SetSgxAgeRemoteAssertionDescription(
199+
test_enclave_config_
200+
->MutableExtension(
201+
sgx::sgx_remote_assertion_generator_test_enclave_config)
202+
->mutable_description());
198203

199204
// Create an EnclaveLoadConfig object.
200205
EnclaveLoadConfig load_config;
@@ -246,14 +251,13 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
246251
EnclaveOutput enclave_output;
247252
*enclave_input
248253
.MutableExtension(
249-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
254+
sgx::sgx_remote_assertion_generator_test_enclave_input)
250255
->mutable_sgx_self_identity_input() = sgx::SgxSelfIdentityInput();
251256

252257
ASYLO_RETURN_IF_ERROR(
253258
test_enclave_client_->EnterAndRun(enclave_input, &enclave_output));
254259
return enclave_output
255-
.GetExtension(
256-
sgx::sgx_age_remote_assertion_generator_test_enclave_output)
260+
.GetExtension(sgx::sgx_remote_assertion_generator_test_enclave_output)
257261
.sgx_self_identity_output()
258262
.identity();
259263
}
@@ -264,7 +268,7 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
264268
EnclaveOutput enclave_output;
265269
*enclave_input
266270
.MutableExtension(
267-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
271+
sgx::sgx_remote_assertion_generator_test_enclave_input)
268272
->mutable_reset_generator_input() = sgx::ResetGeneratorInput();
269273

270274
return test_enclave_client_->EnterAndRun(enclave_input, &enclave_output);
@@ -276,14 +280,13 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
276280
EnclaveOutput enclave_output;
277281
*enclave_input
278282
.MutableExtension(
279-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
283+
sgx::sgx_remote_assertion_generator_test_enclave_input)
280284
->mutable_is_initialized_input() = sgx::IsInitializedInput();
281285

282286
ASYLO_RETURN_IF_ERROR(
283287
test_enclave_client_->EnterAndRun(enclave_input, &enclave_output));
284288
return enclave_output
285-
.GetExtension(
286-
sgx::sgx_age_remote_assertion_generator_test_enclave_output)
289+
.GetExtension(sgx::sgx_remote_assertion_generator_test_enclave_output)
287290
.is_initialized_output()
288291
.is_initialized();
289292
}
@@ -294,7 +297,7 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
294297
EnclaveOutput enclave_output;
295298
enclave_input
296299
.MutableExtension(
297-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
300+
sgx::sgx_remote_assertion_generator_test_enclave_input)
298301
->mutable_initialize_input()
299302
->set_config(config);
300303

@@ -307,14 +310,13 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
307310
EnclaveOutput enclave_output;
308311
*enclave_input
309312
.MutableExtension(
310-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
313+
sgx::sgx_remote_assertion_generator_test_enclave_input)
311314
->mutable_create_assertion_offer_input() =
312315
sgx::CreateAssertionOfferInput::default_instance();
313316
ASYLO_RETURN_IF_ERROR(
314317
test_enclave_client_->EnterAndRun(enclave_input, &enclave_output));
315318
return enclave_output
316-
.GetExtension(
317-
sgx::sgx_age_remote_assertion_generator_test_enclave_output)
319+
.GetExtension(sgx::sgx_remote_assertion_generator_test_enclave_output)
318320
.create_assertion_offer_output()
319321
.offer();
320322
}
@@ -326,14 +328,13 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
326328
sgx::CanGenerateInput *can_generate_input =
327329
enclave_input
328330
.MutableExtension(
329-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
331+
sgx::sgx_remote_assertion_generator_test_enclave_input)
330332
->mutable_can_generate_input();
331333
*can_generate_input->mutable_request() = request;
332334
ASYLO_RETURN_IF_ERROR(
333335
test_enclave_client_->EnterAndRun(enclave_input, &enclave_output));
334336
return enclave_output
335-
.GetExtension(
336-
sgx::sgx_age_remote_assertion_generator_test_enclave_output)
337+
.GetExtension(sgx::sgx_remote_assertion_generator_test_enclave_output)
337338
.can_generate_output()
338339
.can_generate();
339340
}
@@ -347,15 +348,14 @@ class SgxAgeRemoteAssertionGeneratorTest : public ::testing::Test {
347348
sgx::GenerateInput *generate_input =
348349
enclave_input
349350
.MutableExtension(
350-
sgx::sgx_age_remote_assertion_generator_test_enclave_input)
351+
sgx::sgx_remote_assertion_generator_test_enclave_input)
351352
->mutable_generate_input();
352353
generate_input->set_user_data(user_data);
353354
*generate_input->mutable_request() = request;
354355
ASYLO_RETURN_IF_ERROR(
355356
test_enclave_client_->EnterAndRun(enclave_input, &enclave_output));
356357
return enclave_output
357-
.GetExtension(
358-
sgx::sgx_age_remote_assertion_generator_test_enclave_output)
358+
.GetExtension(sgx::sgx_remote_assertion_generator_test_enclave_output)
359359
.generate_output()
360360
.assertion();
361361
}

asylo/identity/attestation/sgx/sgx_age_remote_assertion_generator_test_enclave.cc

Lines changed: 0 additions & 105 deletions
This file was deleted.

0 commit comments

Comments
 (0)