考虑到项目中服务器同学多数来自于端游,手游行业。
于是在这里简单描述一下平台登陆对接流程。
基本流程为 登陆平台 --> 平台跳转到游戏页面 -->玩家通过平台给的信息向服务器请求登陆 -->服务器验证
关键点就是平台如何与我们游戏服务器通信的问题。
一般的平台设计是不通信 ,如360,腾讯,37玩,49游等, 其它平台我没有接触过,理论上应该也是如此。
验证机制
验证机制是利用字符串MD5码的唯一性。
游戏和运营平台会协商一个密钥,比如为 asdf123456
平台和服务器通信的东西,就可以通过游戏前端来中转。 将所有的信息生成一个MD5即可
比如: MD5 = 用户ID + 用户性别 + 用户年龄 + 时间戳 + 密钥
现在对各步骤做详细描述
一、登陆平台
玩家输入账号,密码,登陆成功。
然后玩家点击开始游戏。 此时,平台一般会给以下信息 我们叫TOKEN
TOKEN = 玩家平台ID、玩家所选服务器、玩家年龄,时间戳,[其它信息],MD5效验码
二、跳转页面
页面跳转时,平台所给的信息会附加到URL里面,作为参数传递。 这就是为什么很多页游,你可以保存URL,再贴一次就能够进游戏。而不用再走平台。 时间戳的主要目的就是为了限制每一次登陆的时效性。
三、服务务器验证
服务器拿到TOKEN以后,会得到上面的数据
玩家平台ID、玩家所选服务器、玩家年龄,时间戳,[其它信息],MD5效验码
然后,服务器会用密钥自己做一次 MD5 生成。 然后与客户端发过来的MD5码作比对。 如果二者一致。 就认为信息有效。
由此可之, 密钥如果泄漏,则你可以登陆任何一个已知ID的玩家账号。
时间: 2024-10-11 11:10:21