A second cryptographic device comprising - a communication interface configured to communicate with a first cryptographic device, - a processor configured to - obtain a first public key (b) associated with the first cryptographic device, - generate a second private-key (r), and compute a second public-key (u) from the second private-key (r), - compute a second raw shared key (k ∗) from the second private key (r) and the first public key (b), computing the second raw shared key comprising a noisy multiplication between the second private key (r) and the first public key (b), - encapsulate a key seed (m) with at least part of the second raw shared key by applying an encapsulation function, obtaining encapsulated data (v), and - transfer the second public-key (u), and the encapsulated data (v) to the first cryptographic device, wherein - the processor is further configured to - apply a validation procedure to the obtained first public key (b) to determine if the first public key is secure for encapsulation of the key seed, wherein the key seed is not encapsulated or the encapsulated data (v) is not transferred if the validation procedure was unsuccessful. - a communication interface configured to communicate with a first cryptographic device, - a processor configured to - obtain a first public key (b) associated with the first cryptographic device, - generate a second private-key (r), and compute a second public-key (u) from the second private-key (r), - compute a second raw shared key (k ∗) from the second private key (r) and the first public key (b), computing the second raw shared key comprising a noisy multiplication between the second private key (r) and the first public key (b), - encapsulate a key seed (m) with at least part of the second raw shared key by applying an encapsulation function, obtaining encapsulated data (v), and - transfer the second public-key (u), and the encapsulated data (v) to the first cryptographic device, wherein - obtain a first public key (b) associated with the first cryptographic device, - generate a second private-key (r), and compute a second public-key (u) from the second private-key (r), - compute a second raw shared key (k ∗) from the second private key (r) and the first public key (b), computing the second raw shared key comprising a noisy multiplication between the second private key (r) and the first public key (b), - encapsulate a key seed (m) with at least part of the second raw shared key by applying an encapsulation function, obtaining encapsulated data (v), and - transfer the second public-key (u), and the encapsulated data (v) to the first cryptographic device, wherein - the processor is further configured to - apply a validation procedure to the obtained first public key (b) to determine if the first public key is secure for encapsulation of the key seed, wherein the key seed is not encapsulated or the encapsulated data (v) is not transferred if the validation procedure was unsuccessful. - apply a validation procedure to the obtained first public key (b) to determine if the first public key is secure for encapsulation of the key seed, wherein the key seed is not encapsulated or the encapsulated data (v) is not transferred if the validation procedure was unsuccessful.