はじめに
データスペースでは、単なるデータ共有や連携だけでなく、データ主権や様々なデータガバナンスの実現を狙っています。個人情報だったら個人情報保護法やGDPRを満たすようにデータを制御する。基本的には、データ提供者がそのデータの扱いを自分で決めたいというわけです。
一方で、データは一旦手に入ってしまえば、複製し再配布することは容易です。なので、データは一旦漏れるともう制御できない、というわけです。従って、データの制御を技術だけで行うことは不可能で、法制度や契約によって社会的制御に依存することは不可欠です。
このデータの制御の仕組みは「難しい」と言われます。これには、2種類あって、そもそも技術的に制御できないことをやろうとして、難しいとい言っている場合。そもそも無理ゲーなのだから、それは難しいよ。もう一つは技術的に可能な範囲での制御。実は、それもそこそこ難しい。
Access ControlとUsage Control
データガバナンスで制御したいことは、アクセス制御(Access Control)と利用制御(Usage Control)があります。アクセス制御はデータを欲しいという人に渡すのか渡さないのかです。これは比較的メカニズムで制御できます。一方、利用制御は、データを渡したあとで使い方を制御するというもので、これは完璧に実現することは無理があります。
Access Control(アクセス制御)
アクセス制御は、コンピュータシステム上では長い歴史があり、それなりに奥深く洗練されたメカニズムがあります。OS上でも、DAC (Discretionary Access Control)…通常のOSでのファイルアクセス制御方式、MAC (Mandatory Access Control)…軍仕様に由来するTrusted OSでのアクセス制御, RBAC (Role Base Access Control)などが有名です。これらは、基本的な要素で、データスペースで「認可」機能というと、大体、このあたりのプリミティブなアクセス制御機構を導入することです。
欧州の連中に言わせると、実際にやりたいことは、そんな単純なことではなく、ちゃんとセキュリティポリシーを決めて、アクセス制御のルールを決めて、それに沿ってアクセスを制御したい。いやー、難しい事言うなあ。そうすると、どういうアクセス制御をしたかを、しっかりとルールが必要です。かつ、そのルールがコンピュータ上で何らかの言語で表現され、かつ実行できないといけないわけです。
すると、この分野は、「ルール」を書く、別の言葉で言えば「仕様」を書くということと同じです。最近は、別分野でRule as Codeというものがありますが、それも大体同じことです。Computer Scienceにおける分野的には仕様記述とか、それと近しい技術になります。いわゆるFormal Descriptionの世界で、これは数学上、結構難しい。一般解を考えると難解すぎて答えは出ないので、データスペースにおけるアクセス制御という応用に特化したものはある程度可能そうです。で、当研究室では仕様記述の第一人者でもある中島震先生やNTTデータさんの皆さんとともに、DSPOL (A High-Level Language for Defining Data Policies in Data Spaces) [1] という機構の研究をしました。やっぱり、この世界は難しい。でも、これは、できることの中で、難しいという種類のものです。
ただ、理論的は簡単で、アクセス制御と課金(Payment)を考えればよく、
- アクセス制御関数:{ Allow, Deny} = F (p_1, p_2, …. , p_n)
- 課金関数:Price = P (p_1, p_2, …. , p_n)
FとPはTuring完全な汎用的な記述言語であって、p_1〜p_nは、そのデータスペースや社会条件によって、技術的に入手できるパラメータ全体とすればよい。なので、できるだけ、アクセス制御や課金に影響するパラメータを入手できて(これはデータスペースの仕組みとして)あとは、アクセス制御や課金額を決める関数が定義できる言語あればよいわけです。
実際それが、どこまで現実的に作って動くかは別問題。
Usage Control(利用制御)
これは、個人的には、結構無理ゲーだと思います。でも欧州の連中がこれをやりたいと。トホホ、、、だって、Usage Controlができるとしたら、そのデータは形式が十分に複雑で(暗号化も含めて)、それを特定のソフトだけが扱えるようにして、そのソフトウェアによって条件をチェックして、使い方を制御するしかないでしょう。例えば、マルチメディアのコンテンツデータは、データをスクランブルさせて、特定のソフトだけで再生させるようにして、視聴制御をしています。それと同じです。
Algorithm Enforcement
人間や社会が決めたルールや交わした契約通りにデジタルシステムが動作できることが便利ではあります。だからRule as Codeができると良い。すると、やってはいけないことは、そもそもメカニズム上できなければ、人間側・社会側は楽です。ブロックチェーンでは、うまいことそのあたりが実現できています。お金のやり取りで、インチキはできないようになっている。なので、このメカニズムを使って、スマートコントラクトにすることで、契約違反はメカニズム上できないようにする。このあたりのメカニズムもデータスペースに取り込めれば、だいぶガバナンスが楽になると思います。
参考文献
[1] S. Taniguchi, S. Nakajima, T. Michikata, H. Seike and N. Koshizuka, “DSPOL: A High-Level Language for Defining Data Policies in Data Spaces,” 2024 IEEE International Conference on Big Data (BigData), Washington, DC, USA, 2024, pp. 6867-6876, doi: 10.1109/BigData62323.2024.10825983.
https://ieeexplore.ieee.org/document/10825983
(越塚登、2025年9月16日)