# @exodus/account-security 中文文档

规范地址：https://npmcn.com/package/%40exodus/account-security/

版本：1\.1\.1
npm 元数据更新时间：2026-10-09T20:38:15.292Z
中文译文更新时间：2026-11-14T04:09:27.444Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40exodus/account-security
原文对照：https://npmcn.com/package/%40exodus/account-security/?lang=original
项目主页：https://github.com/ExodusMovement/exodus/tree/master/libs/features/account-security
源码仓库：https://github.com/ExodusMovement/exodus

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：10.6 kB，6 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：4 个
- 首次发布：2026-06-24T23:59:27.199Z
- 最新版本发布：2026-10-09T20:38:15.042Z
- 近 30 天下载量：10899（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：3（近 12 个月 3 个）

## 中文简介

Exodus SDK功能将活账户安全警告(GLOBAL SCAM / LOST PERMISIONS)报告入"安全报告".

## 安装

```sh
npm install @exodus/account-security
```

也可以使用：`pnpm add @exodus/account-security`、`yarn add @exodus/account-security`、`bun add @exodus/account-security`

## README

# @exodus/账户-安全

Exodus SDK功能报告活动账户安全警告(`GLOBAL_SCAM` 编号 : `LOST_PERMISSIONS`在安全报告.

这些警告已经作为桌面和移动应用程序的模式向用户浮出水面,但安全报告没有记录这些警告. 当一个用户击中一个并伸出援手时,以前无法从报告中分辨出哪个资产触发了警报,或者哪个发出了警告。 这一特点弥补了这一差距.

## 安装

```sh
pnpm add @exodus/account-security
```

## 使用量

此特性设计为与 `@exodus/headless`已经装好了 见 [使用 sdk](https://npmcn.com/package/docs/development/using-the-sdk.md)。 。 。 .

捐款a [`report` 节点](https://npmcn.com/package/docs/development/dependency-injection.md) 名称空格 `accountSecurity`,因此,每当安全报告通过 `exodus.reporting.export()`没有 `exodus.*` API表面,没有原子,没有插件:该特性只在报告时间读取已存在的状态.

## 报告的内容

报告时,该功能将每个 **启用的基础资产**,运行该资产 `api.securityChecks({ accountState })`,并收集任何不可靠的账户.

报告是: `null` 当没有钱包或钱包被锁定时。 否则它的形状是:

```ts
{
  summary: {
    // The most severe active warning, or null when there are none.
    warningType: 'GLOBAL_SCAM' | 'LOST_PERMISSIONS' | null
    hasWarnings: boolean
  }
  // One entry per (wallet account, asset) that failed its security check.
  warnings: Array<{
    walletAccount: string
    assetName: string
    type: 'GLOBAL_SCAM' | 'LOST_PERMISSIONS'
    reason: string
  }>
  // One entry per base asset whose securityChecks method threw.
  checkFailures: Array<{
    walletAccount: string
    assetName: string
    error: SafeError
  }>
}
```

示例输出 :

```json
{
  "summary": { "warningType": "GLOBAL_SCAM", "hasWarnings": true },
  "warnings": [
    {
      "walletAccount": "exodus_0",
      "assetName": "tron",
      "type": "GLOBAL_SCAM",
      "reason": "Account is globally blacklisted."
    },
    {
      "walletAccount": "exodus_1",
      "assetName": "ethereum",
      "type": "LOST_PERMISSIONS",
      "reason": "Account is delegated to a non-whitelisted EIP-7702 address."
    }
  ],
  "checkFailures": []
}
```

### 绝对优先

`GLOBAL_SCAM` 排行 `LOST_PERMISSIONS` 因为它可以在启动时屏蔽应用程序. 当这两种情况都出现在账户中时, `summary.warningType` 报告 `GLOBAL_SCAM`时 `warnings` 仍然列出每一个单独的警告,不管类型.

## 资产如何选择

此特性不执行任何检测逻辑本身,只执行聚合. 实际检查存在于每个资产的插件中,该插件会显示同步 `api.securityChecks` 方法 :

```ts
asset.api.securityChecks({ accountState }): {
  isSecure: boolean
  type: 'GLOBAL_SCAM' | 'LOST_PERMISSIONS' | null
  reason: string | null
}
```

账户仅包含在 `warnings` 何时 `isSecure` 实值 `false`为了保持报告的稳健性,对以下内容进行了保守处理:

-   **托肯和非基地资产**: 只包括基本资产(其中 `asset.baseAsset.name === assetName`)被选中.
-   **无资产 `securityChecks`**:不执行该方法的资产被忽略.
-   **残废资产**: 任何未启用的内容 `enabledAssetsAtom` 被跳过.
-   **掷出支票**: 如果单个资产 `securityChecks` 投出时,错误会被捕获到 `checkFailures` 作为 `SafeError` 带安全提示 `account-security: report/security-checks`. 循环仍在继续,因此一个被破坏的资产无法使报告的其他部分沉没.

## 依赖关系

报告节点取决于 `assetsModule`, (中文(简体) ), `accountStatesAtom`,以及 `enabledAssetsAtom`这些都是SDK提供的.

## 常见问题

### @exodus/account-security 是什么？

Exodus SDK功能将活账户安全警告\(GLOBAL SCAM / LOST PERMISIONS\)报告入"安全报告"\.

### 如何安装 @exodus/account-security？

在项目目录运行 npm install @exodus/account-security，或使用 pnpm add / yarn add / bun add。

### @exodus/account-security 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @exodus/account-security 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @exodus/account-security 可以商用吗？

@exodus/account-security 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @exodus/account-security 的下载量有多少？

根据 npm 官方下载统计，@exodus/account-security 在 2026/10/14 – 2026/11/12 这 30 天内被下载 10,899 次，日均约 363 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @exodus/account-security 还在维护吗？

最新版本 1\.1\.1 发布于 2026/10/10（1 个月前）；至今共发布 3 个版本，其中过去 12 个月发布了 3 个；首次发布于 2026/06/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

