|| 英語(English)
学習支援計画書(シラバス) 検索システム
専門教育課程 メディア情報学科
授業科目区分 科目名 単位数 科目コード 開講時期 履修方法
専門教育課程
専門科目
専門
ネットワークとセキュリティ演習
Network and Security Laboratory
2 F031-01 2024年度
6期(後学期)
修学規程第4条を参照
担当教員名
*印は、実務経験のある教員を示しています。
授業科目の学習・教育目標
キーワード 学習・教育目標
1.情報ネットワーク 2.ソケット 3.情報セキュリティ 4.暗号 5.地域連携 情報ネットワークと情報セキュリティに関するより実践的な技術をプログラミング演習によ り修得する。ネットワーク技術としてはTCP/IPとアプリケーションプロトコルについて学習 し、セキュリティ技術としては暗号・認証アルゴリズムのプログラミング技法についてを学 ぶ。C言語またはJava言語を用いてこれらの技術を組み合わせたプログラムを作成すること により、実用的なプログラミング能力を身につける。また、これらの技術が実際の社会でど のように必要とされ役立っているかを、地域の実例を通して学び、理解を深める。
授業の概要および学習上の助言
情報ネットワーク技術と情報セキュリティ技術を利用するツールの操作方法と、それらのソフトウェアを作成するためのプロ グラミング技法を学ぶ。 また、地域連携活動の一環として、情報ネットワーク技術や情報セキュリティ技術を活用した地域の製品・サービスについて 学び、理解を深める。 学習項目は以下の通り。 1. LinuxでのC/Javaプログラミング 2. ネットワークプログラムの仕組み 3. アプリケーション層プロトコルの仕組み 4. ネットワークプログラミング 5. 暗号プログラミング 6. ハッシュプログラミング 7. 認証プログラミング 8. 応用システムの作成
教科書および参考書・リザーブドブック
教科書:ネットワークとセキュリティ演習[金沢工業大学] 参考書:情報セキュリティ[オーム社]、TCP/IPソケットプログラミング Java編[オーム社]、TCP/IPソケットプログラミング      C言語編[オーム社] リザーブドブック:指定なし
履修に必要な予備知識や技能
技術的な解説は「情報ネットワーク」および「情報セキュリティ」の授業で行っているため、これと関連させて学ぶこと。 プログラミングに使用する言語はCまたはJavaとする。特にC言語の能力が不十分な場合は本科目の履修・修得も困難となるた め、十分に復習しておくこと。Javaについてはサンプルの紹介程度とするが、簡単に通信・暗号・認証プログラムが作成でき て便利であるため、Javaを学ぶ科目「オブジェクト指向プログラミング」も履修していることが望ましい。
学生が達成すべき行動目標
No. 学科教育目標
(記号表記)
I,J,K TCPソケットを用いて通信プログラムを作成できる。
I,J,K 既存の暗号・認証プログラムを利用できる。
I,J,K 暗号ライブラリ等を用いて暗号または認証プログラムを作成できる。
I,J,K ネットワーク技術とセキュリティ技術を応用した独自のシステムを作成できる。
達成度評価
評価方法
試験 クイズ
小テスト
レポート 成果発表
(口頭・実技)
作品 ポートフォリオ その他 合計
総合評価割合 0 20 50 0 20 0 10 100
指標と評価割合 総合評価割合 0 20 50 0 20 0 10 100
総合力指標 知識を取り込む力 0 10 15 0 5 0 0 30
思考・推論・創造する力 0 10 20 0 10 0 0 40
コラボレーションと
リーダーシップ
0 0 5 0 0 0 0 5
発表・表現・伝達する力 0 0 10 0 5 0 0 15
学習に取組む姿勢・意欲 0 0 0 0 0 0 10 10
※総合力指標で示す数値内訳、授業運営上のおおよその目安を示したものです。
評価の要点
評価方法 行動目標 評価の実施方法と注意点
試験
クイズ
小テスト
ネットワークプログラミングおよびセキュリティプログラミングの基本技術について、その習得度を確認 するために、学期中数回に分けて実施する。 なお、授業明細表には小テストの予定回を記載しているが、実際の実施回は授業中に案内する。
レポート 地域連携活動に関する課題について調査結果等をレポートにまとめる。 ネットワークプログラミングおよびセキュリティプログラミングの基本技術の理解度や応用力を確認する ための課題プログラムの作成・実行とその技術に関する考察をレポートにまとめる。 以上を学期前半に適宜実施する。
成果発表
(口頭・実技)
作品 学習した技術を組み合わせ、応用・発展させた独自プログラム作品の作成とその内容に関する考察をレポ ートにまとめる。学期後半に取り組み、学期末に提出する。
ポートフォリオ
その他 演習中の活動および出席状況を学習態度(学習に取組む姿勢・意欲)として評価する。
具体的な達成の目安
理想的な達成レベルの目安 標準的な達成レベルの目安
ネットワークプログラミングとセキュリティプログラミングの 概要について、その必要性を十分に理解し説明できる。 基本的なネットワーク技術のプログラミング技法を理解し活用 できる。 代表的な暗号技術のプログラミング技法を理解し活用できる。 代表的な認証技術のプログラミング技法を理解し活用できる。 ネットワーク技術とセキュリティ技術を応用・発展させた独自 プログラム作品を作成し、それを自己評価できる。 ネットワークプログラミングとセキュリティプログラミングの 概要について、その必要性をおおよそ理解し説明できる。 基本的なネットワーク技術のプログラミング技法をおおよそ理 解し利用できる。 代表的な暗号技術のプログラミング技法をおおよそ理解し利用 できる。 代表的な認証技術のプログラミング技法をおおよそ理解し利用 できる。 いくつかのネットワーク技術とセキュリティ技術を組み合わせ た独自プログラム作品を作成し、それを自己評価できる。
CLIP学習プロセスについて
一般に、授業あるいは課外での学習では:「知識などを取り込む」→「知識などをいろいろな角度から、場合によってはチーム活動として、考え、推論し、創造する」→「修得した内容を表現、発表、伝達する」→「総合的に評価を受ける、GoodWork!」:のようなプロセス(一部あるいは全体)を繰り返し行いながら、応用力のある知識やスキルを身につけていくことが重要です。このような学習プロセスを大事に行動してください。
※学習課題の時間欄には、指定された学習課題に要する標準的な時間を記載してあります。日々の自学自習時間全体としては、各授業に応じた時間(例えば2単位科目の場合、予習2時間・復習2時間/週)を取るよう努めてください。詳しくは教員の指導に従って下さい。
授業明細
回数 学習内容 授業の運営方法 学習課題 予習・復習 時間:分※
1 ガイダンス  LinuxでのC/Javaプログラミング 講義・演習・質疑・自己点検 復習: LinuxでのC/Javaプログラ ミングについて復習し、これに関 する課題に取り組む。 予習: 教科書第2章を参照し、ネ ットワークプログラムの仕組みに ついて予習する。 240
2 ネットワークプログラムの仕組み  ソケットの概要  telnetコマンド、ftpコマンドの働き  E-Mailソフト、Webブラウザの働き、TCPソケット 講義・演習・質疑・自己点検 復習: ネットワークプログラムの 仕組みについて復習し、これに関 する課題に取り組む。 予習: 教科書第3〜5章を参照し、 TCPソケットとアプリケーション 層プロトコルの仕組みについて予 習する。 240
3 TCPソケット アプリケーション層プロトコルの仕組み  既存の通信プロトコル  データの取り扱い  (エンコード、バイトオーダ、構造体データ) 講義・演習・質疑・自己点検 復習: TCPソケットとアプリケー ション層プロトコルの仕組みにつ いて復習し、これに関する課題に 取り組む。 予習: 教科書第6章を参照し、実 用的なプログラミング技術につい て予習する。 240
4 ネットワークプログラミング  実用的なプログラミング技術  (DNS、ソケットオプション、データの内部表現) 講義・演習・質疑・自己点検 復習: 実用的なプログラミング技 術について復習し、これに関する 課題に取り組む。 予習: 教科書第7章を参照し、独 自プロトコルの設計について予習 する。 240
5 ネットワークプログラミング  独自プロトコルの設計 講義・演習・質疑・自己点検 復習: 独自プロトコルの設計につ いて復習し、これに関する課題に 取り組む。 240
6 プログラミング演習 小テスト 演習・質疑・自己点検 復習: これまでに学んだネットワ ークプログラミングについて復習 し、これに関する課題に取り組む 。 予習: 教科書第8章を参照し、暗 号アルゴリズムについて予習する 。 240
7 暗号アルゴリズム  AES、RSAプログラミング 講義・演習・質疑・自己点検 復習: 暗号アルゴリズムについて 復習し、これに関する課題に取り 組む。 予習: 教科書第9章を参照し、ハ ッシュアルゴリズムについて予習 する。 240
8 ハッシュアルゴリズム  SHA-256プログラミング 講義・演習・質疑・自己点検 復習: ハッシュアルゴリズムにつ いて復習し、これに関する課題に 取り組む。 予習: 教科書第10章を参照し、デ ィジタル署名(認証)アルゴリズム について予習する。 240
9 ディジタル署名(認証)アルゴリズム  RSA、DSAプログラミング 講義・演習・質疑・自己点検 復習: ディジタル署名(認証)アル ゴリズムについて復習し、これに 関する課題に取り組む。 240
10 プログラミング演習 小テスト 演習・質疑・自己点検 復習: これまでに学んだセキュリ ティプログラミングについて復習 し、これに関する課題に取り組む 。 予習: 教科書第11章を参照し、応 用システムの作成について予習す る。 240
11 応用システムの作成  ネットワーク技術とセキュリティ技術を用いた独自 プログラムの作成 講義・演習・質疑・自己点検 復習: 応用システムの作成につい て復習し、これに関する課題に取 り組む。 予習: 教科書第11章を参照し、暗 号通信のサンプルについて予習す る。 240
12 応用システムの作成  暗号通信のサンプルの説明 講義・演習・質疑・自己点検 復習: 暗号通信のサンプルについ て復習し、これに関する課題に取 り組む。 予習: 教科書第11章を参照し、メ ッセージ認証のサンプルについて 予習する。 240
13 応用システムの作成  メッセージ認証のサンプルの説明 講義・演習・質疑・自己点検 復習: メッセージ認証のサンプル について復習し、これに関する課 題に取り組む。 240
14 総合演習 演習・質疑・自己点検 復習: これまでの学習内容を復習 し、まとめておく。 これまでに学習した技術を用いて 独自のプログラム作品を作成する 。 240
15 総合演習 自己点検 講義・演習・質疑・自己点検 復習: これまでの学習内容を復習 し、まとめておく。 240