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

各位看看这个算法有没有什么漏洞

  •  
  •   cncmmdwl · 2020-02-29 13:36:00 +08:00 · 1443 次点击
    这是一个创建于 1758 天前的主题,其中的信息可能已经有所发展或是发生改变。

    密码思路

    第一 要有校验码防止输入错误

    第二 两边要能相互算出来 要预留密匙

    第三 抗回放攻击 口令一次有效

    第四 设备不联网

    想法

    机器码 6 位

    输入密码 6 位

    给定设备机器码 a8b50c

    让设备计算 10 次后续密码 防止有人不用密码然后别人算不出来

    算法

    机器码先取反

    30AD15

    然后获取使用次数(这里使用数字 300 ) 与 机器码 相乘 390AD49C

    太长 丢掉 3 位 获得 390A

    给前面来一个(随机 0 到 A 这里使用 0 ) 计算 各位相加 获得 16 获取尾巴 6

    算出密码 039A06


    设备端 039A06 获得后

    先进行验算 是否尾巴是 6

    然后丢掉 0 和 6

    得到 39a0

    检查是否使用过

    没用过,通过并记录当前次数

    给后面的设备发信号通过

    问题

    在想几个问题,机器码是否要显示出设备被使用了几次

    这样的算法是否能被大量 (例如 购买 300 次)计算统计出规律?

    2 条回复    2020-04-17 17:18:27 +08:00
    aliipay
        1
    aliipay  
       2020-03-31 23:42:17 +08:00
    密码?是 验证码?一次性 token ?还是什么?
    场景是什么?
    看不明白你在说什么
    cncmmdwl
        2
    cncmmdwl  
    OP
       2020-04-17 17:18:27 +08:00
    @aliipay 我打算当一次性 token 场景是自动售货机(不联网)设备内有纽扣电池,但可能出厂后就不在会进行联网了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2589 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:11 · PVG 14:11 · LAX 22:11 · JFK 01:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.