Assinatura de Código
Quando se compra algum produto em uma loja física a procedência deste produto é obvia. Os consumidores sabem quem é o fornecedor do produto e podem verificar se a embalagem foi violada ou se o produto está danificado.
Já os consumidores de softwares na internet não tem a certeza de sua procedência ou se alguém alterou o seu conteúdo para incluir um código malicioso.
Ao assinar um software com um certificado do tipo Code Signing, é possível garantir a sua procedência e que o mesmo não foi alterado nem corrompido desde que foi criado.
Dessa forma, os usuários que efetuam o download de softwares assinados com um certificado Code Signing são beneficiados, pois sabem quem publicou o software e que o código não foi alterado.
Índice
Vantagens
- Garantia de que o programa não foi modificado após a sua assinatura. Sendo assim, garante também que não foi infectado por vírus.
- Possibilidade de identificar o fornecedor do programa antes de executá-lo.
Obtenção do Certificado
O certificado Code Signing é obtido através de uma Autoridade Certificadora (CA) reconhecida e homologada internacionalmente. Durante o processo de geração do certificado, a Autoridade Certificadora verifica a identidade do fornecedor de software na Receita Federal e também através de ferramentas de terceiros (como listas telefônicas).
Validade do Certificado
A validade do certificado varia de 1 a 3 anos e quando a data de expiração for alcançada, um novo certificado deve ser adquirido pelo fornecedor de software. As assinaturas realizadas dentro do período em que o certificado esteve em vigência continuam funcionando.
Assinando o Código
A assinatura de programas destinados à plataforma Windows é realizada utilizando a tecnologia de assinatura Authenticode da Microsoft, através da ferramenta SignTool.
Assinatura LATROMI
A LATROMI passa a assinar todos os seus Executáveis e DLL's a partir da versão 3.5 do sistema. O processo de compilação e publicação de software passa a ser automatizado, e a assinatura é realizada imediatamente após a compilação do programa.
O nome de fornecedor utilizado na assinatura é LATROMI Tecnologia de Dados Web LTDA - ME, e pode ser verificado nas propriedades do arquivo, na aba Assinaturas Digitais.
O que muda?
Download
Na maioria das vezes, ao realizar o download de um programa não assinado, o navegador avisa o usuário que o programa pode ser perigoso. Isso porque, não é possível verificar o fornecedor.
O mesmo arquivo depois de assinado, não apresenta nenhum mensagem.
Execução
Dependendo do nível de proteção em que o Windows está operando, ele pode solicitar uma confirmação antes de executar um programa. Geralmente, essa é a configuração padrão do sistema operacional.
Quando o programa não está assinado, fica difícil para o usuário determinar a integridade do mesmo, pois não pode identificar o fornecedor. Quando o programa está assinado, o usuário pode verificar a identidade do fornecedor, e neste caso, qualquer problema que o programa possa vir a causar, é de inteira responsabilidade do fornecedor.
Verificando a Assinatura
A assinatura de um programa pode ser verificada nas propriedades do arquivo, na aba Assinaturas Digitais.
Os programas distribuídos pela LATROMI, possuem duas assinaturas: Uma com o algorítimo de assinatura SHA1 e outra com SHA256, conforme pode ser observado na imagem abaixo:
Considerações Finais
A assinatura de código por si só não garante a qualidade ou relevância de um software, mas serve para identificar um fornecedor no qual o usuário confie. Se o usuário confia no fornecedor, pode executar o programa tendo a certeza de que o programa realmente foi publicado e distribuído por ele, e que desde então, não sofreu alterações.
Se a partir da versão 3.5 do sistema LATROMI, a assinatura digital não estiver presente no programa que você recebeu, não execute-o. Neste caso, entre em contato conosco através do e-mail suporte@latromi.com.br para reportar o problema.