> ## Documentation Index
> Fetch the complete documentation index at: https://docs.infinifi.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Core

> Central authority and role-based access control

## Core Contracts

The Core module establishes the central authority for role-based access control across the infiniFi protocol.

## Contracts

<CardGroup cols={2}>
  <Card title="InfiniFiCore.sol" icon="cube" href="/dev-docs/core/infinifi-core">
    Central role registry and access control
  </Card>

  <Card title="CoreControlled.sol" icon="shield" href="/dev-docs/core/core-controlled">
    Base contract for role-based access
  </Card>
</CardGroup>

## Architecture

Every contract requiring access control delegates role checks to the `InfiniFiCore` registry. The contract sets up a rigid governance structure where the `GOVERNOR` role is the root admin.

## Key Roles

| Role                   | Description                              |
| ---------------------- | ---------------------------------------- |
| `GOVERNOR`             | Root role for administration             |
| `PAUSE`                | Can pause protocol functions             |
| `UNPAUSE`              | Can unpause functions                    |
| `PROTOCOL_PARAMETERS`  | Authority to update core parameters      |
| `MINOR_ROLES_MANAGER`  | Manages non-critical roles               |
| `ENTRY_POINT`          | Trusted entry point for contract routing |
| `RECEIPT_TOKEN_MINTER` | Authorized to mint iUSD, siUSD, liUSD    |
| `RECEIPT_TOKEN_BURNER` | Authorized to burn receipt tokens        |
| `LOCKED_TOKEN_MANAGER` | Manages lock/unlock operations           |
| `TRANSFER_RESTRICTOR`  | Governs transfer rules                   |
