Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transaction for nov 25 #351

Merged
merged 4 commits into from
Nov 27, 2024
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
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Flow employs a community-driven, multi-signature process to execute essential pr

Notably, the multi-sig process on Flow is associated with two principal accounts that oversee critical aspects of the Flow protocol: the service account, responsible for actions related to protocol parameters, and the staking account, which holds resources linked to staked nodes within the network. These accounts are collectively overseen by multiple signatories - representatives from the Flow ecosystem - who participate in meetings where transactions are simultaneously authorized (or rejected) and submitted only if there’s quorum.

At present, representatives from Blocto, Equilibrium, Ichi, Find, Flow Foundation, and an individual member (@bluesign) collectively hold multi-sig authority over the service account. Each signer is allocated a weight of 250 units, and to validate a transaction, a cumulative total of 1000 units is necessary. Therefore, a minimum of four signers must jointly provide their signatures to authorize the transaction. The transactions deliberated by these signatories may be related to setting transaction fees, managing/ slashing rewards, updating network-level contracts, adding new nodes, driving height coordinated and other node software upgrades, etc; see [account page](https://developers.flow.com/build/basics/accounts#service-accounts) for more details on the powers and abilities of the Flow service account.
At present, representatives from Blocto, Ichi, FindLabs, Flow Foundation, and an individual member (`@bluesign`) collectively hold multi-sig authority over the service account. Each signer is allocated a weight of 250 units, and to validate a transaction, a cumulative total of 1000 units is necessary. Therefore, a minimum of four signers must jointly provide their signatures to authorize the transaction. The transactions deliberated by these signatories may be related to setting transaction fees, managing/ slashing rewards, updating network-level contracts, adding new nodes, driving height coordinated and other node software upgrades, etc; see [account page](https://developers.flow.com/build/basics/accounts#service-accounts) for more details on the powers and abilities of the Flow service account.

**Role of a multi-signer**

Expand Down
32 changes: 0 additions & 32 deletions flow-staking.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,22 +22,6 @@
],
"chain": "flow-mainnet"
},
"equilibrium": {
"address": "8624b52f9ddcd04a",
"keys": [
{
"type": "google-kms",
"index": 2,
"signatureAlgorithm": "ECDSA_secp256k1",
"hashAlgorithm": "SHA2_256",
"context": {
"resourceName": "projects/flow-service-account-mgt/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
},
"resourceID": "projects/flow-service-account-mgt/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
}
],
"chain": "flow-mainnet"
},
"ichi": {
"address": "8624b52f9ddcd04a",
"keys": [
Expand All @@ -54,22 +38,6 @@
],
"chain": "flow-mainnet"
},
"animoca": {
"address": "8624b52f9ddcd04a",
"keys": [
{
"type": "google-kms",
"index": 4,
"signatureAlgorithm": "ECDSA_secp256k1",
"hashAlgorithm": "SHA2_256",
"context": {
"resourceName": "projects/ab1-flow-service-account/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
},
"resourceID": "projects/ab1-flow-service-account/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
}
],
"chain": "flow-mainnet"
},
"kan": {
"address": "8624b52f9ddcd04a",
"keys": [
Expand Down
20 changes: 0 additions & 20 deletions flow.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,16 +22,6 @@
"resourceID": "projects/portto-prod/locations/global/keyRings/flow-keys/cryptoKeys/flow-admin-committee/cryptoKeyVersions/1"
}
},
"equilibrium": {
"address": "e467b9dd11fa00df",
"key": {
"type": "google-kms",
"index": 8,
"signatureAlgorithm": "ECDSA_secp256k1",
"hashAlgorithm": "SHA2_256",
"resourceID": "projects/flow-service-account-mgt/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
}
},
"ichi": {
"address": "e467b9dd11fa00df",
"key": {
Expand All @@ -42,16 +32,6 @@
"resourceID": "projects/dappersig/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
}
},
"animoca": {
"address": "e467b9dd11fa00df",
"key": {
"type": "google-kms",
"index": 10,
"signatureAlgorithm": "ECDSA_secp256k1",
"hashAlgorithm": "SHA2_256",
"resourceID": "projects/ab1-flow-service-account/locations/global/keyRings/flow/cryptoKeys/service-account/cryptoKeyVersions/1"
}
},
"kan": {
"address": "e467b9dd11fa00df",
"key": {
Expand Down
36 changes: 0 additions & 36 deletions transactions/remove-keys/2024/nov-19/README.md

This file was deleted.

40 changes: 40 additions & 0 deletions transactions/remove-keys/2024/nov-27/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Implementation of FLIP 310 and FLIP 311

This transaction is to implement [FLIP 310](https://github.com/onflow/flips/pull/311) and [FLIP 311](https://github.com/onflow/flips/pull/312)

## Transaction to execute

Key to remove:
1. Service account Index 8 and 10
2. Staking account Index 2 and 4

### Transaction for service account

```
transaction {
prepare(signer: auth(RevokeKey) &Account) {
signer.keys.revoke(keyIndex: 8)
signer.keys.revoke(keyIndex: 10)
}
}
```

### Transaction for staking account

```
transaction {
prepare(signer: auth(RevokeKey) &Account) {
signer.keys.revoke(keyIndex: 2)
signer.keys.revoke(keyIndex: 4)
}
}
```

## Result:

1. Transaction for service account
https://www.flowscan.io/tx/3969c4e8172afe32866c40dd16dbe3e591de42d336db32739c376d0351044434


2. Transaction for staking account
https://www.flowscan.io/tx/c1b06e5a3a52c4bc526aac42189fe12ae8a7983752fe40d5560d670cb7ca06f1