編集者注: この記事は、Blockchain Base Camp (ID: blockchain_camp) からのもので、著者: wagslane、翻訳者: Huohuojiang が Odaily Planet Daily の許可を得て転載したものです。 この記事では、ハッシュ関数が使用される理由とその基本的な動作原理を読者が理解できるように、ハッシュ関数について簡単に紹介します。具体的な証明や実装の詳細は省略し、高レベルの原則に焦点を当てます。 ハッシュ関数を使用する理由は何ですか?ハッシュ関数は、主にパスワードの安全な保管、バックアップ レコードの検索、データの高速な保管と取得など、インターネットのさまざまな側面で広く使用されています。たとえば、Qvault はハッシュを使用してマスター パスワードを秘密の暗号化キーに拡張します。 (Qvault: https://qvault.io/) 使用例の一覧については、https://en.wikipedia.or/ を参照してください。 この記事では、ハッシュ関数の最も重要な特性とも言える、いくつかの重要な特性に焦点を当てます。
決定論的にデータをスクランブルするまず、ルービックキューブを想像してください。 リカバリーキューブから始めます。ルービック キューブをランダムに回転させると、最後には、ルービック キューブは最初とはまったく異なる状態になります。同様に、最初からやり直してまったく同じ行動を繰り返すと、まったく同じ結果が継続的に得られます。結果はランダムであるように見えるかもしれませんが、そうではありません。これが「決定論」の意味です。 「決定論」はパスワードを安全に保存する上で重要な役割を果たします。たとえば、私のパスワードが「iLoveBitcoin」だとします。 ハッシュ関数を使用してスクランブルすることができます。 iLoveBitcoin→ “2f5sfsdfs5s1fsfsdf98ss4f84sfs6d5fs2d1fdf15” これで、誰かがこの暗号化されたバージョンを見ても、私の元のパスワードはわかりません。これは非常に重要です。なぜなら、Web サイトの開発者として、ユーザーのパスワードを検証するために、そのハッシュ (スクランブルされたデータ) を保存するだけでよいからです。 ユーザーが登録すると、パスワードをハッシュしてデータベースに保存します。ユーザーがログインすると、入力を再度ハッシュし、2 つのハッシュを比較するだけです。特定の入力は常に同じハッシュ値を出力するため、この方法では毎回パスワードを正常に検証できます。 ウェブサイトがパスワードをプレーンテキストで保存すると、大きなセキュリティホールが生じます。誰かがサイトにハッキングすると、すべてのメールとパスワードにアクセスでき、それらを使用して他のサイトにログインしようとする可能性があります。 入力が何であっても、出力サイズは常に同じです1 つの単語をハッシュすると、出力は特定のサイズ (特定のハッシュ関数 SHA-256 の場合は 256 ビット) になります。本をハッシュすると、出力も同じサイズになります。 これは計算時間を節約できるため、もう 1 つの重要な機能です。典型的な例としては、データ マップ内のキーとしてハッシュを使用することです。データ マップは、コンピューター サイエンスでデータを格納するために使用される単純な構造です。 プログラムがマップ内にデータを保存する場合、マップにはキーと値が提供されます。プログラムが値にアクセスする場合、マップに対して適切なキーを提供し、対応する値を受け取ることができます。データマップの利点は、データをすぐに見つけることができることです。キーは、コンピューターが即座に見つけることができるアドレスとして使用されるので、何百万ものレコードを何時間もかけて検索する必要がなくなります。 アドレスと同様に、キーは大きすぎることはできないためです。データ マップに書籍を保存したい場合は、書籍の内容をハッシュし、そのハッシュ値をキーとして使用できます。プログラマーとして、タイトルや著者などで何千ものレコードを並べ替えることなく、ハッシュを使用して本のコンテンツを簡単に見つけることができます。 どのように機能しますか?これはこの記事の難しい部分です。実際の実装の詳細は省略し、ハッシュを使用してデータを処理するときのコンピューターの動作の基本的な概念に焦点を当てて、シンプルに説明します。 この目的のために私が書いたアルゴリズム、LANEHASH を見てみましょう。 ハッシュしたいデータから始めます 文字と数字を 1 と 0 に変換しました (コンピューター内のすべてのデータは 1 と 0 の形式で保存されており、1 と 0 の異なる組み合わせは異なる文字を表します) この時点で、さまざまな事前設定された手順を通じてデータを変換します。手順は任意ですが、重要なのは、アルゴリズムが決定論的になるように、LANEHASH を使用するたびに同じ手順に従う必要があることです。最初の 4 ビットを左から右にシフトします。 1ビットごとの間隔: これら 2 つの部分を 10 進数に変換します。 10 進数は、私たち全員が学校で学んだ「通常の」数値システムです。 (すべてのバイナリ データは実際には数値です。バイナリを 10 進数に変換する方法は、他の Web サイトで調べることができます) 次の 2 つの数値を掛け合わせます。 次にこの数を二乗します。 数値を 2 進数に戻します。 右側から 9 ビットを切り取ると、ちょうど 16 ビットになります。 次に、そのバイナリ データを英語に戻します。 上記のように、入力が同じであれば、最終的には出力も同じになります。ただし、1 文字でも変更すると、最終結果も大幅に変わります。 |
<<: エバン・インターナショナルの「執着」:エバンは次の「カナン」となるか?
>>: 半減期後、ビットコインのマイニングはどうなるのでしょうか?あなたのための包括的な分析
ビットコイン価格が過去最高値を記録11月は多くの暗号資産の価格が急騰し、暗号資産市場は沸き返った。バ...
暗号通貨市場は段階的な調整の過程にあり、短期的には辛抱強く待つのが最善の戦略です。暗号通貨市場の概要...
9月26日、元米国財務長官で世界銀行のチーフエコノミストのラリー・サマーズ氏は、金曜日のブルームバー...
コインテレグラフによると、サイバーセキュリティ企業デュオ・セキュリティが最近発表した最新の調査による...
2兆ドル以上の価値がある暗号通貨市場と世界的人気の高まりに直面して、英国は前向きなシグナルを発して...
導入仮想商品として、ビットコインの取引プロセスにはレバレッジ取引も導入されており、最大レバレッジは ...
スタンフォード大学はニューヨーク大学とデューク大学に加わり、ビットコインに関するコースを提供する予...
分散型金融(DeFi)の急速な成長は、分散型ネットワークが投資の世界に影響を与える力を持っていること...
2016年7月12日、雲翔ブロックチェーンは杭州林潮資産管理有限公司から300万人民元のエンジェルラ...
リスト | 2021年フォーブスの「30歳未満の30人エリートリスト」にブロックチェーン業界関係者1...
「メタバースで高級車を無料で手に入れました。自動車会社は損をしましたが、私は儲かりました!」 「実...
OKEx Chain Masterのデータによると、イーサリアムガスの平均価格は一時7228.54グ...
4月8日午後、光大証券の最高リスク管理責任者である王勇博士の招待により、BitSEのCTOである帥...
現在、BRC 20 は非常に人気があり、BSV という言葉が再び注目を集めています。今年2月中旬に、...
中央銀行は1月6日にビットコイン取引プラットフォームの主要責任者と会談した後、昨日ビットコイン取引プ...