公钥是私钥的加密对应物。它们共同使您能够证明对加密货币的所有权,而无需透露控制它的秘密。
摘要
公钥密码学是每笔加密货币交易的基础,但大多数用户从未直接与他们的公钥互动。他们看到钱包地址,扫描二维码,并确认转账,而不理解使无信任所有权成为可能的数学层面。
这一层面很重要,因为理解它会改变您对安全性的看法。公钥不是密码。它不是秘密。它是一个您可以与任何人分享的数字,任何人都无法从中推导出控制您资金的私钥。这种不对称性,单向容易但无法反向,是允许互联网上的陌生人彼此发送资金而无需信任银行、政府或彼此的原因。
每个加密货币钱包都是基于一对密钥构建的:一个私钥和一个公钥。私钥是一个随机生成的数字,通常为256位长,这意味着它是大约10的77次方个可能值中的一个。作为参考,估计可观测宇宙中的原子数量约为10的80次方。密钥空间足够大,以至于通过暴力破解猜测特定私钥在当前或可预见的技术条件下并不是一个实际问题。
公钥是通过椭圆曲线乘法从私钥推导而来的。比特币和以太坊都使用一种称为secp256k1的特定曲线。私钥与该曲线上的一个固定点(称为生成点)相乘,结果是曲线上的另一个点。该结果就是公钥。
关键属性是这种乘法是单向函数。给定一个私钥,计算公钥只需几分之一秒。仅给定公钥,计算私钥则需要解决椭圆曲线离散对数问题,而该问题没有已知的有效解决方案。这种不对称性是加密货币安全的全部基础。
一个常见的误解是钱包地址和公钥是同一回事。它们不是。地址是通过一个或多个哈希轮次从公钥推导而来的,这一过程缩短了输出并增加了额外的安全层。
在比特币中,过程如下。512位未压缩公钥(或257位压缩公钥)经过SHA-256处理,然后经过RIPEMD-160处理,生成一个160位哈希。版本字节被添加在前面,校验和被附加在后面,结果以Base58Check格式编码。最终输出是熟悉的比特币地址,以1、3或bc1开头。
在以太坊中,过程更简单。512位公钥通过Keccak-256(SHA-3的一种变体)进行处理,哈希的最后20个字节(160位)成为地址。添加“0x”前缀和可选的EIP-55校验和,生成熟悉的以太坊地址。
将公钥哈希为地址的原因部分是出于实用(较短的字符串更易于分享),部分是出于防御。如果量子计算机能够破解椭圆曲线密码学,它们需要公钥,而不是地址,来推导私钥。那些从未用于发送交易的地址,其公钥从未在链上暴露,增加了理论上的量子抗性。
你可能还喜欢:什么是加密钱包?
当你发送加密货币时,你并不是将硬币从一个地方移动到另一个地方。你是在创建一条消息,内容是“我授权将X金额从我的地址转移到该接收者”,并用你的私钥对该消息进行签名。签名证明了创建该消息的人控制着与发送地址相关联的私钥,而不暴露私钥本身。
验证过程使用公钥。任何在网络上运行节点的人都可以获取交易消息、数字签名和发送者的公钥,并进行数学验证,以确认签名是由相应的私钥生成的。如果验证通过,交易有效;如果失败,交易被拒绝。
这就是为什么丢失私钥是灾难性的原因。没有私钥就无法生成有效的签名,这意味着无法授权从该地址进行交易。资金仍然在区块链上,所有人都可以看到,但永久无法访问。没有“忘记密码”的恢复机制,因为没有中央机构持有备份。
在现代钱包中,单个私钥并不是独立生成的。相反,单个主种子通过BIP-32(分层确定性钱包)和BIP-39(助记种子短语)定义的确定性过程生成钱包中的所有密钥。
该过程以熵开始,熵是一种随机性来源。钱包软件或硬件设备生成一个随机数,通常为128或256位。这个熵被编码为12或24个单词的助记短语,这些单词来自标准化的2048个单词列表。助记短语结合可选的密码短语,通过密钥派生函数(PBKDF2)生成一个512位的主种子。
从主种子中,派生出一个分层的密钥对树。树的每个分支可以生成数十亿个独特的私钥及其对应的公钥和地址。这就是为什么单个种子短语可以恢复整个钱包及其所有地址:该种子以确定性方式重新生成层次结构中的每个密钥对。
安全隐患在于,种子短语是所有密钥的根。任何获得种子短语的人都可以重新生成钱包曾经使用或将来会使用的每个私钥、每个公钥和每个地址。保护种子短语相当于同时保护钱包中的每个密钥对。
早期比特币软件使用非压缩公钥,其中包括椭圆曲线上的点的x和y坐标。非压缩公钥为65字节:1字节前缀(0x04),后跟32字节的x坐标和32字节的y坐标。
因为椭圆曲线方程意味着对于任何给定的 x 坐标,只有两个可能的 y 值(一个是偶数,一个是奇数),因此只需存储 x 坐标和一个指示 y 是偶数还是奇数的单个位。这产生了一个 33 字节的压缩公钥:1 字节的前缀(0x02 表示偶数 y,0x03 表示奇数 y),后面跟着 32 字节的 x 坐标。
压缩密钥在交易中节省空间,从而降低费用。自 2012 年以来,大多数比特币软件默认使用压缩公钥。以太坊在内部使用未压缩的公钥,但在地址派生时去掉前缀字节,仅使用 64 字节的 x 和 y 值。
这种区别对兼容性很重要。由同一私钥派生的压缩和未压缩公钥在比特币中会产生不同的地址。将私钥导入使用与原钱包不同的压缩格式的钱包会生成不同的地址,如果资金被发送到另一种格式的地址,可能会造成混淆。
公钥密码学的理论是可靠的,但实施失败导致了重大损失。
在 2026 年 7 月,研究人员发现 Coldcard 硬件钱包在过去五年中生成了弱私钥。固件中的一个构建标志告诉设备跳过其专用的硬件随机性芯片,导致可预测的熵。攻击者逆向工程了这个弱点,并在 7 月 30 日开始耗尽钱包,清空了大约 1.16 亿美元的比特币,直到该漏洞被公开披露。
教训是,密钥对的安全性完全依赖于用于生成私钥的随机性质量。如果随机数生成器存在缺陷、偏见或可预测性,那么理论上不可破解的 256 位密钥毫无价值。这就是为什么信誉良好的硬件钱包使用专用的真正随机数生成器,并允许用户添加自己的熵(例如掷骰子)作为额外的保障。
其他历史事件包括 2013 年的 Android SecureRandom 漏洞,导致多个比特币钱包生成重复的随机数,使攻击者能够从交易签名中计算出私钥。2022 年 9 月,研究人员发现 Profanity 美化地址生成器的密钥生成使用了 32 位种子,将有效密钥空间从 2 的 256 次方减少到 2 的 32 次方,约 40 亿种可能性可以在几分钟内被暴力破解。
在以太坊等智能合约平台上,公钥密码学具有双重目的。它保护外部拥有账户(EOA),即由私钥控制的标准用户钱包,并在这些账户与智能合约交互时验证由这些账户签名的消息。
当用户调用智能合约上的一个函数时,交易包括由用户的私钥生成的数字签名。以太坊虚拟机在执行该函数之前,会根据发送者的公钥验证此签名。这就是智能合约如何知道调用“将 100 USDC 转移到地址 X”的人实际上是被转移代币的所有者。
智能合约钱包(由 ERC-4337 引入的账户抽象钱包)可以修改这一模型。智能合约钱包可以要求多个签名、生物识别认证、社交恢复或由代码强制执行的支出限制,而不仅仅依赖于单一的私钥。公钥仍然是系统的一部分,但构成有效授权的规则变得可编程。
在中心化交易所中,交易所持有私钥,用户通过传统身份验证(用户名、密码、双因素代码)访问他们的资金。用户从未看到公钥或私钥。交易所代表用户签署交易。
在自我保管中,用户持有私钥(或生成它的种子短语),并对其安全性负责。公钥和地址是在本地生成的,任何第三方都无法访问签名能力。
权衡是显而易见的。托管解决方案方便,但引入了对手风险:如果交易所被黑客攻击、破产或冻结提款,用户的资金就会面临风险。自我保管消除了对手风险,但引入了操作风险:如果用户丢失种子短语、错误存储或成为网络钓鱼的受害者,资金将永久丢失。
多重签名设置通过将密钥管理分散到多个方或设备之间来折中。2-of-3多重签名要求三把私钥中的任意两把签署交易,因此丢失一把密钥不会导致永久损失,且妥协一把密钥不会使攻击者获得控制权。
本文未涵盖后量子密码学方案,如基于格的签名,这些方案正在研究中,以替代椭圆曲线密码学,以防大规模量子计算机变得可行。本文未深入探讨椭圆曲线的数学,仅限于概念层面。本文未涵盖特定的钱包设置指南,因为这些因产品而异且频繁变化。
绝不要分享您的私钥或种子短语。 没有任何合法的服务、支持代理或空投会要求这些信息。任何请求这些凭证的行为都是诈骗,毫无例外。
发送前验证地址格式。 剪贴板恶意软件可以将复制的地址替换为攻击者的地址。粘贴后始终目视确认地址的前几个和最后几个字符。
对重要持有资产使用硬件钱包。 硬件钱包在专用芯片上生成和存储私钥,永远不会将其暴露给连接互联网的设备。在购买之前,研究制造商在熵生成方面的记录。
尽可能添加您自己的熵。 一些硬件钱包允许用户通过手动输入随机性(如抛硬币或掷骰子)来补充设备的随机数生成器。这降低了硬件随机数生成器缺陷的风险。
在多个安全位置保存种子短语备份。 单一位置存储的副本容易受到火灾、洪水或盗窃的威胁。金属种子短语备份比纸质备份更能抵抗环境损害。
阅读更多:什么是种子短语?
公钥是通过椭圆曲线乘法从私钥派生出的一个大数字。它作为加密身份,用于验证交易签名而不暴露私钥。任何人都可以看到公钥,分享它不会危及资金安全。
不一样。钱包地址是通过一轮或多轮的加密哈希从公钥派生而来的。地址更短且更易于分享。在比特币中,相同的私钥可以根据使用压缩或未压缩公钥的情况生成不同的地址。
不能。公钥是设计为可以分享的。从公钥派生私钥需要解决椭圆曲线离散对数问题,目前没有已知的有效解决方案。
与该密钥相关的资金将永久无法访问。没有恢复机制,因为加密货币网络没有存储备份的中央权威。这就是为什么种子短语备份对于自我保管钱包至关重要。
私钥是一个随机生成的秘密数字,用于签署交易。公钥是从私钥派生出来的,用于验证签名。私钥必须保持秘密;公钥可以自由分享。
种子短语(12或24个单词)编码了主熵,从中可以确定性地派生出钱包中的所有私钥。每个私钥生成一个相应的公钥和地址。保护种子短语可以保护钱包将来生成的每一对密钥。
比特币和以太坊都使用secp256k1椭圆曲线。它生成256位私钥和512位未压缩公钥(或257位压缩公钥)。选择该曲线是因为它的效率和良好的安全特性。
理论上,一个足够强大的量子计算机运行Shor算法可以从公钥推导出私钥。然而,截至2026年,没有这样的量子计算机存在。那些从未用于发送交易的地址没有在链上暴露其公钥,从而增加了一层保护。后量子签名方案正在研究中,作为未来的替代方案。
*免责声明:本文仅供信息参考,不构成财务、投资或安全建议。加密货币自我保管存在固有风险。请始终进行自己的研究并遵循当前的安全最佳实践。发布于2026年8月24日。
本内容仅供参考,不构成任何金融、投资、法律或税务建议。文中提及的任何活动、奖励、线上活动或相关信息,不应被视为对购买、出售或交易任何加密资产的推荐、招揽或邀请。加密资产具有高波动性,存在价值损失风险。WEEX服务、产品及相关活动的可用性可能因地区而异。用户在参与前有责任确保符合当地适用法律法规。





























