20 std::map<NodeId, NodeInfo>&&
nodes,
26 for (
auto [nid, ni] :
nodes)
28 std::vector<EncryptedLedgerSecret> ledger_secrets_for_node;
30 for (
auto s : some_ledger_secrets)
32 ledger_secrets_for_node.push_back(
37 s.second->previous_secret_stored_version});
40 secrets_for_nodes.emplace(nid, std::move(ledger_secrets_for_node));
43 secrets->
put(secrets_for_nodes);
47 std::map<NodeId, NodeInfo>&&
nodes,
53 for (
auto [nid, ni] :
nodes)
55 std::vector<EncryptedLedgerSecret> ledger_secrets_for_node;
57 ledger_secrets_for_node.push_back(
61 new_ledger_secret->raw_key),
62 new_ledger_secret->previous_secret_stored_version});
64 secrets_for_nodes.emplace(nid, std::move(ledger_secrets_for_node));
67 secrets->
put(secrets_for_nodes);
72 const std::vector<uint8_t>& cipher)
Definition secret_broadcast.h:15
static void broadcast_some(std::map< NodeId, NodeInfo > &&nodes, SecretsWriteHandle *secrets, const LedgerSecretsMap &some_ledger_secrets)
Definition secret_broadcast.h:19
static void broadcast_new(std::map< NodeId, NodeInfo > &&nodes, SecretsWriteHandle *secrets, LedgerSecretPtr &&new_ledger_secret)
Definition secret_broadcast.h:46
static std::vector< uint8_t > decrypt(const ccf::crypto::RSAKeyPairPtr &encryption_key, const std::vector< uint8_t > &cipher)
Definition secret_broadcast.h:70
ccf::kv::WriteableValueHandle< V, VSerialiser, Unit > WriteOnlyHandle
Definition value.h:35
Definition value_handle.h:91
void put(const V &value)
Definition value_handle.h:106
std::vector< uint8_t > ckm_rsa_pkcs_oaep_unwrap(RSAKeyPairPtr wrapping_key, const std::vector< uint8_t > &wrapped, const std::optional< std::vector< uint8_t > > &label={})
Definition key_wrap.cpp:39
std::shared_ptr< RSAKeyPair > RSAKeyPairPtr
Definition rsa_key_pair.h:90
RSAPublicKeyPtr make_rsa_public_key(const Pem &pem)
Definition rsa_key_pair.cpp:13
std::vector< uint8_t > ckm_rsa_pkcs_oaep_wrap(RSAPublicKeyPtr wrapping_key, const std::vector< uint8_t > &unwrapped, const std::optional< std::vector< uint8_t > > &label={})
Definition key_wrap.cpp:22
Definition app_interface.h:14
std::map< NodeId, EncryptedLedgerSecrets > LedgerSecretsForNodes
Definition secrets.h:32
std::map< ccf::kv::Version, LedgerSecretPtr > LedgerSecretsMap
Definition ledger_secrets.h:20
std::shared_ptr< LedgerSecret > LedgerSecretPtr
Definition ledger_secret.h:75