Hello all. I've just recently found this chat but have been involved in device fingerprinting for 6+ months now. Me and my team recently did some work on determining whether a mobile device is a real mobile device or an emulator. I would be happy to share my results if anyone is interested. It is not perfect but basically it relies on the number of calculations or speed of canvas rendering. Even on a low quality laptop the laptop running the emulator outperformed many smartphones. Only the most expensive phones (Android) were able to give similar results. If you use a quality desktop with graphics cards, i7, etc it is not comparable.
I wanted to ask if anyone has experience with TCP/IP fingerprinting? I believe ThreatMetrix uses it. From a few days of research I have found you can determine a few things from the data such as OS. I am working on a solution to beat proxies (other than a database of ips).