6
Artificial Neural Networks Applied to Image Steganography A. S. Brandão and D. C. Jorge Abstract— This paper presents a technique for transmitting information efficiently and securely, hiding confidential messages on seemingly innocent messages using steganography. The insertion technique in the least significant bit is used to insert images into digital pictures or other secret watermark. Artificial Neural Networks are used in the process of withdrawal of encrypted information acting as keys that determine the existence of hidden information. Keywords—Artificial Neural Network, Digital Images, Steganography I. INTRODUÇÃO À ESTEGANOGRAFIA OS tempos atuais existem vários canais de comunicação disponíveis, tais como telefone, cartas, telegramas, e- mails e outros meios isentos de qualquer vigilância sendo passíveis de intervenções [1]. Devido a esta vulnerabilidade surge a necessidade de mecanismos eficazes de proteção durante a transmissão de informações confidenciais, que possam de contempladas somente às pessoas autorizadas [2]. A criptografia é a arte de se escrever uma mensagem na forma de cifras ou códigos, onde uma informação expressa com clareza é codificada segundo um algoritmo e somente pessoas autorizadas que possuam o algoritmo para realizar o processo inverso são capazes de decifrá-la. Esteganografia, por sua vez, é um ramo da criptografia, onde a principal diferença é que nesta última, a mensagem é apresentada de forma ilegível e este fato é de conhecimento de todos os usuários que tenha acesso a informação codificada [3]. A esteganografia é uma técnica utilizada para esconder informações confidenciais por meio de algoritmos computacionais carregando em uma mensagem dita como portadora uma mensagem confidencial. O objetivo é modificar a mensagem portadora de modo que o resultado desta transformação seja imperceptível aos olhos humanos. Comumente, as mensagens portadoras são imagens e a mensagem confidencial pode também ser uma imagem bem como uma cadeia de caracteres. Esteganografia deriva do grego, donde, estegano = esconder, mascarar e grafia = escrita, portanto é a arte da escrita oculta, ou de forma mais abrangente, é a arte da comunicação encoberta [4]. 1 A Fig. 1 representa o processo de inserção de dados em uma imagem portadora, ilustrando a imagem oculta na imagem original. ______________________________ A. S. Brandão, Universidade Federal de Viçosa (UFV), Viçosa, MG, Brasil, [email protected] D. C. Jorge, Universidade Federal do Triângulo Mineiro (UFTM), Uberaba. MG, Brasil, [email protected] A esteganografia pode também ser utilizada para confirmar a procedência de uma imagem ou secretamente anexar informações relevantes sobre a fonte ou aquisição da mesma. A ausência a imagem oculta ou sua deterioração significativa pode indicar a violação da imagem. Figura 1. Representação do processo de inserção de dados em uma imagem portadora (Fotografia de Julio Verne por Félix Nadar). No tocante a esteganografia, três aspectos devem ser considerados: capacidade, segurança e robustez. Capacidade a fim de definir quanta informação pode ser ocultada na portadora, segurança a fim de inviabilizar a interceptação da informação escondida, e robustez é a quantidade de modificação realizada na informação a ser escondida sem que esta seja destruída [5]. Em se tratado de marca d’água, o objetivo primordial é que o arquivo tenha uma robustez elevada, de tal forma que se esta for removida haverá uma degradação apreciável da portadora. Por outro lado, a esteganografia para transmissão de informações deve ser de alta segurança e de alta capacidade, tendo em vista que os dados secretos a serem transmitidos são frágeis, qualquer alteração na imagem pode destruí-los. A esteganografia de informação e a marca d’água se diferem no modo de transmissão. Na esteganografia, a informação é ocultada na portadora e na marca d’água, a presença visível é opcional. O método mais difundido de esteganografia em imagens digitais é o método de inserção no bit menos significativo (Last Significant Bit - LSB), onde uma imagem, de formato JPEG geralmente em escala de cinza, tem o seu LSB destinado a armazenar a informação secreta a ser enviada. A vantagem de se utilizar uma imagem com compressão JPEG é que a imagem original não pode ser reconstituída, pois no processo de compressão existem perdas de informação, inserindo, portanto, ruídos na imagem criada [6]. Estes ruídos são extremamente úteis, pois serão os responsáveis por dificultar a identificação das mensagens. II. REDES NEURAIS ARTIFICIAIS As Redes Neurais Artificiais (RNA) são estruturas capazes de aprender, memorizar e generalizar determinadas situações e N

