There is no way, to know, how a private key was generated. That is just not possible. Unless we are using your favorite tool: magic.
First, a quote on magic: "Any sufficiently advanced technology is indistinguishable from magic."
So, let's start with what we know:
- The number of freely and easily available software packages that will generate a key for you
- The number of times that a download on those were recorded
- The release dates of these
- The number of hardware devices that will do the same
- The approximate number sales
- The release dates of these
- The number of total unique bitcoin addresses that had been seen transacting by each of the dates above
From that, I think we can establish a lower and an upper bound... and make a real good guess so as to the vulnerability of each wallet - from which we can guage the level of threat to the network.
Which is, in my opinion, better than that bad guy in "The Matrix"'s favourite tool: Ignorance.
And this is just measuring one metric: Key sources.