Just to clarify, was it actually backfiring? Or was there multiple momentary losses of power? The condition your describing sounds like 2 things. Yes, a crank sensor. Perhaps though, it threw a can code because the timing chain is about to $hit the bed as well.