ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
無料
ブラウザよりも高速アクセス!
 

ハッシュ木

索引 ハッシュ木

暗号理論および計算機科学において、ハッシュ木(Hash tree, ハッシュツリー)またはマークル木(Merkle tree)とは、より大きなデータ(例えばファイル)の要約結果を格納する木構造の一種であり、データの検証を行う際に使用される。このデータ構造はハッシュリストとハッシュチェインの組み合わせでできており、ハッシュ法の延長上にある手法といえる。特に、ハッシュ関数にTigerを使用したものはTiger TreeまたはTiger Treeハッシュとも呼ばれる。.

30 関係: Apache Cassandra巡回冗長検査二分木チェックサムハッシュテーブルハッシュ関数ラルフ・マークルランポート署名ビットコインファイル共有サン・マイクロシステムズBearShare計算機科学量子コンピュータGitGnutellaGoogle WaveLimeWireNoSQLPeer to PeerRiakRSAセキュリティSHA-1ShareazaWhirlpool (ハッシュ関数)ZFS暗号学的ハッシュ関数暗号理論木構造 (データ構造)文字列結合

Apache Cassandra

Apache Cassandra(アパッチ カサンドラ)は、オープンソースの分散データベース管理システムである。元はFacebook社において大規模データの格納のために開発されたものである。Facebookのデータチームを率いるJeff HammerbacherはCassandraをAmazon DynamoDBのようなインフラストラクチャ上で動作するBigTableデータモデルであると表現している。.

新しい!!: ハッシュ木とApache Cassandra · 続きを見る »

巡回冗長検査

巡回冗長検査(じゅんかいじょうちょうけんさ、Cyclic Redundancy Check, CRC)は、誤り検出符号の一種で、主にデータ転送などに伴う偶発的な誤りの検出によく使われている。送信側は定められた生成多項式で除算した余りを検査データとして付加して送信し、受信側で同じ生成多項式を使用してデータを除算し、その余りを比較照合することによって受信データの誤り・破損を検出する。 デジタル回路で簡単に実装でき、数学的にも分析が容易であり、また、ビットのランダム誤りやバースト誤りを検出できるので、HDLC手順やCSMA/CD方式などにおいて誤りチェック・伝送路ノイズチェックによく使われている。パリティや単純な加算によるチェックサムに比べ検出精度が高く、その点では高級なチェックサムと言える。単純なチェックサムと同じく、データの改竄に対する耐性はない。 W. Wesley Peterson が発明し、1961年に論文として発表した。CRC-32と一般に呼ばれているIEEE 802.3のCRCは1975年に定められ、イーサネットなどの各種通信やZIPやPNGなど各所に使われている。.

新しい!!: ハッシュ木と巡回冗長検査 · 続きを見る »

二分木

二分木(binary tree; 二進木、バイナリツリー)は、データ構造の1つである。根付き木構造の中で、あるノード(節点 node)が持つ子の数が高々2であるものをいう。典型的には2つの子はそれぞれ「左」「右」と呼ばれる。 たとえば、二分探索や二分ヒープを実装するために使われる。 簡単な二分木。大きさ9、深さ3、根は値2を持つ 以後、括弧の中は英語表記。.

新しい!!: ハッシュ木と二分木 · 続きを見る »

チェックサム

チェックサム (Check Sum)とは誤り検出符号の一種である。符号値そのものを指すこともある。他の誤り検出符号と比べて信頼性は低いが、それでも単純計算で99.5%以上(1オクテットのチェックサムの場合255/256、2オクテットなら65535/65536)の検出率がある上にアルゴリズムが簡単であることから、簡易な誤り検出に用いられる。 また、誤り検出その他データの検証のための符号として広く使われてきた経緯から、俗に誤り検出符号自体の代名詞としても用いられる場合がある。例えばCRCの符号値やMD5のハッシュ値を、それぞれ「CRCチェックサム」「MD5チェックサム」と呼ぶことがある。これらはアルゴリズムが異なりsumでもないため「チェックサム」と呼ぶことは、語義的には正確ではないものの、「(チェックサムよりも)信頼性の高い誤り検出符号」程度の意味で使われる。.

新しい!!: ハッシュ木とチェックサム · 続きを見る »

ハッシュテーブル

ハッシュテーブルの例(名前をキーとして電話番号を検索) ハッシュテーブル (hash table) は、キーと値の組(エントリと呼ぶ)を複数個格納し、キーに対応する値をすばやく参照するためのデータ構造。ハッシュ表ともいう。ハッシュテーブルは連想配列や集合の効率的な実装のうち1つである。.

