Um certificado auto-assinado fornece criptografia como um certificado normal. Mas não fornece a identificação usual. Mas a identificação adequada é essencial para o HTTPS, porque de outro modo a representação de um servidor e o homem nos ataques do meio são possíveis, o que, na verdade, torna a criptografia inútil.
Você também pode fornecer uma identificação adequada com um certificado auto-assinado, dando a todos que gostam de se conectar ao seu site as informações essenciais que o certificado deve ser esperado, ou seja, dando o próprio certificado ou a impressão digital. É claro que você deve dar isso de maneira segura (ou seja, não dentro da banda durante a conexão). Você também deve, de alguma forma, certificar-se de que o outro realmente compara o certificado ao esperado, em vez de apenas clicar nele. Isso funciona se apenas algumas poucas pessoas visitarem o site, mas não escalarão com mais visitantes.
Outro problema com certificados não emitidos por uma autoridade de certificação pública é quando a interceptação SSL é feita. Este é frequentemente o lugar nas empresas, mas também vários produtos antivírus fazem isso. Neste caso, os sites que usam um certificado que não pode ser verificado, muitas vezes, simplesmente são bloqueados pela interceptação SSL e seria necessário adicionar exceções explicitamente.