Proteger ou compilar arquivos

Oi galera…sou programador iniciante em java,
Estou desenvolvendo um sistema de Locadoras onde os dados são gravados em arquivos xml extruturados, poderiam me dar uma idéia para proteger esses arquivos ou mesmo compilá-los em binários? Uma vez que os dados são sigilosos alguem tem uma idéia?

Grato
André

Arquivos XML estruturados? Argh - use um banco de dados de verdade, de preferência com criptografia incorporada.

Um banco de dados que tem criptografia incorporada e pode ser acessado via JDBC (Java) ou ODBC/ADO (VB, Delphi) é o Derby:

http://db.apache.org/derby

Não tenho a intensão de usar banco de dados pois se tratam de aplicativos locais, você gostaria de ser obrigado a instalar e configurar um server de BD toda vez que tivesse que instalar um sistema tipo uma agenda ou um sisteminha de controle financeiro pessoal???

O Derby pode ser incorporado ao seu programa, mais ou menos como se fosse o Access. (A vantagem é que o Access normalmente requer que você instale mais algumas coisas no Windows - como o MDAC_TYP.EXE) , enquanto o Derby só requer os arquivos de dados do seu banco de dados e mais alguns JARs, que não precisam ser registrados.

arochafademac ,
Acho que não eh bem esse o pensamento que vc deve de ter.
Você vai ter muito mais trabalho pra trabalhar com xml, inserir dados, excuir dados ou então fazer uma pesquisa(eca)…

Você pode instalar um banco de dados, e usar ele pra diversas “aplicações locais”. Se você acha que eh ruikm instalar, configurar e bla bla bla um banco de dados, da uma olhada nesse cara aqui que eh bem facil…

Esses dois não necessitam de criação de odbc? nem nada do tipo? consigo usar apenas os arquivos com os driver sendo chamados no código???Se for resolve meu problema, desde já agradeço à resposta rápida.
Aproveitando vocês conhecem alguma forma de gerar uma extensão proprietaria em java? tipo .meuapp?

É claro que se você realmente faz questão, pode gravar os XMLs criptografados. Procure “javax.crypto.CipherInputStream” e “CipherOutputStream”, mas não se esqueça que criptografia não é para amadores.

[quote=arochafademac]Esses dois não necessitam de criação de odbc?
[/quote]
Não.

[quote]nem nada do tipo? consigo usar apenas os arquivos com os driver sendo chamados no código???
[/quote]
Sim.

[quote]
Se for resolve meu problema, desde já agradeço à resposta rápida.
Aproveitando vocês conhecem alguma forma de gerar uma extensão proprietaria em java? tipo .meuapp?[/quote]
Extensão em aplicações web?

Esse não foi de não precisa criar ODBC?
Desculpa, não entendi o contexto da sua resposta, poderia ser mais exĺicito por favor?
E agradeço a dica sobre a criptografia, realmente é bem trabalhoso, precisei fazer um sisteminha de encriptação de PDF com certificados e realmente foi bem dificil mesmo trabalhando com ferramentas como PDFBOX.

Normalmente os bancos de dados 100% Java (HSQLDB, Derby, Cloudscape, H2Database) nem chegam a trabalhar direito com ODBC; só com JDBC. Por conseguinte, não é necessário registrar uma “fonte de dados ODBC” para trabalhar com eles.

Muito Obrigado pela ajuda, resolveu meu problema de forma bem mais simples doque eu imaginava!
VLW!! :slight_smile:

André