新しい!!: ハッシュ木とハッシュテーブル · 続きを見る »

ハッシュ関数

ハッシュ関数で名前と0から15までの整数をマッピングしている。"John Smith" と "Sandra Dee" のハッシュ値が衝突している点に注意。 ハッシュ関数 (ハッシュかんすう、hash function) あるいは要約関数とは、あるデータが与えられた場合にそのデータを代表する数値を得る操作、または、その様な数値を得るための関数のこと。ハッシュ関数から得られた数値のことを要約値やハッシュ値または単にハッシュという。 ハッシュ関数は主に検索の高速化やデータ比較処理の高速化、さらには改竄の検出に使われる。例えば、データベース内の項目を探したり、大きなファイル内で重複しているレコードや似ているレコードを検出したり、核酸の並びから類似する配列を探したりといった場合に利用できる。 ハッシュ関数の入力を「キー (key)」と呼ぶ。ハッシュ関数は2つ以上のキーに同じハッシュ値をマッピングすることがある。多くの場合、このような衝突の発生は最小限に抑えるのが望ましい。したがって、ハッシュ関数はキーとハッシュ値をマッピングする際に可能な限り一様になるようにしなければならない。用途によっては、他の特性も要求されることがある。ハッシュ関数の考え方は1950年代に遡るが、ハッシュ関数の設計の改善は今でも盛んに研究されている。 ハッシュ関数は、チェックサム、チェックディジット、フィンガープリント、誤り訂正符号、暗号学的ハッシュ関数などと関係がある。これらの概念は一部はオーバーラップしているが、それぞれ用途が異なり、異なった形で設計・最適化されている。 またプログラミング言語の一部(Perl、Ruby等、主に高等言語とされる一般的なプログラミング言語の多く)においては、連想配列のことを伝統的にハッシュと呼ぶが、これは連想配列そのもののプログラムの内部的実装に拠るものであり、ハッシュ関数そのものとは全く異なる。連想配列はハッシュ関数の応用例の一つのハッシュテーブルの実用例である。.

新しい!!: ハッシュ木とハッシュ関数 · 続きを見る »

ラルフ・マークル

ラルフ・C・マークル(英: Ralph C. Merkle、1952年2月2日 - )は、公開鍵暗号の開発者の一人であり、最近では分子ナノテクノロジーと人体冷凍保存の研究者として知られている。SF小説『ダイヤモンド・エイジ』では、ナノテクノロジーが遍在する世界における伝説的英雄の1人となって言及されている。.

新しい!!: ハッシュ木とラルフ・マークル · 続きを見る »

ランポート署名

ランポート署名(ランポートしょめい、Lamport signature)とは、デジタル署名を構築するための手法である。一般的に、ランポート署名は、暗号学的ハッシュ関数を用いて実装される。 将来的に量子コンピュータの登場でRSAのような多くの暗号化形式が脅威にさらされる中でも、大規模なハッシュ関数を用いたランポート署名は安全性を担保できると考えられている。 1つのランポート鍵は1つのメッセージの署名にしか利用できないという制約がある。だが、ハッシュ木を利用することで、1つのランポート鍵で、複数のメッセージの署名をすることが可能である。 Category:暗号 Category:暗号技術.

新しい!!: ハッシュ木とランポート署名 · 続きを見る »

ビットコイン

Windows用クライアント ビットコイン()は、公共トランザクションログを利用しているオープンソースプロトコルに基づくPeer to Peer型の決済網および暗号通貨である。.

新しい!!: ハッシュ木とビットコイン · 続きを見る »

ファイル共有

ファイル共有(ファイルきょうゆう)は、コンピュータネットワーク内で、あるコンピュータ内のファイルに、他のネットワーク接続されたコンピュータからのアクセスをさせる仕組み。.

新しい!!: ハッシュ木とファイル共有 · 続きを見る »

サン・マイクロシステムズ

ン・マイクロシステムズ本社 サン・マイクロシステムズ(Sun Microsystems)は、アメリカ合衆国カリフォルニア州サンタクララに本社を置いていたコンピュータの製造・ソフトウェア開発・ITサービス企業である。2010年1月27日にオラクルにより吸収合併され、独立企業・法人としては消滅した。.

新しい!!: ハッシュ木とサン・マイクロシステムズ · 続きを見る »

BearShare

