游戏客户端安全方案。

28 篇文章 2 订阅
19 篇文章 1 订阅

1、客户端版本号也能让游戏客户端变得不安全。

2、移动端的游戏通常都会根据客户端版本号决定是否要提示客户端升级或下载新的资源。

 在版本的开发过程中通常都会使用 1.1, 1.3, 1.6 这样的版本号。当连入网络后和最新客户端版本号进行比较,决定是否升级。

进行版本比较的代码,使用了字符串比较。
我们都应该知道对于字符串来说: "1.2" 是大于 "1.1", "2.0" 是大于 "1.9" 。而且支持含有多个小数点的版本号,例如 "1.1.0" 是大于 "1.0.9" 的。
一行代码,看上去很简单不会有什么问题。

在实际项目中突发bug,客户端研发把版本更新到1.10。而对于字符串来说, "1.10" 是小于 "1.9"的。

结果是,所有线上老版本都没有提示和进行更新。而服务端没有向下兼容,老用户完全无法运行。

小结

所以,安全做法是强制要求更新客户端模块必须使用数字(INT)对版本号进行比较。如果是字符串,要先解析成数字 INT 整数形态,再逐个比较。而不能直接使用字符串比较。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小道安全

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值