Pergunta

Eu sei que é uma pergunta boba, mas,

Meu cliente solicitou a criptografia de algumas informações de seu sistema de pagamento para evitar que o usuário roubasse informações pessoais.O sistema é baseado na web e escrito em ASP.NET

Tentamos uma solução irritante, como JavaScript, sem clique com o botão direito do mouse ou CSS-não-impressa, mas aparentemente meu cliente não gostou.

então, existe alguma solução comercial para criptografar informações em páginas HTML produzidas em aspx?

ou alguém pode me dizer como perseguir meu cliente para impedir essa ideia de "evitar o roubo" em um sistema baseado na web?

Foi útil?

Solução

Se seu cliente estiver preocupado com os dados roubados "Over-the-Wire", faça O que Jaxidian mencionou e usando SSL.

Se o seu cliente estiver preocupado com os usuários que roubam dados das páginas que visualizam, diga a eles nada que eles possam fazer em um aplicativo da web para interromper isso. Os usuários precisam baixar uma página para visualizar em seus computadores, portanto, não importa o que você faça, as páginas da Web HTML sempre podem ter seu conteúdo baixado por um usuário, mesmo que você adicione alguns aros para tornar mais difícil.

A única maneira de impedir que um usuário roube dados das páginas que ele visualiza é não tornar o seu aplicativo baseado na Web. Você terá que escrever um aplicativo nativo que é instalado nas máquinas dos usuários com DRM rigoroso para impedi -los de copiar conteúdo. E mesmo assim, o DRM pode ser rachado. Apenas Olhe para a Sony.

Se o seu cliente estava se referindo a criptografar dados em seu banco de dados, você deve procurar Criptografia AES no .NET.

Outras dicas

Certificados SSL

  • Verisign
  • Thawte
  • Existem muitos outros, alguns confiáveis ​​e outros não confiáveis ​​– faça sua lição de casa.

<Editar> Aqui está um tutorial passo a passo muito completo explicando como você usaria um certificado SSL no IIS.</Edit>

Eu venho com uma resposta muito boba para meu cliente

Eu tentei codificar as informações no ASPX com base64 como

string encoded = Convert.ToBase64String(Encoding.UTF8.GetBytes("Something"))

e decodificar os dados com JQuery .Base 64 Plugin ,

O ASPX é como:

<span class="decoding"><%=encoded%></span>

com script jQuery para levar todo o elemento.

$(function() {
        $.base64.is_unicode = true;
        $(".decoding").each(
            function() {
                $(this).html($.base64.decode($(this).html()));
            }
        );
 });

Portanto, os dados de origem parecerão uma string sem sentido, que é o meu cliente deseja. e com algum javascript do mal para evitar a impressão e limpeza do usuário do usuário.

Concluí um site com usabilidade zero e ainda não posso impedir nada! Bem feito :)

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