对农行金e顺k令的一些猜测
手上有一个未激活的农行金e顺k令
开机后要求输入12位的激活码,随机输入多次,均告失败
花了点时间猜想k令的工作模式:
已知:
k令无法联网,出厂后除了输入激活码的机会外,无法获取任何信息
k令内部有时钟
k令功率极小,无法完成复杂运算
对工作原理的猜测:
每个k令均有唯一编号M
银行使用函数f(M,u)得到12位激活码N(u是一个随机数)
k令会检测M与N是否匹配,如果不匹配,则拒绝开机
激活后,k令会基于M和N生成随机数种子R
每次支付的时候,k令会调用内部时钟,得到当前时间T,支付金额为P
然后基于函数f(R,T,P),得到一个六位伪随机数Z
银行知道M,N,可以用同样的手段计算出R,然后得到Z,从而完成鉴权
推论:
激活码无法在另外一台k令上使用
k令的内部时钟需要保持准确,起码在出厂三年内误差不能超过一分钟
也许银行会计算出±1分钟内的所有Z值,用来减少用户输入错误的可能性
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用