Why don't my adbkey fingerprints match? When I attempt to connect to my phone via adb it tells me my public key's fingerprint is this:



But on my computer, per this post, my public key's fingerprint is 

will@linux:~$ awk '{print $1}' &lt; ~/.android/adbkey.pub | openssl base64 -A -d -a | openssl md5 -c
(stdin)= 3c:be:86:c7:68:f4:36:7f:f9:d7:29:92:2d:d0:3b:0d


which is different, and also much shorter than the fingerprint displayed on the phone (32 characters long vs 64 for the one displayed on the phone). Does android now use a different method of generating the fingerprint than the one in the linked thread?

I'm running android 5.0.1 with adb 1.0.36, revison 7.0.0_r1.

This is the full public key for reference:


  QAAAAJXI4EVDPeAUk18A1RBUobHqLB2V+syZaJxs3XDwX9aaIurNRF4gmmVUFo8CLYeteGVta2q/enn4HrSCw5VEJ2V2ByyhN9Obl2jhU3jJtQmiLUUkDOjHriJ7c8WQOfqkq5/DJPpAxIzI3Qlalr6Jrb9SIE0iEoIlNl5xd9tIYQgBcECMHodciV0qG8hlDkY3vXQyMJfNQ5Y1EkPf2eyeRS+h/8kViz1tLbcxoCoBwQehDeaQzCb3ACY8KV4If02i/wWy0La5m5CVvGsGCGZfoU7klPxzYqkA5fGJ03OTWI1SxsIqjwGzM/xlS40Vz6gfCODJxWq6WL5qTJgTusKbx77zJQqwj6nt5cvLOZVxVCIqticF9njcIDr1XIi79JnuBaZfr2X/IX1VJyj30T8npEFyR7IN//pY1knM6YPfmwQ6K2ynFW7id8uUbrxxqKW0aBypzPC9y4vzbFxAaQI3Ck6dpqNjvI4M+BAVPK3PdgEtxwVOU6z//oLUVsygEOtfyl5ttwd2Ni/EcQLp9zIYskwIkETHcBR56G4tv+vuL6qq7lH95IInA8sUjuz3+5daSCXFSfEkXsAobSa1EmYy3gwuBwpO1tLH+wjIH7M2w40KNu4YxRb2TW+YqPGw6c2/l5CdpEdXmCzbRN1ZjtfhEOH+WRTsdAwigx/uw/t5YjFZNj3TMAEAAQA=
  will@linux
With try-and-error (actually on first attempt, which shows it was not pure lack): your fingerprint shown on android device is one that can be created using sha256 hash-function, that is awk '{print $1}' &lt; ~/.android/adbkey.pub | openssl base64 -A -d -a | openssl sha256 -c.  

Adb enhanced security (sha256 much better and modern than md5).

$ cat test.pub | openssl base64 -A -d -a |openssl sha256 -c
(stdin)= bc:67:e2:fc:24:0b:69:17:c2:34:cd:16:49:0d:8a:f0:af:d7:28:1a:1e:75:6c:d0:20:65:1f:77:94:a5:0a:53