% Options for packages loaded elsewhere \PassOptionsToPackage{unicode}{hyperref} \PassOptionsToPackage{hyphens}{url} \documentclass[ ]{article} \usepackage{amsmath,amssymb} \usepackage{tikz} \usepackage{graphicx} \usepackage{titlesec} \usepackage{titling} \usepackage{lmodern} \usepackage{xcolor} \usepackage{iftex} \usepackage[margin=1in]{geometry} \ifPDFTeX \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{textcomp} % provide euro and other symbols \else % if luatex or xetex \usepackage{unicode-math} \defaultfontfeatures{Scale=MatchLowercase} \defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1} \fi % Use upquote if available, for straight quotes in verbatim environments \IfFileExists{upquote.sty}{\usepackage{upquote}}{} \IfFileExists{microtype.sty}{% use microtype if available \usepackage[]{microtype} \UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts }{} \makeatletter \@ifundefined{KOMAClassName}{% if non-KOMA class \IfFileExists{parskip.sty}{% \usepackage{parskip} }{% else \setlength{\parindent}{0pt} \setlength{\parskip}{1pt plus 2pt minus 1pt}} }{% if KOMA class \KOMAoptions{parskip=half}} \makeatother \definecolor{myblue}{RGB}{24, 102, 201} \titleformat{\section} {\huge\bfseries\color{myblue}} {} {0em} {}[\titlerule] \titleformat{\subsection} {\Large\bfseries} {} {0em} {} \titleformat{\subsubsection}[runin] {\bfseries} {} {0em} {}[:] \titlespacing{\subsubsection} {0em}{0.75em}{0.5em} \titlespacing{\subsection} {0em}{1em}{0.65em} \titlespacing{\maketitle} {0em}{0em}{0em} \renewcommand{\maketitle}{ \begin{center} {\huge\bfseries \theauthor}\\ \vspace{.35em} \href{https://sufyaan.me/email}{sufyaan.me/email} \end{center} } \newsavebox{\picbox} \newcommand{\cutpic}[3]{ \savebox{\picbox}{\includegraphics[width=#2]{#3}} \tikz\node [draw, rounded corners=#1, line width=4pt, color=white, minimum width=\wd\picbox, minimum height=\ht\picbox, path picture={ \node at (path picture bounding box.center) { \usebox{\picbox}}; }] {};} \usepackage{color} \usepackage{fancyvrb} \newcommand{\VerbBar}{|} \newcommand{\VERB}{\Verb[commandchars=\\\{\}]} \DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}} % Add ',fontsize=\small' for more characters per line \newenvironment{Shaded}{}{} \newcommand{\AlertTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}} \newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}} \newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.49,0.56,0.16}{#1}} \newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}} \newcommand{\BuiltInTok}[1]{\textcolor[rgb]{0.00,0.50,0.00}{#1}} \newcommand{\CharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}} \newcommand{\CommentTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textit{#1}}} \newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}} \newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.53,0.00,0.00}{#1}} \newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}} \newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.56,0.13,0.00}{#1}} \newcommand{\DecValTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}} \newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.73,0.13,0.13}{\textit{#1}}} \newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}} \newcommand{\ExtensionTok}[1]{#1} \newcommand{\FloatTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{#1}} \newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.02,0.16,0.49}{#1}} \newcommand{\ImportTok}[1]{\textcolor[rgb]{0.00,0.50,0.00}{\textbf{#1}}} \newcommand{\InformationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}} \newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{#1}}} \newcommand{\NormalTok}[1]{#1} \newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.40,0.40,0.40}{#1}} \newcommand{\OtherTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{#1}} \newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.74,0.48,0.00}{#1}} \newcommand{\RegionMarkerTok}[1]{#1} \newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}} \newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.73,0.40,0.53}{#1}} \newcommand{\StringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}} \newcommand{\VariableTok}[1]{\textcolor[rgb]{0.10,0.09,0.49}{#1}} \newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{#1}} \newcommand{\WarningTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{#1}}}} \setlength{\emergencystretch}{3em} % prevent overfull lines \providecommand{\tightlist}{% \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} \setcounter{secnumdepth}{-\maxdimen} % remove section numbering \ifLuaTeX \usepackage[bidi=basic]{babel} \else \usepackage[bidi=default]{babel} \fi \babelprovide[main,import]{english} % get rid of language-specific shorthands (see #6817): \let\LanguageShortHands\languageshorthands \def\languageshorthands#1{} \ifLuaTeX \usepackage{selnolig} % disable illegal ligatures \fi \IfFileExists{bookmark.sty}{\usepackage{bookmark}}{\usepackage{hyperref}} \IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available \urlstyle{same} % disable monospaced font for URLs \hypersetup{ pdftitle={(POST) How To Encrypt Emails}, pdflang={en}, colorlinks=true, linkcolor=blue, filecolor=blue, urlcolor=blue, pdfcreator={LaTeX via pandoc}} \title{Sufyaan's Website} \author{Sufyaan's Website} \date{} \begin{document} \maketitle \section[How To Encrypt Emails]{How To Encrypt Emails}\label{why-i-use-terminal-apps} \textbf{14 March 2023} \textbf{Category: }Software \& Guides In this article, I will show you how to encrypt emails. You can encrypt emails on almost any device. In this article, however, I will be focusing on Gmail, Outlook, Yahoo. I will also be focusing on making ProtonMail encrypt emails with Gmail. \hypertarget{myths}{% \subsection[Myths]{Myths}\label{myths}} Firstly, let us dispell a few myths. The first myth is a big one. \hypertarget{gmails-confidential-mode-does-not-encrypt-your-emails}{% \subsubsection{Gmail\textquotesingle s Confidential mode does not encrypt your emails}\label{gmails-confidential-mode-does-not-encrypt-your-emails}} Yes, you heard that right. Gmail\textquotesingle s confidential mode does not encrypt your emails. Whenever I speak about email encryption, I hear something along the lines of: \emph{``Why are you making things so complicated? Just use Gmail\textquotesingle s confidential mode! It encrypts your emails for you!''} No, Gmail\textquotesingle s confidential mode does not encrypt emails. It simply puts a password on your email. \hypertarget{protonmail-does-not-encrypt-emails-sent-to-non-protonmail-users}{% \subsubsection{ProtonMail does not encrypt emails sent to non-ProtonMail users}\label{protonmail-does-not-encrypt-emails-sent-to-non-protonmail-users}} This is also a huge myth. ProtonMail encrypts emails sent to other ProtonMail users. However, they do not encrypt emails sent to or received from non-ProtonMail users. It collects less data about you and it stores your emails with encryption on their servers but the email itself is not encrypted on the other person\textquotesingle s end. Encryption for non-ProtonMail users works on a user-to-user basis. You have to have the encryption keys of the other person if they are a non-ProtonMail user and they also have to encrypt their emails manually. We will learn how to do this in this guide. \hypertarget{online-email}{% \subsection[Online Email]{Online Email}\label{online-email}} Encrypting your emails online is a simple process. \hypertarget{step-1-get-the-mailvelope-extension}{% \subsubsection{Step 1: Get the Mailvelope extension}\label{step-1-get-the-mailvelope-extension}} \href{https://mailvelope.com/}{Mailvelope is a free, libre and open-source browser extension} which allows you to not only encrypt emails using public keys but also has a keyserver which has a list of other people who use Mailvelope. Emails sent to other people using Mailvelope will automatically be encrypted. \hypertarget{step-2-set-it-up}{% \subsubsection{Step 2: Set it up}\label{step-2-set-it-up}} Open the extension and generate your keypair if you do not have a keypair or import your keypair if you do have one. \centerline{\cutpic{1cm}{16cm}{mailvelope-1.png}} \hypertarget{step-3-import-other-peoples-keys}{% \subsubsection{Step 3: Import other people\textquotesingle s keys}\label{step-3-import-other-peoples-keys}} Encourage all of your friends to get the Mailvelope extension. Afterwards, you can import their public keys. Henceforth, all emails will be encrypted. Many websites also give their own public key along with their emails so that you can encrypt them as well. If you have friends who use ProtonMail, go to the ProtonMail import section of this post. \hypertarget{step-4-send-encrypted-emails}{% \subsubsection{Step 4: Send encrypted emails!}\label{step-4-send-encrypted-emails}} Whenever you go to compose an email, there will be a button like the image below. Just click on it and there will be a popup to compose your encrypted email. Just fill in the info and send your email! \centerline{\cutpic{1cm}{5cm}{mailvelope-2.png}} \hypertarget{smartphones}{% \subsection[Smartphones]{Smartphones}\label{smartphones}} Firstly, I would like to give a disclaimer. There is no way to use PGP encryption on iOS. Most encryption that is used on iOS is either paid or unavailable. On Android, you cannot encrypt emails using the native applications for Gmail, Outlook or Yahoo. Even if there is such a feature, you should not use their official clients due to their invasive tracking. To encrypt emails, we will use an email app called K-9 Mail. I believe that everyone should use K-9 Mail even if they are not encrypting their emails. It is a fantastic app. K-9 Mail is a free and open-source email app that has a lot of features. I believe that no one should be writing emails on their phones but it is a great app to have just to make sure there is nothing urgent in your inbox. \hypertarget{step-1-get-the-app}{% \subsubsection{Step 1: Get the app}\label{step-1-get-the-app}} K-9 Mail is on the Play Store, but do not get it from there. \href{https://f-droid.org/}{Get F-Droid} and make it a habit to download apps you use and the alternatives to them through F-Droid. \href{https://f-droid.org/packages/com.fsck.k9/}{K-9 Mail is available on F-Droid} and is a popular app there. \hypertarget{step-2-set-it-up-1}{% \subsubsection{Step 2: Set it up}\label{step-2-set-it-up-1}} Follow the guide to enter your email address and get it working through K-9 Mail. I have tried Gmail and it works flawlessly. Other email providers will work well but some may not work at all. \hypertarget{step-3-get-the-openkeychain-app}{% \subsubsection{Step 3: Get the OpenKeychain app}\label{step-3-get-the-openkeychain-app}} OpenKeychain is an app that allows you to import and manage PGP keys. \href{https://f-droid.org/packages/org.sufficientlysecure.keychain/}{It is also available on F-Droid.} \hypertarget{step-4-generateimport-your-key}{% \subsubsection{Step 4: Generate/Import your key}\label{step-4-generateimport-your-key}} Generate your key by pressing the option to create a key or import the key file. \hypertarget{step-5-setup-k-9-mail}{% \subsubsection{Step 5: Setup K-9 Mail}\label{step-5-setup-k-9-mail}} Go back to K-9 Mail, go to settings, go to your account that you added, go to end-to-end encryption and enable it. Select your key. Turn on autocrypt mutual mode. That is it! You should see a lock icon whenever you are sending an email to someone if you have their PGP public key. If you need to import more keys, just go to the OpenKeychain app and import them. \centerline{\cutpic{0.5cm}{6cm}{k9-encryption.png}} \hypertarget{exporting-protonmail-keys}{% \subsection[Exporting ProtonMail Keys]{Exporting ProtonMail Keys}\label{exporting-protonmail-keys}} To export your ProtonMail public keys, follow these steps. \begin{enumerate} \tightlist \item Login to your ProtonMail account \item Go to the settings \item Go to the section labelled \textquotesingle Encryption and keys\textquotesingle{} \item Scroll down to \textquotesingle Email encryption keys\textquotesingle{} and click \textquotesingle Export\textquotesingle. \end{enumerate} The image below is how it looks like in 2023. \centerline{\cutpic{1cm}{16cm}{protonmail-key-export.png}} You can now send these keys to anyone to import into their PGP keychain. They will then be able to encrypt emails when sending them to your ProtonMail address! \hypertarget{conclusion}{% \subsection[Conclusion]{Conclusion}\label{conclusion}} That is it! You have setup encryption on your emails. This is a great step as email itself is very unsecure, so this will boost your privacy and security by a lot. Sharing passwords through email has never been safe but encryption allows you to do it with a good range of security. \end{document}