# An update on the encryption protocol

**URL:** https://forum.scrt.network/t/an-update-on-the-encryption-protocol/1641
**Category:** Secret Network
**Created:** [May 25, 2020, 11:11am UTC](https://forum.scrt.network/t/an-update-on-the-encryption-protocol/1641 "2020-05-25T11:11:47Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![assafmo](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.scrt.network/assafmo/32/440_2.png) [@assafmo](https://forum.scrt.network/u/assafmo)
#### Post date: [May 25, 2020, 11:11am UTC](https://forum.scrt.network/t/an-update-on-the-encryption-protocol/1641/1 "2020-05-25T11:11:47Z")

</div>

Hi! 👋

We’re pretty close to finalizing our encryption protocol:

> <https://github.com/enigmampc/EnigmaBlockchain/blob/master/docs/encryption-specs.md>

This^ document includes:

1. Bootstrapping the network
2. Registration of new nodes
3. Contracts state encryption
4. Contracts inputs and outputs encryption

Still not finished:

1. How network upgrades can occur without losing state and tx input/output history.
2. How to generate `contract_id` in a trusted way, to prevent two contracts having the same encryption key ([this section](https://github.com/enigmampc/EnigmaBlockchain/blob/master/docs/encryption-specs.md#contract_id)).

We’d love to get your feedback on this! 😊  
So please ask us hard questions, including about all of the “TODO reasoning” and about attack vectors.

List of previous discussions: [https://github.com/enigmampc/EnigmaBlockchain#implementation-discussions](https://github.com/enigmampc/EnigmaBlockchain#implementation-discussions)

---

<div class="post-metadata">

### Author: ![guy](https://yyz1.discourse-cdn.com/flex035/user_avatar/forum.scrt.network/guy/32/56_2.png) [@guy](https://forum.scrt.network/u/guy)
#### Post date: [May 25, 2020, 1:34pm UTC](https://forum.scrt.network/t/an-update-on-the-encryption-protocol/1641/2 "2020-05-25T13:34:46Z")

</div>

All,

This is meaningful update to our earlier posts ([1](https://forum.scrt.network/t/network-key-management-agreement), [2](https://forum.scrt.network/t/input-output-state-encryption-decryption-protocol)). As expected, as we went deeper into the details there were quite a few small tweaks and changes to be made.

The general ideas are still the same. These are mostly finer implementation details but as spec goes - this is where people should look at.

Thanks @assafmo, @reuven, @toml and others for helping in finding solutions through our internal discussions. We welcome any outside feedback and issues that are raised.
