币安 API Key 是一对由 64 位 public key 与 64 位 secret key 组成的密钥对,用于量化策略、跨所套利、行情订阅等自动化场景。保管的核心原则是权限最小化、IP 白名单强制开启、密钥从不明文存储。新用户可登录币安官网在账户菜单下找到「API 管理」入口,移动端通过币安官方APP的「更多 - API 管理」创建,首次在新 iOS 设备上使用请先参考iOS安装教程完成设备激活。首段直接回答:最关键的权限是提币(Withdraw)权限,99% 的个人用户不需要勾选,仅保留 Read 与 Trade 即可,配合 IP 白名单可将 API 被盗后的损失降到接近于零。
一、API Key 的组成与签名机制
第 1 步:理解密钥对
每个 API Key 由一对 Base64 字符串组成:public key 用于请求头标识身份,secret key 用于本地生成签名。币安服务器仅保存 public key 与对应权限,绝不保存 secret key,所以一旦忘记 secret key 只能重新创建。
第 2 步:HMAC-SHA256 签名
每次调用私有接口时,客户端需要把请求参数按字典序排序并拼成 querystring,以 secret key 为密钥做 HMAC-SHA256 计算,得到一段 64 字符的 hex 签名。服务器用同样的方式再算一次,对比后才放行。这种机制避免了密钥直接上网。
第 3 步:时间窗口
请求必须带上 timestamp 参数,默认允许 5000 毫秒偏差,可调至 最多 60000 毫秒。窗口过宽会让重放攻击有机可乘,因此建议保持默认值,并在本地同步 NTP 时间。
二、三类权限的区别与建议开启策略
币安 API 权限按风险递增分为三档,用户可以按需勾选:
- Read(只读):可查询账户资产、历史成交、当前挂单。即便泄露也只是信息外流,不会导致资金损失。所有机器人、看板、税务软件几乎只需要这一项。
- Trade(交易):可下单、撤单、市价转现货合约。泄露后攻击者可通过拉盘砸盘给关联账户让利,存在间接损失,但资金仍在交易所内。
- Withdraw(提币):可直接把资产提到链上地址。一旦泄露资产秒级归零,强烈不建议在普通量化脚本中开启。
此外还有两个细分开关:Universal Transfer 控制现货到合约的内部划转,Margin 控制杠杆账户。若仅做现货策略,可全部保持默认关闭。
创建 API Key 的路径是:账户中心 → API 管理 → 创建 API → 输入 Key 名称(例如「grid-bot-btc」)→ 勾选权限 → 输入 IP 白名单 → 邮箱和 2FA 双重验证。创建后 secret key 只显示一次,务必立刻保存到离线密码管理器。
三、IP 白名单与密钥轮换策略
下表给出了不同类型用户的推荐配置:
| 用户类型 | Read | Trade | Withdraw | IP 白名单 | 轮换周期 |
|---|---|---|---|---|---|
| 纯看板用户 | 开 | 关 | 关 | 必须 1 条 | 180 天 |
| 网格机器人 | 开 | 开 | 关 | 必须 1 条 | 90 天 |
| 做市商 | 开 | 开 | 关 | 必须 1 - 3 条 | 60 天 |
| 跨所套利 | 开 | 开 | 关 | 必须 2 条 | 60 天 |
| 企业托管结算 | 开 | 开 | 可选开 | 必须 1 条 + 双人审批 | 30 天 |
| 一次性脚本 | 开 | 开 | 关 | 必须 1 条 | 使用后立刻删除 |
需要重点强调:IP 白名单不启用的 API Key,一旦泄露资产损失几乎不可挽回。即使只勾选了 Trade 权限,攻击者也能通过对敲方式让账户资产缩水。启用 IP 白名单后,币安服务器会在每个请求处核对来源 IP,只有列表内的地址才被放行。
密钥轮换的意义在于:即便某个时刻密钥意外泄露(例如误提交到 GitHub、日志文件被备份),90 天后密钥自动失效,攻击者无法长期利用。轮换时应先创建新 key、更新所有脚本、再删除旧 key,中间避免有同时两个可用 key 的情况。
四、典型场景与风险实例
场景一:量化新手误提交代码到公开仓库。GitHub 的秘钥扫描机器人可能在几分钟内发现明文 key,随后攻击者使用自动化脚本接管账户。正确做法:将 secret key 放入环境变量或 .env 文件,并在 .gitignore 中排除该文件。
场景二:云服务器被入侵。没有 IP 白名单的 key 会被攻击者从服务器配置文件中直接提取,然后在全球任意 IP 发起交易。启用 IP 白名单后,即便 key 外泄,攻击者从非白名单 IP 发起请求也会被拒绝。
场景三:钓鱼网页诱导。部分第三方交易平台要求用户粘贴 API Key 接入,若对方伪造界面上传到自己服务器,你的 key 将被记录。绝不在陌生第三方粘贴 secret key,任何合规工具都支持 OAuth 或交易所官方授权。
场景四:内部员工泄露。企业托管场景下可能需要多人操作,建议使用子账户 + 独立 API Key隔离权限,并启用访问日志审计。每位员工离职或转岗时立刻回收对应 key。
风险汇总:64 位 secret key 一旦离开本地,就应视为泄露。任何屏幕录制、云同步、聊天截图都可能造成意外暴露,保管过程中要同时警惕电子和物理两种泄露途径。
五、FAQ 常见问题
问:API Key 可以同时多个程序共用吗? 答:技术上可以,但不推荐。不同程序共用一把 key 会让日志难以追踪,建议每个策略、每台机器单独创建 key,便于定位异常行为。
问:IP 白名单只能填固定 IP 吗? 答:是的,必须是公网固定 IP。若使用动态 IP 的家庭宽带,需要配合 VPS 或 DDNS 固定出口。一般 IP 白名单最多支持 20 条,可覆盖多地服务器。
问:忘记了 secret key 怎么办? 答:secret key 只在创建时显示一次,无法找回。只能删除旧 key 重新创建,原来的所有脚本需要更新配置。这是与普通密码的本质区别。
问:API Key 默认有效期是多久? 答:默认无限期,但币安会在 90 天内无活动时提示用户手动延期。建议主动在 90 天轮换,不要依赖自动过期。
问:API Key 泄露后第一时间该做什么? 答:立刻登录账户 API 管理页删除该 key、启用白名单阻断一切提币、重置登录密码与 2FA、检查最近的交易历史是否有异常下单,必要时提交客服申诉。