1、竞态条件(race condition)
2、游戏安全中的竞态条件
2.1 简介
2.1.1 如何免费玩游戏
一旦你激活了自己的账号,几件事情就会发生。第一,你的账号信息会更新。然后你的玩家账号上会被奖赏一个游戏数据库编码。然而,有些事情可能不是同时发生的。事实上,在你付费要求到达账户服务器和你实际付费的时间之间,空窗期就开启了。这个时间上的延迟有可能长达三天。然而,激活你的角色要用的时间短的多,通常只要几分钟。所以这三天,将会是免费的游戏时间。
但是到此为止,还没有能显示出完整的事件,我们假设在新的一天开始的时候,你登录了网络账号管理系统,取消了付费。这个时候就会出现很有趣的事情了,你的玩家账号可能并没有如你想象的被删除。他被放置为展厅的状态。同时账号服务器获取了一个信息,把你的账号标志为不可付费。这一切都发生在空窗期内,所以你不会受到任何账单。
一天之后,回到家,打算开始玩一晚上的游戏,这是你恢复了你的账号,三天的空窗期再次从零开始。你又可以玩一个晚上,当新的一天再次开始,例行取消付费。
3 网络中的竞态条件
网络里,竞态条件(race condition)会在两个用户同时试图访问同一个可用信道的时候发生,在系统同意访问之前没有计算机能得到信道被占用的提示。统计上说这种情况通常是发生在有相当长的延迟时间的网络里,比如使用地球同步卫星。为了防止这种竞态条件发生,需要家里一个优先级列表。比如用户的用户名在字母表里排列靠前可以得到相对较高的优先级。黑客可以利用竞态条件这一弱点来赢得非法访问网络的权利。
当出现如数冲突的时候,逻辑门偶尔发生竞态条件。由于门的输出状态是有限的,相应输入变化的时间是非零值,因此会导致一些不合适的操作。