fa1a31d717e8ef846d575ac1e21c27ce52792562
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1) ## translation metadata
Roger Dingledine looks like we never set the...

Roger Dingledine authored 13 years ago

2) # Revision: $Revision$
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

3) # Translation-Priority: 2-medium
4) 
5) #include "head.wmi" TITLE="Tor Project: Verifying Signatures" CHARSET="UTF-8"
6) <div id="content" class="clearfix">
7)   <div id="breadcrumbs">
Andrew Lewman change all of the breadcrum...

Andrew Lewman authored 13 years ago

8)     <a href="<page index>">Home &raquo; </a>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

9)     <a href="<page docs/verifying-signatures>">Verifying Signatures</a>
10)   </div>
Roger Dingledine clear trailing whitespaces;...

Roger Dingledine authored 13 years ago

11)   <div id="maincol">
traumschule verification: add TOC

traumschule authored 5 years ago

12) 
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

13) <section class="accordion">
14) <!--
15)   This section uses a CSS accordion to hide and show topics.
16)   Styles are defined at the bottom of layout.css.
17) -->
18)  <div>
19)    <input id="ac-0" name="accordion-0" type="checkbox" checked />
20)    <label for="ac-0">
traumschule verification: split by OS (...

traumschule authored 5 years ago

21)     <h1><a name="TOC">How to verify signatures of packages</a></h1>
traumschule verification: fix formatting

traumschule authored 5 years ago

22)     <hr>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

23)    </label>
24)    <article class="ac-small">
25) <!-- TOC -->
26)     <div class="nav img-shadow">
27)     <div class="sidenav-sub">
28)     <ul>
29)       <li><a href="#Why-verify-signature">Always verify downloads</a></li>
traumschule verification: split by OS (...

traumschule authored 5 years ago

30)       <li><a href="#ImportKey">Import Tor's signing key</a></li>
31)       <li><a href="#VerifySignature">Verify OpenPGP signatures</a></li>
32)       <li><a href="#ChecksumVerification">Verify checksums</a></li>
33)       <li><a href="#MARVerification">MAR verification</a></li>
34)       <li><a href="#Troubleshooting">Troubleshooting</a></li>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

35)       <li><a href="#Scripts">Scripts</a></li>
36)     </ul>
37)     </div>
38)     </div>
traumschule verification: fix formatting

traumschule authored 5 years ago

39) 
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

40) <!-- Intro -->
traumschule verification: fix formatting

traumschule authored 5 years ago

41)     <p>Digital signature is a process ensuring that a certain package was
42)     generated by its developers and has not been tampered with. Below we explain
43)     why it is important and how to verify that the Tor program you download is
44)     the one we have created and has not been modified by some attacker.</p>
45) 
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

46)     <p>If you want to learn more about how it works see<br/>
traumschule verification: fix formatting

traumschule authored 5 years ago

47)     <a href="https://en.wikipedia.org/wiki/Digital_signature">
48)     https://en.wikipedia.org/wiki/Digital_signature</a>.</p>
49) 
traumschule WIP verification: improve w...

traumschule authored 5 years ago

50)     <p class="hint">(Click on each headline to show or hide the section.)</p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

51)   </article>
52)  </div>
hiromipaw Started updating verify sig...

hiromipaw authored 6 years ago

53) 
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

54) <!-- Motivation -->
55)  <div>
56)    <input id="ac-1" name="accordion-1" type="checkbox" />
57)    <label for="ac-1">
58)     <a class="nav" title="link here" href="#Why-verify-signature">&#9668;</a>
traumschule WIP verification: improve w...

traumschule authored 5 years ago

59)     <h3><a name="Why-verify-signature">Always verify the signature of
60)         downloaded files</a></h3>
Roger Dingledine add some introduction parag...

Roger Dingledine authored 12 years ago

61)     <hr>
traumschule verification: fix formatting

traumschule authored 5 years ago

62)     <p>
63)     How do you know that the Tor program you have is really the one we made?
traumschule WIP verification: improve w...

traumschule authored 5 years ago

64)     Digital signatures ensure that the package you are downloading was created
65)     by our <a href="<>page about/corepeople>">developers</a>. It uses a
66)     cryptographic mechanism to ensure that the software package that you have
67)     just downloaded is authentic.
68)     <span class="hint">(click to toggle)</span></p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

69)    </label>
70)    <article class="ac-small">
71) 
traumschule verification: fix formatting

traumschule authored 5 years ago

72)     <p>
traumschule WIP verification: improve w...

traumschule authored 5 years ago

73)     For many Tor users it is important to verify that the Tor software is
74)     authentic as they have very real adversaries who might try to give them a
75)     fake version of Tor.
traumschule verification: fix formatting

traumschule authored 5 years ago

76)     </p>
Roger Dingledine add some introduction parag...

Roger Dingledine authored 12 years ago

77) 
traumschule verification: fix formatting

traumschule authored 5 years ago

78)     <p>
traumschule WIP verification: improve w...

