情報処理学会第 82 回全国大会

4J-07

複数のクロック信号源における相対的なクロック特性の高精度な観測高井 淳光 †

干川 尚人 †

下馬場 朋禄 ‡国立高等専門学校機構 小山高専 †1

はじめに
IoT 機器を用いたサービスでは, 利用する機器が公の場に設置されている可能性がある．そのため悪意のある人物による機器のすり替え, 不正利用のリスクが高まるため, これに対応する技術が求められている．我々はこの課題に対して, 機器が持つ半導体チップが生成するクロック特性を基準装置の特性(Clock FingerPrints CFP) と比較することで識別する手法を提案している．しかし, この手法では基準装置に高精度な時刻情報の提供能力が必須となることが課題である．そこで, ロー
カル環境下で機器識別に利用できる特徴量を抽出する手法と機器識別手法を提案する．本稿では提案する特徴量抽出法と識別手法を示し, その有効性について論じる．

2

既存手法

既存研究 [1] では, コンピュータに搭載されたクロックカウントによって計算されるローカル時刻と基準時刻のずれ (時刻ドリフト) に固有の差が現れることが明らかにしており, 時刻ドリフトの大きさとマイクロプロセッサのコア温度の関係は線形的に近似できることが確認されている. この研究おける識別手法は計測した時刻ドリフトとコア温度の関係に対して回帰直線を求め, その傾きと切片を特徴量として用いて機器の識別を行う. このとき, 基準時刻を提供する時刻基準機にはGNSS(Global Navigation Satellite System / 全球測位衛星システム) モジュールを取り付け, 高精度な時刻供給能力を持たせている.

3

提案手法

3.1 提案手法における CFPLinux カーネルでは, 時刻管理に利用する変数である jiﬃesや xtime の更新のために Timer Tick と呼ばれるタイマ割り込みが発生, 処理される. 省電力化を目的として更新の頻度を下げる Tickless 機能が存在するが, これを無効化したカーネルでは予め決めた周波数で定期的に割り込みが起こる. この割り込みは, Linux カーネルにおける Clockevents と呼ばれる タイマデバイスを抽象化した機能により引き起こされる. また, 割り込み機能を持たず, 高精度な時刻を提供するための機能として,Clocksource と呼ばれる機能も存在する.
既存研究 [1] によれば各タイマは固有の特性を持つため,割り込み周波数を f とすれば, Clockevents デバイスごとに1/f 秒のカウントにかかる絶対的な時間は異なる. 加えて,High-Precision Observation Method of Relative Clock Driftin Multiple Clock Signal Sources† Akihiro TAKAI,† Naoto HOSHIKAWA,‡ Tomoyoshi SHIMOBABA, and ‡ Tomoyoshi ITO† National Institute of Technology, Oyama College‡ Chiba University

伊藤 智義 ‡
千葉大学 ‡

Clocksource デバイスごとにカウントする速度も異なる. したがって, Clockevents デバイスが 1/f 秒のカウントする間のClocksource デバイスのカウンタの増加量も機器ごとに異なった値が得られる. 本稿ではこの値を CFP 特徴量とする.
3.2 CFP の抽出方法
CFP を 抽 出 す る た め, Timer Tick の 処 理 を 行 うtick periodic 関数に, 現在の TSC (Time Stamp Counter) のカウント値を予め確保したメモリに記録する処理を加える.
これにより得られるデータを RawCFP と呼ぶ. RawCFP をユーザプログラムに渡すために, Linux におけるスペシャルファイルを生成するカーネルモジュールを作成する. ユーザプ
ログラムはこのスペシャルファイルから RawCFP を定期的に読み取り, 保存する. 機器 A における p 個の RawCFP は
CF PA = (cA1 , ..., cAs ) と表す.
3.3

個体特徴量の算出抽出した RawCFP から, 割り込み周期当たりの TSC の増加量（CFP 特徴量）を算出する. この増加量を tsc sum と呼ぶ.
機器 A における p 個の RawCFP を元に計算できる tsc sum集合 tsumA を次のように表す.

tsumA = (cA2 − cA1 , cA3 − cA2 , ...cAs − cAs−1 )(1)m 個の候補機器群を C = (C1 , C2 , ...Cm ) とする. 予め, 候
補機器群 C に属する機器ごとに, p 個の RawCFP を 2 回計測し, それぞれの tsc sum 集合を算出する. 候補機器 Cj の 1 つ目の tsc sum 集合は tsumCj1 と表し, 2 つ目は tsumCj2 と表す. これらの tsc sum 集合をそれぞれ次式のように T G1 とT G2 にグループ分けする.
T G1 = (tsumC11 , tsumC21 , ..., tsumCm1 )T G2 = (tsumC12 , tsumC22 , ..., tsumCm2 )(2)(3)

Cj における個体特徴量は, T G2 に属する tsumCj2 と T G1に属する全ての tsc sum 集合との類似度を要素に持つベクトルとする. この類似度を計算するため, 次式で定義される 2 つの確率密度分布同士の距離を計算できる L2 距離を導入する. [2]L2 (p, p′ ) =∫(p(x) − p′ (x))2 dx(4)ここで, α から β までの範囲で区間の幅が γ の度数分布を tsc sum 集合を基に作成し, これを離散的な確率密度分布として捉えて L2 距離を計算することで, 2 つの tsc sum集 合 の 類 似 度 を 計 算 す る こ と が 出 来 る. こ の 類 似 度 をS(α, β, γ, tsumA , tsumB ) と表す.
また, 区間の幅を c から d ずつ k 回広げていくことで, 得られる類似度を増やすことができ, 個体特徴量を k 次元ベクトルとして得ることが出来る. これを A の B に対する個体特徴量ベクトルと呼び, このベクトルの要素は次のように計算出来る.

