「ウイルス」が本来の意味に立ち戻る日(1/3 ページ)

不正なコンピュータプログラムを「ウイルス」と呼びますが、その由来とは? 生物学的検知から考えてみます。

» 2016年12月27日 08時00分 公開
[Kaspersky Daily]

この記事はカスペルスキーが運営するブログ「Kaspersky Daily」からの転載です。一部編集しています。


 「ウイルス」という用語の由来を覚えていますか? そうです、ITセキュリティの専門家は、生物学上のウイルスにちなんで、自身のコードを他のオブジェクトに挿入して自己複製、増殖するコンピュータプログラムに名前をつけました。

 このIT用語がもともとの意味を取り戻すのも、そう遠くないでしょう。Microsoftとワシントン大学は、約200MBのデータを合成DNAの形で記述することに成功しました(英語記事)。データストレージの開発における、新たな一歩です。

 それと、生物学的なウイルスとはどういう関係があるのか? かなり直接的に関係があります。生物学上のウイルスは、自身の遺伝情報を感染先の生命体のDNAに挿入し、挿入されたDNAは生命に必要なタンパク質を合成するのではなく、ウイルスを複製するようになります。

 攻撃性の高いウイルスは、細胞が死滅し、最終的に生命体が死に至るまで、正常な生理的なプロセスを妨害します。同じように、攻撃性の高いコンピュータウイルスは、感染した情報システムをまったく使い物にならない、「死んだ」状態にする可能性があります。

 したがって、人類がDNAの形で情報を書き出した今こそ、こうしたデータを「ハードウェアレベル」で保護することを気にし始めるべきです。では初めに、この「ハードウェア」の仕組みをざっと説明しましょう。

DNAの内側

 DNA(デオキシリボ核酸)は、人体の中で一番大きな分子であり、遺伝情報を保持しています。ITの世界で最も近いのは、コンピュータを起動し、OSをロードするブートイメージでしょう。ほとんどの場合(例外はありますが、この記事では触れません)、OSがメモリにロードされた後、コンピュータは自身の動作に必要な実行可能モジュールを起動し、プログラムに記述されたタスクを実行します。同じように、ほとんどの生体細胞はDNAを使って「実行可能モジュール」、つまりRNA(リボ核酸)配列を作成し、生命体の維持と生体機能に必要なタンパク質を合成します。

 目や髪の色から遺伝性疾患まで、生命体の特性は全てDNAに保存され、ヌクレオチド配列にコード化されています。ヌクレオチド配列は、(ほとんどの既知の生物の場合)たった4種類の窒素塩基(アデニン、グアニン、チミン、シトシン)で構成される分子ブロックです。これらの塩基は「生物学的なビット」といえます。人間が作ったコンピュータは2進コードを使っていますが、自然界は4つの要素を組み合わせた記数法を使って、遺伝情報をコード化しています。

 特筆すべきは、DNAにコード訂正機能が備わっていることです。一般に、DNAはヌクレオチド鎖を2本持っていて、これらの鎖は二重らせん状に絡み合っています。

 これら2本の鎖は、水素結合で結ばれています。ヌクレオチドのペアは厳密に決められており、相補的な関係にあります。このため、1本目の鎖のヌクレオチド配列にコード化されている情報は、2本目の鎖にある相補的なヌクレオチド配列に対応しています。これがコード訂正メカニズムの仕組みです。コードを復号またはコピーするとき、DNA鎖の1本目は元のデータとして、2本目は制御配列として使用されます。これにより、どちらかの鎖のヌクレオチド配列(遺伝特性がコード化されている)が損傷しているかどうかがわかります。

 また、ヌクレオチド配列に遺伝特性をコードするとき、冗長符号化アルゴリズムが使用されます。このアルゴリズムの仕組みを簡単に説明すると、ヌクレオチド配列として記述された1つ1つの遺伝特性にチェックサムがついているようなものです。

 DNAの発見から50年間、遺伝特性(遺伝子)をコードするヌクレオチド配列は大々的に研究されてきました。今では、さまざまな研究機関でDNAを読んでもらうことができますし、23andme(英語サイト)などを使えば、オンラインでもこのサービスを受けられます。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