cncmmdwl
V2EX  ›  算法

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

  •  
  •   cncmmdwl · Feb 29, 2020 · 2010 views
    This topic created in 2304 days ago, the information mentioned may be changed or developed.

    密码思路

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

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

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

    第四 设备不联网

    想法

    机器码 6 位

    输入密码 6 位

    给定设备机器码 a8b50c

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

    算法

    机器码先取反

    30AD15

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

    太长 丢掉 3 位 获得 390A

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

    算出密码 039A06


    设备端 039A06 获得后

    先进行验算 是否尾巴是 6

    然后丢掉 0 和 6

    得到 39a0

    检查是否使用过

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

    给后面的设备发信号通过

    问题

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

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

    2 replies    2020-04-17 17:18:27 +08:00
    aliipay
        1
    aliipay  
       Mar 31, 2020
    密码?是 验证码?一次性 token ?还是什么?
    场景是什么?
    看不明白你在说什么
    cncmmdwl
        2
    cncmmdwl  
    OP
       Apr 17, 2020
    @aliipay 我打算当一次性 token 场景是自动售货机(不联网)设备内有纽扣电池,但可能出厂后就不在会进行联网了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   944 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 23:04 · PVG 07:04 · LAX 16:04 · JFK 19:04
    ♥ Do have faith in what you're doing.