Cryptography using Enigma/MPC

I am interested in implementing cryptographic primitives on top of MPC. Specifically such that a private key can be generated and used inside of a private computation. (Only the MPC/SGX instance would have access to the key.)

Is this type of functionality already natively available for Enigma? Or should I implement this myself using smart contracts? (And hopefully, if performance allows, be able to execute them using MPC instead of SGX in the future?)

Yes, that should work and we have some use-cases in mind that utilize keys inside of the enclaves.

Great. Is that then implemented as a generic smart contract, possibly available in some library? Or as part of the protocol itself? E.g. for performance reasons?

I can imagine smart contracts being subject to more restrictions when running on MPC than SGX, such that cryptography as it is implemented for SGX enclaves would not translate directly to MPC enclaves?

I am currently experimenting with cryptography on top of SCALE-MAMBA, but would prefer not to duplicate work if Enigma can (in time) provide similar functionality ;).

1 Like