创建币安API Key分为6步:登录币安官网(API功能网页端才有,APP不支持创建),进入"账户-API管理",点击"创建API"选择"系统生成",输入自定义标签名并通过邮件+2FA+短信三重验证,系统会一次性显示API Key和Secret Key,立刻复制保存(Secret Key只显示一次!),最后配置权限(现货交易/合约交易/提币/读取等)和IP白名单。强烈建议:创建任何API Key都必须绑定IP白名单,没有IP白名单的API Key一旦泄露等于直接送资产。根据币安2024年统计数据,API Key被盗导致的资金损失中,93%发生在未绑定IP白名单的Key上。绑定IP白名单后即使Secret Key泄露,攻击者也无法从自己的服务器调用API。币安官方APP虽然不能创建API Key,但可以查看和删除已有的Key,方便紧急处置。如果还没安装APP请参考iOS安装教程。本文覆盖创建、权限配置、白名单、使用、监控、泄露应急的全生命周期。
API Key是什么?能干什么?
API Key(应用程序接口密钥)是一种让外部程序代表你操作币安账户的凭据。有了API Key,程序可以24小时不间断地读取你的账户数据、下单买卖、查询历史,无需每次登录输密码。
典型使用场景有五类:量化交易(如跑Python策略自动买卖)、跟单交易(让程序复制大V的仓位)、行情获取(批量拉历史K线做回测)、资产盘点(自动统计多账户总资产)、会计记账(对接企业财务系统)。
API Key由两部分组成:API Key(公钥)用于识别身份,可以公开显示;Secret Key(私钥)用于签名请求,必须严格保密。类比银行卡的话,API Key相当于卡号,Secret Key相当于密码——卡号给别人看没关系,密码泄露就完了。
创建API Key的详细步骤
**第一步:进入API管理页。**登录币安官网(手机浏览器也可以,但APP内目前不支持创建),点击右上角头像,选择"API管理"(API Management)。页面上方显示你已创建的所有API Key列表,下方是"创建API"按钮。
**第二步:选择创建方式。**币安提供两种方式:"系统生成"(System-generated)适合大部分用户,密钥由币安随机生成;"自行导入"(Self-generated)适合有RSA/Ed25519密钥对的高级用户,自己生成公私钥后把公钥上传给币安,安全性更高(币安永远不知道你的私钥)。
建议普通用户选"系统生成"足够安全。企业用户和专业量化团队建议用"自行导入"的Ed25519密钥对,币安从2024年5月起推荐这种方式,签名性能比HMAC-SHA256快10倍以上。
**第三步:命名API Key。**输入一个有意义的标签名,例如"现货网格策略"、"合约做市"、"余额监控"。标签只对自己可见,方便日后区分不同用途。建议每个策略一把Key,不要一Key多用。
**第四步:身份验证。**输入邮箱收到的6位验证码、短信收到的6位验证码、谷歌验证器的6位动态码,三重验证全部通过才能进入下一步。
**第五步:保存Secret Key。**验证通过后,页面会显示API Key和Secret Key。**Secret Key只在此时显示一次,关闭页面后永远无法再次查看。**务必立刻复制粘贴到安全的地方保存,推荐:
- 密码管理器(1Password、Bitwarden)的"加密备注"字段
- 本地加密文件(用GPG加密后保存在U盘)
- 最安全:写在纸上锁进保险柜(适合大额账户)
绝不推荐:微信收藏、QQ邮箱草稿、普通txt文件、未加密的云盘——这些都容易泄露。
第六步:权限和IP配置(后面详述)。
四级权限体系
币安API权限从低到高分为四级,原则是"最小权限"——只开启你策略必需的权限。
**Level 1:仅读取(Read Only)。**可以查询账户余额、历史订单、当前持仓,但不能下单、不能提币、不能修改任何设置。这是最安全的级别,适合资产监控、财务对账、税务申报。
**Level 2:现货及保证金交易(Spot & Margin Trading)。**在Level 1基础上增加下单功能,可以买卖现货和杠杆。不能操作合约,不能提币。适合现货量化策略。
**Level 3:合约交易(Futures Trading)。**独立开关,可以开启U本位合约、币本位合约、期权的交易权限。合约有杠杆,风险高,建议只给经过充分回测的策略开启此权限。
**Level 4:提币(Enable Withdrawals)。**最高危险级别。开启后程序可以把你账户里的资产提走!99%的用户都不需要开启这个权限。提币应该永远由人工操作。只有极少数跨交易所套利或自动归集的场景才需要,且必须严格限制提币地址白名单。
权限越高攻击面越大。建议原则:读取、现货、合约按需开,提币永远不开。如果某天你发现策略"需要提币权限",先想想能不能用内部转账(如从U本位合约到现货)代替提币,大多数场景都可以。
IP白名单是生命线
这是本文最重要的部分。没有IP白名单的API Key泄露等于账户被盗。
IP白名单的原理:你把跑策略的服务器IP地址(例如阿里云ECS的公网IP:47.98.xx.xx)加入白名单,币安API服务器只接受来自这些IP的请求,其他IP即使用你的Secret Key签名正确也会被拒绝。
创建时的IP配置选项:
- **仅限受信任IP访问(推荐):**输入1-20个IP地址,每行一个。IPv4格式如"47.98.123.45",不支持段(如192.168.1.0/24这种写法)。
- **不限制(非常不推荐):**任何IP都能用这个Key。币安已经在2024年把"不限IP"的Key有效期限制为90天,到期自动失效需重建,逼迫用户使用IP白名单。
**如何查你的服务器IP:**SSH登录服务器后执行 curl ifconfig.me 或 curl ip.sb,返回的就是公网IP。家庭宽带用户注意,家用IP大多是动态的,每次重拨可能变化,不适合做API白名单,建议使用VPS(静态IP)或云函数服务。
**跨地域部署:**如果你的策略运行在多个服务器(主备或多地区),把所有IP都加入白名单。币安允许最多20个IP。
**临时调试:**开发阶段你想在本地电脑调试策略,可以临时把家里的公网IP加入白名单,调试完毕后立刻移除,只保留服务器IP。
API使用中的安全实践
**实践一:Secret Key永远不要硬编码在代码里。**不要直接写在.py、.js文件里,避免commit到Git仓库(尤其是公开仓库)。正确做法是用环境变量(export BINANCE_SECRET=xxx)或配置文件(.env,加入.gitignore)。
**实践二:用独立子账户隔离风险。**币安免费允许创建最多200个子账户。建议每个策略跑在独立子账户上,主账户只放少量资金用于调拨。子账户的API Key即使被盗,损失仅限于子账户余额。
**实践三:用权限分离。**读取余额用一把Read Only Key,交易用一把Spot Trading Key。读取Key用于前端展示和报表可以IP不限,交易Key严格绑定IP并开权限。
**实践四:定期轮换。**每90天重新创建一次API Key,删除旧的。即使旧Key被长期监听也会在90天后失效。币安API管理页会显示每个Key的创建时间,方便追踪。
**实践五:监控异常调用。**币安提供API Key的调用统计,在"API管理"页点Key右侧的"查看详情",能看到每分钟的调用次数、最大权重消耗、触发的限流次数。如果某把Key突然调用量翻倍,可能有人在滥用。
如果API Key泄露了怎么办?
**第一步:立刻在APP或网页端删除该API Key。**进入API管理页,点击泄露Key右侧的"删除"按钮,确认后Key立刻失效。删除是不可恢复的,不用犹豫。
**第二步:检查账户操作记录。**查看过去24小时的交易、提币、充值记录,识别是否有异常交易。如果攻击者已经用Key下单买了冷门垃圾币(典型的拉盘出货攻击),立刻联系客服冻结账户。
**第三步:重置其他相关安全设置。**修改登录密码、重置2FA、检查其他API Key是否安全。因为攻击者可能同时拿到了账户的其他凭据。
**第四步:排查泄露渠道。**常见泄露途径有:代码push到公开Git仓库(用github.com/searchcode等工具搜自己的Secret Key)、服务器被入侵(查看auth.log)、截图时不小心拍到、给"客服"提供密钥(诈骗)、使用了恶意的开源量化框架等。找到根源才能避免再次泄露。
**第五步:提交工单。**即使没损失,也建议给币安客服提交工单说明情况,请求启用"API泄露冷静期"——账户进入提币审核加强状态7天,任何提币都需要人工审核。
常见错误代码和处理
| 错误码 | 含义 | 处理方式 |
|---|---|---|
| -1021 | 时间戳超出服务器时间窗口 | 服务器时间校准NTP |
| -1022 | 签名无效 | 检查Secret Key、参数拼接顺序 |
| -2010 | 下单失败:余额不足 | 检查可用余额和冻结情况 |
| -2014 | API Key格式错误 | 检查Key字符串是否完整 |
| -2015 | API Key无效/已禁用/IP白名单不匹配 | 重点检查IP白名单 |
| -1003 | 请求过于频繁 | 降低调用频率,注意权重 |
| -4131 | 合约API权限未开启 | 在API管理页开启合约权限 |
遇到-2015错误最常见的原因就是IP白名单配置错误,或者你的服务器IP变了。用 curl ifconfig.me 再次确认当前IP,与白名单对比即可。
高频问答
**Q:API Key能创建多少个?**A:目前限制单个账户最多30个API Key。够大多数用户使用。
**Q:Secret Key丢了怎么办?**A:只能重新创建一个新的API Key,旧的Key+Secret组合永远找不回来。这也是为什么创建时一定要立刻保存Secret Key。
**Q:API Key有使用费吗?**A:免费。交易手续费跟手动交易一样,API无额外费用。
**Q:API Key会过期吗?**A:永久有效(未设IP白名单的从2024年起限90天)。但建议主动每90天轮换提升安全性。
**Q:能给客服发API Key帮助排查问题吗?**A:**绝对不能!**真客服永远不会要求你提供Secret Key。任何索取Secret Key的都是骗子。