交易所 API 密钥不是账户密码,而是一张写明了权限范围的许可单。同一账户下可以创建多组密钥,每组密钥各自开启不同权限,共用同一个账户的余额和保证金。理解 API 密钥的关键,就是分清读取、交易和提币这三类权限各自能做什么,以及哪些限制是交易所强制、哪些只是建议。
三类权限分别对应什么操作
读取权限允许程序查看账户数据,包括各资产余额、订单历史、当前持仓,部分场景下还能看到充值地址。它不能下单,也不能转移资金。
交易权限允许程序下单和撤单。在合约场景中,开仓、平仓以及策略执行过程中的杠杆和保证金调整,通常也归在交易权限之下,而不是单独另设一个更高风险的权限。
提币权限允许程序把资金转出交易所。这是三类权限中后果最直接的一项:一旦密钥泄露且提币权限开启,持有密钥的人就可能把资产转走。交易机器人完成策略只需要读取和交易权限,提币权限在功能上并非必需。
有第三方分析把提币称为“最危险的权限”,这一判断与权限本身的作用相符,但它是分析观点,不是交易所的官方定性。
只读密钥也不是完全没有暴露面
只读密钥无法转移资金,但它暴露的信息比很多人以为的多:全部资产余额、完整订单历史、持仓情况,有时还包括充值地址。这些数据不直接造成资金损失,却涉及隐私。报税工具、投资组合追踪器通常只需要读取权限;如果一个报表类工具要求交易权限,就值得追问它为什么需要代表用户下单。
IP 白名单是另一层控制,但规则因平台而异
权限范围之外,多数交易所还允许把 API 密钥限制在特定 IP 地址上。这样即使密钥字符串泄露,从其他地址发起的请求也无法使用。
不同交易所的具体规则并不相同。以币安为例,其帮助中心说明:没有设置 IP 访问限制的 HMAC 密钥,除读取外不能启用其他权限;要启用提币权限,必须添加 IPv4 格式的 IP 访问限制。币安还曾规定,自 2023 年 1 月 30 日起,只有 IP 地址位于非受限地区时,系统生成的 API 密钥才能把权限设为允许读取。这些是币安在特定时间点公布的规则,不能直接套用到其他交易所,也不能当作所有密钥类型的通用要求。
另有第三方教程提到,币安 API 权限设置后有效期为 90 天,到期需要重新确认。这一说法来自教程作者的描述,具体天数应以交易所当前页面显示为准,不宜当作长期不变的规则。
密钥类型会影响能开哪些权限
币安帮助中心把系统生成的密钥和自行生成的密钥分开说明:系统生成的密钥采用 HMAC 对称加密,用户会拿到 API Key 和 Secret Key 两个字符串;自行生成的密钥采用 Ed25519 或 RSA 非对称加密,用户自行生成公私钥对,只向交易所提供公钥。
这两种类型在权限启用条件上可能不同。前述“无 IP 限制的 HMAC 密钥只能读取”的规则,明确限定在 HMAC 密钥;自行生成的密钥是否适用同一限制,资料没有给出同等明确的说明,不应直接类推。
此外,币安帮助中心还提到,如果 API 密钥在启用合约账户之前创建,或账户已开通统一账户,该密钥可能无法启用合约交易权限。这说明权限能否开启,不只取决于勾选项,还和账户状态、密钥创建时间有关。
一个账户多组密钥的实际用法
同一交易账户下可以同时存在多组权限不同的 API 密钥,它们共用账户的损益与保证金。一种常见安排是:负责下单的主机使用包含读取和交易权限的密钥,另一台只用于查看持仓的电脑使用仅读取权限的密钥。这样即使查看端的密钥泄露,也无法下单或提币。
这个例子说明的是权限隔离的思路,不构成对某类设备或网络环境的推荐。实际创建多少组密钥、分别开哪些权限,取决于使用场景和交易所支持的选项。
检查权限时看什么
在交易所的 API 管理页面,每组密钥旁边通常会列出当前启用的权限。需要确认的是:这组密钥是否开启了提币;如果开启了,它是否真的需要这项权限;是否设置了 IP 限制;密钥类型和账户状态是否支持所需权限。
如果一组用于自动化交易的密钥意外开启了提币权限,处理方式是删除该密钥并重新生成一组只开必要权限的密钥,而不是继续沿用。删除旧密钥后,依赖它的程序会失效,需要重新连接。
结论
API 密钥权限的核心边界是:读取看数据,交易动订单,提币转资金。交易机器人通常只需要前两项,提币权限可以保持关闭。IP 白名单能在密钥泄露时缩小可用范围,但它的具体规则——是否强制、对哪种密钥类型生效、是否影响提币权限——因交易所和密钥类型而异,需要按对应平台的说明核对,不能把一家交易所的规则当成行业通例。