traumschule authored 5 years ago

79)     If the Tor package has been modified by some attacker it is not safe to use
80)     it. It doesn't matter how secure and anonymous Tor is if you're not running
81)     the real Tor.
traumschule verification: fix formatting

traumschule authored 5 years ago

82)     </p>
hiromipaw Started updating verify sig...

hiromipaw authored 6 years ago

83) 
traumschule verification: fix formatting

traumschule authored 5 years ago

84)     <p>
85)     Before you go ahead and download something, there are a few extra steps you
86)     should take to make sure you have downloaded an authentic version of Tor.
87)     </p>
hiromipaw Small improvements to verif...

hiromipaw authored 6 years ago

88) 
89)     <h4>Always download Tor from torproject.org</h4>
90) 
traumschule verification: fix formatting

traumschule authored 5 years ago

91)     <p>
92)     There are a variety of attacks that can be used to make you download a fake
traumschule WIP verification: improve w...

traumschule authored 5 years ago

93)     version of Tor. For example, an attacker could trick you into thinking some
94)     other website is a great place to download Tor. You should always download
95)     Tor from
96)     <a href="https://www.torproject.org"><b>https</b>://www.torproject.org/</a>.
traumschule verification: fix formatting

traumschule authored 5 years ago

97)     </p>
hiromipaw Started updating verify sig...

hiromipaw authored 6 years ago

98) 
hiromipaw Small improvements to verif...

hiromipaw authored 6 years ago

99)     <h4>Always make sure you are browsing over https</h4>
100) 
traumschule verification: fix formatting

traumschule authored 5 years ago

101)     <p>
traumschule WIP verification: improve w...

traumschule authored 5 years ago

102)     <a href="https://www.torproject.org">https://www.torproject.org/</a> uses
103)     https. Https is the secure version of the http protocol which uses
104)     encryption and authentication between your browser and the website.
105)     This makes it much harder for the attacker to modify your download. But
106)     it's not perfect. Some places in the world block the Tor website, making
107)     users to download Tor <a href="<page docs/faq>#GetTor">somewhere else</a>.
traumschule verification: fix formatting

traumschule authored 5 years ago

108)     </p>
hiromipaw Started updating verify sig...

hiromipaw authored 6 years ago

109) 
traumschule verification: fix formatting

traumschule authored 5 years ago

110)     <p>
111)     Large companies sometimes force employees to use a modified browser,
traumschule WIP verification: improve w...

traumschule authored 5 years ago

112)     so the company can listen in on all their browsing. We've even
113)     <a href="https://blog.torproject.org/blog/diginotar-debacle-and-what-you-should-do-about-it">seen</a>
Roger Dingledine add some introduction parag...

Roger Dingledine authored 12 years ago

114)     attackers who have the ability to trick your browser into thinking
traumschule verification: fix formatting

traumschule authored 5 years ago

115)     you're talking to the Tor website with https when you're not.
116)     </p>
Roger Dingledine add some introduction parag...

Roger Dingledine authored 12 years ago

117) 
hiromipaw Small improvements to verif...

hiromipaw authored 6 years ago

118)     <h4>Always verify signatures of packages you have downloaded</h4>
119) 
traumschule verification: fix formatting

traumschule authored 5 years ago

120)     <p>
121)     Some software sites list
122)     <a href="https://en.wikipedia.org/wiki/Cryptographic_hash_function">sha1
Roger Dingledine add some introduction parag...

Roger Dingledine authored 12 years ago

123)     hashes</a> alongside the software on their website, so users can
124)     verify that they downloaded the file without any errors. These
125)     "checksums" help you answer the question "Did I download this file
126)     correctly from whoever sent it to me?" They do a good job at making
127)     sure you didn't have any random errors in your download, but they
128)     don't help you figure out whether you were downloading it from the
129)     attacker. The better question to answer is: "Is this file that I
traumschule verification: fix formatting

traumschule authored 5 years ago

130)     just downloaded the file that Tor intended me to get?"
131)     </p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

132)     <a class="nav" href="#TOC" title="go up">&uarr;</a>
133)   </article>
134)  </div>
135) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

136) <!-- Import Tor's signing key -->
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

137)  <div>
138)   <input id="ac-2" name="accordion-2" type="checkbox" checked />
139)   <label for="ac-2">
traumschule verification: split by OS (...

traumschule authored 5 years ago

140)     <a class="nav" title="link here" href="#ImportKey">&#9668;</a>
141)     <h3><a name="ImportKey">Step 1: Import Tor's signing key</a></h3>
Roger Dingledine add another heading on veri...

Roger Dingledine authored 12 years ago

142)     <hr>
traumschule verification: fix formatting

traumschule authored 5 years ago

143)     <p>
144)     Each file on <a href="<page download/download>">our download
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

145)     page</a> is accompanied by a file with the same name as the
146)     package and the extension ".asc". These .asc files are GPG
147)     signatures. They allow you to verify the file you've downloaded
148)     is exactly the one that we intended you to get. For example,
Georg Koppen Bug 13407: Update signature...

