我正在開發一種加密遊戲數據文件的方法,該方法將用於我創建的遊戲引擎中。遊戲數據文件將使用私鑰加密,並在加載到遊戲引擎後解密。C++宏中的隨機數
私鑰將在發動機手動設置(作爲常數),使得其被編譯到發動機中。然而,這個技巧是在那裏混淆它,這樣你的普通Joe Bloggs就無法(簡單地)簡單地通過反彙編和反向工程代碼來找到密鑰。
struct Example {
u_int8_t random1;
u_int64_t segment31;
u_int8_t random2;
u_int8_t random3;
u_int64_t segment3;
u_int64_t segment14;
// Etc
};
我的想法是將密鑰存儲在與隨機生成的字節混雜在一起的段中。我的問題是這樣的:
有什麼辦法可以在C++宏中隨機生成一個數字嗎?該編號必須在編譯時隨機生成(或隨機值設置爲隨機用戶選擇的值),因此任何運行時功能都不好。
我接受任何建議,如果有這樣做的更好的辦法,但我肯定要帶一個私人/公共密鑰對加密的遊戲數據文件,以及公開密鑰保持私人越好。
你可以去看一下:使用C預處理程序生成一個隨機數] [1] [1]:http://stackoverflow.com/a/17420032/653372 – nergeia
_ @ orangething_如果你問自己?那麼我在服務。 –