关系经济人类预测化学自然
中准网
自然科学
知识物理
化学生物
地理解释
预测理解
本质社会
人类现象
行为研究
经济政治
心理结构
关系指导
人文遗产

TIAPortal实现动态加密的高阶玩法分级催款密钥授权管理

7月27日 霸鲸观投稿
  引文
  前段时间有客户跟我说,他们客户到期没有打款,所以想在PLC中开发一套授权管理程序,这样可以根据实际情况,给予客户不同的授权;
  探讨
  PLC怎么实现程序授权管理!
  对于国内工程师而言,类似问题曾经或者未来可能碰到,也许公司在开发程序阶段没有考虑该问题,所以很多时候都是在现场做一个类似的定时程序,比如时间到某年某月,输出一个信号停止设备的运行,或者等等类似的方法;
  也有工程师曾经见过国外公司一言不合就拔钥匙走人,然后设备根本开不起来,更别说运行。
  其实,收到这种命题作文一样的任务,首先想到的肯定是一个最简单的方法:类似定时处理,在程序中编写定时程序,到某个日期然后断开设备的运行:但这可能存在几个问题
  (一)程序不是太复杂,客户稍微倒腾一下可能就破解了
  (二)程序倒腾的太复杂了的话,基于保密原则(总不能告诉客户怎么解锁),解锁的时候还得跑到客户现场
  (三)国内公司文档工作一般都太差,太复杂了自己公司员工因为流动性会造成自己员工的困惑,说不定后续工程师会自己重新编写一套程序;
  所以基于以上考虑,我在设计该部分程序的时候基于
  (一)程序标准化原则,不管那个公司都可以应用
  (二)规则不能太简单,不能让客户一猜就能猜到
  (三)解锁过程做成类似软件一样,给一个授权密钥,该密钥里面包含了一些详细具体的信息;这样,公司在管理该部分程序的时候更简便,同时由于授权密钥的多样性,对于公司的管理来说更具有灵活性;
  正文
  一、概览
  当程序密钥过期(默认密钥无效)以后,程序中随机生成了4组4位整数,该组整数为最新License的种子数,将其称之为请求码(RequireCode);
  收到请求码(RequireCode)后,根据不同情况选择不同有效期的密钥类型(LicenseType)后,根据一定规律生成的5组不同的4位整数;
  新生成的5组不同的4位整数就是最新密钥,将该密钥输入到程序中,程序就会根据密钥中的有效期长度时间运行;
  二、随机数
  根据上述描述,密钥首先得生成一组随机数。随机数的产生,现在用得较多的是线性同余法就是下面这个式子:
  R(n1)〔R(n)ab〕MODc
  为使随机数分布尽量均匀,a、b均为质数,c一般取值域内的最大值(mod是求余数)。从这个式了可以看出,每次产生的随机数都跟上一次产生的数有关系,那么,第一个数是怎么来的呢?这就是线性同余法中必须用的种子,也就是说,给定某个种子后,所产生的随机数序列是固定的,在编程中,一般使用系统时间来初始化种子,因为每次运行程序的时间肯定不一样,所以产生散列肯定也不一样,从而达到随机的目的。PLC程序中就是密钥过期瞬间的时间作为初始化种子的数据。
  为了避免PLC中的数据溢出,所以将c的值取为10000,这样每一次产生的随机数为一个4位(小于4位的话前面需要补0)数。
  同时,为了让R(n1)的值也是一直变化的,在程序中a的值也取为一个变化的整数,比如当前年份。
  最终程序中确定的a,b,c的值分别为a当前年份,b1,c10000。
  程序中的密钥包括4组,得到第一个密钥以后,按照一定的规则得到第2第4个密钥的种子数,如此4个种子数即可得到。
  Figure1:随机数生成请求码程序图示
  上图可以看到程序中的4组不同的种子数,通过如此多的变换和组数,这样不断组合之后被破解的难度会得到指数级的增长。
  三、新密钥
  得到请求码(RequireCode)后,基于请求码为种子数,再将请求码套入上述公式中,同时a,b,c的值可以取跟随机数一样的,也可以为了提高破解难度将a,b,c的值取为不同的值,这样就得到正确密钥的数据。
  程序中将收到的数据跟上述规则计算出的新密钥相比较,若相同则意味着密钥是有效的,就可以将程序解锁。
  Figure2:新密钥程序图示
  四、密钥有效期
  给定的新密钥中需要包含密钥的有效期,否则新密钥输入后不知道可以运行多长时间。目前程序中设置的密钥类型包括6种(一)无限制期限(二)5年期限(三)3年期限(四)1年期限(五)一个季度期限(六)一个月期限;在程序中用一个Int数据来表示当前密钥的类型,与上述6种类型分别一一对应的数值为16;
  同样,为了将密钥有效期的破解难度增加,也将密钥有效期做一定的规则运算。目前程序中密钥有效期的运算规则为
  密钥有效期〔ab密钥类型数值〕MOD10000
  程序中的a,b取值为当前年份和当前月份,如此6个不同密钥有效期的最新数据也会一月更新一次,增加破解难度。当然,也可以定义其他更复杂的规则,这样破解难度会成倍增加。
  Figure3:密钥有效期程序图示
  五、程序逻辑
  当程序的密钥过期以后,程序中将会生成一组4个整数的请求码,这四个请求码可以显示在上位机(HMI)上,如下图所示。
  Figure4:上位机请求码
  同时画面中有5个文本框用于输入新的密钥,如下图所示。其中第一个框用于输入密钥类型,其他4个框为与Figure4中对应的4组新的解码新密钥。
  Figure5:上位机新密钥输入
  同时在程序中还需要涉及到以下方面的内容管理:
  日期数据:每一种的密钥有效期不同,在程序中先读取当前时间并根据算法解析出当前年份、当前月份、每一个日脉冲等信号,用于后续程序处理。
  Figure6:日期结构体数据
  密钥有效期管理:不同密钥有不同时间长度,在程序中将不同密钥的时间长度保存在一个Int数据中,每当一个自然日的脉冲信号后就将该日期减去1,直到该数值为0的时候即意味着需要新的请求码。
  Figure7:密钥剩余时间计算
  六、新密钥生成工具
  根据上述描述,新密钥和请求码之间有复杂的运算关系,若在收到远程请求码后,新的密钥计算也是一个不小的过程。
  所以,为了将过程简化,目前在Excel中利用VBA编写了一个窗体程序,用于生成新的密钥。
  Figure8:新密钥生成工具
  将上位机系统显示的请求码输入到红色框内,然后在蓝色框中选择一种密钥类型,再点击密钥运行(LicenseRun)即可按照文档中描述的规则在绿色框内生成新的密钥(NewLicense)。然后将绿色框内的数据填入上位机系统的新密钥输入区域即可。
  后记
  以上就是一个标准的密钥管理程序,在PLC中为一个单独的FB块:FBLicenseManager。
  当密钥过期后,上位机系统就会弹出一个请求新密钥画面(包含请求码),同时其他画面被锁定无法进入。这样,只有得到新的有效的密钥后,其他画面才能得到解锁;
  PLC层面,将相关的数据设置为掉电保持,当密钥过期后生成一个变量,该变量用于系统直接停止,即意味着当密钥过期后,现场设备就会有当前状态进入直接停止。当收到新的有效密钥后,所有的变量即可恢复正常。
