oasisprotocol / sapphire-paratime

Oasis Sapphire - the confidential EVM-compatible ParaTime for the Oasis Network
https://oasisprotocol.org/sapphire
Apache License 2.0
37 stars 27 forks source link

Refactor callDataPublicKey handling #270

Closed CedarMist closed 8 months ago

CedarMist commented 8 months ago

This should fix several long-standing issues with call encryption.

Previously the Cipher object would be created and maintained with the same keys throughout the duration of the session, it also did not support the new Epoch flag which specifies which calldata public key was being used to encrypt the request (requiring the server to try several).

This would cause problems, like when you leave a dApp open for a while your transactions would fail with 'tag verification failed'.

This introduces several changes:

This means that leaving dApps open for prolonged periods of time will be OK.


Follow-up notes: