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

Fix typos #2437

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
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 docs/docs/adrs/adr-002-throttle.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@ In summary, the throttling mechanism as designed has desirable properties whethe
### Negative

* Throttling introduces a vector for a malicious consumer chain to halt the provider, see issue below.
However, this is sacrificing liveness in a edge case scenario for the sake of security.
However, this is sacrificing liveness in an edge case scenario for the sake of security.
As an improvement, [using retries](https://github.com/cosmos/interchain-security/issues/713) would fully prevent this attack vector.

### Neutral
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/adrs/adr-013-equivocation-slashing.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ As a first iteration, we propose the following approach. At the moment the provi
1. slash all the undelegations and redelegations using `slashFactor`;
2. slash all delegations using as voting `power` the sum of the voting power of the misbehaving validator and the power of all the ongoing undelegations and redelegations.

**Evidence expiration:** Additionally, because we cannot infer the actual time of the evidence (i.e., the timestamp of the evidence cannot be trusted), we do not consider _evidence expiration_ and hence old evidence is never ignored (e.g., the provider would act on 3 year-old evidence of equivocation on a consumer).
**Evidence expiration:** Additionally, because we cannot infer the actual time of the evidence (i.e., the timestamp of the evidence cannot be trusted), we do not consider _evidence expiration_ and hence old evidence is never ignored (e.g., the provider would act on 3-year-old evidence of equivocation on a consumer).
Additionally, we do not need to store equivocation evidence to avoid slashing a validator more than once, because we [do not slash](https://github.com/cosmos/cosmos-sdk/blob/v0.47.0/x/evidence/keeper/infraction.go#L94) tombstoned validators and we [tombstone](https://github.com/cosmos/cosmos-sdk/blob/v0.47.0/x/evidence/keeper/infraction.go#L138) a validator when slashed.

We do not act on evidence that was signed by a validator [consensus key](https://tutorials.cosmos.network/tutorials/9-path-to-prod/3-keys.html#what-validator-keys) that is _pruned_ when we receive the evidence. We prune a validator's consensus key if the validator has assigned a new consumer key (using `MsgAssignConsumerKey`) and an unbonding period on the consumer chain has elapsed (see [key assignment ADR](https://github.com/cosmos/interchain-security/blob/main/docs/docs/adrs/adr-001-key-assignment.md)). Note that the provider chain is informed that the unbonding period has elapsed on the consumer when the provider receives a `VSCMaturedPacket` and because of this, if the consumer delays the sending of a `VSCMaturedPacket`, we would delay the pruning of the key as well.
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/adrs/adr-016-securityaggregation.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ type PowerSource interface {
func (k *Keeper) MixPowers(source ...PowerSource) []abci.ValidatorUpdate {
var valUpdate []abci.ValidatorUpdate
for _, ps := range source {
// mix powers from two sets of validator updates an return set of validator updates
// mix powers from two sets of validator updates a return set of validator updates
// with aggregated powers
valUpdate = mixPower(valUpdate, ps.GetValidatorUpdates())
}
Expand Down
Loading