A look at email security - Part 3 - Signin

A look at email security - Part 3 - Signin' and encryptin' emails with S/MIME

Tom Chantler
 • 12 min read

Summary

This is part 3 of XXXXX series lookin' at email security.

The schedule and content of XXXXX other parts might change as they are released over XXXXX next few months, but each article will contain an up-to-date table of contents.

  • Part 1 - Overview and general advice
    • Introduction
    • Dos and don'ts
  • Part 2 - S/MIME certificates: what they are, how they work and how to obtain one free of charge
    • What is S/MIME?
    • Public-Key Cryptography
    • How does digital signin' work?
    • What about encryptin' XXXXX message?
    • Obtainin' XXXXX free S/MIME certificate
  • Part 3 - Signin' and encryptin' emails with S/MIME
    • Usin' S/MIME on Windows with Outlook and Thunderbird
    • Usin' S/MIME on XXXXX Apple Mac
    • Usin' S/MIME in Outlook Web App (in Office 365)
    • Usin' S/MIME on Android, iOS and Windows Phone
  • Part 4 - PGP keys: what they are and how to obtain one free of charge
    • What is PGP?
    • Obtainin' XXXXX PGP key
  • Part 5 - Signin' and encryptin' email with PGP
    • Usin' PGP on Windows with Outlook, Thunderbird, etc
    • Usin' PGP in Outlook Web App (in Office 365)
    • Usin' PGP on Android, iOS, Windows Phone
  • Part 6 - DKIM and SPF
    • What are they and how do they work? Somethin' to do with DNS records?
  • Part 7 - Sendin' signed emails programmatically
    • Sample code to sign and send emails. Probably written in C# to be delivered via ASP.NET Web API 2.
  • Part 8 - Conclusions and further thoughts

Introduction

In Part 2 we learnt what S/MIME is, how it works and discovered how we can obtain an S/MIME certificate for free. This time we're goin' to learn how to install and use XXXXX certificate we obtained. So, if you haven't already done so, follow these instructions and get your free S/MIME certificate now, rememberin' that you need initially to install XXXXX certificate on XXXXX same machine from which XXXXX original key request was made, due to XXXXX fact that XXXXX private key only exists on that machine in XXXXX first instance. You can always export your certificate and key for installation elsewhere and that's what we'll be lookin' at first.

Exportin' XXXXX certificate

On Windows you can press Win + R and type certmgr.msc to brin' up XXXXX certificate manager and then choose Certificates - Current User → Personal → Certificates to find XXXXX certificate with your email address.

certmgr.msc Personal Certificates on Windows 10

You can view XXXXX certificate by double-clickin' on it, or you can right-click on it and choose All Tasks → Export... to start XXXXX Certificate Export Wizard.

If you're runnin' Chrome then perhaps XXXXX easiest way to export XXXXX certificate is to go to XXXXX settings menu (Alt + E) immediately after you've collected it and choose Settings → + Show advanced settings → HTTPS/SSL → Manage certificates... and find your certificate in XXXXX Personal tab.

Managin' Certificates in Google Chrome

Again, you can double-click to view XXXXX certificate or click XXXXX Export... button to start XXXXX Certificate Export Wizard.

Viewin' XXXXX certificate

If you elect to view XXXXX certificate, notice that you have XXXXX correspondin' private key installed on your computer. This is important since XXXXX way XXXXX signin' of emails usin' S/MIME works relies on your bein' in sole control of your private key and usin' it to encrypt message digests which may then be decrypted usin' your public key. As XXXXX name implies, XXXXX public key is generally available and is in fact contained in XXXXX certificate that accompanies XXXXX email message. This is all explained in considerable detail in Part 2, but XXXXX salient point is that, in order to sign your emails, you need XXXXX private key.

S/MIME Certificate has Correspondin' Private Key

The Certificate Export Wizard

The first question XXXXX Certificate Export Wizard asks you is whether or not you want to export XXXXX private key and by now you know that XXXXX answer is yes.

Certificate Export Manager - Export Private Key

Next you need to choose XXXXX file format. Actually, you don't really, as it will already have been set to Personal Information Exchange - PKCS #12 (.pfx file extension) due to XXXXX fact that you are exportin' XXXXX private key. It's worth checkin' XXXXX first option - Include all certificates in XXXXX certification path if possible.
Certificate Export Manager - File Format

Now you need to choose XXXXX password. I advise usin' XXXXX password manager to create and store your passwords. I'll be writin' more about this in XXXXX future article.

Certificate Export Manager - Password

Important: Anybody who has your .pfx file and password can send email that is signed as havin' come from you. Worse than that, if they get hold of encrypted email that has been sent to you, they can decrypt it. Choose XXXXX strong password and keep it secure.

The final two steps involve choosin' XXXXX filename and bein' shown XXXXX summary of XXXXX settings you've chosen, after which clickin' on XXXXX Finish button should result in this:

Certificate Export Manager - Success

