My hosting plan is pay-as-you-go. Will bandwidth cost more for https since it's encrypted? Example: will a 100MB file end up using more than 100MB of bandwidth?
Não. As cifras de bloco ou fluxo que são usadas pelo SSL / TLS para criptografar os dados em trânsito adicionarão, no máximo, um punhado de bytes ao tamanho de transferência do arquivo.
I understand that http is faster, but is https similar in speed after all the initial server handshake stuff? (note: I am using CDN)
Sim. A criptografia exige um tempo extra de CPU no servidor e no cliente, mas em CPUs modernas o impacto é bastante baixo. Desde que o seu cliente e servidor não estejam ligados à CPU, a transferência criptografada terá praticamente a mesma velocidade que a não criptografada.
My URL given to download the file will contain a signature, etc. to verify that only the person who purchased can download. Should I use https to keep this signature secure?
Sim, o URL que está sendo visitado é protegido de ponta a ponta do cliente para o servidor por SSL / TLS - a exceção aqui é que a parte do nome do host do URL não é necessariamente segura, mas no seu caso isso não deve ser um problema. Desde que o sistema cliente não seja comprometido ou que esteja usando um servidor proxy mal-intencionado, os dados estarão seguros em trânsito.
If I were to use http, would the file transferred be secured from hackers?
Não. O tráfego HTTP está completamente desobstruído; qualquer pessoa no mesmo segmento de rede que o cliente baixando o arquivo (ou o mesmo café wifi), assim como qualquer pessoa com acesso a qualquer infraestrutura de rede entre o cliente e o servidor é capaz de ver a solicitação completa e a resposta completa. O SSL também fornece garantia adicional ao cliente de que o sistema ao qual ele está se conectando é o que diz ser, em vez de um servidor em potencial do invasor. Se os dados que estão sendo transferidos no download ou a URL para solicitar o download forem confidenciais, criptografe-os.