BearShare(ベアシェア)は、P2Pを用いたファイル共有ソフト。 世界で広く利用されたソフトウェアで、Gnutellaの後継ソフトを知り、Gnutellaネットワークユーザーのファイルを共有することが可能。WinMXと良く似た性質も持っている。.

新しい!!: ハッシュ木とBearShare · 続きを見る »

計算機科学

計算機科学(けいさんきかがく、computer science、コンピュータ科学)とは、情報と計算の理論的基礎、及びそのコンピュータ上への実装と応用に関する研究分野である。計算機科学には様々な下位領域がある。コンピュータグラフィックスのように特定の処理に集中する領域もあれば、計算理論のように数学的な理論に関する領域もある。またある領域は計算の実装を試みることに集中している。例えば、プログラミング言語理論は計算を記述する手法に関する学問領域であり、プログラミングは特定のプログラミング言語を使って問題を解決する領域である。.

新しい!!: ハッシュ木と計算機科学 · 続きを見る »

量子コンピュータ

量子コンピュータ (りょうしコンピュータ、英語:quantum computer) は、量子力学的な重ね合わせを用いて並列性を実現するとされるコンピュータ。従来のコンピュータの論理ゲートに代えて、「量子ゲート」を用いて量子計算を行う原理のものについて研究がさかんであるが、他の方式についても研究・開発は行われている。 いわゆる電子式など従来の一般的なコンピュータ(以下「古典コンピュータ」)の素子は、情報について、「0か1」などなんらかの2値をあらわすいずれかの状態しか持ち得ない「ビット」で扱う。量子コンピュータは「量子ビット」 (qubit; quantum bit、キュービット) により、重ね合わせ状態によって情報を扱う。 n量子ビットがあれば、2^nの状態を同時に計算できる。もし、数千qubitのハードウェアが実現した場合、この量子ビットを複数利用して、量子コンピュータは古典コンピュータでは実現し得ない規模の並列コンピューティングが実現する。2^以下)で数千年かかっても解けないような計算でも、例えば数十秒といった短い時間でこなすことができる、とされている。--> 量子コンピュータの能力については、計算理論上の議論と、実際に実現されつつある現実の機械についての議論がある。#計算能力の節を参照。.

新しい!!: ハッシュ木と量子コンピュータ · 続きを見る »

Git

Git(ギット)は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。Linuxカーネルのソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されている。Linuxカーネルのような巨大プロジェクトにも対応できるように、動作速度に重点が置かれている。現在のメンテナンスは濱野純 (Junio C Hamano) が担当している。 Gitでは、各ユーザのワーキングディレクトリに、全履歴を含んだリポジトリの完全な複製が作られる。したがって、ネットワークにアクセスできないなどの理由で中心リポジトリにアクセスできない環境でも、履歴の調査や変更の記録といったほとんどの作業を行うことができる。これが「分散型」と呼ばれる理由である。.

新しい!!: ハッシュ木とGit · 続きを見る »

Gnutella

Gnutella(グヌーテラ、ニューテラ)はP2Pプロトコルおよびファイル共有クライアント。.

新しい!!: ハッシュ木とGnutella · 続きを見る »

Google Wave

Google Waveは、米グーグルが2009年5月28日にGoogle I/O 2009で発表した、新しいコミュニケーション及びコラボレーションツール。Google Waveはウェブベースで行われ、リアルタイムに共同して編集等ができるものであり、電子メールやウィキ、SNSが一体となったサービスとなっている。 始めに開発者向けにリリースが行われ、2009年9月にはプレビューリリースとして10万人のユーザーを加えた。2010年5月にはサービスを一般公開したが利用者が増えず、同年8月4日に開発中止を表明。サービス自体は2012年4月末まで継続された。.

新しい!!: ハッシュ木とGoogle Wave · 続きを見る »

LimeWire

LimeWire (ライムワイア、ライムワイヤ)は、かつてGNU General Public License下で公開されていたフリーソフトウェア及びオープンソースのGnutella P2Pクライアント・ソフトウェアである。米連邦地方裁判所の命令を受けて2010年10月にソフトウェアの配布を停止。.

新しい!!: ハッシュ木とLimeWire · 続きを見る »

NoSQL