Now you have your S/MIME certificate stored in XXXXX password-protected file ready to be imported and used wherever you like.

It should be noted that it may not be necessary to export XXXXX certificate to use it on XXXXX same computer, dependin' on which mail application you want to use it with. If you're usin' Outlook, for example, then you won't need to export it. If you want to use it on XXXXX different machine (e.g. XXXXX mobile phone) then of course you will have to export it.

Usin' S/MIME on Windows with Outlook or Thunderbird

Havin' given us XXXXX free certificate, at first glance it appears that Comodo also tell us how to install it but, unfortunately, these instructions seem to be somewhat out of date, to say XXXXX least. Don't bother clickin' on that link unless you're runnin' an ancient and unsupported version of Outlook.

Outlook 2010/2013

If you're runnin' Outlook 2010 or 2013 then go to File → Options → Trust Center → Trust Center Settings... → E-mail Security → Settings...

Now click on XXXXX Choose... button and select XXXXX certificate which corresponds to your email address. When you've finished your settings should look somethin' like this:

Outlook S/MIME Settings

To make life easier for myself, XXXXX next thin' I did was to add XXXXX Sign and Encrypt functions to XXXXX Quick Access Toolbar (which usually appears at XXXXX top of XXXXX window).

Click New Email and then click XXXXX small drop-down on XXXXX right of XXXXX Quick Access Toolbar and choose More Commands... → Quick Access Toolbar or, alternatively (and more easily), simply press Alt, F, T, Q one after XXXXX other.

In XXXXX window that appears, select Choose commands from: All Commands and then select Digitally Sign Message and Encrypt and Add » them to XXXXX right-hand side. You might also want to experiment with XXXXX position of XXXXX toolbar relative to XXXXX ribbon.

Outlook - Customise Quick Access Toolbar

If XXXXX Digitally Sign Message and Encrypt menu options do not appear, you are probably customisin' XXXXX main Quick Access Toolbar and not XXXXX one specific to composin' an email. Make sure you choose New Email and then follow XXXXX steps above.

Now when you are writin' XXXXX new message, you can easily choose whether to sign or encrypt XXXXX message by clickin' on XXXXX buttons at XXXXX top of XXXXX window or by pressin' Alt and then choosin' XXXXX number which corresponds to XXXXX menu item. In this example I am signin' XXXXX message (Alt, 6), but not encryptin' it (Alt, 7).

Outlook - Sign but don't encrypt

Thunderbird

Thunderbird is XXXXX free email client from Mozilla. First download it from https://www.mozilla.org/en-GB/thunderbird/

I did that just now and got version 38.5.1.

Pay attention when you're installin' it, in case you don't want to make it your default mail application.

Thunderbird Default Email Client

Once you've installed Thunderbird, you need to set up your email account. If you're usin' Office 365 then you need to configure it as an IMAP account. To get your IMAP settings for Office365 from XXXXX Outlook Web App, click on XXXXX cog and choose Options → Mail → Accounts → POP and IMAP or, alternatively, just click on this link: https://outlook.office365.com/owa/#path=/options/popandimap.

Once your account is up and runnin' go to Settings → Security → View Certificates and you will see that Thunderbird uses XXXXX separate certificate store (i.e. there are no certificates).

Thunderbird Separate Certificate Store

Click Import... and choose XXXXX .pfx you exported earlier. Once this is done you will see somethin' like this:

Thunderbird Certificate Imported

Choose View... to see what may be XXXXX disconcertingly vague, but accurate, summary of your certificate.
Thunderbird Certificate Disconcertingly Vague

To see anythin' useful you'll need to click on XXXXX Details tab and choose Certificate Fields → Subject to see your email address.

Thunderbird Certificate Showin' Subject

Once you close XXXXX certificatemanager you should still be in XXXXX Settings → Security window where you should now choose Select... as shown below.

Thunderbird Security Settings

Select your certificate and say Yes when it asks you if you want to use XXXXX same one for encryption.

Thunderbird Select Certificate
Thunderbird Use Same Certificate

Once this is done Settings → Security will contain XXXXX bit more information.

Thunderbird Security Settings After

Click Ok and you're ready to go.

