バージョン 2.0 に更新

This commit is contained in:
alice2bob 2022-08-12 02:07:21 +00:00
parent 3a461cadfd
commit cc3ce52f50
Signed by: alice2bob
GPG Key ID: AFECE2CCB7C64E2B
34 changed files with 8421 additions and 205 deletions

View File

@ -2,7 +2,7 @@
# アリスとボブ {#top}
バージョン: 1.1
バージョン: 2.0
アリスとボブはやりとりをしたいが、
デジタル技術が広く行き渡っている情報化時代の中に生きていて、
@ -27,45 +27,55 @@
## ガイド一覧 {#list}
- **序文** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-preface-1.1.md)
\| [HTML](ja-html/alice2bob-ja-preface-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-preface-2.0.md)
\| [HTML](ja-html/alice2bob-ja-preface-2.0.html)
\
(最終更新: 2021-12-29
(最終更新: 2022-08-12
- **デジタルセキュリティの概念** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-security-concepts-1.1.md)
\| [HTML](ja-html/alice2bob-ja-security-concepts-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-security-concepts-2.0.md)
\| [HTML](ja-html/alice2bob-ja-security-concepts-2.0.html)
\
(最終更新: 2022-02-28
- **セキュリティ計画** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-security-plan-1.1.md)
\| [HTML](ja-html/alice2bob-ja-security-plan-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-security-plan-2.0.md)
\| [HTML](ja-html/alice2bob-ja-security-plan-2.0.html)
\
(最終更新: 2021-02-02 EFF による最終レビュー
(最終更新: 2021-12-29 (原文更新: 2021-02-02
- **Tor 匿名化ネットワーク** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tor-1.1.md)
\| [HTML](ja-html/alice2bob-ja-Tor-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tor-2.0.md)
\| [HTML](ja-html/alice2bob-ja-Tor-2.0.html)
\
(最終更新: 2021-12-29
- **Tor Browser** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tor-Browser-1.1.md)
\| [HTML](ja-html/alice2bob-ja-Tor-Browser-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tor-Browser-2.0.md)
\| [HTML](ja-html/alice2bob-ja-Tor-Browser-2.0.html)
\
(最終更新: 2021-12-29
- **Tails を用いた自由かつ匿名コンピューティング** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tails-1.1.md)
\| [HTML](ja-html/alice2bob-ja-Tails-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-Tails-2.0.md)
\| [HTML](ja-html/alice2bob-ja-Tails-2.0.html)
\
(最終更新: 2021-12-29
- **暗号技術入門** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-intro-cryptography-2.0.md)
\| [HTML](ja-html/alice2bob-ja-intro-cryptography-2.0.html)
\
(最終更新: 2022-08-11
- **OpenPGP と GnuPG** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-OpenPGP-2.0.md)
\| [HTML](ja-html/alice2bob-ja-OpenPGP-2.0.html)
\
(最終更新: 2022-08-12
- **用語集** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-glossary-1.1.md)
\| [HTML](ja-html/alice2bob-ja-glossary-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-glossary-2.0.md)
\| [HTML](ja-html/alice2bob-ja-glossary-2.0.html)
\
(最終更新: 2022-02-28
- **外部資料** \
--- [ここで読むMarkdown](ja-md/alice2bob-ja-external-resources-1.1.md)
\| [HTML](ja-html/alice2bob-ja-external-resources-1.1.html)
--- [ここで読むMarkdown](ja-md/alice2bob-ja-external-resources-2.0.md)
\| [HTML](ja-html/alice2bob-ja-external-resources-2.0.html)
\
(最終更新: 2022-02-28
(最終更新: 2022-07-07
以下のいずれかの手順で全てのガイドを一括ダウンロードできます。
@ -105,8 +115,8 @@
[検証について](verify.md)
- [SHA256 の PGP 署名](alice2bob-SHA256-1.1.sig)
- [SHA256 チェックサム](alice2bob-SHA256-1.1)
- [SHA256 の PGP 署名](alice2bob-SHA256-2.0.sig)
- [SHA256 チェックサム](alice2bob-SHA256-2.0)
## 免責事項 {#disclaimer}

Binary file not shown.

View File

@ -1,5 +1,13 @@
fc03b314dde3480af90b67c7757ae9275240f6677297afa8384eb45c4b8f2bf3 ./alice2bob.asc
eac535dd14cbcfb3f109d4211f30abf81099909ceeae108836c42edc593be7e0 ./assets/css/main.css
62dc9943d49cbcecc7dea5623b054ecbd13c28476fda6db2d167179f90f2e5aa ./assets/css/main.css
5c4bc85193097b96166bb41cc474177b63262978e31f0bed5cd996f7ecbee0f2 ./assets/img/crypto/hybrid-decryption.png
c5fcdb7f7a35b1573554de1343d34b6e4a7ce6270486e268ed28e393c3c45588 ./assets/img/crypto/hybrid-encryption.png
57540c7740ae4b9bed0528e528f6ecada96e60e583bde25bae75fe8cb7f6fb0c ./assets/img/crypto/mixed-encryption.png
18aec903173bc6eb0d6c479293a822933dbd1932b24dbeb7de9f5c0781590cc9 ./assets/img/crypto/OpenPGP-message.png
0ad7969a57bef044a85c6a442dd294dd601b42f5faf85695152e22fd105621e1 ./assets/img/crypto/password-encryption.png
050a87c42a8ef112586d39cabf10ca378a893e974ed925baa1cb0ea0e8269d21 ./assets/img/crypto/signing.png
57a74ebb13c278103bf26d939c619871d3dd8c7ba97238cd0c430223ebdfd71a ./assets/img/crypto/verification.png
276dce9460f68af77ddc51d9c3762705f89f303414d0a544fba51fcf7ab2d688 ./assets/img/crypto/web-of-trust.png
ba591bcce4cd4f77e47cc0d577c29b98387b4f414d52b904da392e6f9eac7b24 ./assets/img/security-concepts/TCP-IP-topology.png
604863de058dbdbd611107981d90687488dfad5c390712e7382df981e895a45b ./assets/img/Tails/accessibility-icon.png
e0d8949865f068876603a0180670574f621dc48a9ecb17cd5574237a733b8f48 ./assets/img/Tails/persistence-config.png
@ -55,21 +63,25 @@ f1f1de39f53e31624ad6584ac82fa30d005d674506540d9091ddb2217b307783 ./assets/img/T
e835584769e2369d0e7f999ab47559c337b65270c0e64a7094b8795039500e67 ./assets/qr/contact-website.png
54daf3406661e172d28a2d4df7239e2f5154f7e370e4b8cec4b3d71d4d175cea ./blog/2021-12-02-onionket.md
69a0c9423d33fd87dfd64cb450b7d9154f039a2f6abdecde89e6dd2fec25dd0f ./blog.md
cfc4d86595a1b0c99638fc8641e7d6249960c33f2f46fa1c5d62c77444863801 ./ja-html/alice2bob-ja-external-resources-1.1.html
edf0f99eaa6a4fac8f8105b844ef88f2f4b30c6d6a478dcbceaf6f38d9f17c50 ./ja-html/alice2bob-ja-glossary-1.1.html
b4bba8407ee0acea9e802bbaac51e2e28455a28251463c32a1e7d821e1131317 ./ja-html/alice2bob-ja-preface-1.1.html
4786f16b77b14c8301de5ec9cad31379412990c0df36d8336af2ae7fba11186c ./ja-html/alice2bob-ja-security-concepts-1.1.html
759706e8d396635f3ddc231029101eb0ac712d970be858588b7f5505a3e4f24a ./ja-html/alice2bob-ja-security-plan-1.1.html
08b34e8c7df92e0c106a2a0dbde2c11811cd4383da43dcbf9bcc2008b2747f3a ./ja-html/alice2bob-ja-Tails-1.1.html
0f331d8dc9d493c9d035ec565b8a45216aba4a6d53e751303b78180a925924b0 ./ja-html/alice2bob-ja-Tor-1.1.html
6cbdf4c013be321c195b07740d4d8dc5ebc1fa423264e8ab19511ebde98de369 ./ja-html/alice2bob-ja-Tor-Browser-1.1.html
9c918ab6467461f09e03fe2d9c64898c7ae32236e4693a4150e58f59184663dd ./ja-md/alice2bob-ja-external-resources-1.1.md
a4ff13c9674cc7585ad31f7dc20deb37f235c1e987519193df7b09b14d79013a ./ja-md/alice2bob-ja-glossary-1.1.md
076a1a76263eee468522b39f5d905814060ce4b0ec1ccf935f09322082e53bdd ./ja-md/alice2bob-ja-preface-1.1.md
ea4d94e8bcf1b1dc172e6b4f6debffc7ff5ea5b9d204b6726f0de832be6880d2 ./ja-md/alice2bob-ja-security-concepts-1.1.md
8d0245dede945f3d26f09dcded04001d08bd23685a4fd77090eda8fba2a736bc ./ja-md/alice2bob-ja-security-plan-1.1.md
d973ab1b829dff1ffabb486196c4352c1d52d3589c3de83012a56e1168819573 ./ja-md/alice2bob-ja-Tails-1.1.md
b1934e7902b9c16f0015ae7350c032eed088a6b7a540751086610d651a7a22d0 ./ja-md/alice2bob-ja-Tor-1.1.md
d7b7c4f03397cf040ae324c551ef8c9f53e47a99f624b4bc56818c26c872fec4 ./ja-md/alice2bob-ja-Tor-Browser-1.1.md
d53e3b126c41f43384863409b9b3ce4a0b3f9006d399ced3a84d887cb439ba3f ./README.md
001e7222df60ebdab0725c83489c1f5f4638ddb08677f4be066946a114aff5c9 ./verify.md
44c61f076d4e6432d300726b5bca0418300a2a137a137bf775b91433606250df ./ja-html/alice2bob-ja-external-resources-2.0.html
d60e92fb4d52d1078fab398c461e44da7c50d332058b57684bb071c712f376b0 ./ja-html/alice2bob-ja-glossary-2.0.html
dad545f2441322255922ca0e78204d3397a206bdcbbe7a9a959f046a38029b66 ./ja-html/alice2bob-ja-intro-cryptography-2.0.html
2c2d76779d0544d6f8df64a4324ed7cfba13660d60b684990a099cc5e26db2ea ./ja-html/alice2bob-ja-OpenPGP-2.0.html
319a257168aabc398b86359860553717705d0aca5f8f92477634103de74f90b2 ./ja-html/alice2bob-ja-preface-2.0.html
fbc4474bf30bc5a146d924e3d81e86944055ace4ee49f2588acff11baf02559f ./ja-html/alice2bob-ja-security-concepts-2.0.html
442793bf6474eeb922fdb4b0e6037a78bf88611cee5dff13d10b930c64cfda2c ./ja-html/alice2bob-ja-security-plan-2.0.html
a11a974c767634e8f91c3d1203265774310af31c2dd8812e9dfd03de66ba5219 ./ja-html/alice2bob-ja-Tails-2.0.html
f97127c0ecb7dedc3bbf87267861602f7bebc72af4f6b2a3106b7490a3f996a4 ./ja-html/alice2bob-ja-Tor-2.0.html
b9c728c48c90be3dab7713f42d880915544dbca76c2dba999ce638443cf8e1ac ./ja-html/alice2bob-ja-Tor-Browser-2.0.html
237eeeebbd2c335198b44f322caeb9ca548e55cb0dfb364a4ccbe030fe352179 ./ja-md/alice2bob-ja-external-resources-2.0.md
1a142267464a65fdc781e8ed41321a9a028c2428623812b09959bbe2caff79e1 ./ja-md/alice2bob-ja-glossary-2.0.md
a925c0b7a8d851c1c47bb07e34e601cbbb27233378bf602879bc8c472f41d5d4 ./ja-md/alice2bob-ja-intro-cryptography-2.0.md
7959b46e0db59bffdf2cb937982f6ba5381792a7282809afb9d61f7e865eb74c ./ja-md/alice2bob-ja-OpenPGP-2.0.md
93341703eba3cb149459560b11578d68a5727d31e9f6f683d138d4966bcbfdee ./ja-md/alice2bob-ja-preface-2.0.md
13c28537285599ea3eecbc34cf3d1cc2f09ae47dcb0b2d9c9a94e5e32c42cc39 ./ja-md/alice2bob-ja-security-concepts-2.0.md
de6719ba13f7523e24c02c967fcfae67c9c009130b35e0df0d37d9c02aa0da4c ./ja-md/alice2bob-ja-security-plan-2.0.md
c026a708dca23f1098bf26bbfec2697c716df9ae3be720d184fea42ea069ccf5 ./ja-md/alice2bob-ja-Tails-2.0.md
5f2bf91ef3b76192aa732a04afd38abb4f9f15fbd14c1b57395f61324b73ca44 ./ja-md/alice2bob-ja-Tor-2.0.md
9eeff28228b1974cc12c2e2db2d3cae3d754d444aad68219ed3a37becc1aea60 ./ja-md/alice2bob-ja-Tor-Browser-2.0.md
7a1e3e0d3bc620cb6e94760eeb4b622b72d197ca4604534705f40ffce40949fc ./README.md
2e60dc4e768e7fec4ba19c627f20642fc37b4f72a1378c78dddf7604bb47f307 ./verify.md

BIN
alice2bob-SHA256-2.0.sig Normal file

Binary file not shown.

View File

@ -32,7 +32,7 @@ pre {
padding-bottom: 1em;
overflow-x: auto;
white-space: pre-wrap;
max-width: 41em; /* 65 文字 */
max-width: 50em; /* 80 文字 */
}
/* ディスプレイコードのためにインラインコード専用スタイリングをもとに戻す */
@ -56,6 +56,13 @@ kbd {
padding-right: 3px;
}
/* 表と画像 */
caption, figcaption {
color: maroon;
font-size: 80%;
}
/* 表 */
table {
@ -96,6 +103,11 @@ td:hover {
background-color: limegreen;
}
caption {
margin-top: 8px;
margin-bottom: 4px;
}
/* 画像 */
img {
@ -126,6 +138,11 @@ img.display:hover {
border-color: limegreen;
}
figcaption {
margin-top: 4px;
margin-bottom: 8px;
}
/* リスト */
li {

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

File diff suppressed because it is too large Load Diff

View File

@ -10,10 +10,10 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">Tails を用いた自由かつ匿名コンピューティング</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2021-12-29</p>
<p>Tails 4.25</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -143,12 +143,12 @@
<p>Tails はプライバシーと匿名性を保護しようとします。</p>
<p>基本的には白紙の状態で始まり、 OS の唯一の特徴を最小限にします。そのため、 Tails 利用者同士の区別を困難にしたり、利用者の作業が OS の唯一の特徴によって汚染されるリスクを最小限にします。</p>
<p>ほぼ全てのトラフィックを Tor (匿名化ネットワーク)経由にすることで、ネットワーク上の匿名性を保護しようとします。その上、 Tor Browser を用意しているため、簡単に匿名ウェブ閲覧できるようになっています。</p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク</strong><a href="../ja-md/alice2bob-ja-Tor-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-1.1.html">HTML</a></p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク</strong><a href="../ja-md/alice2bob-ja-Tor-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-2.0.html">HTML</a></p>
<p>Tails はネットワークに接続する時に、ホストデバイスのネットワークデバイスの MAC アドレス<a href="#fn3" class="footnote-ref" id="fnref3"><sup>3</sup></a>をデフォルトでごまかします。利用者が自身のデバイスを他人のネットワークに接続する場合、デバイスを特定する唯一の MAC アドレスをネットワークから保護するため重要です。</p>
<p>その代わりに、ネットワークが不要な場合、 STFU 原則に則って、ネットワークを無効化した上で Tails を起動させることができます。</p>
<h2 id="security">セキュリティ</h2>
<p>Tails は Debian Linuxベースの OS で、 FLOSS です。私有ソフトウェアの OS よりセキュリティが高くて検証可能な Debian をベースに、 Tails は利用者のプライバシーと匿名性の保護に特化しています。</p>
<p>→ ガイド:<strong>デジタルセキュリティの概念 § FLOSS を使用する</strong><a href="../ja-md/alice2bob-ja-security-concepts-1.1.md#floss">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-1.1.html#floss">HTML</a></p>
<p>→ ガイド:<strong>デジタルセキュリティの概念 § FLOSS を使用する</strong><a href="../ja-md/alice2bob-ja-security-concepts-2.0.md#floss">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-2.0.html#floss">HTML</a></p>
<p>Tails には様々なセキュリティ・プライバシーツールが用意されています。</p>
<ul>
<li><strong>GnuPG</strong> PGP 鍵の生成・管理とデータの暗号化・復号化・署名・検証。</li>
@ -197,7 +197,7 @@
<p>→ 外部資料: <code>https://tails.boum.org/doc/about/requirements/</code></p>
<h2 id="block-non-Tor">Tor 以外のトラフィックの遮断</h2>
<p>Tails はほぼ全てのトラフィックを Tor ネットワーク経由にし、 Tor 以外のほぼ全てのトラフィックの送受信を遮断します。そのため、 Tor の問題と限界を引き継ぎます。例えば、ゲームやビデオ電話など UDP 通信に依存する好きなアプリケーションが使用できません。</p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク § 注意点と限界</strong><a href="../ja-md/alice2bob-ja-Tor-1.1.md#warnings-and-limitations">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-1.1.html#warnings-and-limitations">HTML</a></p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク § 注意点と限界</strong><a href="../ja-md/alice2bob-ja-Tor-2.0.md#warnings-and-limitations">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-2.0.html#warnings-and-limitations">HTML</a></p>
<p>→ 外部資料: <code>https://tails.boum.org/doc/about/warnings/tor/</code></p>
<h2 id="no-guarantee">プライバシーや匿名性や秘匿性を保証しない</h2>
<p>Tails はプライバシーや匿名性を保証しません。記憶喪失、個人を特定する特徴の最小化、セキュリティ向上などの特徴があるが、アプリケーションによる個人情報や IP アドレスなどの情報漏洩や利用者自身の行動による情報漏洩の防止またはその情報の匿名化をしません。例えば、ある 1 つの Tor Browser セッションから 2 つの異なる目的・活動のアカウントで同じウェブサイトにログインしたり、メタデータを含む写真をアップロードしたりして、誤ってアカウント間の繋がりができたり情報漏洩したりしてしまいます。</p>
@ -238,9 +238,9 @@
</ul>
<p>Tails のオンラインドキュメンテーションに Tails の全ての PGP 公開鍵の情報が記載されています。そのページに “Signing key” というセクションがあります。</p>
<p><code>https://tails.boum.org/doc/about/openpgp_keys/#index2h1</code></p>
<p>公開鍵 <code>&lt;key-file&gt;</code> (例: <code>tails-signing.key</code>)の指紋を照合し、 GnuPG の鍵に追加します。</p>
<p>公開鍵 <code>&lt;key-file&gt;</code> (例: <code>tails-signing.key</code>)の指紋を照合し、 GnuPG の鍵に追加します。</p>
<pre><code>$ gpg --show-key &lt;key-file&gt;
...(鍵の情報の表示)
... (鍵の情報の表示)
$ gpg --import &lt;key-file&gt;</code></pre>
<p>公開鍵のインポートが成功したことを確認します。</p>
<pre><code>$ gpg -k tails@boum.org</code></pre>
@ -625,7 +625,7 @@ $ gpg --import &lt;key-file&gt;</code></pre>
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,10 +10,10 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">Tor 匿名化ネットワーク</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2021-12-29</p>
<p>OnionShare 2.4 | Tor 0.4.6</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -262,7 +262,7 @@
<li>セキュリティとプライバシーに十分配慮したアプリケーションだけによるネットワークアクセスを許可した上で Tor 経由にして、それ以外のアプリケーションによるネットワークアクセスを拒否・遮断する。</li>
</ul>
<p>例えば、ウェブ閲覧をしたい場合、 Tor をプロキシとして設定されたどのウェブブラウザでも利用する代わりにプライバシーと匿名性に特化した Tor Browser を利用するといいかもしれません。また、 BitTorrent は Tor とかなり衝突するため悪い組み合わせとなり、 Tor ネットワークに重い負荷をかけながら BitTorrent 利用者に匿名性を提供しません。 BitTorrent の代わりに、例えば <a href="#OnionShare">OnionShare</a> でファイルを共有した方がいいでしょう。</p>
<p>→ ガイド: <strong>Tor Browser</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-1.1.html">HTML</a></p>
<p>→ ガイド: <strong>Tor Browser</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-2.0.html">HTML</a></p>
<h2 id="user-mistakes">利用者の行動による情報漏洩</h2>
<p>Tor は利用者の行動(利用パターンや情報提供など)による情報漏洩を抑えようとしません。利用者自身がセンシティブ情報を明かしたら、トラフィックをどのように経由しても何も変わりません。また、 Tor はフィッシングなどの詐欺から利用者を保護しません。</p>
<p>インターネット利用者が実践する良い習慣は重要な対策です。ウェブ閲覧、ダウンロード、投稿、フォーム入力、ログインなどをする時に、うっかり明かしてしまうかもしれない情報と故意に提供する情報について考えた上でインターネットを慎重に利用すると、このリスクを軽減できます。</p>
@ -283,7 +283,7 @@
</li>
</ul>
<p>一方、接続先から Tor 使用を隠したり Tor ブロッキングを回避したりしたい場合、接続先側のプロキシ(例:ウェブアーカイブ、代替フロントエンド)を利用すると効果的かもしれません。</p>
<p>→ ガイド: <strong>Tor Browser § Tor ブロッキングの回避</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-1.1.md#Tor-blocking-circumvention">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-1.1.html#Tor-blocking-circumvention">HTML</a></p>
<p>→ ガイド: <strong>Tor Browser § Tor ブロッキングの回避</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-2.0.md#Tor-blocking-circumvention">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-2.0.html#Tor-blocking-circumvention">HTML</a></p>
<h2 id="attacks-against-Tor">Tor に対する攻撃</h2>
<p><a href="#onion-routing">「オニオンルーティング」</a>であげた情報に加えて、各ノードと接続元と接続先ではトラフィックの特徴(データ量、形状、タイミング)も存在します。そのため、 Tor は完全な匿名化を実現せず、共謀する悪質の Tor ノード、接続の両側でのロギングまたは監視、インターネットを広範囲監視できる敵などから保護してくれません。</p>
<p>Tor はトラフィックをできる限り速く中継しながら匿名化しようとする<strong>低レイテンシ</strong>匿名化ネットワークでです。トラフィックを一時的に持ち続ける高レイテンシ匿名化ネットワークと異なって、強度なインターネット監視に対して保護することができません。</p>
@ -323,7 +323,7 @@
<li><strong>F-Droid</strong> Android のソフトウェア管理。 <code>https://f-droid.org/</code></li>
<li><strong>GlobaLeaks</strong>:ウェブインターフェイスで実現した内部告発用情報提供システム。 <code>https://globaleaks.org/</code></li>
<li><strong>OnionShare</strong>:オニオンサービスを用いたファイル共有。 <code>https://onionshare.org/</code></li>
<li><strong>parcimonie</strong>:プライバシーを考慮した GnuPG 鍵更新ヘルパー。 <code>https://salsa.debian.org/intrigeri/parcimonie/</code></li>
<li><strong>parcimonie</strong>:プライバシーを考慮した GnuPG 鍵更新ヘルパー。 <code>https://salsa.debian.org/intrigeri/parcimonie/</code></li>
<li><strong>Qubes OS</strong>分離でのセキュリティsecurity by isolationに特化したデスクトップ OS。 <code>https://qubes-os.org/</code></li>
<li><strong>SecureDrop</strong>:報道機関が管理する内部告発用情報提供システム。 <code>https://securedrop.org/</code></li>
<li><strong>Tails</strong>:プライバシーと匿名性の保護に特化した持ち運び可能なデスクトップ OS。 <code>https://tails.boum.org/</code></li>
@ -394,7 +394,7 @@
<p>→ 外部資料: <code>https://docs.onionshare.org/</code></p>
<h2 id="Tor-Browser">Tor Browser</h2>
<p>Tor Browser を別のガイドで説明します。</p>
<p>→ ガイド: <strong>Tor Browser</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-1.1.html">HTML</a></p>
<p>→ ガイド: <strong>Tor Browser</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-2.0.html">HTML</a></p>
<h2 id="Torsocks">Torsocks</h2>
<p>Torsocks とは、他のアプリケーションのトラフィックを SOCKS を用いて Tor ネットワーク経由にするラッパーコマンドです。 SOCKS に対応するアプリケーションを Tor 化してくれるコマンドです。 DNS 要求を安全に扱い、 TCP 以外のトラフィックを遮断します。</p>
<p>APT でパッケージを管理する OS を使っていて、 Debian リポジトリが APT に設定されている場合、 Torsocks を以下のようにインストールします。</p>
@ -427,7 +427,7 @@
<li>Tor Browser のインターフェイスを通じて Tor Project からブリッジを要求する。</li>
</ul>
<p>入手方法によって CAPTCHA<a href="#fn9" class="footnote-ref" id="fnref9"><sup>9</sup></a> が要求されるかもしれません。</p>
<p>→ ガイド: <strong>Tor Browser § Tor ブリッジの設定</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-1.1.md#configure-Tor-bridge">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-1.1.html#configure-Tor-bridge">HTML</a></p>
<p>→ ガイド: <strong>Tor Browser § Tor ブリッジの設定</strong><a href="../ja-md/alice2bob-ja-Tor-Browser-2.0.md#configure-Tor-bridge">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-2.0.html#configure-Tor-bridge">HTML</a></p>
<h2 id="add-bridges">ブリッジの追加</h2>
<p>Pluggable transport の種類や IP プロトコルバージョンIPv4 または IPv6によって、以下のような形式でブリッジを入手するでしょう。</p>
<p>Pluggable transport なしの IPv4 ブリッジの例2 つ)。</p>
@ -542,7 +542,7 @@ Bridge obfs4 xxx.xxx.xxx.xx:990 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX cert=YY
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,10 +10,10 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">Tor Browser</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2021-12-29</p>
<p>Tor Browser 11.0</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -162,7 +162,7 @@
<h1 id="warnings-and-limitations">注意点と限界</h1>
<p>Tor Browser はプライバシーや匿名性を保証しません。 Tor 自体はプライバシーや匿名性を保証しない一方、ウェブブラウザは攻撃対象領域の広い複雑なソフトウェアです。</p>
<p>本セクションでは、 Tor Browser についての一部の注意点や限界について説明します。以下に紹介する一部の点は Tor Browser だけでなく他のウェブブラウザにもあてはまります。</p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク § 注意点と限界</strong><a href="../ja-md/alice2bob-ja-Tor-1.1.md#warnings-and-limitations">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-1.1.html#warnings-and-limitations">HTML</a></p>
<p>→ ガイド: <strong>Tor 匿名化ネットワーク § 注意点と限界</strong><a href="../ja-md/alice2bob-ja-Tor-2.0.md#warnings-and-limitations">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-2.0.html#warnings-and-limitations">HTML</a></p>
<h2 id="Tor-Browser-browser-fingerprint">Tor Browser のブラウザ指紋</h2>
<p>Tor Browser は、利用者が Tor Browser ならではの、できる限り統一したブラウザ指紋をウェブサイトに見せようとします。 Tor Browser のブラウザ指紋は、 Firefox のブラウザ指紋に一部似ているものの、他のブラウザのブラウザ指紋の真似をしたり無作為にしたりしようとしません。</p>
<p>ちなみに、 Tor Browser 11.0.3 (デスクトップ版)のユーザエージェント文字列は以下のようなもので、 Windows 上の Firefox に該当するユーザエージェント文字列です。</p>
@ -267,7 +267,7 @@
<p>まず、 Tor Browser 開発者の署名用 PGP 公開鍵を入手します。以下の URL からダウンロードするか、 GnuPG で公開鍵を検索します。</p>
<p><code>https://keys.openpgp.org/search?q=torbrowser%40torproject.org</code></p>
<pre><code>$ gpg --keyserver keys.openpgp.org --search-keys torbrowser@torproject.org</code></pre>
<p>以上の GnuPG コマンド以外の方法で公開鍵を入手した場合、公開鍵 <code>&lt;key-file&gt;</code> の指紋が正しいことを確認した上で(上の検証方法のリンクを参照)、公開鍵を GnuPG の鍵に追加します。</p>
<p>以上の GnuPG コマンド以外の方法で公開鍵を入手した場合、公開鍵 <code>&lt;key-file&gt;</code> の指紋が正しいことを確認した上で(上の検証方法のリンクを参照)、公開鍵を GnuPG の鍵に追加します。</p>
<pre><code>$ gpg --show-key &lt;key-file&gt;
...(鍵の情報の表示)
$ gpg --import &lt;key-file&gt;</code></pre>
@ -317,7 +317,7 @@ $ ./start-tor-browser.desktop</code></pre>
<li>“Request a bridge from torproject.org” Tor Project からブリッジを要求する。</li>
<li>“Provide a bridge”入手したブリッジを入力する。</li>
</ul>
<p>→ ガイド: <strong>Tor § Tor ブリッジ</strong><a href="../ja-md/alice2bob-ja-Tor-1.1.md#Tor-bridges">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-1.1.html#Tor-bridges">HTML</a></p>
<p>→ ガイド: <strong>Tor § Tor ブリッジ</strong><a href="../ja-md/alice2bob-ja-Tor-2.0.md#Tor-bridges">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-2.0.html#Tor-bridges">HTML</a></p>
<h3 id="configure-advanced-connection">プロキシとファイアウォール通過の設定</h3>
<p><img class="display" src="../assets/img/Tor-Browser/connect-to-Tor-advanced.png" width="726" height="338" alt="プロキシとファイアウォール通過の設定"></p>
<p>プロキシを用いてインターネットに接続するかファイアウォールを通過する必要がある場合、 “Advanced” 見出しの下にある欄にプロキシを指定したり許可されているポート番号を指定したりします。</p>
@ -594,7 +594,7 @@ Referer: &lt;referer-URL&gt;
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,9 +10,9 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">外部資料</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>本ガイドの最終更新: 2022-02-28</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2022-07-07</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -47,6 +47,14 @@
</ol>
<h1 id="literature">著作物</h1>
<h2 id="English">English</h2>
<p><strong>Buggedplanet.info</strong>
<br>
<code>https://buggedplanet.info</code>
<br>
<em>内容: COMINT と SIGINT などに関連する監視技術、監視対象国・地域など(未検証情報も含む)</em></p>
<p><strong>Bert-Jaap Koops, “Crypto Law Survey”</strong>
<br>
<code>https://web.archive.org/web/http://www.cryptolaw.org/</code></p>
<p><strong>Osamu Aoki, “Debian Reference”</strong>
<br>
<code>https://www.debian.org/doc/user-manuals#quick-reference</code>
@ -68,18 +76,21 @@
<p><strong>Access Now, “A First Look at Digital Security”</strong>
<br>
<code>https://www.accessnow.org/first-look-at-digital-security/</code></p>
<p><strong>The Hated One</strong>
<br>
<code>https://invidious.snopyta.org/thehatedone</code></p>
<p><strong>Tactical Technology Collective, “Holistic Security”</strong>
<br>
<code>https://holistic-security.tacticaltech.org/</code></p>
<p><strong>ARTICLE 19, “How the Internet Really Works,” No Starch Press, 2020-12, ISBN 978-1-7185-0029-7</strong>
<br>
<code>https://catnip.article19.org/</code></p>
<p><strong>Jens Müller et al., “Johnny, you are fired! Spoofing OpenPGP and S/MIME Signatures in Emails,” 2019-08, Proc. 28th USENIX Security Symposium, ISBN 978-1-939133-06-9</strong>
<br>
<code>https://www.usenix.org/conference/usenixsecurity19/presentation/muller</code></p>
<p><strong>Marc Meillassoux, Mihaela Gladovic, “Nothing to Hide,” 2017</strong>
<br>
<code>https://videocommons.org/w/6b43a28c-86ee-4681-8ab9-787ac140afc0</code></p>
<p><strong>Northshore Counter Info, “Signal Fails,” Its Going Down, 2019-06-03</strong>
<br>
<code>https://itsgoingdown.org/signal-fails</code></p>
<p><strong>grugq, “Operational PGP”</strong>
<br>
<code>https://gist.github.com/grugq/03167bed45e774551155</code>
@ -88,6 +99,11 @@
<p><strong>Jonathan “Smuggler” Logan, “Operational Security,” 2016-04</strong>
<br>
<code>https://opaque.link/post/opsecguide/</code></p>
<p><strong>Opt Out Podcast</strong>
<br>
<code>https://optoutpod.com/</code>
<br>
<code>http://optoutkoplzfgs7wl3gkg5nmtrrs7ki6ljcguf7c4w7rdsrtozlghxad.onion/</code></p>
<p><strong>Electronic Frontier Foundation, “Privacy Breakdown of Mobile Phones,” Surveillance Self-Defense</strong>
<br>
<code>https://ssd.eff.org/en/playlist/privacy-breakdown-mobile-phones</code></p>
@ -101,15 +117,34 @@
<code>https://securityinabox.org/</code>
<br>
<code>http://lxjacvxrozjlxd7pqced7dyefnbityrwqjosuuaqponlg3v7esifrzad.onion/</code></p>
<p><strong>Tor Project, “Selected Papers in Anonymity”</strong>
<br>
<code>https://www.freehaven.net/anonbib/</code>
<br>
<code>http://7fa6xlti5joarlmkuhjaifa47ukgcwz6tfndgax45ocyn4rixm632jid.onion/anonbib/</code> <em>内容:匿名性に関連する文献</em></p>
<p><strong>Northshore Counter Info, “Signal Fails,” Its Going Down, 2019-06-03</strong>
<br>
<code>https://itsgoingdown.org/signal-fails</code></p>
<p><strong>Surveillance Report</strong>
<br>
<code>https://surveillancereport.tech</code></p>
<p><strong>Electronic Frontier Foundation, “Surveillance Self-Defense”</strong>
<br>
<code>https://ssd.eff.org/</code></p>
<p><strong>Techlore</strong>
<br>
<code>https://invidious.snopyta.org/channel/UCs6KfncB4OV6Vug4o_bzijg</code>
<br>
<em>内容:大衆向けプライバシーとデジタルセキュリティガイド</em></p>
<p><strong>Totem Project</strong>
<br>
<code>https://totem-project.org/</code></p>
<p><strong>Crimethinc, “What Is Security Culture?,” 2004-11-01</strong>
<br>
<code>https://crimethinc.com/2004/11/01/what-is-security-culture</code></p>
<p><strong>Phil Zimmermann, “Why I Wrote PGP,” 1991</strong>
<br>
<code>https://www.philzimmermann.com/EN/essays/WhyIWrotePGP.html</code></p>
<h2 id="Japanese">日本語</h2>
<p><strong>Udonya (ブログ)</strong>
<br>
@ -380,7 +415,7 @@
<code>https://internetfreedom.in/</code></p>
<p><strong>JCA-NET JP</strong>
<br>
<code>https://www.jca.apd.org/jca-net/</code></p>
<code>https://www.jca.apc.org/jca-net/</code></p>
<p><strong>La Quadrature du Net FR</strong>
<br>
<code>https://www.laquadrature.net/</code></p>
@ -390,7 +425,7 @@
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,9 +10,9 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">用語集</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2022-02-28</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<dl>
@ -165,7 +165,7 @@
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -0,0 +1,552 @@
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>暗号技術入門 | アリスとボブ</title>
<link rel="stylesheet" href="../assets/css/main.css" type="text/css">
</head>
<body>
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">暗号技術入門</h1>
<p>アリスとボブ</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2022-08-11</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
<li>
<a href="#what-is-cryptography">暗号とは</a>
<ol type="1">
<li>
<a href="#security-properties">セキュリティ特性</a>
</li>
</ol>
</li>
<li>
<a href="#warnings-and-limitations">注意点と限界</a>
<ol type="1">
<li>
<a href="#is-cryptography-suitable">暗号は本当に適切な解決策か?</a>
</li>
<li>
<a href="#understand-security-properties">暗号機能が提供するセキュリティ特性を理解する</a>
</li>
<li>
<a href="#verify">暗号技術の安全性を確認する</a>
</li>
<li>
<a href="#cryptanalysis">暗号解読</a>
</li>
<li>
<a href="#keep-custody-of-private-keys">自分の秘密鍵を自分で保管する</a>
</li>
<li>
<a href="#human-attacks">暗号技術は人間的攻撃に対して脆弱</a>
</li>
<li>
<a href="#usage-issues">不便性や使用ミスによるセキュリティリスク</a>
</li>
</ol>
</li>
<li>
<a href="#cryptographic-elements">暗号の要素</a>
<ol type="1">
<li>
<a href="#public-key-cryptography">公開鍵暗号</a>
</li>
<li>
<a href="#encryption">暗号化</a>
</li>
<li>
<a href="#hashing">ハッシュ化</a>
</li>
<li>
<a href="#signing">署名</a>
</li>
<li>
<a href="#MAC">メッセージ認証符号</a>
</li>
<li>
<a href="#verification">検証</a>
</li>
<li>
<a href="#random-number-generation">疑似乱数生成</a>
</li>
<li>
<a href="#key-exchange">鍵交換</a>
</li>
<li>
<a href="#key-derivation">鍵導出</a>
</li>
</ol>
</li>
</ol>
<h1 id="what-is-cryptography">暗号とは</h1>
<p>暗号とは、第三者や悪質な行動から情報と通信を保護する手法です。デジタルデバイスを対象にした現代の暗号は情報セキュリティ、計算科学、数学、物理学、電気電子工学、通信工学などの分野を交差し、商業、通貨、人権保護、軍事、身元のデジタル化などの用途に使われています。通信だけに限らず、記憶媒体にデータを保存する際にも適用できます。</p>
<p>情報の所在・存在を隠すことを目的にするステガノグラフィや物質的手法と異なり、暗号は情報の所在・存在を隠さずに情報を第三者が読めないようにすることが多いです。</p>
<h2 id="security-properties">セキュリティ特性</h2>
<p>現代の暗号はただ秘匿性だけでなく、使用事例に適した様々なセキュリティ特性を実現できます。以下では暗号で実現できるセキュリティ特性の例を大きく分類します。</p>
<ul>
<li>秘匿性confidentiality情報・通信を読めないようにすること盗聴防止</li>
<li>完全性integrityデータが変化していないと検証すること破損・改竄の検出</li>
<li>認証性authenticity人の資格やメッセージの出所を検証することなりすまし防止</li>
<li>匿名性anonymity身元を特定したり候補を絞ったりできないようにすること身元特定防止</li>
<li>否認不可性non-repudiability行為・事実を否認できないようにすること。</li>
<li>否認可能性deniability行為・事実を否認できるようにすること。</li>
</ul>
<p>これらのセキュリティ特性は互いに密接な関係があることが少なくありません。例えば、通信において、相手を認証しなければ、相手が思っている人でなく悪質な他人かもしれず、通信が盗聴されてしまいます。否認不可性と否認可能性は名称と定義どおり対立する特性です。また、使用事例によって認証と匿名性を同時に得る・実現することが不可能または困難かもしれません。</p>
<p>これらのセキュリティ特性にはニュアンスがあって、それを理解することが重要です。例えば、秘匿性に関して、情報を第三者から保護すべきか当事者からも保護すべきか、一連のメッセージのうちの一通を復号化できればその一連のメッセージを全て復号化できるべきか復号化できないべきか、など、様々な差異があり、使用事例によってどのような秘匿性が必要かが異なります。もちろん、暗号の強度、暗号を実装したコードの品質、ハードウェアの安全性などによって、セキュリティ特性の強度が異なります。</p>
<h1 id="warnings-and-limitations">注意点と限界</h1>
<p>暗号は強力なツールだが、万能の対策でも魔法でもありません。暗号を信用・利用する前に、以下の点を考慮した方がいいでしょう。</p>
<h2 id="is-cryptography-suitable">暗号は本当に適切な解決策か?</h2>
<p>「デジタルセキュリティの概念」では、自分の状況を理解すること、最弱点から対策を始めること、 KISS 原則、記録した情報を最低限することなど様々な原則を推奨しました。あなたの使用事例に暗号は本当に最適な解決策か、それとも、ローテクの対策または情報隠蔽の方が適切か?状況によって異なります。ハイテクな対策にこだわらずに、他に適切な対策を考えてみてください。</p>
<p>→ ガイド:<strong>デジタルセキュリティの概念 § KISS単純な対策を優先する</strong><a href="../ja-md/alice2bob-ja-security-concepts-2.0.md#KISS">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-2.0.html#KISS">HTML</a></p>
<h2 id="understand-security-properties">暗号機能が提供するセキュリティ特性を理解する</h2>
<p>暗号機能を採用する前に、提供されるセキュリティ特性の詳細を理解することが重要です。</p>
<p>「暗号化メール」は具体的にどんな暗号化なのか不明すぎるため、秘匿性の強度、どんな敵から情報を保護してくれるかが不明です。トランスポート暗号化、サーバのディスク暗号化またはエンドツーエンド暗号化がメールに適用されるかによって、「暗号化メール」が提供してくれる秘匿性が異なります。</p>
<p>署名を行う際、署名者が決めたメッセージだけでなく、署名日時(タイムスタンプ)、署名者情報、アプリケーションバージョンなど他の情報もアプリケーションによって含まれることが少なくありません。署名を検証する時にどの情報が署名で保護されているか、そして署名を行う際に他にどの情報が追加(漏洩)されるか、それらを理解した方がいいでしょう。</p>
<p>通信のメタデータ(データについてのデータ)が暗号で保護されない場合が多いです。例えば、ウェブ閲覧の際、ウェブサーバとのやり取り(内容)がしばしば TLS で保護されるが、 IP (インターネットプロトコル)ではトラフィックの IP アドレスが平文のままです。</p>
<p>OpenPGP の署名や暗号化はメールの内容の保護に利用できるが、メールの宛先、送信元、件名などを保護しません。また、メールのメッセージが OpenPGP で署名されても、署名者がメールを送ったとの認証になりません。</p>
<p>→ ガイド: <strong>OpenPGP と GnuPG § メタデータをほぼ全く保護しない</strong><a href="../ja-md/alice2bob-ja-OpenPGP-2.0.md#no-metadata-protection">Markdown</a> | <a href="../ja-html/alice2bob-ja-OpenPGP-2.0.html#no-metadata-protection">HTML</a></p>
<p>虚偽宣伝をするソフトウェアプロジェクトやサービス提供者もいるので、セキュリティ特性をできる限り理解してから採用することを推奨します。例えば、<a href="#end-to-end-encryption">エンドツーエンド暗号化</a>を提供すると偽ったビデオ通話ソフトが自らのサーバで会話を傍聴できる方式だった事例がありました。</p>
<p>→ 外部資料: <code>https://theintercept.com/2020/03/31/zoom-meeting-encryption</code></p>
<p>→ ガイド:<strong>デジタルセキュリティの概念 § 物事を疑わずに受け入れず、十分に検証する</strong><a href="../ja-md/alice2bob-ja-security-concepts-2.0.md#verify">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-2.0.html#verify">HTML</a></p>
<h2 id="verify">暗号技術の安全性を確認する</h2>
<p>暗号機能のセキュリティ特性を理解することが良いスタートだが、そのセキュリティ特性を実現する暗号技術は本当に安全でしょうか?</p>
<p><a href="#cryptanalysis">解読攻撃</a>の知識によって暗号アルゴリズムは時間につれて弱体化する可能性があり、設計時にバックドアが施された可能性もあります。また、暗号機能には実装上のバグ、バックドア、サイドチャネルなどの脆弱性が入っている可能性があります。 NSA のバックドアが入っていると広く疑われている Dual_EC_DRBG <a href="#random-number-generation">疑似乱数生成</a>アルゴリズムが代表的な例です。</p>
<p>→ 外部資料: Dual_EC_DRBG <code>https://www.wdic.org/w/WDIC/Dual_EC_DRBG</code></p>
<p>→ 外部資料: SafeCurves (推奨の楕円曲線): <code>https://safecurves.cr.yp.to/</code></p>
<p>暗号アルゴリズム以外の技術的な問題も存在する場合があります。古いシステムへの後方互換性を維持しようとする暗号技術はたいていダウングレード攻撃<a href="#fn1" class="footnote-ref" id="fnref1"><sup>1</sup></a>に対して脆弱です。以下のようなダウングレード攻撃に対する脆弱性の例をあげます。</p>
<ul>
<li>日和見暗号化<a href="#fn2" class="footnote-ref" id="fnref2"><sup>2</sup></a>または他にセキュリティ機能が強制されない技術:<a href="#usage-issues">不便性または使用ミス</a>による無効化、 MITM 攻撃<a href="#fn3" class="footnote-ref" id="fnref3"><sup>3</sup></a>による通信セキュリティの無効化。(例: HTTPS や STARTTLS における非暗号化通信への格下げ、 OpenSSL における古いバージョンの TLS への格下げ)
</li>
<li>技術の脆弱なアルゴリズムへの対応による危険動作。(例: OpenPGP や SSH のバックドア楕円曲線や SHA-1 ハッシュ関数への対応)</li>
</ul>
<p>FLOSS (自由オープンソースソフトウェア)や FLOSH (自由オープンソースハードウェア)は安全性の確認可能性には不可欠です。開発者以外の人たちがソフトウェアやハードウェアのソースコードを閲覧・確認できなければ、安全性の確認は不可能なため、信用不可能です。</p>
<p>→ ガイド:<strong>デジタルセキュリティの概念 § FLOSS を使用する</strong><a href="../ja-md/alice2bob-ja-security-concepts-2.0.md#FLOSS">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-2.0.html#FLOSS">HTML</a></p>
<p>利用者全員がこの確認をしなければならないわけでなく、専門者でない一般の利用者にとって確認作業が無理または困難でしょう。しかし、開発者から独立した専門者によるセキュリティ監査の報告書、コミュニティ掲示板の投稿、他の情報などを参考にしながら、利用者には少なくとも安全なアルゴリズムと実装が使われているかを確認してから暗号機能を採用することを推奨します。</p>
<h3 id="dont-roll-your-own-crypto">自家製暗号に要注意</h3>
<p>“Dont roll your own crypto” (自家製暗号を開発するな)という注意スローガンがよくあります。暗号学とプログラミングとデジタルセキュリティに精通していない人たちが開発したコード、一人だけが開発したコード、セキュリティの議論・レビュー・監査が不十分なコードなどは、実際使用の際に要注意です。</p>
<p>暗号学とプログラミングとデジタルセキュリティに精通していない限り、実際使用用の暗号を自分で設計・実装しようとしないでください。アルゴリズム誤選択、アルゴリズム実装ミス、サイドチャネル攻撃<a href="#fn4" class="footnote-ref" id="fnref4"><sup>4</sup></a>、ソフトウェア脆弱性、ユーザエクスペリエンス上の問題など多くの罠があります。</p>
<p>→ 外部資料: <code>https://loup-vaillant.fr/articles/rolling-your-own-crypto</code></p>
<p>開発しているソフトウェアに暗号を使う必要がある場合、既存の高品質のライブラリを探して採用することを推奨します。</p>
<p>→ 外部資料: <code>https://ja.wikipedia.org/wiki/暗号ライブラリの比較</code></p>
<h2 id="cryptanalysis">暗号解読</h2>
<p>暗号解読cryptanalysisとは、暗号のアルゴリズム上または実装上の弱点を探すことです。秘密情報鍵、パスワード、平文を使用せずに以下のようなことが攻撃者にとって主な目的です。</p>
<ul>
<li>
<a href="#encryption">暗号化</a>で作成した暗号文からの平文の入手
</li>
<li>
<a href="#hashing">ハッシュ値</a>からの元のメッセージの入手
</li>
<li>
<a href="#signing">署名</a>の偽造
</li>
<li>
<a href="#random-number-generation">CSPRNG</a> 出力の予測
</li>
<li>暗号プロトコルの迂回</li>
</ul>
<p>暗号解読の範囲は、すべてのメッセージまたは鍵の候補を試行した総当たり攻撃<a href="#fn5" class="footnote-ref" id="fnref5"><sup>5</sup></a>より簡単な暗号攻撃を指し、サイドチャネル攻撃を含みます。一方、アルゴリズム実装ミス、ハードウェア上の脆弱性、<a href="#human-attacks">人間的攻撃</a>などという暗号自体以外に対する攻撃を除きます。</p>
<p>暗号解読の研究が進むにつれて、暗号技術の脆弱性が判明されます。例えば、量子コンピュータが強くなった時代になったら量子計算への耐性がない暗号アルゴリズムが脆弱になってしまいます。現実的に脆弱だと判断された暗号技術の使用を避け、必要に応じて暗号技術を更新することを推奨します。</p>
<p>まだ脆弱でない暗号も時代につれて脆弱になるかもしれません。注意すべきことは、現在に存在する暗号文やハッシュ値は未来に解読される可能性があります。未来時の解読のために暗号文、ハッシュ値、署名などを収集する攻撃者から暗号は情報を十分に保護してくれないかもしれません。そのため、未来に明かされたら被害が生じるかもしれないセンシティブ情報や秘密鍵から導出した暗号文、ハッシュ値、署名などもできる限り安全に保管したり流出を防いだりすることを推奨します。</p>
<h2 id="keep-custody-of-private-keys">自分の秘密鍵を自分で保管する</h2>
<p>自分の秘密鍵を独占的かつ安全に保管することは非常に重要な原則です。自分の秘密鍵が他人の手に入ると、その他人が自分に暗号されたメッセージを盗聴したり自分をなりすましたり、自分の暗号通貨を移動させたりできてしまいます。また、自分で秘密鍵を保管せず、他人に秘密鍵を任せると、自分が自分の秘密鍵へ自由にアクセスできなくなることもあります。このように秘密鍵がアクセス不可になるか流出すると、事後対策が大変で完全な回復が不可能な場合が多いです。</p>
<p>近年、暗号の利用が増え、それに伴って、暗号を使用する様々なサービスが誕生しました。例えば、暗号化電子メール、 OpenPGP 鍵を扱うソーシャルネットワーク、暗号通貨取引所などがあります。しかし、このようなサービスは利用者の秘密鍵を保管することが多いです。サービス提供者が利用者の秘密鍵を保管している場合、サービス提供者が勝手に利用者のメールを勝手に読んだり利用者の暗号通貨を勝手に使ったりすることができます。また、利用者自身が秘密鍵を保管していない場合、サービス提供者が利用者に秘密鍵を渡すことを拒むと利用者が自分のメールや暗号通貨にアクセスできなくなってしまいます。要するに、利用者が秘密鍵を独占的に保管しながらサービスを利用し、それが不可能なサービスを慎重に使うことを推奨します。</p>
<p>個人データをバックアップする際、秘密鍵を不意に平文のままでバックアップしたり他人に渡したりしないよう気をつけてください。特に、オンラインのサービスへの自動バックアップを慎重に使うべきです。</p>
<p>秘密鍵といえば、 OpenPGP の秘密鍵、暗号通貨ウォレットの復元用シード、 Session メッセンジャーのシードなどの長期鍵類はもちろん、パスワードやセッション鍵にも同じ原則が当てはまります。</p>
<h2 id="human-attacks">暗号技術は人間的攻撃に対して脆弱</h2>
<p>セキュリティは単に技術的な課題だけでなく、人間や社会にも密接な関係がある課題です。暗号技術自体が暗号的または計算的な攻撃を受けても丈夫だとしても、利用者に対する詐欺や強要などという人間的攻撃によって情報、通信、デバイス、アカウントなどが危殆化するおそれがあります。また、ソフトウェアやハードウェアの開発者やサービス提供者は製品・サービスの危殆化を目的とした攻撃者に狙われるかもしれません。</p>
<p>暗号技術の単なる<a href="#usage-issues">使用ミス</a>を除いて、人間的攻撃はだいたい以下の種類に大別できます。</p>
<ul>
<li>働きかけ(例:賄賂、扇動、誘惑)</li>
<li>ソーシャルエンジニアリングsocial engineeringフィッシング、詐称、トロイの木馬、共連れ</li>
<li>強要(例:法的義務、脅迫、拷問)</li>
</ul>
<p>以下の状況に置かれている場合、用心した方がいいでしょう。</p>
<ul>
<li>データ漏洩の被害者になった。</li>
<li>自分の活動を妨げようとしている敵対者がいる。(例:ジャーナリスト、弁護士、活動家、内部告発者)</li>
<li>パスワード、秘密鍵、アカウント情報、データなどの譲渡またはデバイス捜索が強要されるリスクが高い。(例:令状なしの捜索がある地域、国境を越える渡航)</li>
<li>暗号技術の入手・所持・利用・提供が犯罪扱いされる地域に滞在・居住している。</li>
<li>技術の開発・提供をしている企業で働いている。</li>
</ul>
<p>→ 外部資料: <code>https://web.archive.org/web/http://www.cryptolaw.org/</code></p>
<h2 id="usage-issues">不便性や使用ミスによるセキュリティリスク</h2>
<p><a href="#human-attacks">人間的攻撃</a>について前述したが、攻撃者がいなくても暗号技術の不便性や使用ミスによって情報を流出したり脆弱性を作ったりしてしまうおそれがあります。</p>
<p>利用者が暗号またはアプリケーションを理解していない、暗号ツールのユーザインターフェイスや複雑さの問題のため誤操作される、暗号機能が任意な場合に有効化が忘れられる、という使用ミスの原因がよくあります。</p>
<p>以下に暗号技術に関する使用ミスの例をいくつかあげます。</p>
<ul>
<li>入手した公開鍵を信頼する他人の鍵だと思い込んで使用する。</li>
<li>情報の暗号化を忘れるか暗号化が失敗する。</li>
<li>危殆化された公開鍵または違う公開鍵で情報を暗号化する。</li>
<li>暗号化を使用しながら情報を違う人または宛先に送信する。</li>
<li>鍵・パスワードを紛失したため暗号文を復号化できなくなる。</li>
<li>暗号化が不便なため無効化を選択する。</li>
<li>当事者の間に安全なチャネルと安全でないチャネルが両方ある場合、不意に情報を安全でないチャネルで送る。</li>
</ul>
<p>以上の例と利用者の多様性を考えると、間違えようのない暗号ツールが重要であることがわかるでしょう。暗号ツールの単なる理論的セキュリティより、利用者や社会環境を含めて実際の使用事例について考えることが重要です。</p>
<h1 id="cryptographic-elements">暗号の要素</h1>
<p>本セクションでは暗号の利用に役立つ暗号の要素について説明します。まず、以下の用語を簡潔に説明します。</p>
<p>暗号プリミティブcryptographic primitiveとは、暗号プロトコルや暗号系の構築に用いられる基本要素です。高度の信頼性がある暗号プリミティブはシステム構築に必要不可欠です。</p>
<p>暗号アルゴリズムcryptographic algorithmとは、ある暗号機能と実現するアルゴリズム算法です。</p>
<p>暗号方式、暗号システムまたは暗号系cryptosystemとは、一連のセキュリティ特性を実現するために構築されたシステムで、一連の暗号アルゴリズムを含むシステムです。たいていは鍵生成、暗号化と復号化のアルゴリズムを含むシステムを指します。</p>
<p>暗号プロトコルcryptographic protocolとは、暗号を用いてセキュリティ機能を実現する通信プロトコルです。たいていは実際に通信に利用する暗号方式を指すが、通信以外の使用事例にも役立つかもしれません。</p>
<h2 id="public-key-cryptography">公開鍵暗号</h2>
<p>他の要素を説明する前に、まず公開鍵暗号を簡潔に説明しておきます。</p>
<p>公開鍵暗号public key cryptographyまたは非対称暗号asymmetric cryptographyとは、数学的に関係づけられた公開鍵と秘密鍵を用いた暗号です。秘密鍵から公開鍵を簡単に導出できるが、その逆が困難であるような数学的関係を有します。公開鍵が使われることから「公開鍵暗号」の名称が由来し、暗号化と復号化または署名と検証の際に異なる鍵を使うことから「非対称暗号」の名称が由来します。</p>
<p>数学的に関係づけられた公開鍵と秘密鍵は鍵ペアまたは鍵対keypairと呼びます。</p>
<p>公開鍵は、名称どおり、公開しても問題がありません。公開鍵を持っている人は秘密鍵所有者宛に秘密を送ったり秘密鍵所有者が署名したデータを検証したりできます。</p>
<p>一方、秘密鍵を安全に保管する必要があります。秘密鍵が流出すれば、その鍵を入手する他人は対応する公開鍵宛に暗号化した全てのメッセージを読んだり本来の秘密鍵所有者をなりすましたりできるようになってしまいます。</p>
<p>以下は公開鍵暗号アルゴリズムの代表例です。</p>
<ul>
<li>RSA</li>
<li>楕円曲線ECC
<ul>
<li>Ed25519 (署名)</li>
<li>Curve25519 X25519 ECDH 鍵交換)</li>
</ul>
</li>
</ul>
<p>→ 外部資料: RSA 暗号: <code>https://invidious.snopyta.org/watch?v=HKDyUELFdXs</code></p>
<p>→ 外部資料:楕円曲線暗号: <code>https://invidious.snopyta.org/watch?v=jxmN8LqyTR4</code></p>
<h2 id="encryption">暗号化</h2>
<p>暗号化encryptionとは、鍵公開鍵、パスワードなどを用いてある情報を読めないようにすることで、秘匿性を実現する手法です。暗号化された情報は「暗号文」ciphertextと呼ばれ、もとの情報は「平文」ひらぶん、 plaintextまたは「明文」cleartextと呼ばれます。暗号化は、鍵を用いて平文を暗号文に変換する行為です。復号化decryptionは暗号化の逆で、秘密の鍵秘密鍵、パスワードなどを用いて暗号文を平文に戻す行為です。</p>
<p>情報を読めないようにする対象は一般的には第三者(当事者以外)だけだが、当事者(例えば情報を暗号化した人自身)も情報を読めないようにする使用事例もあります。</p>
<p>暗号化には種類があります。</p>
<h3 id="encryption-primitives">暗号化のプリミティブ</h3>
<h4 id="symmetric-encryption">対称鍵暗号化</h4>
<p><img class="display" src="../assets/img/crypto/password-encryption.png" width="473" height="174" alt="パスワードを用いた暗号化"></p>
<p>対称鍵暗号化symmetric encryptionまたは共通鍵暗号化common key encryptionとは、暗号化と復号化に共通する鍵共通鍵を用いた暗号化です。対称鍵暗号化アルゴリズムはサイファcipherとも呼ばれます。</p>
<ul>
<li>ブロックサイファblock cipherブロック単位 128 ビット)の情報を読み込んで暗号化する。</li>
<li>ストリームサイファstream cipher小さな単位 1 バイト)の情報でも次々に暗号化できる。</li>
</ul>
<p>対称鍵暗号化は、公開鍵暗号化より高速で、サイファの実行に適したハードウェアがあります。保存したい情報の暗号化などという通信以外の使用事例に適しています。</p>
<p>しかし、共通鍵をどうやって通信相手に安全に渡すかという問題があり、通信相手との安全な通信チャネルが既に存在しない場合に使えません。仮に対称鍵暗号化だけで秘匿通信を実施する場合、各通信チャネルに別個の秘密鍵が必要となるため、各当事者が相手の数の秘密鍵を交換・保管しなければなりません。このシナリオでは、通信網の規模を拡張することが困難で、ミスと情報流出が発生する可能性が高すぎます。</p>
<p>以下は対称鍵暗号化アルゴリズムの代表例です。</p>
<ul>
<li>ブロックサイファ:
<ul>
<li>AES</li>
</ul>
</li>
<li>ストリームサイファ:
<ul>
<li>ChaCha と Salsa20</li>
</ul>
</li>
</ul>
<h4 id="public-key-encryption">公開鍵暗号化</h4>
<p>暗号化と復号化に共通する鍵を用いた暗号化と異なり、公開鍵暗号化public key encryptionまたは非対称鍵暗号化asymmetric encryptionとは、公開鍵を用いた暗号化のことです。公開鍵で暗号化したメッセージを、数学的に関係づけられた秘密鍵を用いて復号化します。</p>
<p>公開鍵暗号化では、鍵がデジタル身元の役割を果たすことが多く、簡単に長期的に同じ鍵ペアを利用することができます。通信に必要な秘密情報について、各当事者が自分の鍵ペアだけを交換・保管する必要があります。</p>
<p>しかし、公開鍵暗号化は対称鍵暗号化より遅いため、大量の情報の暗号化に適していません。また、公開鍵を多く使用すると秘密鍵の情報が徐々に漏洩される可能性があります。</p>
<h4 id="hybrid-encryption">ハイブリッド暗号化</h4>
<p><img class="display" src="../assets/img/crypto/hybrid-encryption.png" width="545" height="228" alt="ハイブリッド暗号化"> <img class="display" src="../assets/img/crypto/hybrid-decryption.png" width="548" height="228" alt="ハイブリッド復号化"></p>
<p>ハイブリッド暗号化hybrid encryptionとは、公開鍵暗号化と対称鍵暗号化を組み合わせた暗号化のことです。公開鍵暗号化と対称鍵暗号化と異なり、ただの暗号化プリミティブではなく、プリミティブを組み合わせた物です。</p>
<p>ハイブリッド暗号化は公開鍵暗号化と対称鍵暗号化の両者のメリットを取り入れながらデメリットを排除しようとします。対称鍵暗号化は公開鍵暗号化より高速で大量情報の暗号化に適している一方、公開鍵暗号化は安全なセッション鍵session keyの共有に適しています。公開鍵は長期的に使用できるデジタル身元みたいなものです。</p>
<p>ハイブリッド暗号化の一例は、一通のメッセージだけに使うセッション鍵を生成してから公開鍵で暗号化し、メッセージをセッション鍵とサイファで暗号化する仕組みです。 OpenPGP はこのようなハイブリッド暗号化を使います。他に、身元鍵identity keyの役割を演じる公開鍵が危殆化されてもセッション鍵が危殆化されない<a href="#forward-secrecy">前方秘匿性</a>のある通信方式など、様々なハイブリッド暗号化もあります。 TLS と SSH もハイブリッド暗号化を使います。</p>
<p>→ ガイド: <strong>OpenPGP と GnuPG § 暗号化</strong><a href="../ja-md/alice2bob-ja-OpenPGP-2.0.md#encryption">Markdown</a> | <a href="../ja-html/alice2bob-ja-OpenPGP-2.0.html#encryption">HTML</a></p>
<h3 id="encryption-types">暗号化技術の種類</h3>
<p>暗号化のプリミティブについて前述しました。ここで用途で分類した暗号化について紹介します。</p>
<h4 id="encryption-at-rest">保管時の暗号化</h4>
<p>保管時の暗号化encryption at restとは、情報を保管する際の暗号化です。暗号化ファイルシステムを利用したら、ファイルシステムに保存する情報の暗号化・復号化が自動的です。自分のデバイス上に情報を保存するには不可欠な暗号化です。</p>
<p>OpenPGP (秘密鍵やメッセージの暗号化)、 KeePassXC (データベースの暗号化)、 LUKS (ファイルシステムの暗号化)、 VeraCrypt (ファイルシステムの暗号化)などのアプリケーションは保管時の暗号化を活用します。</p>
<p>しかし、他人のデバイスに情報を任せる場合、保管時の暗号化の価値が少ないでしょう。保管先が暗号化の鍵も持っている場合、保管先が勝手に情報を覗き見・改竄できます。また、情報をネットワーク経由で保管先にアップロード・ダウンロードする場合、保管先との間の通信を保護しなければ第三者が通信を傍受するリスクがあります。通信を保護した上で行うよう注意し、保管先も情報を復号化できないような<a href="#end-to-end-encryption">エンドツーエンド暗号化</a>を利用した方がいいかもしれません。</p>
<h4 id="encryption-in-transit">転送中の暗号化</h4>
<p>転送中の暗号化encryption in transitまたはトランスポート暗号化transport encryptionとは、情報が転送中に秘匿性を保護するよう、送信者から受信者まで施す暗号化です。例えば、 SSL/TLS は過去 10 年の間に徐々に採用され、現在はほとんどのウェブサイトが TLS に対応しているため、インターネットに重大なセキュリティ向上に貢献しています。</p>
<p>転送中の暗号化は、送信者と受信者の間に転送される情報を復号化して再び暗号化する方式も含みます。情報の復号化・再暗号化をする中間者が存在する場合、その情報が転送中に盗聴・改竄される可能性があります。また、エンドツーエンド暗号化と異なり、当事者が鍵の交換・検証を十分に行えない場合が多いです。そのため、秘匿性と認証が重要な使用事例には転送中の暗号化だけに頼ってはならず、<a href="#end-to-end-encryption">エンドツーエンド暗号化</a>を利用した方がいいかもしれません。</p>
<h4 id="end-to-end-encryption">エンドツーエンド暗号化</h4>
<p>エンドツーエンド暗号化end-to-end encryption、 E2EE、 E2E 暗号化)とは、送信者と受信者で構成される当事者(エンドポイント)だけが鍵を持ち、中間者や第三者による傍聴を防ぐ暗号化です。単の転送中の暗号化と異なり、当事者が各自鍵ペアを生成・管理・交換したりセッション鍵に合意したりし、当事者だけがコントロールする暗号で通信を保護します。</p>
<p>エンドツーエンド暗号化は Tor オニオンサービス、 OpenPGP、 Signal プロトコルまたはそれに類するプロトコルのメッセンジャーなどに活用されています。</p>
<h2 id="hashing">ハッシュ化</h2>
<p>ハッシュ化hashingとは、任意長のメッセージ原像、 pre-imageを決定的に固定長の数値に写像する手法です。出力値はハッシュ値hashまたはダイジェストdigestと呼ばれます。写像自体はハッシュ関数hash functionと呼ばれます。</p>
<table>
<caption>
ハッシュ化のなだれ効果。
</caption>
<thead>
<tr class="header">
<th style="text-align: left;">メッセージ</th>
<th style="text-align: center;">SHA-256 ハッシュ値</th>
<th style="text-align: center;">備考</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;"><code>Hello world!</code></td>
<td style="text-align: center;"><code>c0535e4b...1ad9e51a</code></td>
<td style="text-align: center;">参考例。</td>
</tr>
<tr class="even">
<td style="text-align: left;"><code>hello world!</code></td>
<td style="text-align: center;"><code>7509e5bd...e08e6ca9</code></td>
<td style="text-align: center;"><code>H</code> を小文字 <code>h</code> に変換した。</td>
</tr>
<tr class="odd">
<td style="text-align: left;"><code>Hello world.</code></td>
<td style="text-align: center;"><code>aa3ec16e...bd115d11</code></td>
<td style="text-align: center;"><code>!</code><code>.</code> に置き換えた。</td>
</tr>
<tr class="even">
<td style="text-align: left;"><code>Hello world</code></td>
<td style="text-align: center;"><code>64ec88ca...eca37f3c</code></td>
<td style="text-align: center;"><code>!</code> を削除した。</td>
</tr>
</tbody>
</table>
<p>ハッシュ化は決定的な計算で、同じメッセージに対して同じハッシュ値が得られます。しかし、ハッシュ化にはなだれ効果avalanche effectがあり、メッセージが微小に変化してもハッシュ値が全く変わります。</p>
<p>可逆性のある暗号化・復号化と異なり、ハッシュ化は不可逆な変換で、メッセージを復元する逆演算がありません。また、暗号に適した安全なハッシュ関数(暗号的ハッシュ関数、 cryptographic hash functionに求められる性質は以下です。</p>
<ul>
<li>決定性determinism同じメッセージをハッシュ化したら同じハッシュ値を得ること。</li>
<li>無作為性randomnessメッセージが極わずかでも変化したら全く違うハッシュ値を得ること。</li>
<li>原像計算困難性pre-image resistance
<ul>
<li>第 1 原像計算困難性:与えられたハッシュ値を有するメッセージを探すことが困難であること。</li>
<li>第 2 原像計算困難性:与えられたメッセージと同じハッシュ値を有する別のメッセージを探すことが困難であること(弱衝突耐性)。</li>
</ul>
</li>
<li>衝突耐性collision resistance同じハッシュ値を有する異なるメッセージを探し出すことが困難であること強衝突耐性</li>
</ul>
<p>情報の完全性検証に大きな役割を演じます。ある情報の正しいハッシュ値を持っていれば、情報をハッシュ化した結果と照合することで完全性を確認できます。様々な使用事例があります。</p>
<ul>
<li>入手したソフトウェアや他の情報の完全性確認:ソフトウェア提供者がリリースのハッシュ値を公開する場合、ソフトウェア入手者がそれを用いてダウンロードを確認できる。</li>
<li>自分のデバイス上のデータの破損・改竄の検出:すべての各ファイルのハッシュ値を保管すれば、後で各ファイルの完全性を確認できる。</li>
<li>サーバ上のアカウントのパスワード保護:サーバがパスワードの平文ではなくハッシュ値を保存することで、アカウントへのログインを可能にしながらも、パスワード流出からアカウントを(多少)保護する。(ハッシュ化だけでのパスワード保護を<a href="#key-stretching">推奨しません</a>
</li>
</ul>
<p>ただし、ハッシュ化は認証を提供せず、正しいと確認されていないハッシュ値だと攻撃者がハッシュ値を改竄・提供したリスクがあります。認証を得るには、<a href="#signing">署名</a>または <a href="#MAC">MAC</a> または他の認証手段が必要です。</p>
<p>以下はハッシュ関数の例です。</p>
<ul>
<li>BLAKE2
<ul>
<li>BLAKE2S</li>
<li>BLAKE2B <code>b2sum</code></li>
</ul>
</li>
<li>BLAKE3</li>
<li>SHA2 <code>shasum</code>
<ul>
<li>SHA-256 <code>sha256sum</code></li>
<li>SHA-512 <code>sha512sum</code></li>
</ul>
</li>
<li>SHA3</li>
</ul>
<p>コマンドライン上のハッシュ関数の使用例を以下に紹介します。</p>
<pre><code>$ # 文字列を SHA-256 でハッシュ化。
$ # 注: echo が後尾に改行を付加しないよう -n フラグを追加。
$ echo -n 'Hello world!' | sha256sum
c0535e4be2b79ffd93291305436bf889314e4a3faec05ecffcbb7df31ad9e51a -
$ # ファイルの内容を SHA-256 でハッシュ化して SHA256SUMS に書き込む。
$ sha256sum alice.txt | tee SHA256SUMS
e0c9d974fa7728f510af0e1f8610a880c6bcc069b3902fd3e8b3c33a8f0f780b alice.txt
$ # SHA-256 ハッシュ値を照合。
$ sha256sum --check SHA256SUMS
alice.txt: OK</code></pre>
<h2 id="signing">署名</h2>
<p><img class="display" src="../assets/img/crypto/signing.png" width="646" height="146" alt="署名の計算"></p>
<p>署名signingとは、秘密鍵を用いてメッセージの完全性と認証を検証可能にする証明の生成のことです。署名アルゴリズムが出力する検証のための情報は署名signatureと呼ばれます。秘密鍵で署名されたメッセージと署名を、数学的に関係づけられた公開鍵を用いて検証します。</p>
<p>署名されたメッセージの検証に成功したら、検証者が暗号上正当なメッセージと署名と公開鍵を揃って所有するため、以下のことを証明できます。</p>
<ul>
<li>完全性:検証者が所有するメッセージと署名されたメッセージが一致すること。</li>
<li>認証性:検証に用いた公開鍵に対応する秘密鍵の所有者がメッセージに署名したこと。</li>
<li>否認不可性:暗号上、秘密鍵の所有者がメッセージに署名したことを否認できないこと。</li>
</ul>
<p>このような特性を持つため、契約や注文など重要な文書に署名するという応用例に適しています。また、リリースしたソフトウェアに署名するソフトウェア開発者が少なくありません。</p>
<p><a href="#hybrid-encryption">ハイブリッド暗号化</a>と似ているように、現代の署名は公開鍵暗号とハッシュの両者のメリットを取り入れながらデメリットを削減し、メッセージへの直接の署名ではなく、メッセージのハッシュ値に対して秘密鍵を用いて署名アルゴリズムを適用します。</p>
<h2 id="MAC">メッセージ認証符号</h2>
<p>メッセージ認証符号message authentication code、 MACとは、共通鍵と任意長のメッセージを入力とするアルゴリズムで生成された、メッセージを検証する際に使う情報です。 MAC はメッセージの完全性確認を可能にし、メッセージの共通鍵を所有する検証者に送信者からのメッセージであることを証明します。</p>
<p>検証に成功したメッセージと MAC で、以下を得ます。</p>
<ul>
<li>完全性:検証者が所有するメッセージと MAC で保護されたメッセージが一致すること。</li>
<li>認証:検証に用いた共通鍵の所有者のうちの誰かが作成・送信したメッセージであること。</li>
</ul>
<p>署名と異なり、 MAC はメッセージの共通鍵を用いるため、送信者がメッセージを作成・送信したという暗号上証明になりません。共通鍵を知っている受信者がメッセージを作成して MAC を生成した可能性が残ります。</p>
<p>以下は MAC アルゴリズムの例です。</p>
<ul>
<li>HMAC hash-based MAC
<ul>
<li>HMAC-SHA256</li>
<li></li>
</ul>
</li>
<li>Poly1305
<ul>
<li>Poly1305-AES</li>
<li>Poly1305-ChaCha20 と Poly1305-Salsa20</li>
</ul>
</li>
</ul>
<h2 id="verification">検証</h2>
<p><img class="display" src="../assets/img/crypto/verification.png" width="516" height="246" alt="署名の検証"></p>
<p>署名と MAC について前述したため、ここで検証について簡潔に説明します。</p>
<p>暗号における検証verificationとは、情報の完全性・出所や通信相手の身元などを確認することです。与えられた情報メッセージ、ハッシュ値、署名、公開鍵、 MAC、共通鍵などから以下の結果が出ることが可能です。</p>
<ul>
<li>エラーerror与えられた情報に不備があった場合。</li>
<li>拒否rejected与えられた情報の整合性を確定できなかった場合。</li>
<li>承認approved与えられた情報の整合性を確定した場合。</li>
</ul>
<h2 id="random-number-generation">疑似乱数生成</h2>
<p>疑似乱数生成器pseudo-random number generator、 PRNGは、疑似乱数列を出力するアルゴリズムです。暗号的に安全な PRNG cryptographically secure PRNG、 CSPRNGは、強力な秘密鍵、セッション鍵、<a href="#salt">ソルト</a>、パスワードなどを生成するために不可欠な要素で、暗号方式が多く CSPRNG を活用します。</p>
<p>PRNG はシード値seedと呼ばれる乱数で初期化されてから使用されます。 PRNG の出力は決定的で、同じシード値を与えたら同じ数列が出力されます。 PRNG の内部状態またはシード値が知られたら、出力が予測可能になってしまいます。そのため、暗号やセキュリティの使用事例では CSPRNG が安全に初期化される必要があります。</p>
<p>真の乱数列は規則性も再現性もなく、予測不可能です。一方、 PRNG の出力は真の乱数列ではありません。 PRNG の出力が真の乱数列に近似するには、良い統計的無作為性(一様性、無相関など)が必要です。それに加えて、 CSPRNG は出力を予測する攻撃への耐性も有します。</p>
<p>以下は疑似乱数生成アルゴリズムの例です。</p>
<ul>
<li>arc4random</li>
<li>Fortuna <code>/dev/urandom</code> によく使われている)</li>
</ul>
<p>コマンドライン上の疑似乱数の使用例を以下に紹介します。</p>
<pre><code>$ # 8 バイトの疑似乱数をバイナリ形式のままでファイルに書き込む。
$ head -c 8 /dev/urandom &gt; random.txt
$ # 32 文字の base64 形式の無作為文字列を生成。
$ cat /dev/urandom | base64 --wrap=0 | head -c 32
zsOGDz9q3zQ6mJk8dLQKvZcPTF+lxk9t
$ # 小文字と数字だけの 10 文字の無作為文字列を生成。
$ cat /dev/urandom | tr -dc 'a-z0-9' | head -c 10
lenjiqlnfi</code></pre>
<h2 id="key-exchange">鍵交換</h2>
<p>鍵交換key exchangeとは、通信の当事者が秘密の共通鍵に合意する手法です。</p>
<p>非暗号化チャネル上で秘密情報や鍵を平文で送信すると、それが盗聴されるおそれがあるため、非暗号化チャネル上で通信を行う前にまず共通鍵に合意する必要があります。仮に非暗号化チャネル上で使える安全な鍵交換手段がなかった場合、まず事前に当事者が面会して鍵を交換するか安全な他のチャネル(例:信用たる宅配便業者)で鍵を伝える必要があります。</p>
<p>ところが、 DiffieHellman 鍵交換法では監視されている非暗号化チャネル上でも当事者が安全に秘密の共通鍵に合意できます。当事者が共通鍵に合意した後、<a href="#symmetric-encryption">対称鍵暗号化</a>を用いた秘匿通信ができます。ただし、認証性のあるチャネルまたは他の認証手段が必要です。何かしらの認証を行わない場合、 DiffieHellman 鍵交換はチャネル上のメッセージを改竄できる MITM 攻撃に対して失敗します。</p>
<h3 id="forward-secrecy">前方秘匿性</h3>
<p>前方秘匿性forward secrecyは、鍵交換に使用した長期的な鍵鍵ペアが危殆化されてもセッション鍵が危殆化されないという暗号化の仕組みです。前方秘匿通信では各セッションに新しい鍵が生成・使用されるため、一つのセッションが危殆化されても他のセッションに及びません。</p>
<p>鍵生成が速い DiffieHellman <a href="#key-exchange">鍵交換</a>は前方秘匿性の実現によく使われます。メッセージのやり取りの使用事例では、メッセージ毎に鍵交換を行うことによって前方秘匿性を実現できます。</p>
<h2 id="key-derivation">鍵導出</h2>
<p>鍵導出key derivationとは、秘密情報パスワードまたは身元鍵などを用いて、特定の形式を満たす鍵、強力な鍵、複数の鍵などを導出することです。以下の目的に使用されます。</p>
<ul>
<li>特定の形式を満たす鍵:パスワードや鍵長が合わない鍵などから希望の形式・鍵長の秘密鍵を導出。(例:パスワードから 256 ビットの鍵を導出)</li>
<li>秘密情報を得ようとする攻撃に耐える鍵:弱いかもしれない秘密情報(例:短い鍵)から秘密情報を得ようとする攻撃に耐える鍵を導出。<a href="#key-stretching">鍵ストレッチング</a>と呼ばれる。
</li>
<li>複数の鍵:秘密でない情報を付加したりハッシュ化を繰り返したりすることで、同じ秘密情報から複数の鍵を導出。</li>
</ul>
<p>鍵導出は疑似乱数関数pseudo-random functionを利用し、たいていは<a href="#hashing">ハッシュ関数</a>または<a href="#symmetric-encryption">ブロックサイファ</a>を疑似乱数関数として利用します。鍵導出は決定的でありながら、秘密情報(またはソルト)が変わるとなだれ効果によって全く違う鍵が得られます。</p>
<p>以下は鍵導出関数の例です。</p>
<ul>
<li>Argon2</li>
<li>bcrypt</li>
<li>PBKDF2</li>
<li>s2k OpenPGP</li>
<li>scrypt</li>
</ul>
<h3 id="salt">ソルト化</h3>
<table>
<caption>
ハッシュ値 = SHA256(パスワード) (ソルト化なし)。
</caption>
<thead>
<tr class="header">
<th style="text-align: center;">ユーザ名</th>
<th style="text-align: center;">パスワード<sup>*1</sup></th>
<th style="text-align: center;">ハッシュ値</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: center;"><code>alice</code></td>
<td style="text-align: center;"><code>helloworld</code></td>
<td style="text-align: center;">0x936a185c…</td>
</tr>
<tr class="even">
<td style="text-align: center;"><code>bob</code></td>
<td style="text-align: center;"><code>helloworld</code></td>
<td style="text-align: center;">0x936a185c…</td>
</tr>
</tbody>
</table>
<table>
<caption>
ハッシュ値 = SHA256(パスワード+ソルト値) でのソルト化。
</caption>
<thead>
<tr class="header">
<th style="text-align: center;">ユーザ名</th>
<th style="text-align: center;">パスワード<sup>*1</sup></th>
<th style="text-align: center;">ソルト値<sup>*2</sup></th>
<th style="text-align: center;">ハッシュ値</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: center;"><code>alice</code></td>
<td style="text-align: center;"><code>helloworld</code></td>
<td style="text-align: center;">0xa8e09915</td>
<td style="text-align: center;">0xd95f96f4…</td>
</tr>
<tr class="even">
<td style="text-align: center;"><code>bob</code></td>
<td style="text-align: center;"><code>helloworld</code></td>
<td style="text-align: center;">0x9a0bcd84</td>
<td style="text-align: center;">0x88fb566e…</td>
</tr>
</tbody>
</table>
<ul>
<li>*1アカウントのパスワードをサーバ上に保存しない。</li>
<li>*2実際には 32 ビットより長い値を使うべき。</li>
</ul>
<p>鍵導出にはソルト値(塩、 saltという乱数が与えられることがあります。秘密情報にソルト値を付加してからハッシュ化すると、秘密情報が同じであっても毎回異なるハッシュ値が得られます。</p>
<p>ソルト値とハッシュ値が流出しても、秘密情報を得ようとする攻撃からその秘密情報を保護します。保存されているパスワードの保護によく活用されます。ソルト化することで、以下のセキュリティメリットが得られます。</p>
<ul>
<li>レインボーテーブルの事前算出が実行不可能になるため、レインボーテーブル<a href="#fn6" class="footnote-ref" id="fnref6"><sup>6</sup></a>を用いた攻撃からパスワードを保護する(ただし、弱いパスワードを保護しない)。
</li>
<li>同じパスワードを使うアカウントのハッシュ値が一致しなくなるため、パスワードが複数のアカウント・サービスにわたって繰り返し使われても(例:短い文字列、パスワードの再利用)一つのアカウントの危殆化は他のアカウントに影響しない。</li>
</ul>
<p>ただし、以上のような簡単なソルト化では、強力なオフライン攻撃<a href="#fn7" class="footnote-ref" id="fnref7"><sup>7</sup></a>が実行できる攻撃者がソルト値とハッシュ値を入手した場合、保護が不十分かもしれません。また、辞書攻撃<a href="#fn8" class="footnote-ref" id="fnref8"><sup>8</sup></a>からの保護が限定的です。</p>
<h3 id="key-stretching">鍵ストレッチング</h3>
<p>鍵ストレッチングkey stretchingとは、弱いかもしれない秘密情報人間が発想したパスワード、短い鍵から攻撃に耐性のある鍵を導出することです。</p>
<p>鍵ストレッチングではソルト値が導出された鍵と共に保管される一方、鍵強化key strengtheningではソルト値が破棄されます。鍵強化は弱いかもしれない秘密情報から鍵を導出するが、二度と同じ秘密情報から同じ鍵を導出する必要がない用途にしか使えず、一般のパスワード保護には適しません。</p>
<p>ハッシュ化には高速なハッシュ関数が望ましい使用事例が多い一方、鍵ストレッチングでは攻撃を遅らせることが目的で、逆に資源(時間と空間)が多くかかる計算が望ましいです。一回だけ正しいパスワードを入力することが多い正当な利用者にとって負担がわずかな一方、多数のパスワードの候補を試行する攻撃者にとって負担が大きいという良好な非対称があります。</p>
<p>ソルト化とハッシュ化を(数万回〜数億回)繰り返すことで、総当たり攻撃、レインボーテーブルを用いた攻撃、辞書攻撃などのオフライン攻撃を困難または実行不可能にすることができます。例えば、 OpenPGP は最大 65,011,712 回のソルト化とハッシュ化をする鍵ストレッチングs2kで秘密鍵と暗号文を保護します。 LUKS ファイルシステム(デフォルト: PBKDF2や KeepassXC データベース(デフォルト: Argon2を解錠時、解錠に数秒ぐらいがかかることには気が付くでしょう。</p>
<section class="footnotes">
<hr>
<ol>
<li id="fn1">
<p>ダウングレード攻撃downgrade attackセキュリティ機能を強制しないまたは脆弱なアルゴリズムにも対応する暗号プロトコルにおける高度なモード暗号化通信から低度のモード非暗号化通信に格下げさせる攻撃。<a href="#fnref1" class="footnote-back"></a></p>
</li>
<li id="fn2">
<p>日和見暗号化opportunistic encryption他のシステムに接続する際に暗号化通信を試行するものの、失敗すれば非暗号化通信を行うシステム。ほぼ常時にある程度の保護を提供しようとし、暗号化を普及させる目的で採用された事例がある。ダウングレード攻撃などの能動的攻撃や利用者にとっての不便性または使用ミスに対して脆弱。<a href="#fnref2" class="footnote-back"></a></p>
</li>
<li id="fn3">
<p>MITM 攻撃man-in-the-middle attack、 中間者攻撃):通信において、互いに直接やり取りしていると思っている当事者の間に位置する中間者が密かに通信を中継・改竄する攻撃。 Wi-Fi ネットワーク上のハッカー、 IMSI キャッチャー、 sslstrip、悪質な公開鍵証明書認証局などは代表例。公開鍵基盤、共通秘密、相互認証、生体情報認識などの防止方法がある。ウェブサイトの訪問者とサーバの間に位置する TLS プロキシは MITM (中間者)になるためセキュリティ問題だが、 MITM 側に悪意がない限り MITM 攻撃として解釈されない。<a href="#fnref3" class="footnote-back"></a></p>
</li>
<li id="fn4">
<p>サイドチャネル攻撃side-channel attackシステムの入出力を直接的に操作・観察せず、システムの物理的な非計画入出力サイドチャネルを操作・観察することで漏洩している情報を取得したり故障を注入したりする攻撃。ハードウェアの電力解析、ソフトウェア実行時のタイミング解析、 CPU クロック操作などの物理的手段でサイドチャネルを攻撃すること。<a href="#fnref4" class="footnote-back"></a></p>
</li>
<li id="fn5">
<p>総当たり攻撃brute-force attack可能な秘密情報の候補を全て試みる攻撃。<a href="#fnref5" class="footnote-back"></a></p>
</li>
<li id="fn6">
<p>レインボーテーブルrainbow tableハッシュ値から秘密情報パスワードを解読するために、事前作成された文字列と対応するハッシュ値の計算結果の表。<a href="#fnref6" class="footnote-back"></a></p>
</li>
<li id="fn7">
<p>オフライン攻撃offline attack試行の回数や速度などの制限を設けるかもしれないサーバに接続してパスワードなどの候補を試みる攻撃と対照し、試行制限なしの環境において高速に候補を試みる攻撃。<a href="#fnref7" class="footnote-back"></a></p>
</li>
<li id="fn8">
<p>辞書攻撃dictionary attack辞書から引いた単語、人間が発想する弱いパスワード、過去のデータ流出から得られたパスワードなどのパスワード候補を優先に攻撃を行うこと。<a href="#fnref8" class="footnote-back"></a></p>
</li>
</ol>
</section>
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>
<ul>
<li>ウェブサイト上: <code>https://git.disroot.org/alice2bob/alice2bob/src/branch/master/alice2bob.asc</code></li>
<li>鍵サーバ(クリアネット): <code>https://keys.openpgp.org/search?q=1D3E313C4DB2B3E08271FC4889BB4CBB9DBE7F6D</code></li>
<li>鍵サーバ(オニオン): <code>http://zkaan2xfbuxia2wpf7ofnkbz6r5zdbbvxbunvp5g2iebopbfc4iqmbad.onion/search?q=1D3E313C4DB2B3E08271FC4889BB4CBB9DBE7F6D</code></li>
</ul>
<h3 id="back-contact-website">ウェブサイト</h3><img class="qr" src="../assets/qr/contact-website.png" width="222" height="222" alt="ウェブサイト QR コード">
<p><code>https://git.disroot.org/alice2bob/alice2bob</code></p>
<h2 id="back-verify">検証</h2>
<p><code>https://git.disroot.org/alice2bob/alice2bob/src/branch/master/verify.md</code></p>
<h2 id="back-disclaimer">免責事項</h2>
<p>アリスとボブはセキュリティ専門家でも法律家でも金融アドバイザーでも医師でもありません。本シリーズの目的はあくまでも情報提供で、何の助言でもありません。本シリーズは全くの無保証で提供されます。本シリーズによってどんな不利、損失または損害が生じても、アリスとボブは一切の責任を負いません。ご自身の状況を考慮し、自己責任で本シリーズを使ってください。</p>
</body>
</html>

View File

@ -10,9 +10,9 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">序文</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>本ガイドの最終更新: 2021-12-29</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2022-08-12</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<p>アリスとボブはやりとりをしたいが、デジタル技術が広く行き渡っている情報化時代の中に生きていて、蔓延している監視と統制から自身と相手を守りたい。どうしたらいいか?</p>
@ -29,64 +29,78 @@
<li>
<strong>序文</strong>
<br>
<a href="../ja-md/alice2bob-ja-preface-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-preface-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html">HTML</a>
<br>
(最終更新: 2021-12-29
(最終更新: 2022-08-12
</li>
<li>
<strong>デジタルセキュリティの概念</strong>
<br>
<a href="../ja-md/alice2bob-ja-security-concepts-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-security-concepts-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-concepts-2.0.html">HTML</a>
<br>
(最終更新: 2022-02-28
</li>
<li>
<strong>セキュリティ計画</strong>
<br>
<a href="../ja-md/alice2bob-ja-security-plan-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-security-plan-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-2.0.html">HTML</a>
<br>
(最終更新: 2021-02-02 EFF による最終レビュー
(最終更新: 2021-12-29 (原文更新: 2021-02-02
</li>
<li>
<strong>Tor 匿名化ネットワーク</strong>
<br>
<a href="../ja-md/alice2bob-ja-Tor-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-Tor-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-2.0.html">HTML</a>
<br>
(最終更新: 2021-12-29
</li>
<li>
<strong>Tor Browser</strong>
<br>
<a href="../ja-md/alice2bob-ja-Tor-Browser-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-Tor-Browser-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tor-Browser-2.0.html">HTML</a>
<br>
(最終更新: 2021-12-29
</li>
<li>
<strong>Tails を用いた自由かつ匿名コンピューティング</strong>
<br>
<a href="../ja-md/alice2bob-ja-Tails-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tails-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-Tails-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tails-2.0.html">HTML</a>
<br>
(最終更新: 2021-12-29
</li>
<li>
<strong>暗号技術入門</strong>
<br>
<a href="../ja-md/alice2bob-ja-intro-cryptography-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-intro-cryptography-2.0.html">HTML</a>
<br>
(最終更新: 2022-08-11
</li>
<li>
<strong>OpenPGP と GnuPG</strong>
<br>
<a href="../ja-md/alice2bob-ja-OpenPGP-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-OpenPGP-2.0.html">HTML</a>
<br>
(最終更新: 2022-08-12
</li>
<li>
<strong>用語集</strong>
<br>
<a href="../ja-md/alice2bob-ja-glossary-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-glossary-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-glossary-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-glossary-2.0.html">HTML</a>
<br>
(最終更新: 2022-02-28
</li>
<li>
<strong>外部資料</strong>
<br>
<a href="../ja-md/alice2bob-ja-external-resources-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-external-resources-1.1.html">HTML</a>
<a href="../ja-md/alice2bob-ja-external-resources-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-external-resources-2.0.html">HTML</a>
<br>
(最終更新: 2022-02-28
(最終更新: 2022-07-07
</li>
</ul>
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,9 +10,9 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">デジタルセキュリティの概念</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2022-02-28</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -86,7 +86,7 @@
<li>失敗した場合の影響はどれくらい悪いか?(影響)</li>
<li>可能な影響を防ごうとするためにどれくらい苦労する意志があるか?(意志、能力、制約)</li>
</ul>
<p>→ ガイド:<strong>セキュリティ計画</strong><a href="../ja-md/alice2bob-ja-security-plan-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-1.1.html">HTML</a></p>
<p>→ ガイド:<strong>セキュリティ計画</strong><a href="../ja-md/alice2bob-ja-security-plan-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-2.0.html">HTML</a></p>
<h2 id="weakest-link">最弱点から対策を始める</h2>
<p>例えば、自宅の玄関のドアを強化して鍵をかけても、どこかの窓が開けっ放しだとあまり意味がありません。</p>
<p>守りたい物事に関連する各部分の連鎖を考えて、リスクが最も高い部分を優先しましょう。セキュリティを強化したい時に、まず最弱点から対策を始めた方が最も効果的でしょう。</p>
@ -100,6 +100,7 @@
<li>マイク、カメラ、無線、スピーカーなどを物理的に取り除くか無効化する。</li>
<li>森林の中や他の監視されていない場所で打ち合わせ、共同作業、懇親会などを行う。</li>
</ul>
<p>→ 外部資料: <code>https://itsgoingdown.org/signal-fails</code></p>
<h2 id="proactive">事前対策を徹底する</h2>
<p>一件のミスまたは侵害だけで取り返しがつかない被害を受ける恐れがあります。特に、物質と違って、デジタルの情報は一度でも漏洩されると無数に閲覧・コピーされがちです。事後対応はある程度被害を抑えられるものの、遡及力が限定的で対応コストが一般的に高いです。</p>
<p>ミスと侵害を未然防止する事前対策を徹底することが大事です。</p>
@ -117,11 +118,11 @@
</ul>
<p>インターネットが全ての情報を永久に記憶することを前提に行動しましょう。</p>
<h2 id="dont-trust-anyone">他人がセンシティブ情報を保護してくれることを信用しない</h2>
<p>デジタルの時代にプライバシーポリシーや情報保護法が普及しています。しかし、このような法的手段は実際に人たちの情報を保護してくれているでしょうか?インターネット会社は任意にまたは強制されて法執行機関と協力することが多く、サービス利用者のセンシティブ情報の売買を習慣的にやります。また、多くのインターネット会社はプライバシー意識とセキュリティ対策を欠け、日常茶飯事かのようにデータ漏洩が発生しています。</p>
<p>一方、友達と家族さえセンシティブ情報を保護してくれることを信用するには要注意です。インターネット会社と同様、多くの人たちもプライバシー意識とセキュリティ対策を欠け、脅迫、強制、詐欺、励みなどに対して脆弱です。自分とやりとりする人はその時に暗号化通信を利用するかもしれないが、恐らく他人と非暗号化のメールや電話をするか信用しない他人とやりとりすることが多く、その時に自分のセンシティブ情報を明かしてしまう恐れがあります。</p>
<p>デジタルの時代にプライバシーポリシーや情報保護法が普及しています。しかし、このような法的手段は実際に人たちの情報を保護してくれているでしょうか?インターネット会社は任意にまたは強制されて法執行機関と協力することが多く、サービス利用者のセンシティブ情報の売買を習慣的にやります。また、多くのインターネット会社はプライバシー意識とセキュリティ対策を欠け、日常茶飯事かのようにデータ流出が発生しています。</p>
<p>一方、友達と家族さえセンシティブ情報を保護してくれることを信用するには要注意です。インターネット会社と同様、多くの人たちもプライバシー意識とセキュリティ対策を欠け、脅迫、強制、詐欺、誘惑などに対して脆弱です。自分とやりとりする人はその時に暗号化通信を利用するかもしれないが、恐らく他人と非暗号化のメールや電話をするか信用しない他人とやりとりすることが多く、その時に自分のセンシティブ情報を明かしてしまう恐れがあります。</p>
<p>必要がある時に親友や弁護など信用できる人に情報を明かしても大丈夫かもしれないが、他人にセンシティブ情報を容易に明かすことを避けましょう。どの情報をどの人にどの目的で明かしたらいいかをよく考えた上で行動すべきです。</p>
<h2 id="protect">全ての情報と通信を効果的な技術で保護する</h2>
<p>プライバシーポリシーや他人の約束に頼ってはいけないことを示唆しました。人は脅迫、強制、詐欺、励みなどに応じてセンシティブ情報を明かしてしまいます。それに加えて、仮に誰も信用しなくても、法的保護に頼ってはいけません。例えば、不法侵入の法律のある管区にさえ自宅が泥棒に入れられる可能性があります。また、自宅が火事になってしまう可能性も考えなければなりません。法的保護や方針や約束は脆弱なものです。情報と通信を保護するためには効果的な技術的手段が不可欠です。</p>
<p>プライバシーポリシーや他人の約束に頼ってはいけないことを示唆しました。人は強要、詐欺、働きかけなどに応じてセンシティブ情報を明かしてしまいます。それに加えて、仮に誰も信用しなくても、法的保護に頼ってはいけません。例えば、不法侵入の法律のある管区にさえ自宅が泥棒に入れられる可能性があります。また、自宅が火事になってしまう可能性も考えなければなりません。法的保護や方針や約束は脆弱なものです。情報と通信を保護するためには効果的な技術的手段が不可欠です。</p>
<p>情報の破損、損失、改竄、漏洩、身元特定、不正アクセス、傍受、詐欺などをおそらく未然防止したいでしょう。デジタルセキュリティにおける技術的手法の例をいくつかあげます。</p>
<ul>
<li>情報、通信、ファイルシステムなどを暗号化する。</li>
@ -138,7 +139,7 @@
<li>保存している不要な情報を削除し、情報を定期的に管理する。</li>
</ul>
<p>情報の入手と生成を最低限にする方法といえば、デバイス内のアプリやシステムのロギングの無効化、メールやメッセンジャーのやりとりの自動削除など、様々な手法があります。情報の生成と保存を最低限にする OS<a href="#fn6" class="footnote-ref" id="fnref6"><sup>6</sup></a> といえば、 Tails を推奨します。 Tails では、ユーザが意図的に保存した情報以外の情報が終了時に消去されます。</p>
<p>→ ガイド: <strong>Tails での自由かつ匿名コンピューティング</strong><a href="../ja-md/alice2bob-ja-Tails-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tails-1.1.html">HTML</a></p>
<p>→ ガイド: <strong>Tails での自由かつ匿名コンピューティング</strong><a href="../ja-md/alice2bob-ja-Tails-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-Tails-2.0.html">HTML</a></p>
<p>デジタル情報を簡易削除するだけで完全に消去されず、記憶装置に残ってしまいます。センシティブ情報を削除する際、データの完全な消去・破壊によって情報を復元不可能にすべきでしょう。例えば、ファイル削除後の空きスペース消去(上書き)、記憶装置の破壊などの手法があります。物質界では、情報を記載した紙の焼却かつ破砕は代表的な例です。</p>
<h2 id="dont-work-from-home">自宅からリスクの高い活動をしない</h2>
<p>リスクの高い活動の出所が自宅まで追跡されたら、自宅と居住者に対する監視、ハラスメント、暴力などの攻撃の発生可能性が上がってしまいます。</p>
@ -184,7 +185,7 @@
<li>対策のテスト:漏洩テスト、侵入テスト、バックアップ復元テストなど。</li>
</ul>
<p>自分のセキュリティ要件が時間につれて変わるかもしれません。また、過去に健全だったセキュリティ対策が脆弱になったかもしれません。過去に導入したセキュリティ対策が現在のセキュリティ必要に十分かつ適切か、定期的にセキュリティ対策を見直した方がいいです。</p>
<p>→ ガイド:<strong>セキュリティ計画</strong><a href="../ja-md/alice2bob-ja-security-plan-1.1.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-1.1.html">HTML</a></p>
<p>→ ガイド:<strong>セキュリティ計画</strong><a href="../ja-md/alice2bob-ja-security-plan-2.0.md">Markdown</a> | <a href="../ja-html/alice2bob-ja-security-plan-2.0.html">HTML</a></p>
<h1 id="attack-surface">攻撃ベクトルと攻撃対象領域</h1>
<p>では、デジタルセキュリティにおいて実際に何を保護する必要があるか?本セクションでは具体例を紹介します。ただし、全ての点をここであげたと思わないでください。また、どうやってこれらの点を攻撃に利用したり保護したりできるかを自分で考えてください。</p>
<p>攻撃ベクトルattack vectorとは、攻撃者が対象者に害を与えるために利用できるまたは利用した特定の弱点経路、手法、シナリオ、場所などのことです。攻撃者が対象者の領域に侵入する場合を指すことが多いが、対象者の領域に対する監視や情報収集など受動的な攻撃も範囲内だと考えられます。</p>
@ -344,7 +345,7 @@
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

View File

@ -10,9 +10,9 @@
<img class="top-banner" src="../assets/img/top-banner.png" width="780" height="204" alt="アリスとボブのバナー">
<h1 id="top">セキュリティ計画</h1>
<p>アリスとボブ</p>
<p>バージョン: 1.1</p>
<p>本ガイドの最終更新: 2021-02-02 EFF による最終レビュー</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>バージョン: 2.0</p>
<p>本ガイドの最終更新: 2021-12-29 (原文更新: 2021-02-02</p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<hr>
<main>
<ol type="1">
@ -162,7 +162,7 @@
</main>
<hr>
<h1 id="back">アリスとボブ</h1>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-1.1.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-1.1.html#list">HTML</a></p>
<p>ガイド一覧に戻る — <a href="../ja-md/alice2bob-ja-preface-2.0.md#list">Markdown</a> | <a href="../ja-html/alice2bob-ja-preface-2.0.html#list">HTML</a></p>
<h2 id="back-contact">連絡先</h2>
<h3 id="back-contact-pgp">PGP 鍵</h3>
<p><code>1D3E 313C 4DB2 B3E0 8271 FC48 89BB 4CBB 9DBE 7F6D</code></p>

File diff suppressed because it is too large Load Diff

View File

@ -4,15 +4,15 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2021-12-29
Tails 4.25
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -106,8 +106,8 @@ OS の唯一の特徴を最小限にします。
→ ガイド:
**Tor 匿名化ネットワーク**
--- [Markdown](../ja-md/alice2bob-ja-Tor-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tor-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-2.0.html)
Tails はネットワークに接続する時に、
ホストデバイスのネットワークデバイスの
@ -128,8 +128,8 @@ Tails は利用者のプライバシーと匿名性の保護に特化してい
→ ガイド:
**デジタルセキュリティの概念 § FLOSS を使用する**
--- [Markdown](../ja-md/alice2bob-ja-security-concepts-1.1.md#floss)
\| [HTML](../ja-html/alice2bob-ja-security-concepts-1.1.html#floss)
--- [Markdown](../ja-md/alice2bob-ja-security-concepts-2.0.md#floss)
\| [HTML](../ja-html/alice2bob-ja-security-concepts-2.0.html#floss)
Tails には様々なセキュリティ・プライバシーツールが用意されています。
@ -274,8 +274,8 @@ Tor 以外のほぼ全てのトラフィックの送受信を遮断します。
→ ガイド:
**Tor 匿名化ネットワーク § 注意点と限界**
--- [Markdown](../ja-md/alice2bob-ja-Tor-1.1.md#warnings-and-limitations)
\| [HTML](../ja-html/alice2bob-ja-Tor-1.1.html#warnings-and-limitations)
--- [Markdown](../ja-md/alice2bob-ja-Tor-2.0.md#warnings-and-limitations)
\| [HTML](../ja-html/alice2bob-ja-Tor-2.0.html#warnings-and-limitations)
→ 外部資料:
`https://tails.boum.org/doc/about/warnings/tor/`
@ -380,11 +380,11 @@ Tails の全ての PGP 公開鍵の情報が記載されています。
`https://tails.boum.org/doc/about/openpgp_keys/#index2h1`
公開鍵 `<key-file>` (例: `tails-signing.key`)の指紋を照合し、
GnuPG の鍵に追加します。
GnuPG の鍵に追加します。
~~~
$ gpg --show-key <key-file>
...(鍵の情報の表示)
... (鍵の情報の表示)
$ gpg --import <key-file>
~~~
@ -1177,8 +1177,8 @@ Windows キーボードの「スタート」キーに当てはまるキーです
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,15 +4,15 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2021-12-29
OnionShare 2.4 \| Tor 0.4.6
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -318,8 +318,8 @@ BitTorrent の代わりに、例えば [OnionShare](#OnionShare) で
→ ガイド:
**Tor Browser**
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-2.0.html)
## 利用者の行動による情報漏洩 {#user-mistakes}
@ -377,8 +377,8 @@ Tor ブロッキングを回避したりしたい場合、
→ ガイド:
**Tor Browser § Tor ブロッキングの回避**
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-1.1.md#Tor-blocking-circumvention)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-1.1.html#Tor-blocking-circumvention)
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-2.0.md#Tor-blocking-circumvention)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-2.0.html#Tor-blocking-circumvention)
## Tor に対する攻撃 {#attacks-against-Tor}
@ -507,7 +507,7 @@ Tor Project が開発・管理しているか
オニオンサービスを用いたファイル共有。
`https://onionshare.org/`
- **parcimonie**
プライバシーを考慮した GnuPG 鍵更新ヘルパー。
プライバシーを考慮した GnuPG 鍵更新ヘルパー。
`https://salsa.debian.org/intrigeri/parcimonie/`
- **Qubes OS**
分離でのセキュリティsecurity by isolation
@ -679,8 +679,8 @@ Tor Browser を別のガイドで説明します。
→ ガイド:
**Tor Browser**
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-2.0.html)
## Torsocks {#Torsocks}
@ -773,8 +773,8 @@ Tor Browser に内蔵されています。
→ ガイド:
**Tor Browser § Tor ブリッジの設定**
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-1.1.md#configure-Tor-bridge)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-1.1.html#configure-Tor-bridge)
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-2.0.md#configure-Tor-bridge)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-2.0.html#configure-Tor-bridge)
## ブリッジの追加 {#add-bridges}
@ -1052,8 +1052,8 @@ Tor には無いまたは Tor の弱点を改善する機能・特徴があり
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,15 +4,15 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2021-12-29
Tor Browser 11.0
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -114,8 +114,8 @@ Tor 自体はプライバシーや匿名性を保証しない一方、
→ ガイド:
**Tor 匿名化ネットワーク § 注意点と限界**
--- [Markdown](../ja-md/alice2bob-ja-Tor-1.1.md#warnings-and-limitations)
\| [HTML](../ja-html/alice2bob-ja-Tor-1.1.html#warnings-and-limitations)
--- [Markdown](../ja-md/alice2bob-ja-Tor-2.0.md#warnings-and-limitations)
\| [HTML](../ja-html/alice2bob-ja-Tor-2.0.html#warnings-and-limitations)
## Tor Browser のブラウザ指紋 {#Tor-Browser-browser-fingerprint}
@ -298,7 +298,7 @@ $ gpg --keyserver keys.openpgp.org --search-keys torbrowser@torproject.org
以上の GnuPG コマンド以外の方法で公開鍵を入手した場合、
公開鍵 `<key-file>` の指紋が正しいことを確認した上で
(上の検証方法のリンクを参照)、
公開鍵を GnuPG の鍵に追加します。
公開鍵を GnuPG の鍵に追加します。
~~~
$ gpg --show-key <key-file>
@ -426,8 +426,8 @@ Tor Browser のユーザインターフェイスでは
→ ガイド:
**Tor § Tor ブリッジ**
--- [Markdown](../ja-md/alice2bob-ja-Tor-1.1.md#Tor-bridges)
\| [HTML](../ja-html/alice2bob-ja-Tor-1.1.html#Tor-bridges)
--- [Markdown](../ja-md/alice2bob-ja-Tor-2.0.md#Tor-bridges)
\| [HTML](../ja-html/alice2bob-ja-Tor-2.0.html#Tor-bridges)
### プロキシとファイアウォール通過の設定 {#configure-advanced-connection}
@ -995,8 +995,8 @@ Tor Browser のプライバシー機能Firefox を変更するパッチ)
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,13 +4,13 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2022-02-28
本ガイドの最終更新: 2022-07-07
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -27,6 +27,14 @@
## English {#English}
**Buggedplanet.info** \
`https://buggedplanet.info` \
*内容: COMINT と SIGINT などに関連する監視技術、
監視対象国・地域など(未検証情報も含む)*
**Bert-Jaap Koops, "Crypto Law Survey"** \
`https://web.archive.org/web/http://www.cryptolaw.org/`
**Osamu Aoki, "Debian Reference"** \
`https://www.debian.org/doc/user-manuals#quick-reference` \
*注:[和文](#Japanese)もあります。*
@ -45,18 +53,21 @@
**Access Now, "A First Look at Digital Security"** \
`https://www.accessnow.org/first-look-at-digital-security/`
**The Hated One** \
`https://invidious.snopyta.org/thehatedone`
**Tactical Technology Collective, "Holistic Security"** \
`https://holistic-security.tacticaltech.org/`
**ARTICLE 19, "How the Internet Really Works," No Starch Press, 2020-12, ISBN 978-1-7185-0029-7** \
`https://catnip.article19.org/`
**Jens Müller et al., "'Johnny, you are fired!' Spoofing OpenPGP and S/MIME Signatures in Emails," 2019-08, Proc. 28th USENIX Security Symposium, ISBN 978-1-939133-06-9** \
`https://www.usenix.org/conference/usenixsecurity19/presentation/muller`
**Marc Meillassoux, Mihaela Gladovic, "Nothing to Hide," 2017** \
`https://videocommons.org/w/6b43a28c-86ee-4681-8ab9-787ac140afc0`
**Northshore Counter Info, "Signal Fails," It's Going Down, 2019-06-03** \
`https://itsgoingdown.org/signal-fails`
**grugq, "Operational PGP"** \
`https://gist.github.com/grugq/03167bed45e774551155` \
*注:聞き手が不明で、実用性が限られているが、
@ -65,6 +76,10 @@ PGP やメールについてのアドバイスが含まれています。*
**Jonathan "Smuggler" Logan, "Operational Security," 2016-04** \
`https://opaque.link/post/opsecguide/`
**Opt Out Podcast** \
`https://optoutpod.com/` \
`http://optoutkoplzfgs7wl3gkg5nmtrrs7ki6ljcguf7c4w7rdsrtozlghxad.onion/`
**Electronic Frontier Foundation, "Privacy Breakdown of Mobile Phones," Surveillance Self-Defense** \
`https://ssd.eff.org/en/playlist/privacy-breakdown-mobile-phones`
@ -76,15 +91,33 @@ PGP やメールについてのアドバイスが含まれています。*
`https://securityinabox.org/` \
`http://lxjacvxrozjlxd7pqced7dyefnbityrwqjosuuaqponlg3v7esifrzad.onion/`
**Tor Project, "Selected Papers in Anonymity"** \
`https://www.freehaven.net/anonbib/` \
`http://7fa6xlti5joarlmkuhjaifa47ukgcwz6tfndgax45ocyn4rixm632jid.onion/anonbib/`
*内容:匿名性に関連する文献*
**Northshore Counter Info, "Signal Fails," It's Going Down, 2019-06-03** \
`https://itsgoingdown.org/signal-fails`
**Surveillance Report** \
`https://surveillancereport.tech`
**Electronic Frontier Foundation, "Surveillance Self-Defense"** \
`https://ssd.eff.org/`
**Techlore** \
`https://invidious.snopyta.org/channel/UCs6KfncB4OV6Vug4o_bzijg` \
*内容:大衆向けプライバシーとデジタルセキュリティガイド*
**Totem Project** \
`https://totem-project.org/`
**Crimethinc, "What Is Security Culture?," 2004-11-01** \
`https://crimethinc.com/2004/11/01/what-is-security-culture`
**Phil Zimmermann, "Why I Wrote PGP," 1991** \
`https://www.philzimmermann.com/EN/essays/WhyIWrotePGP.html`
## 日本語 {#Japanese}
**Udonya (ブログ)** \
@ -334,7 +367,7 @@ RFC 4880 `https://datatracker.ietf.org/doc/html/rfc4880`
`https://internetfreedom.in/`
**JCA-NET JP** \
`https://www.jca.apd.org/jca-net/`
`https://www.jca.apc.org/jca-net/`
**La Quadrature du Net FR** \
`https://www.laquadrature.net/`
@ -349,8 +382,8 @@ RFC 4880 `https://datatracker.ietf.org/doc/html/rfc4880`
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,13 +4,13 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2022-02-28
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -242,8 +242,8 @@ STFU
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

File diff suppressed because it is too large Load Diff

View File

@ -4,13 +4,13 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2021-12-29
本ガイドの最終更新: 2022-08-12
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -37,45 +37,55 @@
# ガイド一覧 {#list}
- **序文** \
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html)
\
(最終更新: 2021-12-29
(最終更新: 2022-08-12
- **デジタルセキュリティの概念** \
--- [Markdown](../ja-md/alice2bob-ja-security-concepts-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-security-concepts-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-security-concepts-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-security-concepts-2.0.html)
\
(最終更新: 2022-02-28
- **セキュリティ計画** \
--- [Markdown](../ja-md/alice2bob-ja-security-plan-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-security-plan-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-2.0.html)
\
(最終更新: 2021-02-02 EFF による最終レビュー
(最終更新: 2021-12-29 (原文更新: 2021-02-02
- **Tor 匿名化ネットワーク** \
--- [Markdown](../ja-md/alice2bob-ja-Tor-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tor-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-2.0.html)
\
(最終更新: 2021-12-29
- **Tor Browser** \
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tor-Browser-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tor-Browser-2.0.html)
\
(最終更新: 2021-12-29
- **Tails を用いた自由かつ匿名コンピューティング** \
--- [Markdown](../ja-md/alice2bob-ja-Tails-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tails-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tails-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tails-2.0.html)
\
(最終更新: 2021-12-29
- **暗号技術入門** \
--- [Markdown](../ja-md/alice2bob-ja-intro-cryptography-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-intro-cryptography-2.0.html)
\
(最終更新: 2022-08-11
- **OpenPGP と GnuPG** \
--- [Markdown](../ja-md/alice2bob-ja-OpenPGP-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-OpenPGP-2.0.html)
\
(最終更新: 2022-08-12
- **用語集** \
--- [Markdown](../ja-md/alice2bob-ja-glossary-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-glossary-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-glossary-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-glossary-2.0.html)
\
(最終更新: 2022-02-28
- **外部資料** \
--- [Markdown](../ja-md/alice2bob-ja-external-resources-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-external-resources-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-external-resources-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-external-resources-2.0.html)
\
(最終更新: 2022-02-28
(最終更新: 2022-07-07
***
@ -83,8 +93,8 @@
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,13 +4,13 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2022-02-28
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -56,8 +56,8 @@
→ ガイド:
**セキュリティ計画**
--- [Markdown](../ja-md/alice2bob-ja-security-plan-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-security-plan-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-2.0.html)
## 最弱点から対策を始める {#weakest-link}
@ -88,6 +88,9 @@
- 森林の中や他の監視されていない場所で打ち合わせ、共同作業、
懇親会などを行う。
→ 外部資料:
`https://itsgoingdown.org/signal-fails`
## 事前対策を徹底する {#proactive}
一件のミスまたは侵害だけで取り返しがつかない被害を受ける恐れがあります。
@ -144,13 +147,13 @@
サービス利用者のセンシティブ情報の売買を習慣的にやります。
また、多くのインターネット会社は
プライバシー意識とセキュリティ対策を欠け、
日常茶飯事かのようにデータ漏洩が発生しています。
日常茶飯事かのようにデータ流出が発生しています。
一方、友達と家族さえセンシティブ情報を
保護してくれることを信用するには要注意です。
インターネット会社と同様、多くの人たちも
プライバシー意識とセキュリティ対策を欠け、
脅迫、強制、詐欺、励みなどに対して脆弱です。
脅迫、強制、詐欺、誘惑などに対して脆弱です。
自分とやりとりする人はその時に暗号化通信を利用するかもしれないが、
恐らく他人と非暗号化のメールや電話をするか
信用しない他人とやりとりすることが多く、
@ -165,7 +168,7 @@
## 全ての情報と通信を効果的な技術で保護する {#protect}
プライバシーポリシーや他人の約束に頼ってはいけないことを示唆しました。
人は脅迫、強制、詐欺、励みなどに応じて
人は強要、詐欺、働きかけなどに応じて
センシティブ情報を明かしてしまいます。
それに加えて、仮に誰も信用しなくても、
法的保護に頼ってはいけません。
@ -210,8 +213,8 @@ Tails では、ユーザが意図的に保存した情報以外の情報が
→ ガイド:
**Tails での自由かつ匿名コンピューティング**
--- [Markdown](../ja-md/alice2bob-ja-Tails-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-Tails-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-Tails-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-Tails-2.0.html)
デジタル情報を簡易削除するだけで完全に消去されず、
記憶装置に残ってしまいます。
@ -346,8 +349,8 @@ FLOSS が市民社会にとってのセキュリティ利益になるために
→ ガイド:
**セキュリティ計画**
--- [Markdown](../ja-md/alice2bob-ja-security-plan-1.1.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-1.1.html)
--- [Markdown](../ja-md/alice2bob-ja-security-plan-2.0.md)
\| [HTML](../ja-html/alice2bob-ja-security-plan-2.0.html)
# 攻撃ベクトルと攻撃対象領域 {#attack-surface}
@ -580,8 +583,8 @@ Replicant が Samsung Galaxy ベースバンドにバックドアを発覚・封
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -4,13 +4,13 @@
アリスとボブ
バージョン: 1.1
バージョン: 2.0
本ガイドの最終更新: 2021-02-02 EFF による最終レビュー
本ガイドの最終更新: 2021-12-29 (原文更新: 2021-02-02
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
***
@ -279,8 +279,8 @@
# アリスとボブ {#back}
ガイド一覧に戻る
--- [Markdown](../ja-md/alice2bob-ja-preface-1.1.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-1.1.html#list)
--- [Markdown](../ja-md/alice2bob-ja-preface-2.0.md#list)
\| [HTML](../ja-html/alice2bob-ja-preface-2.0.html#list)
## 連絡先 {#back-contact}

View File

@ -9,8 +9,8 @@
- [ウェブサイト上](alice2bob.asc)
- [鍵サーバ(クリアネット)](https://keys.openpgp.org/search?q=1D3E313C4DB2B3E08271FC4889BB4CBB9DBE7F6D)
- [鍵サーバ(オニオン)](http://zkaan2xfbuxia2wpf7ofnkbz6r5zdbbvxbunvp5g2iebopbfc4iqmbad.onion/search?q=1D3E313C4DB2B3E08271FC4889BB4CBB9DBE7F6D)
- [SHA256 の PGP 署名](alice2bob-SHA256-1.1.sig)
- [SHA256 チェックサム](alice2bob-SHA256-1.1)
- [SHA256 の PGP 署名](alice2bob-SHA256-2.0.sig)
- [SHA256 チェックサム](alice2bob-SHA256-2.0)
誰でも本シリーズを編集して頒布できることを意識してください。
入手したファイルを開いたり内容を信頼する前に、
@ -56,7 +56,7 @@ $ gpg -k 1D3E313C4DB2B3E08271FC4889BB4CBB9DBE7F6D
SHA256 チェックサムファイルを署名ファイルで検証します。
~~~
$ gpg --verify alice2bob-SHA256-1.1.sig alice2bob-SHA256-1.1
$ gpg --verify alice2bob-SHA256-2.0.sig alice2bob-SHA256-2.0
~~~
`Good signature from "alice2bob"`...
@ -68,7 +68,7 @@ $ gpg --verify alice2bob-SHA256-1.1.sig alice2bob-SHA256-1.1
最後に、入手したファイルを SHA256 チェックサムで検証します。
~~~
$ sha256sum --check --ignore-missing alice2bob-SHA256-1.1
$ sha256sum --check --ignore-missing alice2bob-SHA256-2.0
~~~
`OK` の表示が出たら、ファイルが破損・改竄されていない
@ -79,7 +79,7 @@ SHA256 チェックサムファイル内のファィル名から
ディレクトリを削除する必要があります。
~~~
$ cat alice2bob-SHA256-1.1 \
$ cat alice2bob-SHA256-2.0 \
| sed -e 's/ .*\// /' \
| sha256sum --check --ignore-missing
~~~