Assim, a minha senha do projeto Excel-VBA pode facilmente ser quebrada ... Quais são as outras opções?

StackOverflow https://stackoverflow.com/questions/1063155

Pergunta

Agora que eu sei que há um fácil solução para o padrão forma de bloqueio e código de VBA-protegendo senha, eu gostaria de passar para formas mais eficazes de proteger código. Estou para entregar uma ferramenta baseada em Excel para um cliente, mas gostaria de algo mais do que simples protecção do tipo aborrecimento que só irá deter o mais preguiçoso dos hackers.

Existem opções em Excel-VBA, ou será que realmente tem que compilar um aplicativo separado e esquecer a nossa interface baseada em Excel?

Foi útil?

Solução

A maneira mais fácil e mais eficiente é mover o código VBA a um VB6 compilado Com / automação suplemento.

Ou você pode querer considerar um .Net (com obfuscator) solução se o desempenho não é importante.

Outras dicas

Outro truque é escrever o código contra um objeto do Excel no Access, em seguida, tornar o arquivo acesso em um .mde http://www.blog.methodsinexcel.co.uk/?s= acesso + MDB Pobre, mas cheep; -)

Não há necessidade de converter para outra linguagem - você deve ser capaz de ofuscar a maior parte de seu código VBA através de www.vbsobfuscator.com [Nota: Os links para archive.org]

Na prática, VBA obfuscators não proteger o código VBA porque eles deixam a estrutura do algoritmo inalterada, o que pode ser rastreada até os algoritmos originais que podem ser recuperados.

Convertendo seu código VBA para VB6 significa que a sua aplicação será limitada a 32bit Excel (não VB6 não tem uma versão de 64-bit) e pode ser compilado por VB decompilers como https://www.vb-decompiler.org/

Convertendo seu código VBA para VB.NET não é uma solução perfeita ou, como .NET tem um mecanismo de 'reflexo' que pode converter o código compilado de .NET assembly no código fonte original .

Você pode converter sua código VBA para C / C ++ , o que seria uma forma muito eficaz de proteção, mas desde C / C ++ e VBA são muito diferentes linguagens de programação, a conversão de código VBA para C / C ++ é difícil, propenso a erros, e geralmente não vale a enorme quantidade de tempo e esforço que é preciso.

Há uma ferramenta chamada VbaCompiler para Excel ( http://vbacompiler.com ) que converte o código VBA para código de linguagem C e, em seguida, compila-lo em uma DLL . O nível de protecção desta reivindicações ferramenta para fornecer é semelhante ao de converter o seu código VBA para C / C ++, mas sem a enorme quantidade de trabalho manual que é necessário para tal processo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top