Artificial Neural Networks Applied to Image Steganography · Esteganografia proposta, com o processo de inserção de informação na imagem portadora e extração da informação

Embed Size (px)

Citation preview

Artificial Neural Networks Applied to Image Steganography

A. S. Brandão and D. C. Jorge

Abstract— This paper presents a technique for transmitting information efficiently and securely, hiding confidential messages on seemingly innocent messages using steganography. The insertion technique in the least significant bit is used to insert images into digital pictures or other secret watermark. Artificial Neural Networks are used in the process of withdrawal of encrypted information acting as keys that determine the existence of hidden information.

Keywords—Artificial Neural Network, Digital Images, Steganography

I. INTRODUÇÃO À ESTEGANOGRAFIA OS tempos atuais existem vários canais de comunicação disponíveis, tais como telefone, cartas, telegramas, e-

mails e outros meios isentos de qualquer vigilância sendo passíveis de intervenções [1]. Devido a esta vulnerabilidade surge a necessidade de mecanismos eficazes de proteção durante a transmissão de informações confidenciais, que possam de contempladas somente às pessoas autorizadas [2].

A criptografia é a arte de se escrever uma mensagem na forma de cifras ou códigos, onde uma informação expressa com clareza é codificada segundo um algoritmo e somente pessoas autorizadas que possuam o algoritmo para realizar o processo inverso são capazes de decifrá-la.

Esteganografia, por sua vez, é um ramo da criptografia, onde a principal diferença é que nesta última, a mensagem é apresentada de forma ilegível e este fato é de conhecimento de todos os usuários que tenha acesso a informação codificada [3].

A esteganografia é uma técnica utilizada para esconder informações confidenciais por meio de algoritmos computacionais carregando em uma mensagem dita como portadora uma mensagem confidencial. O objetivo é modificar a mensagem portadora de modo que o resultado desta transformação seja imperceptível aos olhos humanos. Comumente, as mensagens portadoras são imagens e a mensagem confidencial pode também ser uma imagem bem como uma cadeia de caracteres. Esteganografia deriva do grego, donde, estegano = esconder, mascarar e grafia = escrita, portanto é a arte da escrita oculta, ou de forma mais abrangente, é a arte da comunicação encoberta [4].1

A Fig. 1 representa o processo de inserção de dados em uma imagem portadora, ilustrando a imagem oculta na imagem original.

______________________________

A. S. Brandão, Universidade Federal de Viçosa (UFV), Viçosa, MG, Brasil, [email protected]

D. C. Jorge, Universidade Federal do Triângulo Mineiro (UFTM), Uberaba. MG, Brasil, [email protected]

A esteganografia pode também ser utilizada para confirmar a procedência de uma imagem ou secretamente anexar informações relevantes sobre a fonte ou aquisição da mesma. A ausência a imagem oculta ou sua deterioração significativa pode indicar a violação da imagem.

Figura 1. Representação do processo de inserção de dados em uma imagem portadora (Fotografia de Julio Verne por Félix Nadar).

No tocante a esteganografia, três aspectos devem ser considerados: capacidade, segurança e robustez. Capacidade a fim de definir quanta informação pode ser ocultada na portadora, segurança a fim de inviabilizar a interceptação da informação escondida, e robustez é a quantidade de modificação realizada na informação a ser escondida sem que esta seja destruída [5].