NoSQL(一般に "Not only SQL" と解釈される)とは、関係データベース管理システム (RDBMS) 以外のデータベース管理システムを指すおおまかな分類語である。関係データベースを杓子定規に適用してきた長い歴史を打破し、それ以外の構造のデータベースの利用・発展を促進させようとする運動の標語としての意味合いを持つ。関係モデルではないデータストアの特徴として、固定されたスキーマに縛られないこと、関係モデルの結合操作を利用しないこと(場合によっては単にそのような機能が欠落しているだけ)、水平スケーラビリティが確保しやすい事が多いこと、トランザクションを利用できないものが多いことなどが挙げられる。学術的な世界では、この種のデータベースのことを構造型ストレージ (structured storage) と呼ぶことが多い。 NoSQL系データベース管理システムは、データの格納および取得が高度に最適化されているものが多い。その最適化のために機能性を最小限にしているものもある。その最たる例が、「値」およびそれを取得するための「キー」だけを格納できるKey-Value型データベースである。NoSQL系データベースは、関係データベースのような汎用性は欠くものの、その制約された条件下ではRDBMSより高いパフォーマンスを持つ。そのためビッグデータ系ソリューションでしばしば活用される。 NoSQL系データベース管理システムが有用な場面は、関係モデルを必要としないデータを扱う時や、大量のデータを扱う時である。用途は多様であり、数百万のkey-valueペアを格納したり、数10個程度の連想配列を格納したり、数百万の構造的データを格納したりと、様々に使われる。この構造は、大規模なデータを統計的に解析したり、増えつづける情報をリアルタイムに解析するのにも便利である。 産業界での有名な実装として、GoogleのBigTable、アマゾンのAmazon DynamoDBなどがある。オープンソースの実装も数多く存在し、例えばMongoDB、Redis、Apache HBase、HyperTable, Apache Cassandraなどがある。.

新しい!!: ハッシュ木とNoSQL · 続きを見る »

Peer to Peer

P2P型ネットワーク(図はピュアP2P型)。コンピューター同士が対等に通信を行うのが特徴である。 Peer to Peer(ピア・トゥ・ピア または ピア・ツー・ピア)とは、複数の端末間で通信を行う際のアーキテクチャのひとつで、対等の者(Peer、ピア)同士が通信をすることを特徴とする通信方式、通信モデル、あるいは通信技術の一分野を指す。P2Pと略記することが多く、以下本記事においてもP2Pとする。.

新しい!!: ハッシュ木とPeer to Peer · 続きを見る »

Riak

Riak は Amazon Dynamo の論文, SOSP 2007に基づいて実装されているNoSQLデータベース。読み方は「リアック」。 Riakはバックエンドとなるシャードパーティションストレージが差し替え可能な構成であり、デフォルトのバックエンドストレージは Bitcask である。またMapReduce機構を持ちネイティブで JavaScript(SpiderMonkey ランタイム)と Erlang、言語ドライバの追加で Python、Java、PHP、Rubyのような様々なプログラミング言語をサポートしている。 2012年2月21日、BashoはRiak v1.1をアナウンス。Riak 1.1ではRiaknostic、エラーのロギングとレポートの強化、大規模クラスタに対する弾性の改善、Riak Controlと呼ばれる新しいGUIとモニタリングインタフェースが導入された。 2012年3月27日、BashoはRiak CS (Cloud Storage) をリリース。Riak CSはRiak上でのマルチテナンシー、パフォーマンス計測、LOBのサポート、S3互換APIを提供。 Bashoは2013年2月21日にRiak 1.3の一般的な有用性をアナウンス。 Riak はフォーチュン50カンパニーのうち25%以上を含む世界中の数千社で導入されている。採用企業にはシマンテック、Best Buy、Workday、Yahoo! JAPAN、Voxer、Braintree、Bump、Boeing、Comcast、AOL、Ask.com、Yammer、Yandex、AT&T、Datapipeなどがある。 2017年7月、主要開発元であるBashoが全オフィスを閉鎖し、事実上業務を停止していることが明らかになった - The Register・2017年7月13日。Riak自体はオープンソースソフトウェアであり、今後もコミュニティベースでの開発は続けられる見込みだが、今後のサポート等に対する不安も浮上している。同年8月下旬に、イギリスの大手ブックメーカーであるBet365がRiakのコードベース及び商標権に関する権利を買収した。.

新しい!!: ハッシュ木とRiak · 続きを見る »

RSAセキュリティ

