Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Engenharia Reversa 
A engenharia reversa ou engenharia reversa é o processo realizado com o objetivo de 
obter informações ou um projeto de um produto para determinar seus componentes e 
como eles interagem e qual foi o processo de fabricação. 
 
Atualmente (início do século 21), os produtos de engenharia reversam mais comumente 
são programas de computador e componentes eletrônicos, mas na verdade qualquer 
produto pode sofrer engenharia reversa. 
O método tem esse nome porque se move na direção oposta das tarefas comuns de 
engenharia, que consistem no uso de dados técnicos para produzir um determinado 
produto. Em geral, se o produto ou outro material que foi submetido à engenharia reversa 
foi obtido corretamente, o processo é legítimo e legal. 
Da mesma forma, produtos genéricos criados a partir de informações obtidas na 
engenharia reversa podem ser fabricados e distribuídos legalmente, como é o caso de 
alguns projetos de software livre amplamente conhecidos. 
O programa Samba é um exemplo claro de engenharia reversa, pois permite que os 
sistemas operacionais UNIX compartilhem arquivos com os sistemas Microsoft 
Windows. O projeto Samba teve que investigar informações confidenciais (não 
divulgadas ao público em geral pela Microsoft) sobre aspectos técnicos relacionados ao 
sistema de arquivos do Windows. 
O projeto WINE faz o mesmo para o conjunto de API do Windows e OpenOffice.org com 
os próprios formatos do Microsoft Office, ou é feito para entender a estrutura do sistema 
de arquivos NTFS e, assim, ser capaz de desenvolver drivers para leitura e escrita nele 
(principalmente para sistemas baseados em GNU / Linux). 
A engenharia reversa é um método de resolução. Aplicar a engenharia reversa a algo 
significa aprofundar no estudo de seu funcionamento, a ponto de podermos entender, 
modificar e aprimorar esse modo de operação. 
Mas esse termo não se aplica apenas a software, mas o estudo de todos os tipos de 
elementos (por exemplo, equipamentos eletrônicos, microcontroladores ou objetos de 
fabricação de qualquer tipo) também é considerado engenharia reversa. E 
m vez disso, diríamos que a engenharia reversa é anterior ao nascimento do software, 
sendo uma possibilidade disponível para as empresas para a produção de bens, copiando 
desde o próprio surgimento da engenharia. 
No caso específico do software, a engenharia reversa é conhecida como a atividade que 
trata de descobrir como funciona um programa, função ou característica cujo código-fonte 
não está disponível, a ponto de poder modificar esse código ou gerar seu próprio código 
que cumpra as mesmas funções. 
A grande maioria dos softwares pagos inclui em sua licença uma proibição expressa de 
engenharia reversa de seu código, na tentativa de evitar que seu código seja modificado 
e, portanto, os usuários tenham que pagar se quiserem usá-lo. 
A engenharia reversa nasceu durante a Segunda Guerra Mundial, quando os exércitos 
inimigos apreenderam suprimentos de guerra, como aviões ou outras máquinas de guerra 
para melhorar os seus próprios por meio de análises exaustivas. 
A figura a seguir mostra os processos que a engenharia direta segue, se seguirmos esse 
caminho "para trás" (ou ao contrário), faremos a engenharia reversa, se continuarmos com 
o caminho e propormos mudanças (ou melhorias), à direita, esse caminho nos leva à 
reengenharia, se não alterarmos o conteúdo dos modelos obtidos durante os processos de 
engenharia reversa e seguirmos o caminho da esquerda, que se chama desenvolvimento 
de uma cópia.

Mais conteúdos dessa disciplina