<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:og="http://ogp.me/ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:schema="http://schema.org/" xmlns:sioc="http://rdfs.org/sioc/ns#" xmlns:sioct="http://rdfs.org/sioc/types#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" version="2.0" xml:base="https://www.linuxjournal.com/">
  <channel>
    <title>GPG</title>
    <link>https://www.linuxjournal.com/</link>
    <description/>
    <language>en</language>
    
    <item>
  <title>Why Smart Cards Are Smart</title>
  <link>https://www.linuxjournal.com/content/why-smart-cards-are-smart</link>
  <description>  &lt;div data-history-node-id="1340643" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/kyle-rankin" lang="" about="https://www.linuxjournal.com/users/kyle-rankin" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Kyle Rankin&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;&lt;p&gt;&lt;em&gt;If you use GPG keys, learn about the benefits to storing them on a smart card.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;
GPG has been around for a long time and is used to secure everything
from your email to your software. If you want to send an email to
someone and be sure that no one else can read or modify it, GPG
signing and encryption are the main method you'd use. Distributions use
GPG to sign their packages, so you can feel confident that the ones you
download and install from a package mirror have not been modified from
their original state. Developers in many organizations follow the best
practice of GPG-signing any code they commit to a repository. By signing
their commits, other people can confirm that the changes that claim to
come from a particular developer truly did. Web-based Git front ends
like GitHub and GitLab let users upload their GPG public keys, so when
they do commit signed code, the interface can display to everyone else
that it has been verified.
&lt;/p&gt;

&lt;p&gt;
Yet, all of the security ultimately comes down to the security of
your private key. Once others have access to your private key, they
can perform all of the same GPG tasks as though they were you. This
is why you are prompted to enter a passphrase when you first set up
a GPG key. The idea is that if attackers are able to copy your key,
they still would need to guess your password before they could use the
key. For all of the importance of GPG key security, many people still
just leave their keys in ~/.gnupg directories on their filesystem and
copy that directory over to any systems where they need to use GPG.
&lt;/p&gt;

&lt;p&gt;
There is a better way. With OpenPGP smart cards, you can store your keys on
a secure device that's protected with a PIN and not only store your keys
more securely, but also use them more conveniently. Although some laptops come
with integrated smart card readers, most don't. Thankfully, these devices
are available as part of multi-function USB security token devices from
a number of different vendors, and &lt;em&gt;Linux Journal&lt;/em&gt; has published reviews of such
products in the past. In this article, I discuss
all the reasons OpenPGP smart cards are a better choice for storing
your keys than your local filesystem.
&lt;/p&gt;

&lt;span class="h3-replacement"&gt;
Reason 1: Tamper-proof Key Storage&lt;/span&gt;

&lt;p&gt;
One of the main benefits of a smart card is that it stores your GPG keys
securely. When you store your keys on a filesystem, anyone who can access
that filesystem can copy off the keys. On a smart card, once keys go in,
they never leave, neither accidentally nor from tampering. The smart card
chips themselves are designed to be tamper-proof and resist attempts to
extract key data even when someone has physical access. By putting keys
on a smart card, you can have a reasonable assurance that your keys are
safe, even from a determined attacker.
&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/why-smart-cards-are-smart" hreflang="en"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Wed, 12 Jun 2019 11:30:00 +0000</pubDate>
    <dc:creator>Kyle Rankin</dc:creator>
    <guid isPermaLink="false">1340643 at https://www.linuxjournal.com</guid>
    </item>
<item>
  <title>Flat File Encryption with OpenSSL and GPG</title>
  <link>https://www.linuxjournal.com/content/flat-file-encryption-openssl-and-gpg</link>
  <description>  &lt;div data-history-node-id="1339346" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/charles-fisher" lang="" about="https://www.linuxjournal.com/users/charles-fisher" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Charles Fisher&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;&lt;p&gt;
The Pretty Good Privacy (PGP) application, which has long been known as a
primary tool for file encryption, commonly focused on email. It has
management tools for exchanging credentials with peers and creating secure
communication channels over untrusted networks. GNU Privacy Guard (GPG) has
carried on this legacy with a free and open implementation included in most
major Linux distributions. PGP/GPG has proven highly resistant to
cryptographic attack and is a preeminent tool for secure communications.
&lt;/p&gt;

&lt;p&gt;
OpenSSL is more known for network security, but it also has tools useful
for most aspects of encrypting flat files. Although using OpenSSL requires
more knowledge of specific algorithms and methods, it can be more flexible
in a number of scenarios than other approaches. OpenSSH keys
can be used transparently for flat file encryption with OpenSSL, allowing
user and/or host SSH keys to pervade any number of unrelated services.
&lt;/p&gt;

&lt;p&gt;
OpenSSL is also useful for illustrating the sequence of encryption
techniques that create secure channels. This knowledge is applicable in
many other situations, so the material is worth study even if there is no
immediate need for the tools.
&lt;/p&gt;

&lt;span class="h3-replacement"&gt;
OpenSSL Flat File Processing&lt;/span&gt;

&lt;p&gt;
Many common programs in UNIX have implementations within the OpenSSL
command-line utility. These include digest/checksum tools (md5sum, sha1sum,
sha256sum), "ASCII-Armor" tools (base64/uuencode/uudecode),
"safe" random
number generation and MIME functions in addition to a suite of cipher and
key management utilities. Because OpenSSL often is found on non-UNIX
platforms, those utilities can provide a familiar interface on unfamiliar
systems for UNIX administrators.
&lt;/p&gt;

&lt;p&gt;
Let's begin with a complete script for flat file encryption with OpenSSL,
using asymmetric exchange of a session key, SHA-256 digest checksums and
the use of a symmetric cipher. This entire exchange, both to encode and
decode, is presented in the following text for the Korn shell (GNU Bash
also may
be used with no required changes):

&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/flat-file-encryption-openssl-and-gpg" hreflang="und"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Tue, 04 Apr 2017 09:46:42 +0000</pubDate>
    <dc:creator>Charles Fisher</dc:creator>
    <guid isPermaLink="false">1339346 at https://www.linuxjournal.com</guid>
    </item>

  </channel>
</rss>
