I'm trying to get Android 2.1 phones to connect to our corporate VPN, but it would appear they only support DES rather than 3DES for encryption.

Is it safe to use DES, am I going to get hacked if I change the encryption to DES?

  • can you give more context to this question? See the two answers below.
    – Rory Alsop
    Commented Jan 10, 2011 at 15:34
  • Android supports L2TP and IPsec, and very hard to believe only DES: developer.android.com/sdk/android-1.6-highlights.html My guess is that you use a corporate vpn with some proprietary complications. E.g. I've seen questions about using Cisco's VPN.
    – nealmcb
    Commented Jan 10, 2011 at 16:35
  • Just want to point out that 3DES is not a good option either. Should be AES or something stronger...
    – AviD
    Commented Jan 11, 2011 at 6:55
  • @AviD, 3DES is OK. 3DES may be slow, and AES may be a better choice for new systems, but AES is pretty darn secure. It is exceptionally unlikely that 3DES is the weakest link the security of your system. See, e.g., Dan Kaminsky, who once wrote: "I get very angry at auditors who mark 3DES down for being insecure. Slow and ugly, sure, but man that’s an audited cipher". Amen to that.
    – D.W.
    Commented Jan 12, 2011 at 1:33
  • @D.W. agreed, "OK" but not "good". Also true about the cipher not being the weakest link... But I often see people being confused about the strength the key, and other issues around it. But as you said, AES is better for new systems - and Android 2.1 hasn't been around for a couple of decades :)
    – AviD
    Commented Jan 12, 2011 at 1:42

2 Answers 2


In standard terms (i.e. FIPS 46-3, which defined DES and 3DES from the US federal point of view [withdrawn in 2005...]), 3DES is a "kind of DES". So it is possible that by claiming "DES support" your VPN software actually implements 3DES. I am now assuming that you have checked that point and that the software in Android knows only of the original DES, not 3DES (which is kind of surprising for an OS as recent as Android 2.1, but who knows).

Cracking a DES key is feasible but not easy. This is a 255 average work factor. It has been done with specialized hardware (the EFF "Deep Crack" machine), then again with standard PC and other contributed machines (but a lot of them). An FPGA-based generic engine has been demonstrated to cost about 10000€ and to be able to crack a 56-bit key in less than a week (on average). So one has to assume that in a corporate setting (assuming that the "attackers" have huge incentive to discover trade secrets) a VPN protected by a 56-bit DES key can be cracked.

Still, using smartphones to access sensitive data over the VPN strikes me as a much weaker security point. Smartphones are used in unprotected environments (that's the point of having a mobile system...) and are possibly the most frequently stolen object these days. For a determinate attacker, using a FPGA machine is not very expensive -- but mugging the smartphone owner with a 5$ wrench even less so, and, lo! the attacker gets a free smartphone afterwards). If the VPN gives access to anything sensitive, then letting people use it from smartphones is a kind of offence.

  • +1, lol'd on the "free smartphone" :). Also should emphasize that it may not be the mobile VPN that is the actual problem (these could require a password, for example), but don't forget all the cached data, stored on the mobile device free for the taking together with the phone.
    – AviD
    Commented Jan 11, 2011 at 6:58
  • Though I do question some of your numbers here. It doesnt take anywhere close to a week to crack DES, I'm familiar with "a few hours"...
    – AviD
    Commented Jan 11, 2011 at 7:00
  • Actually it's Android 2.2 but there is no way to select which encryption method is used. When I connect the VPN application (SonicWall) reports the client tried to use DES, where it was expecting it to use 3DES. Commented Jan 11, 2011 at 9:05
  • 1
    @AviD: the "week" comes from the COPACOBANA paper; this is on a table-top device, with a dozen or so FPGA. Deep Crack, in 1997, could do that in a day and a half, but it was far bulkier (thousands of ASIC), more expensive (250 k$) and much less generic (it was for DES only, whereas FPGA can be reused from other computations). Theoretically, you could build Deep Crack-like machines with 2010 technology for much less (per machine, assuming you build many). But COPACOBANA has for it that it really exists, so that's a much more robust data point. Commented Jan 11, 2011 at 11:59
  • 1
    @AviD: There were public challenges. In 1997, distributed.net broke the first one in 41 days, using contributed power (people with machines with spare time). They then began working on other challenges. At that time, they had many contributors (we are talking about thousands of PC or workstations), so they decided to have a run at another DES challenge, which was done in 22 hours, with the help of Deep Crack (which could have done it in no more than three days anyway). It is "just" accumulated power; it would cost much more than 10k€ to do it again. COPACOBANA is way cheaper. Commented Jan 11, 2011 at 12:33

The reason DES has been deprecated for most uses is that it can be brute forced in a small amount of time (in 1999 a DES key was brute forced in 22 hours - so the expectation is that it would be much faster now)

It depends what type of connection you want though -

  • will you be connecting just to email?
  • will you use an encryption key which persists?

If you are just connecting to non-sensitive email, and any key used is temporary and short lived then it may still be appropriate to use DES.

If you are connecting to business sensitive or personal data, or use a long lived key then you may want to invest in other mitigating controls if you have to use DES.

What sort of context will this be used in?

  • It's for access to corporate web-based Intranet applications. Email access is already secured using https. It would be done using a pre-shared key. Commented Jan 11, 2011 at 9:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .