
区块链、节点与共识
区块链把记录组织成连续的区块,并通过密码学引用连接前后区块。节点是运行网络软件、传播和验证数据的计算机;共识机制用于让网络按规则确定接受哪些区块及其顺序。
以太坊技术介绍将其描述为能够执行程序的区块链:EVM是执行环境,智能合约是部署其中的程序,交易可以触发状态变化。其权益证明机制由验证者参与区块提议和确认。这些概念描述的是记录与计算如何被共同验证。
加密、哈希与签名有什么区别
加密主要解决保密问题:将明文转为密文,由符合条件的密钥持有者解密。密码学的范围更广,还包含哈希、数字签名等技术,因此“使用密码学”并不意味着数据被隐藏。
哈希将输入映射为摘要,可用于检查数据是否变化;它不是可以解密还原的密文。数字签名则通常由私钥生成、公钥验证,用于核验消息与签名密钥的关联及消息完整性。签名本身不隐藏消息,也不自动证明签名者的现实身份。
认证、授权与共识分别判断什么
认证关注“能否证明所声称的身份或来源”,授权关注“是否允许执行某项操作”。例如,验签能够支持确认请求来自相应密钥持有者,但请求是否符合合约权限,仍需检查程序规则。
共识处理网络对记录的共同接受问题。有效签名只是交易验证的一部分,不能单凭签名就认定交易必然被收录、执行成功,或其涉及的现实事项真实可信。
Web Crypto API适用于什么场景
MDN将Web Crypto API介绍为浏览器提供的底层密码学接口,涵盖密钥生成、加解密、签名验证等能力。Crypto提供相关入口,SubtleCrypto承载多种密码学操作,CryptoKey表示密钥对象;相关功能通常要求HTTPS等安全上下文。
这些接口适合为网页应用提供密码学基础能力,但完整认证系统还需要设计密钥管理、身份绑定和请求验证规则。接口可用不等于系统安全,也不能据此推断它直接支持某条区块链的全部算法和交易格式。
常见问题与理解边界
公开链上的数据会自动保密吗?不会。区块之间的密码学关联主要支持完整性检查,隐私保护需要额外机制。记录难以被改写,也不等于输入内容天然真实。
签名验证通过就能证明本人操作吗?它直接支持的是密钥与消息之间的验证关系。若要关联现实身份,还需要可信的身份绑定;若私钥泄露,验证成功也无法区分合法持有者和盗用者。