V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
liuidetmks
V2EX  ›  程序员

curve25519 上的点不到 2^253 个,为什么公钥有 32 字节 256bit?

  •  
  •   liuidetmks · 2022-07-18 22:22:25 +08:00 · 1033 次点击
    这是一个创建于 654 天前的主题,其中的信息可能已经有所发展或是发生改变。
    4 条回复    2022-07-19 21:29:54 +08:00
    8520ccc
        1
    8520ccc  
       2022-07-18 22:37:16 +08:00 via iPhone   ❤️ 1
    因为 31 个字节是 248
    liuidetmks
        2
    liuidetmks  
    OP
       2022-07-19 09:09:33 +08:00
    @8520ccc 我的意思是,这个曲线,任意 256bit 的都是合法的公约,不需要验证。这个是怎么做到的
    qbqbqbqb
        3
    qbqbqbqb  
       2022-07-19 11:29:57 +08:00
    256bit 只是方便保存的,实际实现上有一个 clamping 操作把数值限制在合法范围内。
    chuckzhou
        4
    chuckzhou  
       2022-07-19 21:29:54 +08:00
    其实只有 251 位有效。高 2 位是固定的,低 3 位是忽略的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2208 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 79ms · UTC 15:44 · PVG 23:44 · LAX 08:44 · JFK 11:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.