Como revogamos uma chave de assinatura de extras
Última atualização: 4 de outubro de 2026
Cada extra do Sekervia está assinado (Ed25519). A aplicação recusa qualquer extra cuja assinatura não corresponda a uma chave que conheça. Mas assinar não chega: o que importa é o que acontece no dia em que uma chave é perdida ou comprometida, e em quanto tempo.
O nosso compromisso
No prazo de 24 horas após a deteção de um problema, a chave em causa é retirada do Sekervia.
No prazo de 72 horas, é disponibilizada uma versão corrigida e assinada através da atualização automática.
Uma chave retirada é recusada definitivamente, mesmo que uma cópia antiga da aplicação ou um pacote ainda a apresente: o Sekervia mantém uma lista das chaves retiradas e consulta-a antes de qualquer outra verificação.
O que fazemos, passo a passo
1. Detetar — um controlo automático verifica, em cada versão, que cada extra distribuído está assinado por uma chave em vigor. Uma rotação mal feita fá-lo falhar.
2. Criar uma nova chave — a sua parte privada é guardada em segurança de imediato, antes de qualquer assinatura.
3. Substituir, não acrescentar — a chave antiga sai da aplicação e entra na lista das chaves retiradas.
4. Voltar a assinar cada extra oficial com a nova chave.
5. Provar — os testes verificam que nenhum extra tem uma chave retirada e que uma chave retirada nunca é reposta em serviço.
6. Distribuir a versão corrigida através da atualização assinada.
7. Informar — as notas de versão indicam a chave retirada, a data e o motivo. Um extra ainda assinado com ela deixa de ser carregado: é intencional.
O que já nos aconteceu
A 22 de setembro de 2026, ao tentarmos voltar a assinar um extra, constatámos que a parte privada de uma das nossas chaves, criada a 4 de setembro, tinha sido perdida: nunca tinha sido guardada em segurança. Nos minutos seguintes, foi posta em serviço uma nova chave, os extras foram novamente assinados e a chave antiga foi retirada. Nenhum extra foi assinado por terceiros.
Mas a perda só foi detetada 18 dias depois dos factos, porque nada verificava se a chave ainda existia. É por isso que o passo 2 passa a exigir que a chave seja guardada em segurança antes de qualquer assinatura.