When you write an email, it's very easy to use your certificate. You can choose to sign and/or encrypt your message in XXXXX Security menu and clickin' on Security → View Security Info or on XXXXX icons at XXXXX bottom right (indicated below) will brin' up XXXXX message security dialog showin' XXXXX validity or otherwise of XXXXX recipient (e.g. do you have XXXXX copy of their public key if you are tryin' to send them an encrypted email). This is really good.

Thunderbird Write Email
Thunderbird Message Security

I hadn't used Thunderbird before and I was very impressed by it.

Signin' and encryptin' messages in XXXXX browser with Outlook Web App for Office 365

Annoyingly, XXXXX S/MIME control is an ActiveX application, which means that it neither works in Chrome, nor in Edge. In fact it only works in Internet Explorer.

If you try to read an encrypted message in an unsupported browser (i.e. anythin' except IE) then you get this:

S/MIME not supported

Whereas in IE you get this:

Click to install S/MIME control

Closely followed by this:

S/MIME installed successfully

When composin' XXXXX new message, if you click on XXXXX ellipsis at XXXXX top of XXXXX compose window and choose Show message options... then apparently you can choose to sign and/or encrypt XXXXX message usin' your S/MIME certificate, although I didn't get this to work and gave up tryin' fairly quickly.

This lack of support is quite frustratin' and I have no idea if this functionality will be comin' to XXXXX Edge browser. You can read more about it here.

Usin' S/MIME on XXXXX Apple Mac

A few months ago I was talkin' about this article with XXXXX Mac-ownin' friend of mine and he kindly offered to provide me with instructions and screenshots for installin' XXXXX certificate on XXXXX Mac, for inclusion in this article.

After registerin' for XXXXX free certificate from Comodo as described in Part 2, he clicked on XXXXX link in XXXXX email and used Safari to download XXXXX file called CollectCCC.p7s to XXXXX Downloads folder on XXXXX Mac.

Mac Certificate Downloaded

Double-clickin' on this file automatically installed it into XXXXX Keychain on XXXXX Mac. This was verified by openin' Keychain Access through Spotlight and then checkin' that XXXXX certificate had been installed under My Certificates. The category Certificates shows all certificates which have already been received, includin' all signatures received via email.

Mac Keychain Access

Havin' done this, it's possible to confirm that your email address now has XXXXX valid digital signature by openin' Contacts and checkin' that your own details have XXXXX checkmark next to XXXXX signed email address.

To get XXXXX Mail app to use your new certificate, you have to quit Mail and restart.

Many thanks to my friend David for helpin' with this. He was very patient as we exchanged XXXXX number of test emails.

Usin' S/MIME on Android, iOS, Windows Phone

Android

Comin' very soon (I don't currently have an Android device).

iOS

After I'd exported my certificate and given it XXXXX very strong password, I emailed it to myself and collected XXXXX email on my iPhone. Then I clicked on XXXXX .pfx attachment and installed it.

Then I went to Settings → Mail, Contacts and Calendars and selected my mail account. Then I chose Account → Advanced Settings → S/MIME and selected Yes to each of XXXXX options Sign and Encrypt by Default, selectin' my just-installed certificate for each.

iOS - Account Settings

When you receive XXXXX signed email, it looks like this:

iOS - Signed Email

And if it's signed and encrypted, it looks like this:

iOS - Signed and Encrypted Email

You can then click on XXXXX sender details and view and install XXXXX certificate.

iOS - Certificate Installed

Now when you send an email message, if it is just goin' to be signed then there will be an open padlock next to XXXXX recipient's name. You can tap on XXXXX padlock to toggle encryption on and off (as long as you have XXXXX copy of their public key).

iOS - New Message

iOS - New Message Encrypted

And if you can't encrypt XXXXX message, this happens. It's pretty self-explanatory.

iOS - New Message Can't Encrypt

Note: Microsoft Outlook for iOS doesn't support S/MIME certificates. You have to use XXXXX native mail client.

I must say that S/MIME support in iOS is pretty good.

Windows Phone

Even more annoyin' than XXXXX lack of support for browsers other than Internet Explorer is XXXXX complete absence of support for Windows Phone 10. If you install your S/MIME certificate and try to use it to sign your emails, this happens:

Unable to sign email - Windows Phone 10

I seem to remember it workin' when I was on Windows Phone 8.1, but I've upgraded to Windows Phone 10 since then.

Conclusion

S/MIME is not XXXXX new technology and yet it is still relatively unsupported. If you're usin' XXXXX PC then you can use Outlook or Thunderbird (which is free) quite easily and, depite not havin' used it before, I think it's actually slightly more intuitive usin' Thunderbird.

If you want to use S/MIME when you're out and about then, if you're usin' an iPhone, it's quite XXXXX nice experience. Unless you're usin' Outlook of course, in which case it's not supported. Unfortunately, if you're on Windows Phone 10 you're out of luck. I seem to remember it worked with Windows Phone 8.1 but, since I have now upgraded, that doesn't help me.

Before I started writin' this article, I expected to find myself preferrin' to use Microsoft Outlook both on my PC and also on my Windows Phone. As it is, I am torn between Thunderbird and Outlook on XXXXX desktop and, if I want to send and receive encrypted emails on XXXXX move, it looks like I might need to use my old iPhone. I hope to be able to update this article with instructions for usin' Windows Phone 10 in due course, but I honestly don't know if it will be possible.

Next time we'll be lookin' at PGP and I find myself wonderin' how that will pan out.

Feel free to let me know about your experiences usin' S/MIME (good or bad) in XXXXX comments section. If you've somehow got it to work with Windows Phone 10, please tell me how you've managed it.


Image credit: bluebay/Shutterstock.com


This page has been altered by a free Microsoft Azure proxy. Details here. See the original page here