Georg Koppen authored 9 years ago

149)     torbrowser-install-<version-torbrowserbundle>_en-US.exe is accompanied by
150)     torbrowser-install-<version-torbrowserbundle>_en-US.exe.asc. For a list
traumschule verification: fix formatting

traumschule authored 5 years ago

151)     of which developer signs which package, see our
152)     <a href="<page docs/signing-keys>">signing keys</a> page.
153)     </p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

154)   </label>
traumschule verification: split by OS (...

traumschule authored 5 years ago

155)   <article class="ac-box">
traumschule WIP verification: improve w...

traumschule authored 5 years ago

156) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

157)    <p><span class="hint">Choose your operating system:</span>
158)    <label for="ac-2-1"><a name="KeyWindows">&#9658; Windows</a></label>
159)    <label for="ac-2-2"><a name="KeyMacOS">&#9658; Mac OS X</a></label>
160)    <label for="ac-2-3"><a name="KeyLinux">&#9658; Linux</a></label>
161)    </p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

162) <!-- Windows -->
traumschule verification: split by OS (...

traumschule authored 5 years ago

163)   <div>
164)    <input id="ac-2-1" name="accordion-2" type="radio" checked />
165)    <article class="ac-os">
166)     <h3>Import OpenPGP keys on Windows</h3>
traumschule verification: fix formatting

traumschule authored 5 years ago

167)     <p>
168)     First of all you need to have GnuPG installed before you can verify
169)     signatures.
170)     <br/>
171)     Download it from
172)     <a href="https://gpg4win.org/download.html">https://gpg4win.org/download.html</a>.
173)     </p>
174)     <p>
175)     Once it's installed, use GnuPG to import the key that signed your
hiromipaw Edits instruction on how to...

hiromipaw authored 6 years ago

176)     package. In order to verify the signature you will need to type a few commands
177)     in windows command-line, <i>cmd.exe</i>.
traumschule verification: fix formatting

traumschule authored 5 years ago

178)     </p>
179)     <p>
180)     The Tor Browser team signs Tor Browser releases. Import its key
181)     (0x4E2C6E8793298290) by starting <i>cmd.exe</i> and typing:
182)     </p>
traumschule remove full path from windo...

traumschule authored 5 years ago

183)     <pre>gpg.exe --keyserver pool.sks-keyservers.net --recv-keys 0x4E2C6E8793298290</pre>
traumschule verification: fix formatting

traumschule authored 5 years ago

184)     <p>
traumschule verification: split by OS (...

traumschule authored 5 years ago

185)    </article>
186)   </div>
187) <!-- MacOS -->
188)   <div>
189)    <input id="ac-2-2" name="accordion-2" type="radio" />
190)    <article class="ac-os">
191)     <h3>Import OpenPGP keys on Mac OS</h3>
192)     <p>
193)     You need to have GnuPG installed before you can verify
194)     signatures. Install it from
195)     <a href="https://www.gpgtools.org/">https://www.gpgtools.org/</a>.
196)     </p>
197) 
198)     <p>The next step is to use GnuPG to import the key that signed
199)     your package. The Tor Browser team signs Tor Browser releases. Import its
200)     key (0x4E2C6E8793298290) by starting the terminal under "Applications"
201)     and typing:</p>
202)     <pre>gpg --keyserver pool.sks-keyservers.net --recv-keys 0x4E2C6E8793298290</pre>
203)     <p>
204)    </article>
205)   </div>
206) <!-- Linux -->
207)   <div>
208)    <input id="ac-2-3" name="accordion-2" type="radio" />
209)    <article class="ac-os">
210)     <h3>Import OpenPGP keys on Linux</h3>
211)     <p>
212)     You need to have GnuPG installed before you can verify
213)     signatures. It's probably GnuPG is alreadyy installed on your
214)     system, as most Linux distributions come with it preinstalled.
215)     </p>
216) 
217)     <p>
218)     The next step is to use GnuPG to import the key that signed
219)     your package. The Tor Browser team signs Tor Browser releases. Import its
220)     key (0x4E2C6E8793298290) by starting the terminal and typing:</p>
221)     <pre>gpg --keyserver pool.sks-keyservers.net --recv-keys 0x4E2C6E8793298290</pre>
222)     <p>
223)    </article>
224)   </div>
225)   <div>
226)     <p>
traumschule verification: fix formatting

traumschule authored 5 years ago

227)     After importing the key, you can verify that the fingerprint
228)     is correct:
229)     </p>
traumschule verification: split by OS (...

traumschule authored 5 years ago

230)     <pre>gpg --fingerprint 0x4E2C6E8793298290</pre>
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

231)     <p>You should see:</p>
232)     <pre>
traumschule update gpg fingerprint outp...

traumschule authored 5 years ago

233) pub   rsa4096/0x4E2C6E8793298290 2014-12-15 [C] [expires: 2020-08-24]
234)       Key fingerprint = EF6E 286D DA85 EA2A 4BA7  DE68 4E2C 6E87 9329 8290
traumschule verification: fix formatting

traumschule authored 5 years ago

235) uid                   [ unknown] Tor Browser Developers (signing key) &lt;torbrowser@torproject.org&gt;
traumschule update gpg fingerprint outp...

traumschule authored 5 years ago

236) sub   rsa4096/0xD1483FA6C3C07136 2016-08-24 [S] [expires: 2018-08-24]
237)       Key fingerprint = A430 0A6B C93C 0877 A445  1486 D148 3FA6 C3C0 7136
238) sub   rsa4096/0xEB774491D9FF06E2 2018-05-26 [S] [expires: 2020-09-12]
239)       Key fingerprint = 1107 75B5 D101 FB36 BC6C  911B EB77 4491 D9FF 06E2
traumschule verification: fix formatting

traumschule authored 5 years ago

240)     </pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

241)     <a class="nav" href="#TOC" title="go up">&uarr;</a>
242)   </div>
243)  </article><!-- END Import -->
244) </div>
245) 
246) <!-- Verifiy with OpenPGP signature -->
247) <div>
248)  <input id="ac-3" name="accordion-3" type="checkbox" />
249)  <label for="ac-3">
250)     <a class="nav" title="link here" href="#VerifySignature">&#9668;</a>
251)     <h3><a name="VerifySignature">Step 2: Verification with OpenGPG signatures</a></h3>
252)     <hr>
253)     <p>This section explains how to verify the downloaded file's digital
254)     signature on different operating systems. Please notice that a signature is
255)     dated the moment the package has been signed. Therefore every time a new
256)     file is uploaded a new signature is generated with a different date. As
257)     long as you have verified the signature you should not worry that the
258)     reported date may vary.
259)     </p>
260)   </label>
261)   <article class="ac-box">
262)    <p><span class="hint">Choose your operating system:</span>
263)    <label for="ac-3-1"><a name="VerifyWindows">&#9658; Windows</a></label>
264)    <label for="ac-3-2"><a name="VerifyMacOS">&#9658; Mac OS X</a></label>
265)    <label for="ac-3-3"><a name="VerifyLinux">&#9658; Linux</a></label>
266)    </p>
267)    <p>
268)    If you haven't already, <a href="<page download/download>">download</a>
269)    the files you are interested in.
270)    </p>
271) <!-- Windows -->
272)   <div>
273)    <input id="ac-3-1" name="accordion-3" type="radio" checked />
274)    <article class="ac-os">
275)     <h3>Verify with an OpenPGP signature on Windows</h3>
traumschule verification: fix formatting

traumschule authored 5 years ago

276)     <p>
277)     To verify the signature of the package you downloaded, you will need
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

278)     to download the ".asc" file as well. Assuming you downloaded the
traumschule verification: fix formatting

traumschule authored 5 years ago

279)     package and its signature to your Desktop, run:
280)     </p>
traumschule remove full path from windo...

traumschule authored 5 years ago

281)     <pre>gpg.exe --verify C:\Users\Alice\Desktop\torbrowser-install-<version-torbrowserbundle>_en-US.exe.asc</pre>
hiromipaw Small improvements to verif...

hiromipaw authored 6 years ago

282)     <p>Please substitute "Alice" with your own username.</p>
traumschule verification: fix formatting

traumschule authored 5 years ago

283)     <p>The output should say "Good signature":</p>
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

284)     <pre>
traumschule docs/verifying-signatures:...

traumschule authored 5 years ago

285) gpg: assuming signed data in 'torbrowser-install-<version-torbrowserbundle>_en-US.exe'
286) gpg: Signature made Wed 15 Nov 2017 05:52:38 PM CET
287) gpg:                using RSA key 0xD1483FA6C3C07136
traumschule verification: fix formatting

traumschule authored 5 years ago

288) gpg: Good signature from "Tor Browser Developers (signing key) &lt;torbrowser@torproject.org&gt;" [unknown]
traumschule docs/verifying-signatures:...

traumschule authored 5 years ago

289) gpg: WARNING: This key is not certified with a trusted signature!
290) gpg:          There is no indication that the signature belongs to the owner.
291) Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7  DE68 4E2C 6E87 9329 8290
292)      Subkey fingerprint: A430 0A6B C93C 0877 A445  1486 D148 3FA6 C3C0 7136
traumschule verification: fix formatting

traumschule authored 5 years ago

293)     </pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

294)    </article>
295)   </div>
296) <!-- MacOS -->
297)   <div>
298)    <input id="ac-3-2" name="accordion-3" type="radio" />
299)    <article class="ac-os">
300)     <h3>Verify with an OpenPGP signature on Mac OS</h3>
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

301)     <p>
traumschule verification: split by OS (...

traumschule authored 5 years ago

302)     To verify the signature of the package you downloaded, you will need
303)     to download the ".asc" file as well. Assuming you downloaded the
304)     package and its signature to your Downloads folder, run:
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

