CarrierEdit
A portadora é o sinal, fluxo, ou arquivo de dados no qual os dados ocultos são ocultos, fazendo modificações sutis. Exemplos incluem arquivos de áudio, arquivos de imagem, documentos e arquivos executáveis. Na prática, a portadora deve parecer e funcionar da mesma forma que a portadora original não modificada, e deve parecer benigna para qualquer um que a inspecione.
As propriedades certas podem levantar suspeitas de que um arquivo está carregando dados ocultos:
- Se os dados ocultos forem grandes em relação ao conteúdo da portadora, como em um documento vazio que é um megabyte em tamanho.
- O uso de formatos obsoletos ou extensões mal suportadas que quebram ferramentas comumente usadas.
É um requisito criptográfico que a portadora (por exemplo, foto) seja original, não uma cópia de algo publicamente disponível (por exemplo descarregada). Isto porque os dados da fonte disponível publicamente poderiam ser comparados com a versão com uma mensagem oculta incorporada.
Há um requisito mais fraco de que a mensagem incorporada não altere as estatísticas da portadora (ou outras métricas) de tal forma que a presença de uma mensagem seja detectável. Por exemplo, se os bits menos significativos do canal vermelho da câmera pixel de uma imagem tem uma distribuição gaussiana dado um campo colorido constante, uma esteganografia simples que produz uma distribuição aleatória destes bits poderia permitir a discriminação de imagens stego a partir de imagens inalteradas.
O volume de mídia moderna (ca. 2014) e de alta largura de banda inane (por exemplo youtube.com, fontes bittorrent. eBay, Facebook, spam, etc.) oferece ampla oportunidade para comunicação encoberta.
ChainEdit
Dados ocultos podem ser divididos entre um conjunto de arquivos, produzindo uma cadeia de portadoras, que tem a propriedade de que todas as portadoras devem estar disponíveis, não modificadas e processadas na ordem correta, a fim de recuperar os dados ocultos. Este recurso adicional de segurança normalmente é conseguido por:
- utilizando um vetor de inicialização diferente para cada portadora e armazenando-a dentro das portadoras processadas -> CryptedIVn = Crypt( IVn, CryptedIVn-1 )
- utilizando um algoritmo de criptografia diferente para cada portadora e escolhendo-o com um algoritmo equiprobabilístico dependente de ordem de cadeia
Robustez e criptografiaEditar
Ferramentas deteganografia visam garantir robustez contra os métodos forenses modernos, como a esteganálise estatística. Tal robustez pode ser obtida por uma mistura equilibrada de:
- um processo de criptografia baseado em fluxo;
- um processo de branqueamento de dados;
- um processo de codificação.
Se os dados forem detectados, a criptografia também ajuda a minimizar os danos resultantes, uma vez que os dados não são expostos, apenas o fato de que um segredo foi transmitido. O remetente pode ser forçado a descriptografar os dados uma vez descobertos, mas a criptografia negável pode ser aproveitada para fazer os dados descriptografados parecerem benignos.
Um forte software de esteganografia depende de uma arquitetura multicamadas com um processo de obscurecimento profundo e documentado.
Motor portadorEditar
O motor portador é o núcleo de qualquer ferramenta de esteganografia. Diferentes formatos de arquivo são modificados de diferentes maneiras, a fim de inserir dados escondidos dentro deles. Os algoritmos de processamento incluem:
- Injeção (suspeito por causa do incremento de tamanho de arquivo não relacionado ao conteúdo)
- Geração (suspeito por causa da rastreabilidade das portadoras geradas)
- Substituição de dados auxiliares e metadados
- LSB ou substituição adaptativa
- Manipulação de espaço de frequência