2017年10月22日日曜日

高専セキュリティコンテスト2017writeupとか

がいよう

ふるつき君(@theoldmoon0602)とスラスト君(@thrust2799)とはいんど君(@miwpayou0808)と僕で参加してきました。結果は3930点(内私は600点)を取って優勝しました。

writeup

[Crypt200]Week RSA1

[Description]

How can you break RSA encryption?
 N=p*q
 N=...
 e=65537
 encrypted=answer^e mod N
 encrypted=...

つまり公開鍵N,eと暗号化されたflagであるencryptedが渡されます。
適当に調べていたら過去のctfの記事があって、とりあえず色々な解析方法を試してみようと画策していた所、はじめに試したフェルマー法があたりました。具体的なアルゴリズムは調べてくれたらすぐ出ます。コピペでも通ります。

[Crypt300]Week RSA2


[Description]

Same modulo, different key.
 That means...?
 N=...
 e1=65537
 e2=65539
 c1=...
 c2=...

同じ平文と同じ鍵Nと違う鍵e1,e2を使った場合拡張ユークリッド互除法で復号できます。具体的なアルゴリズムは調べたらすぐ出てきます。
余談ですが、公式が値を間違えて掲載していたようで、いろんなチームが困ってたらしいですね。僕もその一人で報告して事なきことを得ました。

[Misc100]便利なプロトコル

[Description]
DHCPは便利なプロトコルだが、IP対応機器に対してしかIPアドレスを配布できない問題がある。1998年、この問題を克服した画期的なプロトコルが提案された。そのタイトルを答えよ。

RFC2322に洗濯バサミDHCPによるIPアドレスの管理方法というのがあります。英語名を答えたらおわり。

[Crypt400]

In the server, addition with encrypted flag and your encrypted message is computed.
Following cryptosystem has additive homomorphism.


日本語に直すと、鯖に暗号化した値を送りつけると暗号化されたフラグと足されて帰ってくるそうです。で、送りつける値は暗号化した値と公開鍵でした。

pdfに掲載されている暗号方式は岡本内山暗号と呼ばれるものであり、加法準同型の特性があり、ざっくりというと暗号化した状態で足し算の出来るというものらしいです。

wikipediaに概要が載っています。pdfが読めない過酷な環境をお持ちの人はこれ読んで下さい。

解法としては適当な文字('A'とか)を暗号化して、鯖に送りつけて、帰ってきた値を復号化して、'A'の文だけ値を引いたら答えが得られます。




で解けませんでした。

なぜ解けなかったかと言うと、代数学をちゃんとやったことの無い私には鍵を生成する方法がわかりませんでした。なのでわかったことをレポートします。

暗号化に必要な値はn,g,h,rから成り立ち、
n=p^2*q(p,qは素数)
gはnを法とする剰余類環に属する値(この作り方がわかんなかった)
h = g^n mod n
rはnを法とする剰余類環に属する値
です。この内、n,g,hを公開鍵とし、p,qを秘密鍵とします

pdf読んでるとわかったのですが、pは暗号化する値よりも大きくないといけないそうです。それ以外にも条件があるかもしれません。分かる方は教えてください。

以上です。プログラミングと数学があんまり得意でない私には解くことが出来ませんでした。めっちゃ悔しいです。

ふるつき 
gは0から(n-1)までのあたいで gcd(g,p) != 1かつgp = pow(g,p-1,p*p) としたときに pow(gp, p, p*p) != 1を満たす値

へーそうなんだ。知らなかった。

まとめ

正直私が解けた問題は以上です。Crypt400の準同型暗号のソルバは書ききれず死亡しました。あんまりよろこんでいないのは僕がこの問題を解くぞ~と大口叩いていたのに解けなかった所によるものです。
同じチームのふるつき君や公式のスタッフによるとチームワークがよかったそうです。僕は正直みんながやっていたbinやKoHには参加していないので、能動的にチームに参加したかと言われるとあまり頷けませんが、自分が解くときに協力してもらったので、これもチームワークかなと振り返ります。
すらすと君がパケットを読む鬼と化してて強かった ハインド君のバイナリ解析能力が一年間で強くなってて危機を感じた
ふるつきがふるつきしてた

最後になりますが、チームの皆様控えめに言って最高でした!!スタッフの皆様も対応ありがとうございます!!台風お前は許さねぇ!!皆様方お疲れ様でした!

2017年8月22日火曜日

反省

いくつかイベント(kosenconf in 舞鶴2とか)参加しましたが、投稿できてません...
(実はこのブログの存在を忘れてました)

2017年3月5日日曜日

「人工知能が感情を持つとき」に行ってきた

https://kscan.jp/events170305/

2017年3月5日にサイエンスワークショップinけいはんな「人工知能が感情を持つとき」に行ってきました。弊学の教授からパネラーとしての募集があり参加することになりました。

瀬名秀明先生による基調講演