305)     </p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

306) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

307)     <pre>gpg --verify ~/Downloads/TorBrowser-<version-torbrowserbundleosx64>_en-US.dmg{.asc*,}</pre>
308) 
309)     <p>The output should say "Good signature":</p>
Roger Dingledine clear trailing whitespaces;...

Roger Dingledine authored 13 years ago

310) 
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

311)     <pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

312) gpg: assuming signed data in 'tor-browser-osx64-<version-torbrowserbundleosx64>_en-US.tar.xz'
313) gpg: Signature made Wed 15 Nov 2017 05:52:38 PM CET
314) gpg:                using RSA key 0xD1483FA6C3C07136
315) gpg: Good signature from "Tor Browser Developers (signing key) &lt;torbrowser@torproject.org&gt;" [unknown]
316) gpg: WARNING: This key is not certified with a trusted signature!
317) gpg:          There is no indication that the signature belongs to the owner.
318) Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7  DE68 4E2C 6E87 9329 8290
319)      Subkey fingerprint: A430 0A6B C93C 0877 A445  1486 D148 3FA6 C3C0 7136
traumschule update gpg fingerprint outp...

traumschule authored 5 years ago

320)     </pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

321)    </article>
322)   </div>
323) <!-- Linux -->
324)   <div>
325)    <input id="ac-3-3" name="accordion-3" type="radio" />
326)    <article class="ac-os">
327)     <h3>Verify with an OpenPGP signature on Linux</h3>
traumschule verification: fix formatting

traumschule authored 5 years ago

328)     <p>
329)     To verify the signature of the package you downloaded, you will need
Roger Dingledine the verifying signatures pa...

Roger Dingledine authored 12 years ago

330)     to download the ".asc" file as well. Assuming you downloaded the
traumschule verification: fix formatting

traumschule authored 5 years ago

331)     package and its signature to your Downloads folder, run:
332)     </p>
Roger Dingledine clear trailing whitespaces;...

Roger Dingledine authored 13 years ago

333) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

334)     <p>Change 64 to 32 if you have the 32-bit package:</p>
traumschule verification: fix formatting

traumschule authored 5 years ago

335) 
traumschule docs/verifying-signatures:...

traumschule authored 5 years ago

336)     <pre>gpg --verify tor-browser-linux64-<version-torbrowserbundlelinux64>_en-US.tar.xz.asc</pre>
Roger Dingledine clear trailing whitespaces;...

Roger Dingledine authored 13 years ago

337) 
Georg Koppen Bug 15253: Add Tor Browser...

Georg Koppen authored 9 years ago

338)     <p>The output should say "Good signature":</p>
Roger Dingledine clear trailing whitespaces;...

Roger Dingledine authored 13 years ago

339) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

340)     <pre>
traumschule docs/verifying-signatures:...

traumschule authored 5 years ago

341) gpg: assuming signed data in 'tor-browser-linux64-<version-torbrowserbundlelinux64>_en-US.tar.xz'
342) gpg: Signature made Wed 15 Nov 2017 05:52:38 PM CET
343) gpg:                using RSA key 0xD1483FA6C3C07136
traumschule verification: fix formatting

traumschule authored 5 years ago

344) gpg: Good signature from "Tor Browser Developers (signing key) &lt;torbrowser@torproject.org&gt;" [unknown]
traumschule docs/verifying-signatures:...

traumschule authored 5 years ago

345) gpg: WARNING: This key is not certified with a trusted signature!
346) gpg:          There is no indication that the signature belongs to the owner.
347) Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7  DE68 4E2C 6E87 9329 8290
348)      Subkey fingerprint: A430 0A6B C93C 0877 A445  1486 D148 3FA6 C3C0 7136
349)     </pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

350) 
351)     <p>
352)     On <b>Debian</b> for Tor (not Tor Browser) packages, you should read the
353)     instructions on
354)     <a href="<page docs/debian>#packages">importing these keys to apt</a>.
355)     If you're using the <b>RPMs</b> (for Tor, not Tor Browser), you can
356)     manually verify the signatures on the RPM packages by
357)     <pre>rpm -K filename.rpm</pre>
358)     </p>
359) 
360)   </article>
361)  </div>
362) <!-- END OS specific sections -->
traumschule verification: fix formatting

traumschule authored 5 years ago

363)     <p>
364)     Currently valid subkey fingerprints are:
365)     </p>
Georg Koppen Bug 15253: Add Tor Browser...

Georg Koppen authored 9 years ago

366)     <pre>
367)     5242 013F 02AF C851 B1C7  36B8 7017 ADCE F65C 2036
Georg Koppen Add new subkeys for Tor Bro...

Georg Koppen authored 7 years ago

368)     BA1E E421 BBB4 5263 180E  1FC7 2E1A C68E D408 14E0
traumschule verification: fix formatting

traumschule authored 5 years ago

369)     A430 0A6B C93C 0877 A445  1486 D148 3FA6 C3C0 7136
370)     </pre>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

