root/doc/install_html/Verify.html

/* [<][>][^][v][top][bottom][index][help] */
<!DOCTYPE html>
<html>
<!-- Created by GNU Texinfo 7.3, https://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- Copyright © 2010-2026 j8takagi -->
<title>Verify (YACASL2のインストール)</title>

<meta name="description" content="Verify (YACASL2のインストール)">
<meta name="keywords" content="Verify (YACASL2のインストール)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta name="viewport" content="width=device-width,initial-scale=1">

<link href="index.html" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="install.html" rel="up" title="install">
<link href="Expand.html" rel="next" title="Expand">
<link href="Download.html" rel="prev" title="Download">
<style type="text/css">
a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
div.example {margin-left: 3.2em}
kbd.kbd {font-style: oblique}
span:hover a.copiable-link {visibility: visible}
</style>
<link rel="stylesheet" type="text/css" href="style.css">


</head>

<body>
<div class="section-level-extent" id="Verify">
<p class="nav-panel">
<span class="nav-button"><span class="nav-label">Next: </span><span class="nav-link"><a href="Expand.html" accesskey="n" rel="next">YACASL2ファイルの展開</a></span></span>, <span class="nav-button"><span class="nav-label">Previous: </span><span class="nav-link"><a href="Download.html" accesskey="p" rel="prev">YACASL2ファイルのダウンロード</a></span></span>, <span class="nav-button"><span class="nav-label">Up: </span><span class="nav-link"><a href="install.html" accesskey="u" rel="up">インストールの手順</a></span></span><span class="nav-button"> &nbsp; </span><span class="nav-button">[<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</span></p>
<hr>
<h3 class="section" id="YACASL2_30d5_30a1_30a4_30eb_306e_691c_8a3c"><span>2.2 YACASL2ファイルの検証<a class="copiable-link" href="#YACASL2_30d5_30a1_30a4_30eb_306e_691c_8a3c"> &para;</a></span></h3>

<p>ダウンロードが完了したら、圧縮ファイルが改竄されていないか検証します。検証には、GnuPG分離署名か、MD5ハッシュ値を使います。
</p>
<ul class="mini-toc">
<li><a href="#GnuPG_5206_96e2_7f72_540d_3067_306e_691c_8a3c" accesskey="1">GnuPG分離署名での検証</a></li>
<li><a href="#MD5_30cf_30c3_30b7_30e5_5024_3067_306e_691c_8a3c" accesskey="2">MD5ハッシュ値での検証</a></li>
</ul>
<div class="subsection-level-extent" id="GnuPG_5206_96e2_7f72_540d_3067_306e_691c_8a3c">
<h4 class="subsection"><span>2.2.1 GnuPG分離署名での検証<a class="copiable-link" href="#GnuPG_5206_96e2_7f72_540d_3067_306e_691c_8a3c"> &para;</a></span></h4>

<p>GnuPGの<code class="command">gpg</code>で圧縮ファイルを検証します。この検証を行うには、GnuPGがインストールされ、自分用の秘密鍵が作成されている必要があります。
また、あらかじめ<samp class="file">tar.gz</samp>または<samp class="file">tar.xz</samp>ファイルと、対応する検証用ファイル<samp class="file">tar.gz.asc</samp>または<samp class="file">tar.xz.asc</samp>ファイルを同じディレクトリーに保存し、そのディレクトリーに移動しておきます。
</p>
<p>次の手順では<code class="command">gpg --verify</code>による検証を2回実行させています。1回目では検証に失敗する一方で、必要な鍵などの情報を得ています。その鍵を<code class="command">gpg --recv-keys</code>で取得し、<code class="command">gpg --lsign-key</code>でローカル署名した後、再度<code class="command">gpg --verify</code>による検証を行い、成功させています。
</p>
<div class="example">
<pre class="example-preformatted">$ <kbd class="kbd">ls yacasl2.tar.gz*</kbd>
yacasl2.tar.gz  yacasl2.tar.gz.asc
$ <kbd class="kbd">gpg --verify yacasl2.tar.xz.asc</kbd>
gpg: assuming signed data in 'yacasl2.tar.gz'
gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
gpg: Can't check signature: No public key
$ <kbd class="kbd">gpg --recv-keys 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5</kbd>
gpg: key 7F593ED86D88E1D5: public key &quot;j8takagi &lt;j8takagi@nifty.com&gt;&quot; imported
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: next trustdb check due at 2029-06-01
gpg: Total number processed: 1
gpg:               imported: 1
$ <kbd class="kbd">gpg --lsign-key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5</kbd>

pub  ed25519/7F593ED86D88E1D5
     created: 2026-04-23  expires: 2031-04-30  usage: SC  
     trust: unknown       validity: unknown
sub  cv25519/B3433115DBD37726
     created: 2026-04-23  expires: never       usage: E   
[ unknown] (1). j8takagi &lt;j8takagi@nifty.com&gt;


pub  ed25519/7F593ED86D88E1D5
     created: 2026-04-23  expires: 2031-04-30  usage: SC  
     trust: unknown       validity: unknown
 Primary key fingerprint: 77EC 282A 2F73 17EB FF7B  FD06 7F59 3ED8 6D88 E1D5

     j8takagi &lt;j8takagi@nifty.com&gt;

This key is due to expire on 2031-04-30.
Are you sure that you want to sign this key with your
key &quot;j8takagi &lt;j8takagi@nifty.com&gt;&quot; (4223493EBCB683A9)

The signature will be marked as non-exportable.

Really sign? (y/N) <kbd class="kbd">y</kbd>

$ <kbd class="kbd">gpg --verify yacasl2.tar.gz.asc</kbd>
gpg: assuming signed data in 'yacasl2.tar.gz'
gpg: Signature made Tue 02 Jun 2026 01:14:17 AM JST
gpg:                using EDDSA key 77EC282A2F7317EBFF7BFD067F593ED86D88E1D5
gpg: checking the trustdb
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:   1  signed:   0  trust: 1-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2029-06-01
gpg: Good signature from &quot;j8takagi &lt;j8takagi@nifty.com&gt;&quot; [full]
gpg: Signature notation: manu=2,2.5+1.12,0,3
</pre></div>

</div>
<div class="subsection-level-extent" id="MD5_30cf_30c3_30b7_30e5_5024_3067_306e_691c_8a3c">
<h4 class="subsection"><span>2.2.2 MD5ハッシュ値での検証<a class="copiable-link" href="#MD5_30cf_30c3_30b7_30e5_5024_3067_306e_691c_8a3c"> &para;</a></span></h4>

<p><code class="command">openssl</code>で圧縮ファイルから生成したMD5ハッシュ値が、ダウンロードした<samp class="file">yacasl2.tar.gz.md5sum</samp>ファイルの内容と同じかどうか<code class="command">diff</code>で検証します。
</p>
<div class="example">
<pre class="example-preformatted">$ <kbd class="kbd">openssl md5 yacasl2.tar.gz | diff -s yacasl2.tar.gz.md5sum -</kbd>
Files yacasl2.tar.gz.md5sum and - are identical
</pre></div>

</div>
</div>
<hr>
<p class="nav-panel">
<span class="nav-button"><span class="nav-label">Next: </span><span class="nav-link"><a href="Expand.html">YACASL2ファイルの展開</a></span></span>, <span class="nav-button"><span class="nav-label">Previous: </span><span class="nav-link"><a href="Download.html">YACASL2ファイルのダウンロード</a></span></span>, <span class="nav-button"><span class="nav-label">Up: </span><span class="nav-link"><a href="install.html">インストールの手順</a></span></span><span class="nav-button"> &nbsp; </span><span class="nav-button">[<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</span></p>



</body>
</html>

/* [<][>][^][v][top][bottom][index][help] */