游戏启动器使用的协议
本文关键字:协议 启动 游戏 | 更新日期: 2023-09-27 17:49:44
我正在和朋友制作一款游戏。这将是mmorpg,所以我需要一个游戏启动器,将显示新闻,更新游戏,并允许登录。所有这些东西都需要连接来获取信息。起初,我认为我将不得不使我的自定义服务器与自定义协议。然后我发现,为了检查版本更新,我可以使用HTML,然后从ftp下载新文件。然后我有了一个想法,混合ftp与数据库,如MySQL,将包含密码,新闻和游戏版本。ftp的问题是,它必须下载数据库来读取它,这是非常不安全的密码。是否有办法让服务器包含上述所有内容(新闻,密码检查,游戏版本和更新文件),并允许用户安全快速登录?
我不知道这是否是一个选择,但似乎你需要实现一个客户端-服务器架构,或者,客户端-服务器(用于授权和协调)与P2P(用于播放)相结合。
你可以尝试在服务器上创建一个web服务(WebApi或WCF服务托管在IIS上,例如,或在nginx服务器上更便宜的PHP),将处理登录逻辑和客户端授权。
这样,你就不需要下载数据库,只需要与玩家同步逻辑。服务器会告诉你你的伙伴的连接信息,你可以通过P2P连接到他们,或者中继通信,以防你在防火墙后面玩。
另一方面,您可以尝试仅通过P2P实现此功能。
你不该下载密码。在将密码发送到服务器之前,您应该在客户端上对密码进行散列/盐化以及加密。
客户端甚至不应该知道后台有sql数据库。
至于一个好的加密解决方案,看看这个:c#中的哈希和盐密码