チェックサムとは?暗号技術の基礎

暗号チェックサム、その使用法、そしてそれらがどのようにあなたの安全を守るかについての紹介。

Cryptography Basics: What is a checksum?

夜の街に繰り出そうものならIDが必要かもしれないが(少なくとも若く見えるなら)、ソフトウェアのダウンロードに関しては、検証は少し違う。暗号化チェックサムを検証することで、ダウンロードしたものが開発元からあなたに届くまでに改ざんされていないことを信頼することができる。さっそく試してみよう!


チェックサムとは?

チェックサムとは、チェックサムハッシュ関数によってファイルやプログラムから導き出される文字と数字のデータ列のことで、ダウンロードしたデータが元のソースデータと同一であることを確認するために使用されます。ローカル・マシンにダウンロードするファイルやプログラムの完全性を確認することは、データを採取するマルウェアを含む偽のプログラムが共有されないようにするために、非常に重要なセキュリティ対策です。

可能な限り、ダウンロードしたファイルやアプリケーションのチェックサムを確認することが常にベストプラクティスであることを忘れないでください。

チェックサム機能の重要な特徴は、元のファイルに何らかの変更が加えられた場合、異なるチェックサムなど、異なる出力が得られるということです。この重要な機能がなければ、悪意のある行為者が中間者攻撃やサプライチェーン攻撃によってデータに変更を加えることができ、ユーザーは何も知ることができない。

チェックサムはまた、データの変更が新しいキーにつながるだけでなく、2つの異なるデータ・ソースが一致するチェックサムを作成する可能性を避けなければならない。このような事象は衝突として知られており、暗号ハッシュ関数の強さは衝突耐性に依存している。

チェックサムはデータの完全性を保証するものであり、真正性を保証するものではない。

チェックサムは主にデータの完全性を検証するために使用される。完全性とは、データがデジタル的に同一のフォーマットであなたのマシンに転送されたことを意味します。つまり、ファイルであれ実行プログラムであれ、コンテンツ作成者が意図したとおりにデータを受け取っているということです。注意点としては、チェックサムは受け取ったデータが100%同一であることを検証するだけで、ソース自体が本物であることを検証するものではないということです。これは、デジタル署名を導入することで実現できる情報セキュリティのもう一つの側面です。

なぜデータの完全性が重要なのか?

データの完全性は、IT運用のあらゆるレベルで最も重要です。企業のデータ・ストレージから、緊急サービス、公共部門サービス、最後の休暇の食べ物の写真まで。データの破損は、データの完全性の正反対であり、プログラムエラーや重要な情報の消失につながります。チェックサムを管理することで、コピー、ダウンロード、共有するデータが同一であることを確認することができます。

データを信頼できなければ、その利用価値は大きく下がります。チェックサムを活用することで、新しいプログラムで遭遇する可能性のあるエラーが、最初のダウンロード時にうまくいかなかったことが原因ではなく、別の原因があることを確認することができます。これは、時間とお金の両方を節約することができます。データのバックアップを維持している場合、これらのバックアップのチェックサムを作成し、監視することは、保存されているすべてのデータの状態を監視する素晴らしい方法です。何も変更を加えなくても、違いに気づけば、何か問題が起きていることを警告することができます。

チェックサムが一致しない原因は?

チェックサムが一致しない原因には、ありふれたものから悪意のあるものまで、さまざまな問題があります。インターネット接続の中断やストレージスペースの問題は、データの欠落の原因となることがあり、その結果、チェックサムが元のコースから提供されたものと一致しなくなります。いったん解決されると、新しいダウンロードは通常正しい値を返します。

しかし、警戒すべき悪質なケースもあります。チェックサムの不一致は、第三者がオリジナルのソースデータに変更を加えたことを示す可能性もあります。これは些細なことかもしれないが、ダウンロードにマルウェアが含まれている可能性を示す兆候かもしれない。問題のプログラムがパスワードや暗号通貨の保管のような機密データに使用される場合、これはさらに問題となる。リパッケージされた悪意のあるパスワード「マネージャー」は、あなたのデータを悪用される可能性のある第三者に直接送信することができます。偽者の暗号通貨ウォレットの場合、チェックサムの不一致が原因でデジタル資産が完全に失われる可能性があります。

チェックサムの生成に使用されるアルゴリズムの例。

チェックサムの生成にどのハッシュ・アルゴリズムが使用されているかにかかわらず、それらはすべて一方向性関数であるという点で共通している。チェックサム関数によって生成された値は、元のファイルを「再現」するために使用することはできません。これは暗号化ではないし、復号化されるものもないので、暗号文を扱っているわけではない

