I have a question about MPC-CMP solution that fireblocks offers. I thought MPC-CMP solution was open-source. I looked forward to using it solely to provide secure transactions between users. Looks like Fireblocks is managing the wallets but the keys managed by the users or am not getting it right?
you are right about MPC-CMP being open source in the sense that the algorithm was made public by Ran Canetti of Boston University, Nikolaos Makriyannis , and Udi Peled (all from Fireblocks research team).
You can have a look at the mathematical paper outlining the algorithm here: Fireblocks Multi-Party (EC)DSA, ver 1.2.pdf - Google Drive
What however is not open source is our implementation (the code) of the algorithm. This way everyone is free to check that the protocol is mathematically safe and sound (just like SHA256) but needs to write their own implementation of it it they actually want to use it.
With regard to your second question you are right. Fireblocks manages wallets and the whole infrastructure around it like building transactions and maintaining nodes but does not hold the private keys (which is what MPC-CMP is for). Because of this Fireblocks is a non-custodial solution - we do not custody assets, the user does.
Hope this helps
Thank you Lennart. This has been extremely helpful. After implementing my own code can run it over to fireblocks for auditing?
I think there is a miss understanding here. Fireblocks is a Software as a Service solution with a MPC-CMP implementation at it’s core. On top of this algorithm we supply a wallet infrastructure, a policy layer, user management, transaction management, DeFi Access, NFT support, exchange integrations, staking and a network between Fireblocks customers.
Sure - you would be free to implement your own implementation of MPC-CMP but this would be a significant task for a software development team at which many have failed.
Was I able to set the scene about what Fireblocks core offering is a bit more clear?
Oh okay. Now i get it