# Reputation

**Reputation Scoring and Throttling/Banning for Global Entities Explained**

**1. Reputation Rationale:**

* Entities such as paymasters, factories, and aggregators are termed "global" because they can be accessed by multiple UserOperations. This makes them susceptible to potentially invalidating several previously-valid UserOperations, leading to disruptions in the system.
* To safeguard the system against this, there are measures to regulate entities that frequently cause such disruptions. This regulation could be in the form of reducing their operation speed (throttling) or completely barring their activities for a while (banning).

**2. Throttling and Banning:**

* This is a preventive approach to avoid potential abuse from these global entities.
* If an entity consistently invalidates a significant number of UserOperations in the mempool, the system may decide to throttle or ban the entity temporarily.

**3. Staking Mechanism:**

* To further guard against potential abuse, entities are required to deposit a certain amount as stake. This acts as a deterrent to malicious activities.
* This stake makes it expensive for any entity to carry out a Distributed Denial-of-Service (DoS) attack, thereby providing another layer of security.
* However, the stake is not forfeited or reduced. It remains intact and can be retrieved by the entity after a predefined delay.
* Entities that haven't staked are still allowed to operate but with stricter regulations.
* Staking not only acts as a security deposit but also provides additional permissions. A staked entity can access its storage as well as the sender’s storage.

**4. On-chain vs. Off-chain:**

* The system doesn't enforce staking values directly on the blockchain. Rather, it is managed off-chain during transaction simulation by individual nodes.
* Each entity should have a stake that is at least equal to the MIN\_STAKE\_VALUE, and the period before they can retrieve their stake should be more than MIN\_UNSTAKE\_DELAY.

**5. Values and Duration:**

* The MIN\_UNSTAKE\_DELAY is set to 84600, which is equivalent to one day. This means that after deciding to unstake, the entity has to wait for one day before their stake is returned.
* The MIN\_STAKE\_VALUE is a chain-specific parameter, and its exact value is given in the “bundler specification test suite.”

**In summary**, this reputation system is built to ensure the integrity of the network by regulating entities that might cause disruptions. Staking acts as a financial deterrent against potential abuse, and the system of throttling and banning keeps malicious or problematic entities in check. This dual-layered security measure ensures that the network remains resilient against potential threats and runs smoothly.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mau-eth.gitbook.io/mau/account-abstraction/reputation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