Em se tratado de marca d’água, o objetivo primordial é que o arquivo tenha uma robustez elevada, de tal forma que se esta for removida haverá uma degradação apreciável da portadora. Por outro lado, a esteganografia para transmissão de informações deve ser de alta segurança e de alta capacidade, tendo em vista que os dados secretos a serem transmitidos são frágeis, qualquer alteração na imagem pode destruí-los.

A esteganografia de informação e a marca d’água se diferem no modo de transmissão. Na esteganografia, a informação é ocultada na portadora e na marca d’água, a presença visível é opcional.

O método mais difundido de esteganografia em imagens digitais é o método de inserção no bit menos significativo (Last Significant Bit - LSB), onde uma imagem, de formato JPEG geralmente em escala de cinza, tem o seu LSB destinado a armazenar a informação secreta a ser enviada. A vantagem de se utilizar uma imagem com compressão JPEG é que a imagem original não pode ser reconstituída, pois no processo de compressão existem perdas de informação, inserindo, portanto, ruídos na imagem criada [6]. Estes ruídos são extremamente úteis, pois serão os responsáveis por dificultar a identificação das mensagens.

II. REDES NEURAIS ARTIFICIAIS As Redes Neurais Artificiais (RNA) são estruturas capazes

de aprender, memorizar e generalizar determinadas situações e

N

problemas a elas apresentadas [7]. As RNA são sistemas paralelos compostos por unidades

elementares, denominadas neurônios, que calculam determinadas funções matemáticas, geralmente não-lineares, cujo funcionamento é inspirado no funcionamento do neurônio biológico.

As soluções por meio das RNA podem se equivaler ou mesmo superar as soluções apresentadas pela programação tradicional. O procedimento pelo qual uma RNA encontra as soluções passa por um processo de aprendizado, onde uma série de amostras de entrada e saída é apresentada às suas unidades elementares que por si só encontram as características necessárias para representar a informação fornecida, e posteriormente, definir o sistema resultante.

As RNA têm como capacidade aprender com os exemplos que lhe são apresentados e generalizar a informação aprendida, sendo possível, portanto, a classificação de amostras de dados desconhecidos, mas que se assemelhe com a informação contida na etapa de treinamento. As RNA são capazes de extrair características que não estejam explicitamente apresentadas sob a forma de exemplos (ou amostras de entrada).

Devido a estas características, as RNA podem ser treinadas para assimilar o processo de criação de chaves criptográfica utilizadas em esteganografia e por fim realizar o processo de inserção de dados confidenciais, como também extração desses dados. Deve-se observar que a utilização de RNAs para análise de esteganografia tem sido realizada por diversos estudos [8].

III. MÉTODO PROPOSTO O objetivo geral deste trabalho é apresentar um algoritmo

capaz de ocultar informações (imagens digitais) em outras imagens digitais, utilizando técnicas de esteganografia. E posteriormente utilizando Redes Neurais Artificiais identificar a presença de uma informação oculta e por fim extraí-la, para que seja possível a confirmação do usuário receptor.

Na criptografia de chave secreta tanto a pessoa que transmite a mensagem quanto a que a recebe, devem possuir uma mesma chave. Assim, o transmissor transforma a mensagem original em um conjunto cifrado de dados e o receptor utiliza essa chave para realizar o processo inverso obtendo por fim obtendo a informação original. Todavia é um processo assaz complicado encontrar uma chave extremamente segura [9].

O conceito de chave pública e privada foi concebido no sentido de tornar a etapa de decifrar a informação mais complicada, pois para obter a informação original são necessárias ambas as chaves. Uma vez conhecendo a chave privada é uma tarefa simples encontrar a pública, contudo o inverso requer muito esforço computacional.

Tendo em vista a complexidade de se decifrar uma chave privada, este projeto foi elaborado com ambas as chaves. A chave pública é definida por um algoritmo que realiza a inserção do bit menos significativo em uma imagem JPEG em escala de cinza, formato escolhido em relação a suas vantagens de outros como o GIF devido a robustez e