1-83

fkABi = S(a, b, c + id, tsumA , tsumB )(5)(i = 0, · · · , k − 1)

Copyright 2020 Information Processing Society of Japan.
All Rights Reserved.

情報処理学会第 82 回全国大会

次に機器 Cj の T G1 全体に対する機器の個体特徴量を表すため, T G2 に属する Cj の tsc sum 集合である tsumCj2 と,T G1 に属する全ての tsc sum 集合とそれぞれの間における個体特徴量ベクトルを計算し, これらのベクトルを行ベクトルとする行列を計算する. これを個体特徴量行列 F M と呼ぶ.
tsumCj2 の T G1 に対する個体特徴量行列は次のように表すことができる. このとき, a は T G1 に属する tsc sum 集合とtsumCj2 の中における tsc sum の最小の値であり, b は最大の値とする.


fkCj C1
 fkC C j 2F Mj = ..
.
fkCj Cm(6)

3.4 機器識別手法
3.4.1 判定係数の算出
あ る 機 器 A, B か ら 得 ら れ た 2 つ の 個 体 特 徴 量 行 列
F MA , F MB の近さを示すため, それぞれの行ベクトルの残差平方和 RSS を計算する. 同じ機器の個体特徴量行列同士の残差平方和は小さくなる. この値を判定係数と呼び, 機器の識別に利用する. F MA , F MB の判定係数 hAB は次式のように表せる.

hAB =m∑RSS(F MAi , F MBi )識別処理

提案手法の評価実験

候補機器には Intel Core i5 8250U 1.6GHz, RAM 8GB を搭載するパーソナルコンピュータ (以下 PC) 3 台を用いる. これらの PC には全て, Ubuntu 18.04 をインストールし, RawCFPを抽出するための機能を追加した Linux カーネル v4.19.75 に置き換えている. これら 3 台の PC を候補機器 C1 , C2 , C3 とし, それぞれ識別対象機器 X に設定して判定係数を計算する.
この判定係数を元に識別を行う. 類似度を計算する時の定数は
c = 100, d = 100, k = 100 とする.

4

各機器における判定係数

識別対象機器 X

hXC1

hXC2

hXC3

C1C2
C30.0006623
1.3009506
0.0335815

1.3450701
0.0051635
1.1118373

0.02845451.0189870
0.0003080

考察

提案手法における個体特徴量行列は, 候補機器群の数が増えるとサイズが大きくなり, 判定係数を計算する式 (7) の項が増える. 一般的に, 候補機器の数が増えると, 似た特徴を持つ機器が現れる可能性が高くなり, 識別が難しくなる. しかし, この手法では候補機器が増えることで, より多面的に一次特徴量を捉えることができるため, このような状況にも対応できると考えられる.

6

結論・今後の予定

今回提案した手法では, CFP データ抽出が数秒で完了し, PC3 台の識別に成功した. したがって, 本手法は識別速度において既存手法に対し優位性がある. しかし, 実験に用いた機器が少なく, 候補機器が大きくなった場合の信頼性を示せていない.
今後はこれらの課題に対して検討を進めていく.

謝辞

実験結果

4.1 算出した特徴量行列
X 軸を度数分布の区間, Y 軸を L2 距離として, 機器 C1 を機器 X としたときの F MC1 , F MC2 , F MC3 , F MX の各行ベクトルをプロットすると, 図 1 のような散布図を得ることができる.
4.2

表15

識別対象機器を機器 X としたとき, 機器 X の T G1 に対する個体特徴量行列が F MX ならば, 全ての候補機器の T G1 に対する個体特徴量行列と F MX の判定係数を算出し, その値が最も小さかった候補機器を識別対象機器 X と識別する.

3.5

F MC1,C2,C3 , F MX の各行ベクトル

(7)

i=1

3.4.2

図1

識別結果

機器 C1 , C2 , C3 の個体特徴量行列と識別対象機器 X を C1 ,C2 , C3 とした時の個体特徴量行列の判定係数を表 1 に示す.
機器 X が C1 の場合 hXC1 が, C2 の場合 hXC2 が, C3 の場合hXC3 が最小になっている. したがって, それぞれの機器を識別出来ていると言える.

本研究は矢崎財団（Yazaki Memorial Foundation for Scienceand Technology）の支援を受けた.

参考文献[1] 並木涼 , 干川尚人 , 下馬場朋禄 , 伊藤智義.

ディジタル機器におけるシステム時刻のずれと環境温度の変動との相関性 . 電子情報通信学会第 18 回ネットワークソフトウェア研究会 , January 2019.
[2] 杉山将：確率分布間の距離推定:機械学習分野における最新動向, 日本応用数理学会論文誌,Vol.23, No.3 (2013) pp.439452．

1-84

Copyright 2020 Information Processing Society of Japan.
All Rights Reserved.