# Multics
Multics(Multiplexed Information and Computing Service)は、リングと呼ばれる階層的なセキュリティ機構を持つ先進的なOSであり、David D. ClarkはインターネットのARPANET設計に取り組む以前、このOSの開発に携わっていた。歴史上、セキュリティの観点で最も厳格に検証されたシステムの一つとされる。米空軍がMulticsの脆弱性分析を実施してからほぼ30年後の2002年、Paul A. Karger と Roger R. Schell による回顧論文 "Thirty years later: lessons from the Multics security evaluation"(ACSAC 2002)が発表された。この論文の結論の一つは、Multicsが当時として最もセキュアなOSであったにもかかわらず、「オープン」な環境(誰もがその上でコードを実行できる環境)として十分にセキュアであるとはみなされていなかった、というものである。今日のOSはそのようなオープンな環境で稼働しているが、それらがMulticsよりもセキュアだと主張するのは困難であり、今日のOSはMulticsよりも間違いなく複雑だと同論文は指摘する(同論文はSELinuxとMulticsを比較してもいる)。Multicsの開発者たちはよりセキュアな後継版の開発を提唱したが、最終的にその取り組みが進展することはなかった。Multicsの複雑さへのアンチテーゼとして、よりシンプルなUnix(“Multi” ではなく “Uni”)が生まれたと言われている。(Source: [[@2026__LambdaNote__ネットワークシステムについて語るときに我々の語ること - Chapter 8 セキュリティ:負の目標]] ch.8 §8.4)
Bruce Davieは、Multicsのセキュリティ古代史を、自分たちが企画するネットワークセキュリティ関連書の枠組みとして参考にしたと述べている。エンドシステムのセキュリティに焦点を当てたMulticsのような初期の取り組みからは、セキュリティに対するエンドツーエンドの視点の重要性を改めて確認できるとされる。(Source: [[@2026__LambdaNote__ネットワークシステムについて語るときに我々の語ること - Chapter 8 セキュリティ:負の目標]] ch.8 §8.4)
*Security Engineering* 第3版第6章は、Multicsを「1960年代にMITで開発され、Unixに影響を与えたOS」として、ハードウェア保護節の文脈で導入する。Multicsが導入したリング保護は権限レベルを階層化する機構で、ring 0のプログラムはディスクへの完全なアクセス権を持ち、supervisor状態はring 2で動作し、ユーザーコードはより権限の低い各種レベルで動作した、と本章は具体的なリング番号の割り当てまで記述する。この機構の多くの特徴は、その後のより新しいプロセッサ(Intel・Armのリング機構)に採用されたと本章は位置づける。(Source: [[@2020__Wiley__Security Engineering 3e - Chapter 6 Access Control]] ch.6 §6.3)
## 関連
- [[David D. Clark]] — ARPANET設計以前にMulticsの開発に携わった
- [[Jerome H. Saltzer]] — Multicsカーネル設計プロジェクトの共著者(Schroeder, Clark, Saltzer, 1977)
- [[ネットワークセキュリティアーキテクチャ]] / [[エンドツーエンド論]] / [[認可モデル]]
- [[@2026__LambdaNote__ネットワークシステムについて語るときに我々の語ること - Chapter 8 セキュリティ:負の目標]]
- [[@2020__Wiley__Security Engineering 3e - Chapter 6 Access Control]]
## 出典
- [[@2026__LambdaNote__ネットワークシステムについて語るときに我々の語ること - Chapter 8 セキュリティ:負の目標]](ch.8 §8.4)
- Ross Anderson, *Security Engineering: A Guide to Building Dependable Distributed Systems*, 3rd Edition, John Wiley & Sons, 2020, Chapter 6, §6.3.