News for hackers. Stuff that matters.
Re:Ghidra, NSA's reverse-engineering tool by stevefan1999 on Wednesday March 06, 2019 @02:20AM (#19316952)
Yes.

In fact, the essence of decompilation is a NP-Complete problem: Graph Isomorphism.

So far, our decompilers are just greedy scheme to approximate the original expressions as best as possible by treating each instruction as a tree then as a graph, but still even a single assignment could cause the entire outcome of the code to change a lot, let alone to correctly recognizing heavily optimized procedures.

Edit: Wiki said it is NP-Complete but I was pretty sketchy about it. I think the better wording should be "at least NP"

Re:Ghidra, NSA's reverse-engineering tool by praptak on Wednesday March 06, 2019 @03:08AM (#19317157)
Graph Isomorphism is not known to be NP-hard, that is we don't know a proof that a polynomial algorithm for GI implies NP=P. So it is "at most NP" rather than "at least NP", because GI is obviously in NP.