371)     <p>
372)     Notice that there is a warning because you haven't assigned a trust
373)     index to this person. This means that GnuPG verified that the key made
374)     that signature, but it's up to you to decide if that key really belongs
375)     to the developer. The best method is to meet the developer in person and
376)     exchange key fingerprints.
377)     </p>
Georg Koppen Bug 15253: Add Tor Browser...

Georg Koppen authored 9 years ago

378) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

379)     <p>To learn more about GnuPG see
380)     <a href="https://www.gnupg.org/documentation/">https://www.gnupg.org/documentation/</a>
ilv Combined osx and linux inst...

ilv authored 9 years ago

381)     </p>
Roger Dingledine explain that linux users ar...

Roger Dingledine authored 12 years ago

382) 
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

383)     <a class="nav" href="#TOC" title="go up">&uarr;</a>
384)   </article>
385)  </div>
386) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

387) <!-- Verify checksums -->
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

388)  <div>
traumschule verification: split by OS (...

traumschule authored 5 years ago

389)   <input id="ac-4" name="accordion-4" type="checkbox" />
390)    <label for="ac-4">
391)     <a class="nav" title="link here" href="#ChecksumVerification">&#9668;</a>
392)     <h3><a id="Checksumerification">Step 3: Verify the file integrity</a></h3>
Matt Pagan Moved verification instruct...

Matt Pagan authored 9 years ago

393)     <hr>
traumschule verification: split by OS (...

traumschule authored 5 years ago

394)     <p>
395)     Build reproducibility is a
396)     <a href="https://blog.torproject.org/blog/deterministic-builds-part-one-cyberwar-and-global-compromise">
397)     security property</a> of Tor Browser 3.0 and later. Anyone can build
398)     Tor Browser on their own machine and produce a binary that is bit-for-bit
399)     identical to the binary we offer on the download page.
400)     Fortunately, it is not necessary for everyone to build Tor Browser locally
401)     to get this security. Verifying and comparing the signed list of
402)     <a href="https://en.wikipedia.org/wiki/Cryptographic_hash">hashes</a>
403)     will confirm that multiple people have built Tor Browsers identical to the
404)     download.
405)     </p>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

406)    </label>
traumschule verification: split by OS (...

traumschule authored 5 years ago

407)   <article>
408)     <p>
409)     Note: This process does not work on OS X yet due to Apple's codesigning requirement.
410)     See <a href="#MARVerification">MAR verification</a> below.
411)     </p>
412)      <ul>
413)       <li>
414)       <a href="<page download/download>">Download</a> the Tor Browser package,
415)       the <tt>sha256sums-unsigned-build.txt</tt> file, and the
416)       <tt>sha256sums-unsigned-build.txt.asc</tt> signature file.
Georg Koppen Update advanced verificatio...

Georg Koppen authored 8 years ago

417)       They can all be found in the same directory under
418)       <a href="https://www.torproject.org/dist/torbrowser/">
hiromipaw Make 64bit instructions def...

hiromipaw authored 7 years ago

419)       https://www.torproject.org/dist/torbrowser/</a>, for example in '<version-torbrowserbundlelinux64>'
traumschule verification: split by OS (...

traumschule authored 5 years ago

420)       for Tor Browser <version-torbrowserbundlelinux64>.
traumschule verification: fix formatting

traumschule authored 5 years ago

421)       </li>
422)       <li>
traumschule verification: split by OS (...

traumschule authored 5 years ago

423)       Retrieve the signers' GPG keys with this id like described above<br/>
424)       (Other developers' key IDs can be found on
425)       <a href="<page docs/signing-keys>">this page)</a>:    
426)       <pre id="ttb-key">0x4E2C6E8793298290</pre></li>
427)      </ul>
428)   </article>
429)   <article class="ac-box">
430)   
431)    <p><span class="hint">Choose your operating system:</span>
432)    <span>
433) 
434)     <label for="ac-4-1"><a name="ChecksumsWindows">&#9658; Windows</a></label>
435)    </span>
436)    <!--<span>
437)    <input id="ac-4-2" name="accordion-4" type="radio" />
438)    <label for="ac-4-2"><a name="ChecksumMacOS">MacOS</a></label>
439)    </span>-->
440)    <span>
441)     <label for="ac-4-3"><a name="ChecksumsLinux">&#9658; Linux</a></label>
442)    </span>
443)    </p>
444) 
445) <!-- Windows -->
446)   <div>
447)     <input id="ac-4-1" name="accordion-4" type="radio" />
448)    <article class="ac-os">
449)     <h3>Verififcation with a checksum on Windows</h3>
450)     <h4>Verify the signature of the checksum file</h4>
451)     <p>
452)     Verify the sha256sums-unsigned-build.txt file by executing this command:
453)     </p>
454)     <pre>gpg.exe --verify sha256sums-unsigned-build.txt.asc sha256sums-unsigned-build.txt
455)     </pre>
456) 
457)     <p>
458)     You should see a message like
459)     <pre>"Good signature from &lt;DEVELOPER NAME&gt;"</pre>.
460)     If you don't, there is a problem. Try these steps again.
461)     </p>
traumschule verification: fix formatting

