gpt4 book ai didi

c++ - 反对作弊的指针

转载 作者:行者123 更新时间:2023-11-28 03:33:36 24 4
gpt4 key购买 nike

我如何保护我的分子类变量值,例如键长NH3的转化概率,防止 Cheat Engine 用户等人使用 (没有放慢太多)?

这是否可以防止外部影响?

class molecule
{
public:
molecule()
{
...
}
protected:
int *bond_length;
int *probability;
}

这样更安全吗?

class molecule
{
...
private:
int *bond_length;
int *probability;
}

如果以上所有都容易受到类似 Cheat Engine 的软件的攻击,那么以下是否合乎逻辑?

class molecule
{
public:
molecule(){... ... ...}
...
...
//still public
int *bond_length_fake;
int *bond_length;
int *prob_fake;
int *prob;
}
...
//somewhere in the program
void thread_real_to_fake(void * molecule_parameters)
{
int bond_length_backup;
molecule * param=(molecule *)molecule_parameters;
while(working)
{
if((param->bond_length_fake)!=(param->bond_length))
{
param->bond_length_fake=param->bond_length;
}
}
_endthread();

}

好的,这通过使假货始终等于真货来保护假货。但是如何保护真品呢?我可以使用随机指针来获取实际值吗?如果可以,我该怎么办?

最佳答案

您无法保护您的计算机免受正在运行的软件的侵害。如果有人控制了机器,他们就可以随意操纵它,这包括修改正在运行的程序的状态。

最安全的做法是在单独的、不可访问的服务器上运行程序,并通过网络转发 I/O(例如,转发到浏览器窗口)。

编辑:作为替代方案,您可以将程序的引擎部分作为以单独用户身份运行的服务来运行。这提供了一定程度的保护。引擎必须检查提交的用户输入(例如击键)是否以合理的速度进入。这允许您在一定程度上执行规则,但不会阻止例如用户通过操纵客户端中的图形渲染来看穿墙壁。

关于c++ - 反对作弊的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11841611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com