Category Archives: Android

Two-factor Authentication on Mobile Devices

Lately I’ve been researching this more than usual partly due to building some services in Windows Azure where I want to provide secure and authenticated access. (And I don’t consider myself competent to build a fully hardened solution from scratch just because I know what hashing and salting of passwords means.) While looking into this I came across a nifty product series called YubiKey from http://www.yubico.com, and wanted to share some thoughts on these. If you’ve visited my blog before you might have noticed I’ve already covered client certificates a few times, which of course also meets the definition of two-factor, but this time around we’re looking at hardware for providing the additional factor.
(…)
Yubico is a company that provides key fobs/code generators that you can either integrate with your own systems, or use out-of-the-box for existing online services like LastPass, Google Apps, etc. To authenticate when using a YubiKey you have to provide both a password, (or pin code), and a uniquely generated password in addition to the user name. This concept in itself is nothing new, and the most well-known company in this space is probably RSA whom I gather a lot if IT Pros have come across a few times before already. There’s also a number of banks who provide key fobs for consumers to use for accessing their online banking services (often a non-branded type of key) – so pretty much everyone knows what it is more or less even though they aren’t necessarily exposed to all the technical details.

/CertSrv vs Mobile Devices

I mentioned in my last blog about Android Ice Cream Sandwich that it is now possible, (actually from Android 3.x Honeycomb), to enroll certificates directly from the /CertSrv web site onto your mobile device. (If you’re running a Microsoft CA of course.)

This is all nice and dandy, but it’s not like Android devices are the only devices you’re likely to be supporting. With the tablet varieties the split is something like 90/10 iPad vs “the rest”. However if you ever tried loading up /CertSrv on your iOS device or your Windows Phone you’ll have noticed that it’s not working.

I find this slightly annoying, and decided to look into this further. Those pesky ActiveX controls can’t be the only reason right? :)

There’s two things to sort out here really; is it anything with the web pages themselves and the server, or something on the browser side. Turns out there’s a bit of both involved actually.
(…)
I go through how it works and how it doesn’t work – and some of the why’s.

Client Certificates in Android Ice Cream Sandwich

I touched upon the release of Android 4.0, also known as Ice Cream Sandwich, back in October:
http://mobilitydojo.net/2011/10/19/ice-cream-sandwiches-for-the-kids/

That was based upon the official docs and emulator, but about a week ago I finally got an actual device in my hands in the form of the Galaxy Nexus, and I find it a lot easier to test on real hardware so I thought I’d revisit the OS to test out some client certificate related features. (The eye candy factor is greatly improved, but it’s not like you can’t find tests of that all over the web.)

I said that certificate support was improved – for instance the support of client certificates with the Google-supplied Exchange ActiveSync client. This implied there might have been some improvements for the browser as well, and the short answer would be yes

RSS for Posts RSS for Comments