{"title":"Advanced Circuits Upgrade","description":"In order to increase the capabilities of the RAILGUN Privacy System, this proposal launches an advanced set of 54 brand new Groth16 SNARK circuits.\n\nRAILGUN's private wallet implementation depends on complex UTXO balances. The Advanced Setup Ceremony constructed 54 new zero-knowledge circuits for RAILGUN, enabling complex balance structures for private transactions, and minimizing gas expenditure for all RAILGUN users.\n\n## New SNARK circuits\n\n### Advanced Setup Ceremony details\n\nThis proposal takes the public results of the advanced set up ceremony, which concluded on 26th December 2022. In all, there were 328 participants who submitted 15307 contributions, including a combination of user-generated and CSPRNG entropy.\n\nAs an additional source of entropy, the ceremony concluded with the hash of a block set that was selected ahead of time with the following commitment:\n\n>... The public beacon will be the keccak256 hash of every 50,000th #Ethereum block, beginning at 16,000,000 and ending at the next 50,000th block after the expected Ceremony end ...\n\nThe public beacon hash was calculated via the following: `keccak256(concat(blockhash(every 50000th Ethereum block between 16000000 and 16400000, inclusive)))`.\n\nThe setup ceremony outputs and final circuits can be verified at IPFS hash: `QmWAySHYhaZqioKi1ufrPJC1n1ZVtHP2w4hLA9XqqJCFne`.\n\n### New verifier keys\n\nIn order to verify new commitments, this proposal adds 54 new verifier keys to the contract implementation. The included circuits are pre-committed in a new VKeySetter contract. Passing the proposal grants permissions to the VKeySetter contract to set the circuit artifacts from it's storage on the core contract.\n\n## Additional upgrades\n\n### Shield event\n\nThe \"Shield\" event that is output on every new Shield commitment is modified to include a new \"fees\" parameter, which includes the RAILGUN Treasury Fees for each token that is shielded."}