RSAセキュリティ(RSA Security LLC)は、アメリカ合衆国のコンピュータセキュリティおよびネットワークセキュリティに関するソフトウェアの開発会社である。通常はRSAの商号を使用している。 RSAは、共同設立者であるロナルド・リベスト(Ron Rivest)、アディ・シャミア(Adi Shamir)、レオナルド・エーデルマン(Len Adleman)の頭文字をとって命名されたもので、彼らが開発したRSA暗号と同様である。 RSAの製品には、RSA BSAFE暗号化ライブラリやSecurID認証トークンなどがある。RSAは、アメリカ国家安全保障局(NSA)が開発したバックドアを製品に組み込んでいるとされている。情報セキュリティに関するカンファレンスであるRSA Conferenceを毎年開催している。 RSAセキュリティは、1982年に独立企業として設立された。2006年にEMCコーポレーションに21億ドルで買収され、EMC内で事業部として運営された。EMCは2016年にに買収され、RSAはDell EMCインフラストラクチャソリューショングループの子会社となった。 RSAはマサチューセッツ州を拠点とし、(イギリス)とシンガポールに地域本部を、他に多数の国際事務所を置いている。.

新しい!!: ハッシュ木とRSAセキュリティ · 続きを見る »

SHA-1

SHA-1(シャーワン)は、Secure Hash Algorithmシリーズの暗号学的ハッシュ関数で、SHAの最初のバージョンであるSHA-0の弱点を修正したものである。National Security Agency(NSA)によって設計され、National Institute of Standards and Technology(NIST)によってFederal Information Processing Standard(FIPS) PUB 180-4として標準化されている。.

新しい!!: ハッシュ木とSHA-1 · 続きを見る »

Shareaza

Shareaza(シェアーザ)はGnutella2をメインとしたP2Pソフトウェアだが、オリジナルのGnutella、eDonkey2000ネットワークに接続することができる。また、BitTorrentにも対応している。また、Unicode仕様のため日本語を扱うことが出来る。 2004年6月1日のバージョン2.xからはライセンスのGPLに則ってオープンソースになった。.

新しい!!: ハッシュ木とShareaza · 続きを見る »

Whirlpool (ハッシュ関数)

Whirlpool(すべて大文字でWHIRLPOOLと綴られることもある)は、暗号学的ハッシュ関数の一つである。AESに採用されたブロック暗号であるRijndaelの設計者の一人であるフィンセント・ライメンと、Paulo S. L. M. Barretoによって2000年に設計された。WhirlpoolはヨーロッパのNESSIEプロジェクトにおいて推奨ハッシュ関数の一つに採用された他、国際標準化機構 (ISO)および国際電気標準会議 (IEC)によって国際規格ISO/IEC 10118-3として標準化されている。.

新しい!!: ハッシュ木とWhirlpool (ハッシュ関数) · 続きを見る »

ZFS

ZFSは、主にオラクルのOracle Solaris上で実装されている128ビット・アドレッシングを特徴とするファイルシステム。今まで Solaris (SunOS) で用いられてきた Unix File System (UFS) の次世代ファイルシステムと位置づけられている。名称は Zettabyte File System に由来するが、現在は何の略称でもないとされる。.

新しい!!: ハッシュ木とZFS · 続きを見る »

暗号学的ハッシュ関数

暗号におけるハッシュ関数(特にSHA-1)の動作の様子。入力の微妙な変化で出力が大きく変化する点に注意(雪崩効果) 暗号学的ハッシュ関数(あんごうがくてきハッシュかんすう、cryptographic hash function)は、ハッシュ関数のうち、暗号など情報セキュリティの用途に適する暗号数理的性質をもつもの。任意の長さの入力を(通常は)固定長の出力に変換する。 「メッセージダイジェスト」は、暗号学的ハッシュ関数の多数ある応用のひとつであり、メールなどの「メッセージ」のビット列から暗号学的ハッシュ関数によって得たハッシュ値を、そのメッセージの内容を保証する「ダイジェスト」として利用するものである。.

新しい!!: ハッシュ木と暗号学的ハッシュ関数 · 続きを見る »

暗号理論

暗号理論(あんごうりろん)の記事では暗号、特に暗号学に関係する理論について扱う。:Category:暗号技術も参照。.

新しい!!: ハッシュ木と暗号理論 · 続きを見る »

木構造 (データ構造)

親子構造 木構造(きこうぞう)とは、グラフ理論の木の構造をしたデータ構造のこと。.

新しい!!: ハッシュ木と木構造 (データ構造) · 続きを見る »

文字列結合

プログラミングにおいて、文字列結合(もじれつけつごう)または文字列連結(もじれつれんけつ)(string concatenation)とは、ある文字列の後ろに別の文字列をつなげて1つの文字列にする処理のことである。例えば、「ABCDE」という文字列と「12345」という文字列を結合すると「ABCDE12345」という1つの文字列になる。.

新しい!!: ハッシュ木と文字列結合 · 続きを見る »

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »