@@ -152,7 +152,8 @@ namespace ccf
152
152
std::vector<uint8_t > sealed_secret_raw = files::slurp (ledger_secret_path);
153
153
SealedLedgerSecret sealed_ledger_secret = nlohmann::json::parse (
154
154
std::string (sealed_secret_raw.begin (), sealed_secret_raw.end ()));
155
- SealedLedgerSecretAAD aad = nlohmann::json::parse (sealed_ledger_secret.aad_text );
155
+ SealedLedgerSecretAAD aad =
156
+ nlohmann::json::parse (sealed_ledger_secret.aad_text );
156
157
157
158
CCF_ASSERT_FMT (
158
159
aad.version == expected_version,
@@ -163,11 +164,12 @@ namespace ccf
163
164
// make_derived_key will fail if the CPU's TCB version is rolled back
164
165
// below aad.tcb_version
165
166
auto sealing_key = ccf::pal::snp::make_derived_key (aad.tcb_version );
167
+ std::vector<uint8_t > buf_aad (
168
+ sealed_ledger_secret.aad_text .begin (),
169
+ sealed_ledger_secret.aad_text .end ());
166
170
167
171
auto buf_plaintext = aes_gcm_unsealing (
168
- sealing_key->get_raw (),
169
- sealed_ledger_secret.ciphertext ,
170
- sealed_ledger_secret.aad_text );
172
+ sealing_key->get_raw (), sealed_ledger_secret.ciphertext , buf_aad);
171
173
172
174
LedgerSecret unsealed_ledger_secret = nlohmann::json::parse (
173
175
std::string (buf_plaintext.begin (), buf_plaintext.end ()));
0 commit comments