Proteger chaves privadas

Melhor práticas de assinatura de código: Gere e armazene chaves privadas de forma segura

A DigiCert recomenda que os desenvolvedores tomem precauções ao implementar seu processo de assinatura de código e proteger as chaves privadas associadas aos seus certificados de assinatura.

Recomendações

Acesso limitado às chaves

Mantenha controles de acesso e prestação de contas das chaves de assinatura de código e limite sua distribuição. Isto lhe ajudará a garantir prestação de contas estrita para o uso de chaves.

Proteja fisicamente o dispositivo de armazenamento de chaves em um contêiner trancado

  • Certifique-se de que dispositivos de armazenamento de chaves não sejam deixados em mesas, gavetas destravadas ou onde possam ser facilmente retirados ou copiados.
  • Mantenha o dispositivo armazenando a chave privada em uma gaveta ou armário trancado ou atrás de portas trancadas.

Use uma senha forte para a chave privada

Escolha uma senha forte para a chave privada. Exigimos que tenha pelo menos dezesseis (16) caracteres gerados aleatoriamente contendo letras maiúsculas, minúsculas, números e símbolos para transportar chaves privadas. Palavras em um dicionário, derivados de IDs de usuário, sequências de caracteres comuns (por exemplo, "123456"), nomes próprios, localizações geográficas, acrônimos comuns, gírias, nomes de membros da família, aniversários etc. não devem ser usados.

Armazenamento seguro para chave privada

Armazene com segurança uma chave privada usando um dispositivo criptográfico certificado FIPS 140-2 Nível 2. A exportação da chave privada não é permitida por esses dispositivos criptográficos. A maioria desses dispositivos inclui autenticação multifator.

Certificado de assinatura teste x certificado de assinatura de liberação

A Microsoft recomenda uso de certificado de assinatura teste separado para assinar código pré-liberado. O certificado de assinatura de teste deve ser confiável apenas em ambiente de teste. Os certificados de assinatura teste podem ser certificado autoassinado ou derivar de CA de teste interno.

Informações adicionais

Para obter mais informações, a Microsoft fornece um documento de melhores práticas sobre assinatura de código.