Zopfcode

かつてない好奇心をあなたに。

セキュリティ・キャンプ 2023 の講師としてルーターを走らせた

セキュリティ・キャンプ 2023」(以下、seccamp)にて X3「ハードウェア魔改造ゼミ」の講師を拝命し、8月の一週間に東京都は府中市にて講義を行った。

講義の内容は、拙作「走るルーター」に追加の法的な考慮や、作業の平易さ、再現性、まとも(?)な技術選定、OSS の解説、そして何より各ステップへの丁寧な説明を加えたものだ。詳しくは公式サイトの講義紹介ページを参照されたい。

ある受講生の作。走るルーターを「改築」してスマートフォンを装着し、名刺を配って回る仕様に改造されている。

Seccamp は例の流行り病により毎年少しずつ異なる体制をとっており、今回3回目の講師となる私も頑張って順応している。初めて seccamp の講師を務めた2021年は、完全リモート体制で実施した。2022年は、講師とチューターだけ物理で集い、受講生はリモートで参加した。そして今年は待ちに待った完全物理イベントへと戻った。戻ったといっても、私は2020年とそれ以前を知らない*1ため、物理でハンズオンを含む講義は初めての試みだった。僕ら講師陣にとってはちょっとした非日常であっても、学生たちにとっては貴重な夏休みの一週間になる。大きな失敗をする確率は低いながらも、少し緊張しつつ研修施設に入った。

かくして seccamp が完全物理の姿へ戻るにあたり、今年だからこそ気付いた点は文章にしておきたいと思い、筆…ではなくキーボードを執った。

会話 AI 時代の応募課題

Seccamp は応募すれば確実に参加できるイベントではなく、しっかり事前選考がある。私が在籍する X トラックでは、昨年は RP2040のデータシートを読んで仕様を読解させる問題や、電気やペリフェラルに関する一般的な知識を問う問題を全ゼミ共通で出題していた。

過去問に目を通し去年を思い出すうち、これをもし会話 AI に解かせたらどうなるんだろうか、とふと思った。ChatGPT のような会話 AI 大ブレイク後の現代では、もはや答えの決まった浅い受け答えはコンピューターだけでできてしまうからだ。

結果としては、心配(?)した通りにそつなく回答されてしまった。浅く一般論的な主張、ChatGPT の文体といった特徴が出ていながら、GPT-3.5 も GPT-4 もある程度のクオリティを持つ回答を返してきた。人間の個人差が出るような、深みのある回答を求める問題が必要であるとすぐに察した。

結論として、私の X3 ゼミでは重めの記述問題を複数並べた完全に独自な課題を作成した。内容は以下のような具合だ。

USB 機器が任意の電圧による電源供給を受けられる規格として USB Power Delivery があります。最初に登場し、USB Type-A 端子と Type-B 端子を利用する USB PD Revision 1.0 はほとんど普及しませんでしたが、Type-C 端子と共に登場した USB PD Revision 2.0 は広く普及しました。この要因を自由に考えて述べてください。規格そのものの差分だけではなく、より広い視点で記述された考察を期待します。

今回の一連の記述問題の狙いは、考察の多彩さによって回答者の持つ手球の多さを測ることにある。出発点として「Apple が採用した」あるいは「Type-C と同時に広まった」のような事実を手に取り、そこから生じた影響を辿り、PD の普及に結びつけるいくつものパスをできるだけ引き出すことを求めている*2。試しにこれを ChatGPT にやらせたところ、revision 間の違いを問いの出発点としていることと矛盾する「PD だと速く充電できるから」とか、論点として間違っていないが単品では主張として薄い「Type-C は裏表がないから」とかといった回答が返ってきた。