invisibilidade [10]. A chave pública foi definida desta forma, pois este método é, conforme supracitado, um dos mais difundidos.

A chave privada por sua vez são estruturas neurais responsáveis, primeiramente, na identificação da presença de dados ocultos na imagem recebida e, posteriormente, na restauração da imagem transportada caso exista.

A Fig. 2 apresenta o processo de inserção da informação na imagem portadora. Os ramos nomeados por LSB e RNA são as chaves pública e privada, respectivamente.

Figura 2. Esteganografia proposta, com o processo de inserção de informação na imagem portadora e extração da informação.

Foi desenvolvido um algoritmo para mesclar a informação digital na forma de uma imagem em preto e branco em outra imagem tipo JPEG em escala de cinza de oito bits. Pelo fato da informação ser transmitida no bit menos significativo (LSB), tornou-se necessário reservar este espaço. A expressão (1) realiza a operação matemática responsável por tornar nulo o LSB da portadora.

=

2)(.2)( nxny (1)

Como é possível verificar na Fig. 2, a informação a ser transmitida se apresenta na forma codificada. Esta codificação é realizada por um algoritmo cujo objetivo é embaralhar ao máximo a informação. Para efeito de teste do sistema foi realizada uma codificação binária de três bits para cada pixel da imagem preto e branco. A Tabela I explicita esta codificação.

TABELA I CODIFICAÇÃO DA INFORMAÇÃO A PRIORI

Imagem N(x,y)

Imagem Resultante I(x1,y1)

Pixel(x,y) Pixel(x,y) Pixel(x+1,y) Pixel(x+2,y) 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 1 1

Um parâmetro importante que pode ser armazenado na própria informação secreta I(x1,y1) é a dimensão desta, para

que não seja necessário percorrer toda a amostra portadora durante o processo de extração.

As dimensões da amostra secreta foram codificadas em binário e destinados 10 bits tanto para a largura quanto para a altura. Na horizontal (largura), a dimensão foi armazenada partindo do segundo pixel do canto superior esquerdo da imagem e se propagando para direita. O segundo pixel é o bit mais significativo e o décimo primeiro o menos significativo. Para armazenar a dimensão vertical (altura), o processo é similar ao da horizontal, modificando simplesmente a direção da propagação que desta vez se encaminha para baixo.

Devido à razão de transformação de três para um, sendo a informação original N(x,y), a informação resultante tem sua largura triplicada e a altura permanece constante, ou seja, I(x1,y1), para x1 = 3.x e y1 = y.

A imagem portadora P(x,y) resultante da operação da equação (1) apresenta somente zeros no LSB, caso a informação I(x,y) não tenha as mesmas dimensões de P(x,y), esta última terá um grande emaranhado de pixel enegrecidos e a presença de uma imagem oculta é facilmente detectada. A Fig. 3 demonstra este tipo de situação.

Figura 3. Amostra codificada inserida no LSB da portadora.

Na imagem da Fig. 3, não seria ousadia imaginar que há alguma informação sendo enviada no canto superior esquerdo. Para evitar evidências como esta, é realizada uma codificação de zeros segundo a tabela I no LSB da portadora e assim obter uma imagem similar à Fig. 4.

Figura 4. Codificação de zeros do LSB da portadora.

Após esta codificação a priori tanto da informação quanto da portadora, sera possível sua inserção no LSB. A operação realizada é uma soma convencional pixel a pixel. Se P(x,y) representa a portadora e I(x,y) a informação secreta, teremos:

( , ) = ( , ) + ( , ) (2)

Após a operação da equação (2), a imagem se encontra cifrada (ou codificada) pronta para ser transmitida aos

destinatários. Todavia o usuário pode receber uma imagem natural sem qualquer modificação e realizar buscar sem sucesso de uma informação escondida por esteganografia que na verdade não existe. Para minimizar estas ocorrências, uma técnica que pode ser observada são as bordas das imagens [11]. Toma-se o valor E(x,y) utilizando para armazenar um código denominado chave de presença apresentada na Tabela II. A chave de presença a ser inserida em E(x,y) é escolhida de forma aleatória.

TABELA II CODIFICAÇÃO DA CHAVE DE PRESENÇA.

Borda

SE SD IE ID CP 0 0 1 1 1 1 1 0 1 1 2 1 1 0 1 3 1 1 1 0

CP - Chave de presence SE – Borda Superior Esquerda SD – Borda Superior Direita IE – Borda Inferior Esquerda ID – Borda Inferior Direita O receptor ao receber a imagem cifrada deve realizar o

processo inverso da codificação para assim obter a informação.

Foram elaboradas três estruturas neurais para realizar o processo inverso ao da codificação, uma para identificar a chave de presença, outra para busca a informação do LSB e outra para retirar a codificação a priori da imagem I(x,y).

Neste trabalho foram adotadas RNA de múltiplas camadas: entrada, oculta e saída. Como ilustrado na Fig. 5. A taxa de aprendizagem das RNA para o algoritmo back-propagation de Levemberg-Marquard foi 0,010. O número de ciclos para busca da convergência foi 100 para um erro médio quadrático de 10-5. Para as camadas intermediárias e de saídas foram utilizadas função sigmóides como função de ativação.

Figura 5. Estrutura da Rede Neural Artificial de múltiplas camadas.

Para a identificação da chave de presença uma RNA com a

estrutura [4 5 1], ou seja, quatros parâmetros de entrada, cinco neurônios na camada oculta (ou intermediária) e um neurônio na camada de saída. O treinamento foi realizado com intuito de aprender e generalizar as informações da Tabela II, a resposta da RNA era verdadeira (ou igual a um) se fosse detectado uma das chaves de presença, e falso (ou igual a zero) caso contrário. Caso a resposta da RNA fosse falsa, o

programa de identificação e extração de informação oculta por esteganografia seria abortado e retornaria a informação “Imagem não encontrada”. Cabe salientar que outras estruturas foram analisadas e podem ser implementadas da mesma forma, com a possibilidade da mudança no número de neurônios ou da função de ativação.

Para o caso de uma resposta verdadeira da RNA, o processo continuaria e uma nova RNA seria responsável pela extração da informação.

Esta nova RNA, cujo objetivo é extrair a informação do LSB de cada pixel da imagem recebida, apresenta a estrutura [8 2 1]. O treinamento desta estrutura foi realizado de forma a apresentar uma saída Booleana de forma semelhante à RNA anterior. Para esta RNA dá-se o nome de chave pública, pois as informações de LSB são passíveis do conhecimento de toda e qualquer pessoa.

E, finalmente, uma RNA denominada chave privada é treinada para realizar a operação inversa à apresentada na tabela 1. A estrutura utilizada foi [3 3 1]. A chave privada além da RNA consta de um algoritmo de busca das dimensões horizontal e vertical da informação I(x1,y1) para que não seja necessário realizar a busca em toda imagem E(x,y) como citado anteriormente.

Em posse das dimensões de I(x1,y1) é feito um laço com o objetivo de percorrer a imagem E(x,y) até o limite destas dimensões e aplicar a cada trio de pixel a chave privada e reconstituir a imagem oculta N(x,y) que foi transportada.

IV. EXEMPLO DE APLICAÇÃO Um exemplo de aplicação com o objetivo de ocultar a

imagem da Fig. 6 que passa por uma codificação a priori cuja imagem resultante pode ser visualizada na Fig. 7, para a imagem portadora da Fig. 8 é apresentado a seguir.

Figura 6. Informação a ser transmitida.

Como é possível verificar na Fig. 7 a imagem resultante

desta codificação é bastante indefinida podendo ser confundida com possíveis ruídos que porventura venham ser inseridos na portadora. Dessa forma é impossível detectar a imagem oculta sem recorrer a processos de análise da esteganografia.

A presença de alguma forma não aleatória na imagem, através de verificação de padrões ou histogramas, poderia detectar a presença de uma imagem oculta. Porém tal informação não implica na provável extração dessa informação escondida na imagem transmitida.

Figura 7. Codificação da informação utilizando a Tabela I.

As Figs. 8 e 9 se referem à portadora sem qualquer tipo de modificação e à portadora com a informação codificada inserida por esteganografia assistida pela técnica de LSB, respectivamente.

Figura 8. Imagem portadora (quadro “Independência ou Morte”-Pedro Américo 1888).

A discrepância existente entre as imagens é de difícil detecção ao olho humano. Podendo, portanto ser transmitida livremente pela internet sem levantar suspeita.

Figura 9. Imagem com a informação inserida (quadro “Independência ou Morte”-Pedro Américo 1888).

As informações contidas no LSB de cada pixel da imagem apresentada na Fig. 9 resultam na imagem da Fig. 10. Esta

informação é de domínio público e não tem representatividade significativa à priori, contudo para o receptor provido da chave privada, as operações realizadas pela RNA que constitui esta chave são capazes de retirar da portadora a imagem da Fig. 11.

Figura 10. Extração do LSB de cada pixel da imagem portadora.

Figura 11. Informação extraída com a utilização de Redes Neurais Artificiais.

A Fig. 11 é praticamente idêntica à Fig. 6 apresentando

pequenas imperfeições no canto superior esquerdo, resultado da inserção das dimensões da informação a ser transportada. Ambas as amostras necessitam da mesma quantidade em disco para serem armazenados.

V. CONCLUSÕES As RNA atuando como chaves privadas de esteganografia

são bastante eficientes. Com a ausência desta chave o processo de decodificação seria assaz complicado. Estas situações elevam a segurança do sistema de transmissão de dados por esteganografia de imagens. No tocante a informação a ser transmitida é interessante transmitir aquelas que não sejam bem definidas como por exemplos traços contínuos, contornos e ausência de detalhes, pois torna mais evidente a identificação de padrões, mesmo utilizando as codificações deste trabalho.

Ressalta-se ainda a possibilidade de utilizar diferentes estruturas e composições de RNAs, variando o número de camadas ocultas, as funções de ativação, entre outros parâmetros. O método proposto possibilita a utilização de infinitas chaves de combinação.

Utilizando esteganografia é possível ocultar outros tipos de arquivos como som e texto, pois a única consideração é que o dado binário seja inserido corretamente no LSB da portadora utilizando o método proposto.

O estudo proposto tem foco na inserção de marcas d´água e pequenos dados ocultos na imagem, não sendo realizados estudos para inserção de informação de alta definição ou de

grande volume. É de suma importância a qualquer nação resguardar seus

conhecimentos, indústrias, comércio e estratégias utilizando os recursos da esteganografia, porém deve-se manter o devido cuidado para que essas ferramentas não sejam utilizadas de forma criminosa ou inapropriada.

REFERÊNCIAS [1] A. L. B. Molina, A. F. Miguel, “Esteganografia em Diferentes Meios”,

Univerisdade de Brasília - UNB, 2003. [2] R. F. Moraes, “Construção de um Ambiente WEB com Ferramentas para

Estudo de Algoritmos de Criptografia Através do Matlab”, Projeto Final de Curso da Universidade Federal do Rio de Janeiro – Escola de Engenharia, 2004.

[3] F. L. T. Jascone, “Protótipo de Software para Ocultar Texto Criptografado em Imagens Digitais”, Projeto Final de Curso Universidade Regional de Blumenau – Ciência da Computação, 2003.

[4] R. Popa, “An Analysis of Steganographic Techniques”, M.S. thesis, Department of Computer Science and Software Engineering of The Polytechnic University of Timisoara, Timisoara, Romênia, 1998.

[5] N. Provos, P. Honeyman, “Detecting Steganographic Content on the Internet”, Center of Information Technology Integration, Report 01-11, University of Michigan, 2001.

[6] G. Berg, et. al, “Searching for Hidden Messages: Automatic Detection of Steganography”, Proceedings of the Fifteenth Conference on Innovative Applications of Artificial Intelligence, Acapulco, Mexico, 2003.

[7] A. P. Braga, et. al, “Redes Neurais Artificiais – Teoria e Aplicações”, Ed. LTC, 2000.

[8] J. Davidson, et. al, “An Artificial Neural Network for Wavelet Steganalysis”, Proceedings of SPIE - The International Society for Optical Engineering, vol. 5916, Mathematical Methods in Pattern and Image Analysis, 2005.

[9] H.Y. Kin, “Marcas D’água Frágeis de Autenticação para Imagens em Tonalidade Contínua e Esteganografia para Imagens Binárias e Meio-Tom”, Revista de Informática Teórica e Aplicada, Brasil, v. 10, n.1, p. 97-125, 2003.

[10] E. E. A. Elgabar, F. A. Mohammed, “JPEG versus GIF Images in forms of LSB Steganography”, International Journal of Computer Science and Network, v. 2, issue 6, 2013.

[11] J. Nitin, S. Meshram, S. Dubey, “Image Steganography Using LSB Edge – Detection Technique”, International Journal of Software Computer and Engineering, v. 2, issue 3, 2012.

Alexandre Santos Brandão é graduado em Engenharia Elétrica pela Universidade Federal de Viçosa em 2006, recebeu o título de Mestre em Engenharia Elétrica pela Universidade Federal do Espírito Santo em 2008 atuando em Robótica Móvel, nos seguintes temas: controle não linear e robótica cooperativa. Em 2013, recebeu o título de Doutor em Engenharia Elétrica nessa mesma universidade, em regime de

co-tutela com a Universidad Nacional de San Juan (UNSJ), Argentina, atuando no tema de Robótica Aérea. No Instituto de Automática (INAUT) da UNSJ, realizou parte das atividades de pesquisa de mestrado e de doutorado no âmbito do Colégio Doutoral Brasil-Argentina e recebeu o título de Doctor en Ingeniería de Sistemas de Control. Atualmente, é Professor Adjunto da Universidade Federal de Viçosa, em regime de dedicação exclusiva, no curso de Engenharia Elétrica, cujo cargo foi assumido em 2010, e coordenador do Núcleo de Especialização em Robótica (NERO). Sua área de pesquisa se concentra em robótica móvel e de reabilitação e controle de vôo autônomo de veículos aéreos não tripulados.

David Calhau Jorge é graduado em Engenharia Elétrica pela Escola de Engenharia de São Carlos - USP obtida em 1993, na mesma instituição concluiu o mestrado em 1997 e doutorado em 2003. Atuou como docente na Universidade de Uberaba, na Universidade Estadual de Maringá, na Universidade Federal de Viçosa onde foi Coordenador do Curso de Eng.

Elétrica da instituição, no CEFET-MG no Campus de Araxá como Coordenador do curso de Eng. de Automação Industrial. Atualmente é professor Adjunto da Universidade Federal do Triângulo Mineiro em Uberaba

- MG, onde foi Coordenador dos cursos de engenharia durante sua implantação, Coordenador do Curso de Engenharia Elétrica e exerceu o cargo de diretor pró-tempore por 2 anos do Instituto de Ciências Tecnológicas onde atualmente ministra aulas no curso de Engenharia Elétrica e atua no Mestrado em Inovação Tecnológica do Instituto. Sua área de pesquisa se concentra em aplicações de Redes Neurais Artificiais e Proteção de Sistemas Elétricos de Potência.