[url]http://hi.baidu.com/cabtw/blog/item/f16c37306fbdd50390ef39e2.html [/url]
最近看了一些塔防游戏,无聊看到冰封王座的资源文件,好奇心燃起,想看看这个最牛游戏公司的资源格式是怎么组织的,网上翻了翻,找到这个完整mpq格式描述网站。http://www.zezula.net/en/mpq/main.html。
文件的管理采用双表构成,hash table 负责文件的识别, block table 负责文件数据的具体定位,blockTable的大小也比HashTable大。核心思想就是摘要和对称算法反复的杂交,文件格式不明文,查找速度快。
MPQ文件中不存储文件名,用32位整型来校验文件名,摘要算法!
[img]http://dl.iteye.com/upload/attachment/415395/91506f95-12c0-3797-ab1b-7c3514a298f4.jpg[/img]
三个Hash值(而不是通常的一个)来校验文件名,防止碰撞
[img]http://dl.iteye.com/upload/attachment/415397/23bf425c-a968-3138-a137-ba00ea12edbe.jpg[/img]
加密的密钥是一堆不知所已的常量,hash table和block table 都用到了。
[img]http://dl.iteye.com/upload/attachment/415399/0f20b789-846e-344a-98d0-6ea379b097ec.jpg[/img]
下面是解密,对称算法
[img]http://dl.iteye.com/upload/attachment/415401/554bca7a-921d-38eb-ac31-9c00b1e47d40.jpg[/img]
把资源的每个字节做了异或,这样就是一个简单的加密
[img]http://dl.iteye.com/upload/attachment/415403/1b34d113-7314-3cdd-9038-c28e8122b4c1.jpg[/img]
压缩pkware,看看这个公司的历史就明白了
牛x游戏就是每个细节做到极致!
最近看了一些塔防游戏,无聊看到冰封王座的资源文件,好奇心燃起,想看看这个最牛游戏公司的资源格式是怎么组织的,网上翻了翻,找到这个完整mpq格式描述网站。http://www.zezula.net/en/mpq/main.html。
文件的管理采用双表构成,hash table 负责文件的识别, block table 负责文件数据的具体定位,blockTable的大小也比HashTable大。核心思想就是摘要和对称算法反复的杂交,文件格式不明文,查找速度快。
MPQ文件中不存储文件名,用32位整型来校验文件名,摘要算法!
[img]http://dl.iteye.com/upload/attachment/415395/91506f95-12c0-3797-ab1b-7c3514a298f4.jpg[/img]
三个Hash值(而不是通常的一个)来校验文件名,防止碰撞
[img]http://dl.iteye.com/upload/attachment/415397/23bf425c-a968-3138-a137-ba00ea12edbe.jpg[/img]
加密的密钥是一堆不知所已的常量,hash table和block table 都用到了。
[img]http://dl.iteye.com/upload/attachment/415399/0f20b789-846e-344a-98d0-6ea379b097ec.jpg[/img]
下面是解密,对称算法
[img]http://dl.iteye.com/upload/attachment/415401/554bca7a-921d-38eb-ac31-9c00b1e47d40.jpg[/img]
把资源的每个字节做了异或,这样就是一个简单的加密
[img]http://dl.iteye.com/upload/attachment/415403/1b34d113-7314-3cdd-9038-c28e8122b4c1.jpg[/img]
压缩pkware,看看这个公司的历史就明白了
牛x游戏就是每个细节做到极致!