Open TidusBR opened 7 years ago
Necessário estudar melhor meio de criptografia para isso. É possível usar uma criptografia "pesada", ou 256bits está bom? Um AES seria o caso? Ou um simples DES já resolveria?
Acredito que seja necessário fazer uma dll que trabalhe com a leitura da GRF para o patcher e assim aplicar a injeção no executável. Existe um meio mais eficaz? Como trabalhar com isso?
Caso trabalhe com a DLL, a criação de embutir o hexed com patch é viável.
Não vejo a necessidade de uma criptografia pesada, contanto que o arquivo esteja protegido e que não seja possível modificar os dados da grf sem utilizar o patch que possui a DLL com a senha injetada, acredito que uma AES já resolveria.
O Secure GRF trabalha exatamente desta forma, primeiro você encrypta as grf com uma senha, e depois você faz o lado do client, que é criar uma dll com a mesma senha e depois injetando ela no mesmo.
Único defeito do Secure GRF é que sua criptografia não impede os dados da GRF serem extraídos com um Grf Builder e etc, os arquivos são protegidos contra edição, seja documentos de textos, imagens, sprs e etc, todos ficam sem ter como fazer edição ou visualização, mas não impede que sejam substituídos por que se a grf pode ser aberta, você pode dar merge ou substituir os arquivos facilmente.
Para proteger os arquivos do cliente, recomendo que o patch tenha uma função de criptografia semelhante ao GRF Secure, só que diferente do mesmo, que o arquivo criptografado não possa ser aberto ou alterado.
O único aplicativo capaz de ler a grf e modificar, tem que ser o patch e o hexed que deterá a senha de acesso a ela.
Se possível, criar uma função para embutir o hexed dentro do patch, tornando ambos em um único executável.