본문 바로가기

개인공부

C#은 리버스가 된다??

지난 주 회의에서 

C#은 리버스가 된다는 얘기가 있었습니다.

 

리버스 엔지니어링이란

만들어진 프로그렘을 디컴파일링하는 것으로,

 

최초에 만들어진 코드와 약간 다를지는 몰라도

어떻게 작동하는지 알 수 있고

소스를 뽑고, 코드를 복사할 수 있는 행위입니다.

 

특히나 .Net Framework로 제작된 C#프로그렘은

구글링하면 간단히 찾을 수 있는 디컴파일러로도

쉽게 노출 됩니다.

 

그러기에 C#으로 프로그렘을 만들 경우

보안상 중요한 부분은 Native C++ / C++/CLI Wrapper Class 단계를  거쳐

코드를 지킨다고 합니다.

 

C++또한 디컴파일링이 가능하지만

어셈블리어로 밖에 되지 않는다고합니다.