作り方に慣れてきたら・・ (HALSを使う)
では、次は「HALS」について説明します。
「HALS」とはダイノロジカルの識別処理の概念の一つです。
用途から先に述べますと、「HALS」を利用することによって、
例えば、本来同じデータである「jpg」、「jpeg」などの識別に対して
的確にメッセージを表示させることが出来ます。
"的確に・・"
というのは例を挙げると例えば、
「xxx.jpeg」というファイルをユーザーがダイノロジカルで識別しようとします。
ここで、説明したように「.jpg/.jpeg」は拡張子の付け方のバリエーションなだけで
内容は同じです。
しかし、もし「JPEG」という拡張子がついているファイルに対して、
識別結果が「JPG」と表示されてしまったらどうでしょう。
この2つは、さも違う形式であるかのように捕らえられてしまうかもしれません。
また、ダイノロジカルの「一括識別」機能を使った場合にも、
「リネームしますか?」というメッセージがいちいち表示されてしまいます。
しかし、「HALS」を用いることによって、ファイルの種類が同じファイルでも
「JPEG」は「JPEG」、「JPG」は「JPG」と識別表示することが出来ます。
HALSはこのほかにも幾つかの機能を有します。
HALSとは、Harmony Algorithm for Logical System
(論理的なシステムのための調和アルゴリズム)
の略です。実際は、そんなに実装されていません。(^^;
また、HALSはちょっと綴りが某タブレットっぽいですが、
ハルズと読みましょう。×(ホ○○ズ)
では、当ソフトで扱うことが出来るHALSについて説明します。
@拡張子ハルズ
・・拡張子のマッチングをします。識別結果と元ファイルの拡張子の適合具合によって
識別結果の優位さ(lpts)を変えることが出来ます。
{用途} たとえば、jpg/jpegなどのように拡張子が数パターンあるものに対して、
元ファイルと同じ拡張子を優位な結果にすることが出来ます。またそれとは逆に、
ヘッダー偽装かつ拡張子も変更しているファイル等に対して結果と
元ファイルの拡張子が違う場合に値を優位にしたり出来ます。
Aテキストハルズ
・・識別元のファイルが、テキストデータであるかによって識別結果の優位さ(lpts)を
変えることが出来ます。
{用途} たとえば、GIFなどを識別する際にgifと先頭に書かれているだけの
テキストファイルの識別結果を0 lptsにすることが出来ます。
Bサイズハルズ
・・識別元のファイルのサイズと、基準として設定したサイズの差異によって識別結果の
優位さ(lpts)を変えることが出来ます。
{用途} たとえば、htmlの偽装ファイルがあったとします。もしその偽装ファイル自体の
識別データセットが無い場合でも、htmlのファイルサイズが数MBになることは
少ないので、それによって「偽装htmlファイル」などと表示することが出来ます。
では、実際に使用する方法を説明します。
HALSに関する設定は、「ヘッダー定義」ごとに作成します
基本的な手順は、バイナリデータやテキストデータのデータセット作成方法と同じです。
ヘッダーの種類や位置などを登録する「ヘッダー定義の作成」の時に、設定を追加してやります。
ここで、新しく注目するところは、「HALS関係(職人向け)」と書かれた枠内の内容のみです。
この中で、「対象拡張子と結果が・・」と書かれている場所が「拡張子ハルズ」です。
同様に・・
「テキストデータ」と書かれた項目が、「テキストハルズ」、
「サイズ」と書かれた項目が「サイズハルズ」です。
ここで、基本的にはそれぞれ使用するHALSの左横にあるチェックボックスをクリックし
関連する、エディットボックスに「値」などを入力していけばOKです。
入力する値に関して・・
◇拡張子ハルズ
「値」には0〜100を指定してください。50以上で平均より優位な値となります。
ここに、50以上の値を設定し「JPEG/JPG」など複数拡張子が存在するデータの識別に
このヘッダー定義を用いることによって、より正しい結果表示に対応することが出来ます。
ただし、「JPEG」「JPG」のメッセージと識別ベースラインへの処理の追加は、それぞれ
2つ分行う必要があります。
◇テキストハルズ
「値」には0〜100を指定してください。50以上で平均より優位な値となります。
また、125で他のHALSに関わらず、結果を強制的に0にすることが出来ます。
255で他のHALSに関わらず、結果を強制的に100にすることが出来ます。
バイナリデータのヘッダー定義を作成する場合に、ここに「125」と入力することによって
このヘッダー定義を使用した全ての識別において、「テキストデータ」の識別結果を
0 lptsに出来ます。
◇サイズハルズ
サイズハルズだけ、入力ボックスが4つありますので、左上から順に説明します。
「初期値」の右側のボックス・・サイズハルズの結果値の初期値を指定します。これは、以降で
設定するデータサイズとその差異によって減らすポイントの"元となる値"です。
「バイトから」の左側のボックス・・基準バイトを指定します。例えば256バイトにサイズが近い程
結果を良くしようと思ったら、ここには「256」と入力します。
「バイト異なるごとに」の左側のボックス・・下2つのボックスを文章にすると、Xバイト異なるごとに
Yポイント減らすというという文になります。基準のバイトを256に設定し、これから10バイト多く
なるごとに初期値から1ポイントずつ減算したい場合、ここには「10」を入力します。
「ポイント減らす」の左側のボックス・・下2つのボックスを文章にすると、Xバイト異なるごとに
Yポイント減らすというという文になります。基準のバイトを256に設定し、これから10バイト多く
なるごとに初期値から1ポイントずつ減算したい場合、ここには「1.0」を入力します。
(このボックスだけ、小数で値を設定できます)
値設定においては、ハルズを使わなかったときの基準値が「50 lpts」であることにも
注意を払いましょう。
ハルズの値を高くしたり低くしたりすることによって、識別結果の順序を上にすること
も下にすることも出来ます。
逆に、自分でも収集不可能な程に値をいじりすぎたり、HALSの設定が異常だと識別結果
そのものが変ってしまいますので十分に考慮して使いましょう。
以上がHALSに関することです。
設定したHALSは、その「ヘッダー定義」を使う全ての識別処理に反映されるので注意
してください。