두 난독 관련 문의 :F # MSIL 난독
1) MSIL 대상 양식에서, 소스의 형태로, 또는 가까운 뭔가 F 번호를 다시 분해 할 수있는 도구가 있습니까? 이것은 모호함을 통한 보안 시도가 아니지만 일부 소스 코드를 "도난"으로부터 보호하고자합니다.
2) 나는 약간의 F # 컴파일러 출력을 간략하게 살펴본 결과 일반적으로 C#이 MSIL 중간 표현에 더 가깝기 때문에 C# 컴파일 된 코드를 분해하면 얻을 수있는 것과 비교하여 꽤 횡설수설 한 것처럼 보입니다. C# 컴파일러에서 본 부분적으로 맹 글링 된 코드는 반복자 (아마도 C# 5.0의 async) 일뿐입니다.
지금까지 필자의 생각은 F # 컴파일 된 코드가 합리적으로 "난독 화"되어 있지만 사실입니까? (나는 이것이 다소 주관적인 질문이라는 것을 알고있다.)
적들은 얼마나 좋은가? 유능한 맬웨어 분석가는 코드를 메모리 덤프에서 되돌릴 수 있습니다. IL은 신경 쓰지 마십시오. 누구로부터 당신의 근원을 "보호"하고 있습니까? –
잠재적 인 경쟁자. 미심쩍은 것보다는 안전 할 것 같지만 안전하다고 생각합니다. 코드를 쉽게 올바른 도구로 난독화할 수 없도록하려는 것입니다. 코드를 직접 작성하기가 쉽지 않을 것입니다. 멀웨어 분석가가 목표 범위에 있다고 생각하지 않습니다. F #에 대한 중간 수준의 이해를 가진 사람과 더 비슷합니다. :-) –
나는 그것이 모호하다고 말하지 않을 것이다. 방금 번역되었습니다. F # sugaring은 모두 실행 취소됩니다. 또한 디 컴파일을하면 F #에서 온 것이 분명하고 세미 경험이있는 F #/C# 개인은 디 컴파일 된 버전에서 F #을 다시 합성 할 수 있습니다. 발생하는 패턴이 있으며, 디 컴파일러가 수행하는 작업을 확인하고 상황이 어떻게 처리되는지 확인할 수있는 몇 가지 테스트 시나리오를 작성하면됩니다. – devshorts