Problema de proteção, útil para todos!
Queridos companheiros da árdua missão de desvendar os mistérios condicionais.... Criei um software que funciona da seguinte forma:
- Ele tem dois módulos ( 1 administrador e 1 interpretador)
- O administrador apresenta uma interface para o usuário entrar com dados de texto, imagem e vídeo
- Qdo ele clica no ´finalizar´, o administrador gera:
- 1 arquivo .ini (que será usado futuramente em alterações, abrir, salvar etc.)
- 1 arquivo .txt (que possui variáveis que serão interpretadas por um .exe)
- 1 arquivo exe que fará a leitura dos valores contidos no txt
Tudo isso salva numa pasta criada com o nome criado pelo próprio usuário...
Até aí BLZZZ.....
PROBLEMA!!
- Através do arquivo txt, o usuário pode alterar, criar, ou até mesmo alterar fatores que são padrões no sistema e NÃO PODEM ser alterados....
- Se o neguinho descobrir qual o funcionamento da ferramenta, o segredo vai embora e facilmente pode-se desenvolver soluções que irão me acarretar transtornos, pois o meu contrato com a empresa é claro no sentido de ´CAMPOS DEFAULT´...
Solução pensada...
Se eu puder criar um arquivo com uma extensão qualquer, que me forneça qualquer proteção e somente em tempo de execução o meu programa crie uma pasta temporária escondida em algum lugar com esses dados de texto etc. e essas informações forem apagadas após a execução...
Só não sei COMO posso criar esta extensão e esses procedimentos em tempo de execução...
Espero que alguém já tenha passado por algo similar e possa me ajudar de alguma forma...
Obrigado pela atenção galera!!
VALEU!!!
_________________
´ O céu é o limite... para os normais, para os desenvolvedores, o limite é o necrotério! ´
- Ele tem dois módulos ( 1 administrador e 1 interpretador)
- O administrador apresenta uma interface para o usuário entrar com dados de texto, imagem e vídeo
- Qdo ele clica no ´finalizar´, o administrador gera:
- 1 arquivo .ini (que será usado futuramente em alterações, abrir, salvar etc.)
- 1 arquivo .txt (que possui variáveis que serão interpretadas por um .exe)
- 1 arquivo exe que fará a leitura dos valores contidos no txt
Tudo isso salva numa pasta criada com o nome criado pelo próprio usuário...
Até aí BLZZZ.....
PROBLEMA!!
- Através do arquivo txt, o usuário pode alterar, criar, ou até mesmo alterar fatores que são padrões no sistema e NÃO PODEM ser alterados....
- Se o neguinho descobrir qual o funcionamento da ferramenta, o segredo vai embora e facilmente pode-se desenvolver soluções que irão me acarretar transtornos, pois o meu contrato com a empresa é claro no sentido de ´CAMPOS DEFAULT´...
Solução pensada...
Se eu puder criar um arquivo com uma extensão qualquer, que me forneça qualquer proteção e somente em tempo de execução o meu programa crie uma pasta temporária escondida em algum lugar com esses dados de texto etc. e essas informações forem apagadas após a execução...
Só não sei COMO posso criar esta extensão e esses procedimentos em tempo de execução...
Espero que alguém já tenha passado por algo similar e possa me ajudar de alguma forma...
Obrigado pela atenção galera!!
VALEU!!!
_________________
´ O céu é o limite... para os normais, para os desenvolvedores, o limite é o necrotério! ´
Gamasou
Curtidas 0
Respostas
Beppe
12/05/2004
Se os valores são padrão do sistema, pq não colocar hard-coded no outro módulo? A não ser q eu não entendi sua frase...
Mas não, não existe uma extensão especial, vc pode codificar o arquivo de alguma forma...
Mas não, não existe uma extensão especial, vc pode codificar o arquivo de alguma forma...
GOSTEI 0
Vanius
12/05/2004
boa noite Fera.
Tive praticamente o mesmo problema quando desenvolvia sistemas com banco de dados access.
A solucáo foi simples. Renomiei os .MDB para .DLL e como todo usuario tem medo de DLLs, nunca mais mexeram no banco.
Vc pode usar DLL, VXD, OCX, e outro qualquer.
abraços,
Vanius
Tive praticamente o mesmo problema quando desenvolvia sistemas com banco de dados access.
A solucáo foi simples. Renomiei os .MDB para .DLL e como todo usuario tem medo de DLLs, nunca mais mexeram no banco.
Vc pode usar DLL, VXD, OCX, e outro qualquer.
abraços,
Vanius
GOSTEI 0
Aroldo Zanela
12/05/2004
Colega,
Eu usaria recursos simples de criptografia. Não vejo necessidade de algoritmos muito sofisticados.
Eu usaria recursos simples de criptografia. Não vejo necessidade de algoritmos muito sofisticados.
GOSTEI 0
Gamasou
12/05/2004
[color=red:9150efcbef]Mas não, não existe uma extensão especial, vc pode codificar o arquivo de alguma forma[/color:9150efcbef]
hehehe :shock: como??? Agora vc me deu o doce e tirou da minha mão!! :evil: Imagine um arquivo de texto nesta forma:
&valor1= texto inserido por usuário &
onde,
´&valor1=´ é a variável que receberá valores de usuário, porém existe um:
&valor2= texto fixo pré definido &
que estará contido no mesmo arquivo de texto captou?
O mistério da caverna seria: encriptar de alguma forma esse conteúdo através de uma extensão própria... Recebí uma sugestão de gerar um arquivo binário, encripta-lo e renomear sua extensão... Mas num sei ainda se é possível fazer isso no .ini e tb num sei se de repente não existe uma forma deu criar uma extensão própria que por sí só já me garante a privacidade do conteúdo.
Quanto a renomear o txt, é muita porcaria né?? heuehue e a empresa que terceirizou o meu serviço pode facilmente descobrir esta artimanha com um simples bloco de notas... Daí ´roubam´ a minha solução entendeu? O negócio é sério memo... :cry:
hehehe :shock: como??? Agora vc me deu o doce e tirou da minha mão!! :evil: Imagine um arquivo de texto nesta forma:
&valor1= texto inserido por usuário &
onde,
´&valor1=´ é a variável que receberá valores de usuário, porém existe um:
&valor2= texto fixo pré definido &
que estará contido no mesmo arquivo de texto captou?
O mistério da caverna seria: encriptar de alguma forma esse conteúdo através de uma extensão própria... Recebí uma sugestão de gerar um arquivo binário, encripta-lo e renomear sua extensão... Mas num sei ainda se é possível fazer isso no .ini e tb num sei se de repente não existe uma forma deu criar uma extensão própria que por sí só já me garante a privacidade do conteúdo.
Quanto a renomear o txt, é muita porcaria né?? heuehue e a empresa que terceirizou o meu serviço pode facilmente descobrir esta artimanha com um simples bloco de notas... Daí ´roubam´ a minha solução entendeu? O negócio é sério memo... :cry:
GOSTEI 0
Andcarpi
12/05/2004
Voce poderia por na aplicacao um compactador zip ou rar, ou outro qqr, com um senha, que estaria contida em um arquivo, ou mesmo no exe, meio camuflado, pois igualar valores qqr editor hexa vai ver a senha lah....
tipo voce poderia usar um hash e uma criptografia no caso do arquivo, sei lah, use a criatividade....
espero ter ajudado.....
tipo voce poderia usar um hash e uma criptografia no caso do arquivo, sei lah, use a criatividade....
espero ter ajudado.....
GOSTEI 0
Gamasou
12/05/2004
Não cara, valeu a idéia... mas compactadores não ajudariam... demora muito o processamento e a possibilidade de ´tolerância a falhas´ poderia causar erros nos textos agrupados... qto a criação de hash.... isso é algo que desconheço man... Mas é como um ET p/ mim... todo mundo sabe que existe mas nunca ví.... então, qual seria sua aplicação no meu caso?
Valews!
Valews!
GOSTEI 0
Andcarpi
12/05/2004
hash é tipo um arquivo que guarda uma chave, que eh utilizada em criptografia.... eh bom usar pra nao ficar comparando com senhas dentro do seu exe, eu usei uma veiz a um tempo num trabalho da escola mais nem lembro mais como mexe, tem um topico desses dias ai que tavam discutindo sobre criptografia, bem legal, os caras axaram um compontente muito bom lah, tenta olhar umas paginas pra tras ai.....
eh um topico grande d 2 ou 3 partes.
eh um topico grande d 2 ou 3 partes.
GOSTEI 0
Macario
12/05/2004
Ola programador bom dia!
Na edição deste mês da Clube Delphi tem um artigo sobre Arquivos de Recursos.
Outra coisa, os valores default, não podem ser armazenados em chaves no registro do S.O?
Na edição deste mês da Clube Delphi tem um artigo sobre Arquivos de Recursos.
Outra coisa, os valores default, não podem ser armazenados em chaves no registro do S.O?
GOSTEI 0
Gamasou
12/05/2004
´Outra coisa, os valores default, não podem ser armazenados em chaves no registro do S.O?´
Olha só, é uma idéia, mas o volume de informação é relativamente grande, pode chegar a páginas de texto (10, 15)aprox. Ainda assim vc acredita que este seria um bom recurso?
tô ficando doido com isso,,, Teoricamente, alguém tem de conhecer uma forma de criar uma extensão específica que permita ´compilar essas informações´ e proteger os dados internos em tempo de execução... tô procurando tem um tempo já... e meu prazo tá apertando... num encontro uma solução razoável...
A mais próxima que eu ví era um arquivo .dat (binário) protegido por algum tipo de criptografia e com a extensão renomeada... porém não faço idéia de como aplicar isso em INI files
Valeu o esforço p/ ajudar galera...
abs
Olha só, é uma idéia, mas o volume de informação é relativamente grande, pode chegar a páginas de texto (10, 15)aprox. Ainda assim vc acredita que este seria um bom recurso?
tô ficando doido com isso,,, Teoricamente, alguém tem de conhecer uma forma de criar uma extensão específica que permita ´compilar essas informações´ e proteger os dados internos em tempo de execução... tô procurando tem um tempo já... e meu prazo tá apertando... num encontro uma solução razoável...
A mais próxima que eu ví era um arquivo .dat (binário) protegido por algum tipo de criptografia e com a extensão renomeada... porém não faço idéia de como aplicar isso em INI files
Valeu o esforço p/ ajudar galera...
abs
GOSTEI 0
Aroldo Zanela
12/05/2004
Colega,
Fiz uma pequena aplicação para explicar minha idéia. Fiz de forma muito simples, muito RAD e sem nada de OO apenas para entendimento:
1. Criei um arquivo (padrao.txt):
LineData := LineData + Chr(Ord(Ler.Strings[I][II])+3);
Padroes.Add(LineData);
end;
ShowMessage(Padroes.Values[´Valor_2´]);
Ler.Free;
end;[/code:1:c3840c21d6]
Fiz uma pequena aplicação para explicar minha idéia. Fiz de forma muito simples, muito RAD e sem nada de OO apenas para entendimento:
1. Criei um arquivo (padrao.txt):
LineData := LineData + Chr(Ord(Ler.Strings[I][II])+3);
Padroes.Add(LineData);
end;
ShowMessage(Padroes.Values[´Valor_2´]);
Ler.Free;
end;[/code:1:c3840c21d6]
GOSTEI 0