最近囧事不少,下班也搞搞ios开发,偶尔在洗澡的时候想起了一些用例:
·本地有一个存储文件A;
·管理该文件的软件有付费开放内容功能;
·付费后的记录要存入A;
·A很容易成为破解对象,然后变成一人付费全球共享。
针对这个用例,特别是针对存储文件A的处理,在洗头的时候想到一个策略:
·假设付费记录是个整数v,那么最原始的存储策略是,直接把v写入A,保存,死定了;
·在上面操作的基础上,每次在保存v前,先随机生成一遍文章,文章构成可以是各种废话,最好是数字;
·选择数字的原因是,只要建立一个长长的整数数组就可以了,处理方便;
·然后把随机生成的长长的数组中固定几个index的值强制改成v(如果v大于9,那么对数位进行一下处理,应该没啥难度;
·保存;
·下次读取时候,载入长数组,从同样固定各个index的位置取出v,比照,完事。
破解方法:
·最直接的是比较法,用大量生产的A进行比较,大概可以看出那几个index的数值是v;
·抠出代码直接查v在哪;
·应该还有的,俺一时没想到而已。
虽不是无敌的方法,不过也算是一种发散思维哈,水分完毕。