
误区一:区块链可以替代通信网络
以太坊技术介绍说明,节点需要通过通信传播交易与状态变化,区块链通过共识机制维护共同认可的记录。RFC 8446则说明,TLS 1.3用于保护客户端与服务器之间的互联网通信,防范窃听、篡改和消息伪造。两者承担的职责不同。
因此,讨论系统是否需要区块链,应先明确目标:是保护一次数据传输,还是让多个参与方共同验证和维护记录?区块链仍依赖通信基础设施,电子通信技术的范围也远大于TLS这一类安全协议。
误区二:采用密码学就意味着信息保密
以太坊的公开账本、交易签名与区块关联机制,支持记录验证和授权检查。这里的密码学用途不能直接理解为隐藏全部数据。TLS保护的则是通信连接中的数据传输。
常见问题是:连接已经加密,链上内容是否也自动保密?判断时需要分别查看传输保护范围和数据发布范围。传输途中受到保护,与接收后是否公开,是两个独立问题。
误区三:记录难以篡改就证明内容真实
区块链借助区块之间的密码学关联和共识规则维护记录完整性。这类机制解决的是记录如何被验证和共同接受,并不能仅凭上链动作证明外部事件真实发生。
例如,一条设备读数即使被完整记录,仍需要核验它的采集方式。TLS同样不能证明业务内容属实:消息安全送达,与消息描述是否准确,需要不同的证据。
误区四:消息送达就是链上操作完成
以太坊的交易请求需要经过验证、执行并被纳入链上记录。向网络广播请求,只是处理过程中的一个环节。
因此,应用显示“已发送”时,应明确它指向哪一步:请求离开客户端、服务端收到请求,还是链上状态已经更新。通信成功的提示不能直接充当链上处理结果;这一区分适用于需要链上确认的业务流程。
误区五:智能合约会自动判断业务是否合理
智能合约是部署在链上、可被调用执行的程序。其执行依据是代码与输入参数;以太坊上的相关执行还涉及计算资源费用。
程序按规则运行,并不保证规则完整表达了业务意图。理解合约时,需要分别考察代码规定了什么、输入代表什么,以及执行结果是否符合实际需求。自动执行本身不能消除规则设计中的错误。
适用范围:不能用一种机制概括整个系统
上述区块链示例以以太坊为背景,不能据此认定所有区块链具有相同的公开性、权限或共识安排;TLS的传输保护也不能直接代表整个通信系统的安全性。
判断具体技术方案时,可以围绕三个问题展开:数据由谁传递和接收,记录由谁验证和维护,业务事实由什么证据支持。明确这些边界,才能准确理解各项技术提供的能力。