We use can and can't to talk about someone's skill or general abilities: If Jones was at work until six, he couldn't have done the murder. We use can't have or couldn't have to say that a past event was impossible: (= It was sometimes very cold there in winter.) We use could to make general statements about the past: Where are they? They could have got lost. We use could have to make guesses about the past: We use can't or cannot to say that something is impossible: (= It is sometimes very cold here in winter.)
We use can to make general statements about what is possible: We use could to show that something is possible, but not certain: Level: beginner Possibility and impossibility