罗斯克(Rusk)里的一点小改动,就能说明黎明(Dusk)如何在跨协议升级时处理加密验证。
缓存结果不再仅与证明及其输入绑定。黎明(Dusk)还会将该结果绑定到进行检查时生效的验证规则。
这很重要,因为相同的证明数据并不总意味着相同的验证上下文。协议升级可能在不改变证明字节本身的情况下,更改验证器或执行策略。
对黎明网络(Dusk network)而言,这一点尤其关键:它正在为受监管市场构建可编程隐私,而加密证明需要在协议升级期间仍保持可信。
我目前不确定的是,黎明是否已将这些“版本特定”的规则隔离得足够严格,从而确保缓存结果绝不会超出其有效语义所对应的生命周期。
值得重点关注的细节包括:缓存键中包含的执行策略上下文、验证器的变更(例如 PLONK V3 的启用)、以及当未来升级再次改变验证行为时会发生什么。
匹配的证明字节是有用的证据,说明两个检查看起来是一样的。它们只是较弱的证据,表明同一个缓存结果是安全可复用的。
我更关心的是:当时处于活动状态的验证器上下文是否仍然匹配,而不是黎明(Dusk)究竟能把多少验证工作缓存起来。
更深层的要点是,确定性验证取决于的不止是固定输入。用于解释该输入的规则也必须固定。
问题在于:黎明(Dusk)能否在不让旧的协议语义通过缓存跨越升级边界的前提下,继续优化验证。
我正在观察未来验证器的变更如何反映到执行策略上下文中。
#dusk $DUSK @Dusk
缓存结果不再仅与证明及其输入绑定。黎明(Dusk)还会将该结果绑定到进行检查时生效的验证规则。
这很重要,因为相同的证明数据并不总意味着相同的验证上下文。协议升级可能在不改变证明字节本身的情况下,更改验证器或执行策略。
对黎明网络(Dusk network)而言,这一点尤其关键:它正在为受监管市场构建可编程隐私,而加密证明需要在协议升级期间仍保持可信。
我目前不确定的是,黎明是否已将这些“版本特定”的规则隔离得足够严格,从而确保缓存结果绝不会超出其有效语义所对应的生命周期。
值得重点关注的细节包括:缓存键中包含的执行策略上下文、验证器的变更(例如 PLONK V3 的启用)、以及当未来升级再次改变验证行为时会发生什么。
匹配的证明字节是有用的证据,说明两个检查看起来是一样的。它们只是较弱的证据,表明同一个缓存结果是安全可复用的。
我更关心的是:当时处于活动状态的验证器上下文是否仍然匹配,而不是黎明(Dusk)究竟能把多少验证工作缓存起来。
更深层的要点是,确定性验证取决于的不止是固定输入。用于解释该输入的规则也必须固定。
问题在于:黎明(Dusk)能否在不让旧的协议语义通过缓存跨越升级边界的前提下,继续优化验证。
我正在观察未来验证器的变更如何反映到执行策略上下文中。
#dusk $DUSK @Dusk