冒頭によくある疑問(AIによる支配、職業を奪う等)と回答が紹介されましたが、あまり言及されなかった。
メモ長いので、感想の後に書きます。

学生とのディスカッション

瀬名秀明先生と同志社大学の学生さんと奈良女子大の学生さんと弊学の学生がATRの堀川さんがファシリテータとしてディスカッションする
...予定でしたが、瀬名秀明先生の基調講演が白熱したものとなり、学生たちが自分たちの思う「人間らしさ」について順番に話した。
不満を言う、空気を読むこと、究極の柔軟、インサイトを判断すること、忘れることなどなど。
あまり哲学について書くと批判されるので書きませんが、スタンフォードの監獄実験やカントの考えを持ち出し説明しました。

昼ごはん

けいはんな近くのマクドナルドに行きました。弊学教授と同志社大学の人達と弊学の人達で同じテーブルを囲み話しました。あんまりおもしろいことはなかったので略。

Microsoftのエバンジェリストの増渕さんによる講演

講演に聞き入ってしまいあまりメモ出来なかったので心に残ったこと。
子どもがスマホをさわる機械が多くなる昨今。スマホは消費者マインドがついちゃって、あんまりよくない!
だから http://www.town.seika.kyoto.jp/contents_detail.php?co=kak&frmId=13036 の3番のようなことをやってるそうです。
生産者マインドを体験して欲しいそう。

私もやってみました。

直前に学習済みのAIを使って表情を判定するデモをやっていたので、そこからインスピレーションを受けてガガガガガーッとプリントを埋めました。作ってみたいな。

感想

瀬名秀明先生とのディスカッションは普段授業でもやる機会がない哲学的なことについて話すことが出来て認知欲求が満たされました(素人質問にやさしく答えて頂いた先生とファシリテータの堀川さんありがとうございます!!)
マイクロソフトさんの講演は何度もエンジニア魂に火をなんどもつけるような刺激を受けるものだったので非常に楽しかったです。上に書いたヤツは春休み中には作る。
何より楽しかったです。ありがとうございました。

基調講演の内容のメモ

「不気味の谷」

「人間」に似て非なるものが不気味の谷となるのではなく、「自分」に似て非なるものが不気味の谷である。


ダナ・ハラウェイ氏の2つの宣言

「サイボーグ宣言」(現代人はキメラである=人間は機械と生命の混合体で、脱性差)という考えを発表した後、「伴侶種宣言」で異種間との生物の共生、コンパニオン動物とのありかたに変わったとかなんとか
(メモをあんまとっていなくて覚えてない)
瀬名先生は前者の宣言より、後者のほうがおもしろいと考えているらしいです。


ショートショートの作り方から学ぶ考え方

形容詞と名刺のペアをいくつも作り、それを1つずらす。それにより産まれた新たな言葉に対して発明品を考え、メリット・デメリットを考える。という方法論を説明した後、機械的に基本構造は作れても、これでは起承転結のストーリーは作れない。
つまり、ある程度機械化(AI)出来ても、ストーリーを生成することは難しい(ルーティンを超えなければ、本当に面白いお話はつくれない)
即ち、好奇心とか何がおもしろいかを考えるのは人間しか出来ないそう。


いろいろ

人間らしさとは何かを知りたいから、棋士や作家がAI研究に協力する
小説の評論やレビューはAIが代行する可能性がある
電脳戦は棋士とAIのバトルでは無く、人間がルールを変えていく(ここがルーティンでは無く人間らしさ、だそうです)ことにより観客を楽しませた歴史。
枠組みの中で考えるのでは無く、枠組みを変え、ルールを変えていくことで、新たな楽しみや評価の仕方、社会倫理・道徳観の想像が産み出される。


石黒先生と池上先生の対話から学ぶ

石黒浩「生命の最低の条件とは何だろう?」→池上高志も答えられない。より、
知能や生命の本質とは何か?を研究したいのに「人間そっくりなら人間だ」で終わってしまって、その先は一流研究者でもうまく答えられない。


他人を思いやるあたたかい心とは

共感(シンパシー):他人の気持ちといつの間にか同調している、受動的な心の状態(state)
感情移入(エンパシー):自分とは違う立場の他人の気持ちを忖度する、能動的な心のパワー(ability, power) ヒトが進化の過程で獲得した高度な情動


「思いやり」は機械でもできる

ドアを開ける、椅子を引くなどは技術的なこと。これはロボットでもできる。それよりも人間はもっとロボットになるべきでは...?という主張もあった。
サービスはロボットと人間が行うこと。


まとめの話

どんな人の生活にも「人間らしさ」と「ロボットらしさ」が共存している。
それを見極めて賢くデザインしてゆくことが、これからの本当に豊かなロボット/AI社会ではないだろうか。

2017年3月1日水曜日

n回目の開設

bloggerを開設しました。
前まで使ってたサービスが使いにくかったので乗り換えました。
イベントが起きたら更新します。