投诉 评论 转载

小黄车消失后欠下20亿债款,押金何时退?老板戴威去哪了?近十年来,随着互联网的不断普及,伴随互联网而逐渐兴起的产业也越来越多,比如说共享经济的发展就离不开互联网,而且在互联网时代之下,共享经济也发展了如火如荼。当然,人们日常生……沙漠发洪水,地球大降温?冷冬预警来了?2021气候出现大变?在浩瀚的星空中,地球是人类唯一的家园,但这个家园不是一个和平的港湾,而是一个变幻莫测的地方。在地球的46亿年里,有火山爆发,滔天的洪水,地震等一系列灾难。然而,在过去的几千年里……TIAPortal实现动态加密的高阶玩法分级催款密钥授权管理引文前段时间有客户跟我说,他们客户到期没有打款,所以想在PLC中开发一套授权管理程序,这样可以根据实际情况,给予客户不同的授权;探讨PLC怎么实现程序授权管理……那么多养生毒知识是怎么来的?最近频繁接收了各个朋友圈的一大堆垃圾的养生知识。说是垃圾养生知识,其实很多是毒知识。不看还好,看了受害。很多文章充斥着各种伪科学,道听途说、断章取义的现象比比皆是。更有几……福原爱身材有点发福,穿印花裙显出真实的状态,好在看脸还挺清纯今天穿什么明星教你怎么穿潮流风格穿搭春分已至,正是每一个爱美的女孩子开始穿裙子的季节。福原爱穿蓝白色印花裙现身,虽然身体有点发福,但脸蛋十分清纯,温柔动人,气质也是十分出……全省唯一!威海一项目获全国荣誉3月9日10日,第六届中国旅游交通大会暨中国公路学会旅游交通工作委员会换届大会在昆明召开,此次大会举行了2022年度全国交旅融合创新项目授牌仪式,威海滨海旅游公路九龙湾至西霞口……快消品B2B解决方案赋能传统零售,打通高效营销链路快消品顾名思义就是快速消费品,主要包括食品、个人卫生用品、烟酒、饮料等使用寿命较短的产品,因此快消品的使用迭代周期会更快,高频次和易重复的使用率通过拉动消耗,维持市场规模化的产……以家装一体化带动逆势双增!卡萨帝发布三合一中央空调对于大多数人来说,装修是件麻烦事儿。在家居环境中,夏天要安空调制冷,冬天想要地暖,空气不好的时候还想要新风随时净化三套系统不仅安装麻烦,而且分开控制也不方便,有没有一步到位的方……参加企业职工基本养老保险去世人员的遗属可以领取哪些待遇参加企业职工基本养老保险的在职参保人员和退休人员,因病或非因工死亡的,其家人可以领取丧葬补助金和抚恤金。2021年9月之前,全国各地的企业职工基本养老保险遗属待遇项目和标准不统……NASA锁定周六再试登月火箭华盛顿31日讯,美国太空总署(NASA)的阿耳忒弥斯1(Artemis1)号火箭,将于周六再次尝试发射,展开等待已久的登月计划。两个小时的发射窗口,将于美东时间下午2时17分开……赵心童三局被零封遭一轮游,颜丙涛手感炸裂晋级8强,火箭擒小特北京时间2月8日晚间至9日早晨,2022世界斯诺克球员锦标赛又决出四位8强选手。我国名将赵心童3比6巴里霍金斯,遭遇一轮游;颜丙涛战胜吉尔伯特,奥沙利文淘汰特鲁姆普,沃顿击败艾……瓦兰丘纳斯39分15板鹈鹕大胜快船,乔治27分7失误鹈鹕客场对123104击败快船。乔纳森瓦兰丘纳斯24投15中,三分8投7中得到生涯最高的39分,还有15篮板。布莱德索、乔治中距离连遭,祖巴茨扣篮,雷吉杰克逊三分。鹈鹕这……
经典著作里的励志金句,没事大声读一读爆大冷!奥沙利文无缘年度MVP,世界第4首次当选,中国2人获丽水莲都最美7大古村落,瓯江上游清流之畔人居朴素静美他被誉为好莱坞大佬,操纵奥斯卡,性侵女明星,如今已活不出监狱净亏损扩大至51亿元,毛利率为负!零跑还打得起价格战吗?2023年新机发布速度太快了,哪款值得入手?3分钟让你秒懂养老金即将上调,65岁,75岁,85岁的退休人员每月增长多少有图有真相!5张照片告诉你奥尼尔手掌有多大吃鸡腿像剔牙千元出头的价格,两台手机形成对比,优缺点分别对应不同人群拍摄秋日醉美草原,我的呼伦贝尔爱之旅三星新品ZFold4好用吗?现在给你7天免费试用的机会抵达泰国站,大使的厨房带你体验独特的泰式风味
世界上最早出现的半自动武器,看看三国时期。。。房产遗赠扶养协议需要共有人同意吗?戴助听器和中耳炎有关系吗中耳炎耳朵会疼吗千万别碰!南昌这几类房子即使降价,也不要。。。《西游记未解之谜》读书笔记企业并购的成本控制策略东航坠机事件只想告诉你不要再说自己不会是不幸的那一个上海遇彭芾亭病还江西相看两厌?7招让你延长恋爱保鲜期暴露造句用暴露造句大全2021年中国楼市会有大变化吗?热评聚热点网

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找菏泽德阳山西湖州宝鸡上海茂名内江三亚信阳长春北海西安安徽黄石烟台沧州湛江肇庆鹤壁六安韶关成都钦州