実際の志願者からの回答には思った通りに意図が反映され、知識やセンスが回答の質にはっきりと現れる結果となった。通過予定人数を大きく超える応募の中で、特に通過した3人の学生からは「Type-A/B は双方向な電源供給を意図していないが Type-C では可能」、「QC などのベンダー独自規格に対して業界団体の共通規格として定義された PD は開かれていて優位性がある」、「DP Alt Mode に対応するなどのユースケースが Type-C の推進力となり結果的に PD の普及に寄与した」など多彩な考察を持つ回答が提出された。

講師も活動しやすい寛容な空気

「セキュリティ」は、通信の秘匿化といった花形的な分野だけで説明できるものでなければ、コンピューターのみを相手にする概念でもない。故に、セキュリティという対象を取り扱う seccamp においては極めて多種多様な講義が展開される。このような多様さを包容できる寛容さが seccamp を形作る柱になっているのだと今回改めて体感した。「一般社会」にはそのままでは伝わらないトピックや突飛なアイデアを、躊躇なく共有できる空間だからこその安心感があり、それを土台として自由に動くことができた。受講生たちもまた、日頃であればクラスメイトとはしにくい高度な会話を自由にできることに興奮しているように見えた。

受講生が社会見学に行っている間、会場からチューター2人を連れてハードオフへ行った。SHARP Brain も持参していたので、これに接続して遊ぶための Web カメラを調達した。

ゼミ間の交流が産むグルーヴ感

物理の seccamp では他のゼミの講師や受講生と話すのが楽しい、と前々から聞いていた。当日を迎えて1日経ってみると、たちどころにその真意が理解できた。

自分や受講生が何をここでやっているか説明しつつ、相手が何を教えたり教わったりしているか聞く。楽しい。隣のゼミや別部屋の人たちと興味関心を交換する。楽しい。その人達しか持ってない視点で質問され、知識の引き出しを開けまくる。楽しい。とにかく終始楽しい。

他のゼミとの交流は単に楽しいだけでなく、受講者たち自身の学びを増幅しているようにも感じた。

担当した X3 は、私自身の信念でもある「セキュリティとは技術全体を切り取るひとつの視点である」を体現していて、「全レイヤーを自らの手中に入れる体験」を目指して実施した。一方で同じ X トラックの X1 は、機器のリバースエンジニアリングによって脆弱性を探しに行き、あわよくばそれを突くことを目標としていた。他にも、コンパイラを自作してコンピューターに思いを巡らすゼミもあった。これらの情報を受講生や講師が運んで混ざり合い、受講したゼミ単品を超える相補的な学びに繋がっていったと思う。

特に X トラックの4ゼミは、他トラックの講師たちから「適度に領域がオーバーラップしていながら棲み分けができている」と感想を頂くほどにバランスが取れていた。私自身も X1 の受講生に OpenWrt について助言したり、X2 で作製された回路を観察して設計テクニックを学んだり、X4 で GNU Radio の貴重な作例を見たりした。

強いグリップと急制動で暴れるルーター。

Seccamp の真髄を見た一週間

気の合う人間が集うと当然のこととしてテンションが上がる中、ここまでコンピューターガチ勢しかいない稀有な空間は、日頃入れることの少ない「会話のギア」を入れっぱなしにできる。この空気で生じた会話は非常に多くのアイデアをもたらしたし、閉会後に受講生や講師とのコラボレーションも続々と立ち上がった。これらはどれも去年までは起きなかったことだ。

社会的にも著名な講師陣、選考を通過した学生、優秀なチューターやスタッフたちが一同に集い、高い士気の中で学びを授け合う価値ある空間にいられた事を誇らしく思う。講師の契約は年単位なので来年どうなるかはわからないが、この空気をまた吸いに行ければいいなと思いつつ感想の結びとしたい。

*1:学生の時に seccamp に応募し2回落ちている

*2:出題側の意図と問題のコンセプトが明らかでないと回答者が困ってしまうため、「考察力や説明力を主に問うもの」として「より広い視点で記述された考察を期待」していると応募課題冒頭と問題文で明記している