1 \A{pgpkeys} PuTTY download keys and signatures
3 \cfg{winhelp-topic}{pgpfingerprints}
5 \I{verifying new versions}We create \i{GPG signatures} for all the PuTTY
6 files distributed from our web site, so that users can be confident
7 that the files have not been tampered with. Here we identify
8 our public keys, and explain our signature policy so you can have an
9 accurate idea of what each signature guarantees.
10 This description is provided as both a web page on the PuTTY site, and
11 an appendix in the PuTTY manual.
13 As of release 0.58, all of the PuTTY executables contain fingerprint
14 material (usually accessed via the \i\c{-pgpfp} command-line
15 option), such that if you have an executable you trust, you can use
16 it to establish a trust path, for instance to a newer version
17 downloaded from the Internet.
19 (Note that none of the keys, signatures, etc mentioned here have
20 anything to do with keys used with SSH - they are purely for verifying
21 the origin of files distributed by the PuTTY team.)
23 \H{pgpkeys-pubkey} Public keys
25 We maintain multiple keys, stored with different levels of security
26 due to being used in different ways. See \k{pgpkeys-security} below
29 The keys we provide are:
33 \dd Used to sign routine development builds of PuTTY: nightly
34 snapshots, pre-releases, and sometimes also custom diagnostic builds
35 we send to particular users.
39 \dd Used to sign manually released versions of PuTTY.
41 \dt Secure Contact Key
43 \dd An encryption-capable key suitable for people to send confidential
44 messages to the PuTTY team, e.g. reports of vulnerabilities.
48 \dd Used to tie all the above keys into the GPG web of trust. The
49 Master Key signs all the other keys, and other GPG users have signed
52 The current issue of those keys are available for download from the
53 PuTTY website, and are also available on PGP keyservers using the key
56 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/master-2015.asc}{\s{Master Key}}
58 \dd RSA, 4096-bit. Key ID: \cw{4096R/04676F7C} (long version:
59 \cw{4096R/AB585DC604676F7C}). Fingerprint:
60 \cw{440D\_E3B5\_B7A1\_CA85\_B3CC\_\_1718\_AB58\_5DC6\_0467\_6F7C}
62 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/release-2015.asc}{\s{Release Key}}
64 \dd RSA, 2048-bit. Key ID: \cw{2048R/B43434E4} (long version:
65 \cw{2048R/9DFE2648B43434E4}). Fingerprint:
66 \cw{0054\_DDAA\_8ADA\_15D2\_768A\_\_6DE7\_9DFE\_2648\_B434\_34E4}
68 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/contact-2016.asc}{\s{Secure Contact Key}}
70 \dd RSA, 2048-bit. Main key ID: \cw{2048R/8A0AF00B} (long version:
71 \cw{2048R/C4FCAAD08A0AF00B}). Encryption subkey ID:
72 \cw{2048R/50C2CF5C} (long version: \cw{2048R/9EB39CC150C2CF5C}).
74 \cw{8A26\_250E\_763F\_E359\_75F3\_\_118F\_C4FC\_AAD0\_8A0A\_F00B}
76 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/snapshot-2015.asc}{\s{Snapshot Key}}
78 \dd RSA, 2048-bit. Key ID: \cw{2048R/D15F7E8A} (long version:
79 \cw{2048R/EEF20295D15F7E8A}). Fingerprint:
80 \cw{0A3B\_0048\_FE49\_9B67\_A234\_\_FEB6\_EEF2\_0295\_D15F\_7E8A}
82 \H{pgpkeys-security} Security details
84 The various keys have various different security levels. This
85 section explains what those security levels are, and how far you can
86 expect to trust each key.
88 \S{pgpkeys-snapshot} The Development Snapshots key
90 The Development Snapshots private key is stored \e{without a
91 passphrase}. This is necessary, because the snapshots are generated
92 every night without human intervention, so nobody would be able to
95 The snapshots are built and signed on a team member's home computers,
96 before being uploaded to the web server from which you download them.
98 Therefore, a signature from the Development Snapshots key \e{DOES}
101 \b People tampering with the PuTTY binaries between the PuTTY web site
104 \b The maintainers of our web server attempting to abuse their root
105 privilege to tamper with the binaries.
107 But it \e{DOES NOT} protect you against:
109 \b People tampering with the binaries before they are uploaded to our
112 \b People tampering with the build machines so that the next set of
113 binaries they build will be malicious in some way.
115 \b People stealing the unencrypted private key from the build machine
118 Of course, we take all reasonable precautions to guard the build
119 machines. But when you see a signature, you should always be certain
120 of precisely what it guarantees and precisely what it does not.
122 \S{pgpkeys-release} The Releases key
124 The Releases key is more secure: because it is only used at release
125 time, to sign each release by hand, we can store it encrypted.
127 The Releases private key is kept encrypted on the developers' own
128 local machines. So an attacker wanting to steal it would have to also
129 steal the passphrase.
131 \S{pgpkeys-contact} The Secure Contact Key
133 The Secure Contact Key is stored with a similar level of security to
134 the Release Key: it is stored with a passphrase, and no automated
135 script has access to it.
137 \S{pgpkeys-master} The Master Keys
139 The Master Key signs almost nothing. Its purpose is to bind the other
140 keys together and certify that they are all owned by the same people
141 and part of the same integrated setup. The only signatures produced by
142 the Master Key, \e{ever}, should be the signatures on the other keys.
144 The Master Key is especially long, and its private key and passphrase
145 are stored with special care.
147 We have collected some third-party signatures on the Master Key, in
148 order to increase the chances that you can find a suitable trust path
151 We have uploaded our various keys to public keyservers, so that
152 even if you don't know any of the people who have signed our
153 keys, you can still be reasonably confident that an attacker would
154 find it hard to substitute fake keys on all the public keyservers at
157 \H{pgpkeys-rollover} Key rollover
159 Our current keys were generated in September 2015, except for the
160 Secure Contact Key which was generated in February 2016 (we didn't
161 think of it until later).
163 Prior to that, we had a much older set of keys generated in 2000. For
164 each of the key types above (other than the Secure Contact Key), we
165 provided both an RSA key \e{and} a DSA key (because at the time we
166 generated them, RSA was not in practice available to everyone, due to
167 export restrictions).
169 The new Master Key is signed with both of the old ones, to show that
170 it really is owned by the same people and not substituted by an
171 attacker. Also, we have retrospectively signed the old Release Keys
172 with the new Master Key, in case you're trying to verify the
173 signatures on a release prior to the rollover and can find a chain of
174 trust to those keys from any of the people who have signed our new
177 Future releases will be signed with the up-to-date keys shown above.
178 Releases prior to the rollover are signed with the old Release Keys.
180 For completeness, those old keys are given here:
182 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/master-rsa.asc}{\s{Master Key} (original RSA)}
184 \dd RSA, 1024-bit. Key ID: \cw{1024R/1E34AC41} (long version:
185 \cw{1024R/9D5877BF1E34AC41}). Fingerprint:
186 \cw{8F\_15\_97\_DA\_25\_30\_AB\_0D\_\_88\_D1\_92\_54\_11\_CF\_0C\_4C}
188 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/master-dsa.asc}{\s{Master Key} (original DSA)}
190 \dd DSA, 1024-bit. Key ID: \cw{1024D/6A93B34E} (long version:
191 \cw{1024D/4F5E6DF56A93B34E}). Fingerprint:
192 \cw{313C\_3E76\_4B74\_C2C5\_F2AE\_\_83A8\_4F5E\_6DF5\_6A93\_B34E}
194 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/release-rsa.asc}{\s{Release Key} (original RSA)}
196 \dd RSA, 1024-bit. Key ID: \cw{1024R/B41CAE29} (long version:
197 \cw{1024R/EF39CCC0B41CAE29}). Fingerprint:
198 \cw{AE\_65\_D3\_F7\_85\_D3\_18\_E0\_\_3B\_0C\_9B\_02\_FF\_3A\_81\_FE}
200 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/release-dsa.asc}{\s{Release Key} (original DSA)}
202 \dd DSA, 1024-bit. Key ID: \cw{1024D/08B0A90B} (long version:
203 \cw{1024D/FECD6F3F08B0A90B}). Fingerprint:
204 \cw{00B1\_1009\_38E6\_9800\_6518\_\_F0AB\_FECD\_6F3F\_08B0\_A90B}
206 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/snapshot-rsa.asc}{\s{Snapshot Key} (original RSA)}
208 \dd RSA, 1024-bit. Key ID: \cw{1024R/32B903A9} (long version:
209 \cw{1024R/FAAED21532B903A9}). Fingerprint:
210 \cw{86\_8B\_1F\_79\_9C\_F4\_7F\_BD\_\_8B\_1B\_D7\_8E\_C6\_4E\_4C\_03}
212 \dt \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/keys/snapshot-dsa.asc}{\s{Snapshot Key} (original DSA)}
214 \dd DSA, 1024-bit. Key ID: \cw{1024D/7D3E4A00} (long version:
215 \cw{1024D/165E56F77D3E4A00}). Fingerprint:
216 \cw{63DD\_8EF8\_32F5\_D777\_9FF0\_\_2947\_165E\_56F7\_7D3E\_4A00}