理工学部Faculty of Science and Engineering
PRI300XF(情報学基礎 / Principles of informatics 300)数理工学Mathematical engineering
寺杣 友秀Tomohide TERASOMA
授業コードなどClass code etc
学部・研究科Faculty/Graduate school | 理工学部Faculty of Science and Engineering |
添付ファイル名Attached documents | |
年度Year | 2022 |
授業コードClass code | H6815 |
旧授業コードPrevious Class code | |
旧科目名Previous Class title | |
開講時期Term | 秋学期授業/Fall |
曜日・時限Day/Period | 月3/Mon.3 |
科目種別Class Type | |
キャンパスCampus | 小金井 |
教室名称Classroom name | 各学部・研究科等の時間割等で確認 |
配当年次Grade | |
単位数Credit(s) | |
備考(履修条件等)Notes | |
他学部公開科目Open Program | |
他学部公開(履修条件等)Open Program (Notes) | |
グローバル・オープン科目Global Open Program | |
成績優秀者の他学部科目履修制度対象Interdepartmental class taking system for Academic Achievers | |
成績優秀者の他学部科目履修(履修条件等)Interdepartmental class taking system for Academic Achievers (Notes) | |
実務経験のある教員による授業科目Class taught by instructors with practical experience | |
SDGsCPSDGs CP | |
アーバンデザインCPUrban Design CP | |
ダイバーシティCPDiversity CP | |
未来教室CPLearning for the Future CP | |
カーボンニュートラルCPCarbon Neutral CP | |
千代田コンソ単位互換提供(他大学向け)Chiyoda Campus Consortium | |
カテゴリー<理工学部>Category |
経営システム工学科 学科専門科目 |
すべて開くShow all
すべて閉じるHide All
Outline (in English)
(Course outline) Study coding theory which is basics of
information security as an application of algebra.
Moreover
we study several types of coding theories.
(Learning Objectives) Understand the cryptography and related network security.
(Learning outside of class room) Practice a method of making
simplified system of cryptography
(Grading criteria/policy) Evaluate the skill to making public-secret key cryptography using python correcting codes. Term-end examination (70%), report (30%)
授業で使用する言語Default language used in class
日本語 / Japanese
授業の概要と目的(何を学ぶか)Outline and objectives
暗号システムは、初等整数論の知識とアルゴリズムの上に構築されることが多い。ここでは、暗号システムの概略とそれに必要な数学的知識、さまざまな暗号化と複号化のテクニックや解読法、攻撃法等をテーマとする。またPythonを用いて暗号のアルゴリズムを理解する。
到達目標Goal
暗号化と復号化の全体のシステムについて理解し、現代社会に暗号システムが組み込まれている現状を認識し、いくつかの暗号の構造を理解することを目指す。またPythonを用いて暗号のアルゴリズムを理解する
この授業を履修することで学部等のディプロマポリシーに示されたどの能力を習得することができるか(該当授業科目と学位授与方針に明示された学習成果との関連)Which item of the diploma policy will be obtained by taking this class?
ディプロマポリシーのうち、「DP1」と「DP2」と「DP4」に関連
授業で使用する言語Default language used in class
日本語 / Japanese
授業の進め方と方法Method(s)(学期の途中で変更になる場合には、別途提示します。 /If the Method(s) is changed, we will announce the details of any changes. )
暗号システムについて、その概略を述べるとともに、必要な初等整数論の知識やアルゴリズムについて述べる。Pythonを使って暗号のアルゴリズムを理解する。
アクティブラーニング(グループディスカッション、ディベート等)の実施Active learning in class (Group discussion, Debate.etc.)
なし / No
フィールドワーク(学外での実習等)の実施Fieldwork in class
なし / No
授業計画Schedule
授業形態/methods of teaching:対面/face to face
※各回の授業形態は予定です。教員の指示に従ってください。
第1回[対面/face to face]:暗号理論概要
共通鍵暗号、公開鍵暗号方式についての解説
第2回[対面/face to face]:初等整数論
合同剰余と拡張ユークリッドアルゴリズムについて習得する。
第3回[対面/face to face]:実習1
Pythonの使い方と拡張ユークリッドアルゴリズムを理解する
第4回[対面/face to face]:フェルマーの定理
拡張ユークリッドアルゴリズムを使った素体の計算
第5回[対面/face to face]:フェルマー判定法と素数定理
フェルマーの定理とその応用としての素数判定について理解する
第6回[対面/face to face]:実習2
冪の高速計算と素数判定
第7回[対面/face to face]:RSA暗号
公開鍵暗号であるRAS暗号を理解する
第8回[対面/face to face]:実習3
RSA暗号のアルゴリズムを構築する。
第9回[対面/face to face]:ディフィーヘルマン鍵共有とエルガマル暗号
鍵共有の方式として代表的はディフィーヘルマン鍵共有について理解する
第10回[対面/face to face]:楕円曲線
楕円曲線の加法について学ぶ
第11回[対面/face to face]:素体上の楕円曲線
素体上の楕円曲線の加法の計算について学ぶ
第12回[対面/face to face]:楕円曲線ディフィーヘルマン鍵共有
楕円曲線ディフィーヘルマン鍵共有について学習する
第13回[対面/face to face]:実習4
楕円曲線の加法の高速計算と楕円曲線ディフィーヘルマン鍵共有のアルゴリズムを習得する
第14回[対面/face to face]:電子署名
電子署名について学習する
授業時間外の学習(準備学習・復習・宿題等)Work to be done outside of class (preparation, etc.)
【本授業の準備・復習等の授業時間外学習は、4時間を標準とする】割り切れる、約数、倍数、公約数などの整数に関する事項を思い出しておくと講義の理解の助けとなるであろう。また、身近にある暗号や認証についても興味を持ってほしい。
テキスト(教科書)Textbooks
講義で配布する
参考書References
講義中に指示をする
成績評価の方法と基準Grading criteria
期末試験(70%)(ノート等持ち込み不可)に授業中の学習態度とレポート(30%)を加味して成績をつける。この講義では理論を大局的に学ぶことが重要になるので出席も重視し、出席率が50%を割る学生は採点の対象とはしない。
学生の意見等からの気づきChanges following student comments
暗号はインターネットで使われる技術で、興味を持つ学生がかなりの数存在する。