traumschule authored 5 years ago

462) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

463)     <h4>Verify the file integrity of Tor Browser</h4>
464)      <ul>
Georg Koppen Bug 15598: Update documenta...

Georg Koppen authored 8 years ago

465)       <li>If you want to verify a Windows Tor Browser package you need to first
traumschule verification: split by OS (...

traumschule authored 5 years ago

466)       strip off the authenticode signature of it.<br/>
467)       Tools that can be used for this purpose are
traumschule verification: fix formatting

traumschule authored 5 years ago

468)       <a href="http://osslsigncode.sourceforge.net">osslsigncode</a> and
Georg Koppen Add delcert.exe as signatur...

Georg Koppen authored 8 years ago

469)       <a href="http://forum.xda-developers.com/showthread.php?t=416175">delcert.exe</a>.
470)       Assuming you have built e.g. <tt>osslsigncode</tt> on a Linux computer you can enter
traumschule verification: split by OS (...

traumschule authored 5 years ago

471)       </li>
472)       <pre>C:\path\to\osslsigncode remove-signature &#92;
473)       C:\path\to\your\&lt;TOR BROWSER FILE NAME&gt;.exe &lt;TOR BROWSER FILE NAME&gt;.exe
traumschule verification: fix formatting

traumschule authored 5 years ago

474)       </pre>
traumschule verification: split by OS (...

traumschule authored 5 years ago

475) 
476)       <li>Now use the sha256sum of the Tor Browser package with the
477)       <a href="http://md5deep.sourceforge.net/">hashdeep utility</a> and run
traumschule verification: fix formatting

traumschule authored 5 years ago

478)       </li>
traumschule verification: split by OS (...

traumschule authored 5 years ago

479)       <pre>C:\location\where\you\saved\hashdeep -c sha256sum &lt;TOR BROWSER FILE NAME&gt;.exe</pre>
480)      </ul>
481)    </article>
482)   </div>
483) <!-- Mac OS --><!--
484)  <div>
485)    <article class="ac-os">
486)      This process does not work on OS X yet due to Apple's codesigning requirement.
487)    </article>
488)  </div>
489) -->
traumschule verification: fix formatting

traumschule authored 5 years ago

490) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

491) <!-- Linux -->
492)     <input id="ac-4-3" name="accordion-4" type="radio" />
493)    <article class="ac-os ac-4-3">
494)     <h3>Verififcation with a checksum on Linux</h3>
495)     <h4>Verify the signature of the checksum file</h4>
496)     <ul>
497)      <li>Verify the sha256sums-unsigned-build.txt with this command:</li>
498)      <pre>gpg --verify sha256sums-unsigned-build.txt.asc sha256sums-unsigned-build.txt
499)      </pre>
500) 
501)      <li>><!-- TODO which OSs are meant here? -->
502)      In case your operating system is adding the .txt extension automatically
503)      to the SHA256 sums signature file strip it again by running
504)      </li>>
505)      <pre>mv sha256sums-unsigned-build.txt.asc.txt sha256sums-unsigned-build.txt.asc</pre>
506) 
507)      <li>>
508)      Verify the sha256sums-unsigned-build.txt file by executing this command:
509)      </li>
510)      <pre>gpg --verify sha256sums-unsigned-build.txt.asc sha256sums-unsigned-build.txt
511)      </pre>
512) 
513)      <li>
514)      You should see a message like
515)      <pre>"Good signature from &lt;DEVELOPER NAME&gt;"</pre>.
516)      If you don't, there is a problem. Try these steps again.
517)      </li>
518)     </ul>
519) 
520)     <h4>Verify the file integrity of Tor Browser</h4>
521)     <ul>
522)      <li>Calculate the SHA-256 checksum of Tor Browser:</li>
523)      <pre>sha256sum &lt;TOR BROWSER FILE NAME&gt;.tar.gz</pre>
traumschule verification: fix formatting

traumschule authored 5 years ago

524) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

525)      <li>You will see a string of letters and numbers.</li>
traumschule verification: fix formatting

traumschule authored 5 years ago

526) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

527)      <li>Open <tt>sha256sums-unsigned-build.txt</tt> in a text editor.</li>
traumschule verification: fix formatting

traumschule authored 5 years ago

528) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

529)      <li>Locate the name of the Tor Browser file you downloaded.</li>
traumschule verification: fix formatting

traumschule authored 5 years ago

530) 
traumschule verification: split by OS (...

traumschule authored 5 years ago

531)      <li>
532)      Compare the string of letters and numbers to the left of your filename with
533)      the string of letters and numbers that appeared on your command line.
534)      If they match, you've successfully verified the build.
535)      </li>
Matt Pagan Moved verification instruct...