A visualization of the cksum utility when used to create a checksum 単語やフレーズからチェックサムを作成するために使用されるcksumユーティリティを視覚化したもの。

これらのアルゴリズムには見覚えのあるものもあるだろうし、この暗号の基礎シリーズの以前のエントリーでもいくつか取り上げたことがある。

MD5

パスワードのハッシュ化と同様、MD5は衝突を引き起こす可能性があり、悪意のある行為者があなたがダウンロードしようとしているソフトウェアの偽バージョンを作成する可能性があり、チェックサムはこれらの変更に対するアラームを発することができないため、もはや使用すべきではありません。

SHA-1

このハッシュ関数は2005年以来安全とはみなされておらず、NISTは2030年までに完全に廃止するよう呼びかけている。2017年、GoogleはCentrum Wiskunde & Informaticaの暗号グループとともに、同じSHA-1フィンガープリントを持つ2つの異なるPDFを作成することができた。

SHA256

チェックサムハッシュの現在の標準はSHA256(または新しいファンのためのSHA-3)です。SHA256は、Tutaデスクトップクライアントをダウンロードするたびにデータの整合性をチェックできるように、私たちが使用しているチェックサム関数でもあります。

A screenshot of the latest release of the Tuta Desktop Client checksums. Tutaデスクトップクライアントバージョン244.240913.1のチェックサムの例

Tuta デスクトップクライアントのチェックサムを確認する方法。

ダウンロードのチェックサムを確認することは、技術的な知識があまりない人にとっては大変な作業に見えるかもしれませんが、すぐに習得できるスキルであり、将来的に多くの頭痛の種を避けることができます。

Tutaデスクトップクライアントの新しいリリースごとに、チェックサムをGithubで公開しています。最初のステップは、私たちのホームページにアクセスし、あなたのオペレーティング・システムに合ったデスクトップ・クライアントをダウンロードすることです。どうぞ。

素晴らしい!戻ってきました!今お使いのOSにスキップして、いくつかの簡単なステップでダウンロードしたファイルのチェックサムを確認することができます。簡単のため、ダウンロードしたファイルをダウンロードフォルダに保存しているという前提で説明します。

ウィンドウズ

Windowsでは、スタートメニューからコマンドプロンプトを開くか、「ファイル名を指定して 実行」ダイアログウィンドウでcmdを 実行してください。コマンドプロンプトを開いたら、次のように入力します:

  1. cd ダウンロード

  2. certutil -hashfile tutanota-desktop-win.exe SHA256

この出力は、GitHubで提供しているチェックサムと比較することができます。

How to verify the Tuta desktop client checksum on Windows Windows上でダウンロードしたTutaデスクトップクライアントのチェックサムを見るためのコマンドプロンプトの手順。

Windowsクライアントはこちらからダウンロードできます。

Mac

Macでは、Launchpadからターミナル・ウィンドウを開くことができます。開いたら以下を入力してください:

  1. cd ダウンロード

  2. shasum -a 256 ~/Downloads/tutanota-desktop-mac.dmg

この出力は、GitHubで提供されているチェックサムと比較することができます。

How to verify the Tuta desktop client checksum on MacOS macOS上でチェックサムを確認するためのターミナルコマンド。

Macクライアントはこちらからダウンロードできる。

Linux

最後になりましたが、無料のLinuxデスクトップクライアントのチェックサムを確認するには、ターミナルを開いて次のように入力します:

  1. cd ダウンロード

  2. sha256sum tutanota-desktop-linux.AppImage

この出力をTutaの開発チームが提供するチェックサムと比較することで、ダウンロードの完全性を確認できる。

How to verify the Tuta desktop client checksum on Linux Linuxマシンでチェックサムを確認するためのターミナルコマンド。

Linuxクライアントはこちらからダウンロードできる。

この新しいセキュリティー・トリックを袖にすれば、ウェブで安全に過ごす旅を続けることができる。チェックサムの検証をデジタル・ハイジーンに取り入れ、パスワード・マネージャーを使うことで、サイバー脅威から身を守ることができる。

電子メールはあなたのデジタルライフのハブであるため、電子メールアカウントのセキュリティを向上させたいとお考えなら、Tuta Mailをチェックアウトすることをお勧めします。デフォルトのエンドツーエンドの暗号化により、Tuta Mailはプライバシーとセキュリティをシンプルにします。今すぐ無料メールアカウントを作成し、すべてのプラットフォーム用の無料専用メールクライアントでご利用ください。

チェックサムの検証もお忘れなく! 😉。