Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
remote_endpoint: ~
name: "enable-chunky-dkg-shadow-v1"
proposals:
- name: enable_chunky_dkg_shadow_v1
metadata:
title: "Initialize Encrypted Mempool Framework and Enable ChunkyDKG Shadow V1"
description: "Initialize encrypted-mempool framework resources, then enable ChunkyDKG in shadow mode (1/2 secrecy, 2/3 reconstruction, 60s grace period)."
execution_mode: MultiStep
update_sequence:
- RawScript: aptos-move/aptos-release-builder/data/proposals/encrypted_mempool_initialization.move
- RawScript: aptos-move/aptos-release-builder/data/proposals/enable_chunky_dkg_shadow_v1.move
15 changes: 15 additions & 0 deletions aptos-move/aptos-release-builder/data/enable-chunky-dkg-v1.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
remote_endpoint: ~
name: "enable-chunky-dkg-v1"
proposals:
- name: enable_chunky_dkg_v1
metadata:
title: "Enable ChunkyDKG V1"
description: "Enable ChunkyDKG in full V1 mode (1/2 secrecy, 2/3 reconstruction) and turn on the encrypted_transactions feature. Assumes encrypted-mempool framework resources are already initialized."
execution_mode: MultiStep
update_sequence:
- RawScript: aptos-move/aptos-release-builder/data/proposals/enable_chunky_dkg_v1.move
- FeatureFlag:
enabled:
- encrypted_transactions
disabled: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
// Enable ChunkyDKG in shadow mode (ConfigShadowV1).
// Prerequisite: ChunkyDKG framework resources must already be initialized
// (see encrypted_mempool_initialization.move).
script {
use aptos_framework::aptos_governance;
use aptos_framework::chunky_dkg_config;
use aptos_std::fixed_point64;

fun main(proposal_id: u64) {
let framework = aptos_governance::resolve_multi_step_proposal(
proposal_id,
@0x1,
{{ script_hash }},
);

let config = chunky_dkg_config::new_shadow_v1(
fixed_point64::create_from_rational(1, 2), // secrecy_threshold: 1/2
fixed_point64::create_from_rational(2, 3), // reconstruction_threshold: 2/3
60, // grace_period_secs
);
chunky_dkg_config::set_for_next_epoch(&framework, config);
aptos_governance::reconfigure(&framework);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// Enable ChunkyDKG (ConfigV1) — full activation, replacing regular DKG.
// Prerequisite: ChunkyDKG framework resources must already be initialized
// (see encrypted_mempool_initialization.move).
script {
use aptos_framework::aptos_governance;
use aptos_framework::chunky_dkg_config;
use aptos_std::fixed_point64;

fun main(proposal_id: u64) {
let framework = aptos_governance::resolve_multi_step_proposal(
proposal_id,
@0x1,
{{ script_hash }},
);

let config = chunky_dkg_config::new_v1(
fixed_point64::create_from_rational(1, 2), // secrecy_threshold: 1/2
fixed_point64::create_from_rational(2, 3), // reconstruction_threshold: 2/3
);
chunky_dkg_config::set_for_next_epoch(&framework, config);
aptos_governance::reconfigure(&framework);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Initialize on-chain resources for the encrypted mempool stack: ChunkyDKG
// (config + seqnum + state), the epoch force-end watchdog, and the per-block
// decryption key.
//
// Each `initialize` call is a no-op if its resource already exists, so this is
// safe to run even if some of these resources were created previously.
script {
use aptos_framework::aptos_governance;
use aptos_framework::chunky_dkg;
use aptos_framework::chunky_dkg_config;
use aptos_framework::chunky_dkg_config_seqnum;
use aptos_framework::decryption;
use aptos_framework::epoch_timeout_config;

fun main(proposal_id: u64) {
let framework = aptos_governance::resolve_multi_step_proposal(
proposal_id,
@0x1,
{{ script_hash }},
);

chunky_dkg_config_seqnum::initialize(&framework);
chunky_dkg_config::initialize(&framework, chunky_dkg_config::new_off());
chunky_dkg::initialize(&framework);
epoch_timeout_config::initialize(&framework);
decryption::initialize(&framework);
}
}
Loading