diff --git a/.gitignore b/.gitignore
index ab02206..8e1605c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 /nmstate-0.0.2.tar.gz
 /nmstate-0.0.3.tar.gz
 /nmstate-0.0.3.tar.gz.asc
+/gpgkey-F7910D93CA83D77348595C0E899014C0463C12BB.gpg
diff --git a/nmstate.spec b/nmstate.spec
index d9d5e47..4abb9d8 100644
--- a/nmstate.spec
+++ b/nmstate.spec
@@ -5,14 +5,17 @@
 
 Name:           nmstate
 Version:        0.0.3
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Declarative network manager API
 License:        GPLv2+
 URL:            https://github.com/%{srcname}/%{srcname}
 Source0:        %{url}/archive/v%{version}/%{srcname}-%{version}.tar.gz
+Source1:        %{url}/archive/v%{version}/%{srcname}-%{version}.tar.gz.asc
+Source2:        gpgkey-F7910D93CA83D77348595C0E899014C0463C12BB.gpg
 BuildArch:      noarch
 BuildRequires:  python3-devel
 BuildRequires:  python3-setuptools
+BuildRequires:  gnupg2
 Requires:       python3-%{libname} = %{?epoch:%{epoch}:}%{version}-%{release}
 
 %description
@@ -35,6 +38,7 @@ Suggests:       NetworkManager
 This package contains the Python 3 library for nmstate.
 
 %prep
+gpgv2 --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0}
 %setup -q
 
 %build
@@ -54,6 +58,9 @@ This package contains the Python 3 library for nmstate.
 %{python3_sitelib}/%{srcname}-*.egg-info/
 
 %changelog
+* Wed Jan 02 2019 Gris Ge <fge@redhat.com> - 0.0.3-2
+- Add source file PGP verification.
+
 * Thu Dec 20 2018 Gris Ge <fge@redhat.com> - 0.0.3-1
 - Upgrade to 0.0.3.
 
diff --git a/sources b/sources
index e771b2a..4a23652 100644
--- a/sources
+++ b/sources
@@ -1 +1,3 @@
+SHA512 (gpgkey-F7910D93CA83D77348595C0E899014C0463C12BB.gpg) = 0b416e3c465ff679f701cb1f4d264d8341f1c778ca1403a39b83df959cad5c4faf23f6cbb1772b2547cbbdb267cb9d1a34794cc1710950f0d847b5f5c67361bf
 SHA512 (nmstate-0.0.3.tar.gz) = fc0363d2495fc451e77d0dd92de333cf312ced440fefce20d1ea6899a60a7d6eb0efadb190163c43f191c683f14bc7b60f1b550c7bed7d71ebd4a70db5834a0b
+SHA512 (nmstate-0.0.3.tar.gz.asc) = 691062d256148005ebef012fd64fccb931931408d4e9c737fa199a0b4228afc1c10f39bc2b403f383c8a7f6aca1e085c93263f63ece9d1c8728ebae6ecab7f6c