Matt Pagan authored 9 years ago

536)     </ul>
traumschule verification: split by OS (...

traumschule authored 5 years ago

537)    </article>
538)    <a class="nav" href="#TOC" title="go up">&uarr;</a>
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

539)   </article>
540)  </div>
541) 
542) <!-- MAR verification -->
543)  <div>
traumschule verification: split by OS (...

traumschule authored 5 years ago

544)   <input id="ac-5" name="accordion-5" type="checkbox" />
545)    <label for="ac-5">
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

546)     <a class="nav" title="link here" href="#MARVerification">&#9668;</a>
traumschule verification: split by OS (...

traumschule authored 5 years ago

547)     <h3><a name="MARVerification">MAR verification</a></h3>
Matt Pagan Moved verification instruct...

Matt Pagan authored 9 years ago

548)     <hr>
traumschule verification: split by OS (...

traumschule authored 5 years ago

549)     <p>
550)     Starting with Tor Browser 4.5a4 we sign our MAR files which helps
Georg Koppen Bug 14304: Document strippi...

Georg Koppen authored 9 years ago

551)     securing our update process. The downside of this is the need for additional
552)     instructions to verify that the MAR files we ship are indeed the ones we
traumschule verification: split by OS (...

traumschule authored 5 years ago

553)     produced with our rbm setup.
554)     </p>
555)    </label>
556)    <article class="ac-small">
557)     <p>
558)     Assuming the verification happens on a Linux computer one first needs the
Georg Koppen Bug 14304: Document strippi...

Georg Koppen authored 9 years ago

559)     <tt>mar-tools-linux*.zip</tt> out of the <tt>gitian-builder/inputs</tt>
560)     directory to remove the embedded signature(s). The steps to get the unsigned
561)     MAR file on a 64 bit Linux are</p>
562)     <pre>
563)     cd /path/to/MAR/file
564)     unzip /path/to/gitian-builder/inputs/mar-tools-linux64.zip
Georg Koppen Update signature verificati...

Georg Koppen authored 8 years ago

565)     export LD_LIBRARY_PATH=/path/to/MAR/file/mar-tools
Georg Koppen Bug 14304: Document strippi...

Georg Koppen authored 9 years ago

566)     mar-tools/signmar -r your-signed-mar-file.mar your-unsigned-mar-file.mar</pre>
567)     <p>Now you can compare the SHA256 sum of <tt>your-unsigned-mar-file.mar</tt>
Georg Koppen Update advanced verificatio...

Georg Koppen authored 8 years ago

568)     with the one provided in the <tt>sha265sums-unsigned-build.txt</tt> or
569)     <tt>sha256sums-unsigned-build.incremental.txt</tt> as outlined in
traumschule verification: split by OS (...

traumschule authored 5 years ago

570)     <a href="#ChekcksumVerification">Checksum verification</a> above.
571)     </p>
572)    </article>
573)  </div>
574) 
575) <!-- Troubleshooting -->
576)  <div>
577)   <input id="ac-6" name="accordion-6" type="checkbox" />
578)    <label for="ac-6">
579)     <a class="nav" title="link here" href="#Troubleshooting">&#9668;</a>
580)     <h3><a id="Troubleshooting">Troubleshooting</a></h3>
581)     <hr>
582)     <p>Does this guide work for you? Is a question missing?
583)     <a href="<page about/contact>#support">Reach out to us</a>!</p>
584)    </label>
585)    <article class="ac-small">
586)    
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

587)     <a class="nav" href="#TOC" title="go up">&uarr;</a>
588)   </article>
589)  </div>
590) 
591) <!-- Scripts -->
592)  <div>
593)   <input id="ac-7" name="accordion-7" type="checkbox" checked />
594)    <label for="ac-7">
595)     <a class="nav" title="link here" href="#Scripts">&#9668;</a>
596)     <h3><a id="Scripts">Automate the process with a script</a></h3>
597)     <hr>
598)     <p><a href="https://github.com/isislovecruft/scripts/blob/master/verify-gitian-builder-signatures">Scripts</a>
599)     to <a href="https://tor.stackexchange.com/questions/648/how-to-verify-tor-browser-bundle-tbb-3-x">automate</a>
600)     these steps have been written, but to use them you will need to modify
601)     them yourself with the latest Tor Browser filename.</p>
traumschule verification: split by OS (...

traumschule authored 5 years ago

602)    </label>
603)    <article class="ac-small">
traumschule rebase onto torproject/webw...

traumschule authored 5 years ago

604)     <a class="nav" href="#TOC" title="go up">&uarr;</a>
605)   </article>
606)  </div>
607) </section>
Matt Pagan Moved verification instruct...

Matt Pagan authored 9 years ago

608) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

609)   </div>
610)   <!-- END MAINCOL -->
611)   <div id = "sidecol">
612) #include "side.wmi"
613) #include "info.wmi"
614)   </div>
615)   <!-- END SIDECOL -->
616) </div>
617) <!-- END CONTENT -->