授業計画 |
| 回数 |
学習目標 |
学習項目 |
| 1 |
セキュリティ、情報セキュリティの考え方がわかる。 |
情報セキュリティの一般的な知識を学ぶ。 |
| 【理解度確認】実習課題・小テスト |
| 2 |
利用者としてスマートフォンのセキュリティがわかる。
開発者としてのスマートフォンのセキュリティが必要な事がわかる。 |
利用者の立場で気を付ける事、守るべき情報資産について学ぶことで、開発者がセキュリティを学ばなければいけない事を理解する。 |
| 【理解度確認】小テスト |
| 3 |
スマートフォンセキュリティに関する演習を実施する |
開発者の立場で気を付ける事、守るべき情報資産について、過去のセキュリティ事例を参照し学ぶ。 |
| 【理解度確認】実習課題 |
| 4 |
個人情報保護法が理解出来る。 |
個人情報保護法を理解することで利用者情報が重要な事を学び、その取扱い方法について学ぶ。 |
| 【理解度確認】小テスト |
| 5 |
プライバシーポリシーが理解出来る。
Android OSの基本的なセキュリティ機能が説明出来る。 |
プライバシーについて学ぶ事で利用者情報が重要な事を学び、プライバシーポリシーや同意取得について理解する。
AndroidOSのセキュリティ機能(パミッション、サンドボックス)について学ぶ。 |
| 【理解度確認】小テスト |
| 6 |
デジタル署名、サーバ証明書等の仕組みが説明が出来る。
暗号技術について基本的な説明が出来る。 |
基本的な暗号技術を学ぶことで以降のセキュリティ事項を学べるようにする。
通信経路がどのような仕組みで安全に保たれているかを学ぶ。 |
| 【理解度確認】・小テスト |
| 7 |
暗号化に関する演習を実施する
|
基本的な暗号技術についてコーディング技法を学ぶ |
| 【理解度確認】実習課題 |
| 8 |
ファイル入出力でのセキュリティ注意事項について説明が出来る。
脆弱性検査サービスについて説明が出来る。 |
Androidにおけるファイル入出力(ファイルモード、外部記憶装置)やキーストア利用時のセキュリティ上注意する事項について学ぶ。
脆弱性検査サービスについてどのようなものか学ぶ。 |
| 【理解度確認】小テスト |
| 9 |
脆弱性検査サービスを利用し、脆弱性を解消出来る。
サーバーサイドのセキュリティの注意事項が説明が出来る。 |
脆弱性検査サービスを利用し、各自で作成したアプリの脆弱性を発見・解消する。
スマフォアプリが接続するサーバ側で良くある脆弱性を学ぶ。 |
| 【理解度確認】小テスト |
| 10 |
サーバー攻撃に対する演習を実施する
|
SQLインジェクションを防ぐコーディングを学ぶ
|
| 【理解度確認】実習課題 |
| 11 |
サーバー攻撃に対する演習を実施する |
XSS+セッションハイジャックを防ぐコーディングを学ぶ |
| 【理解度確認】実習課題 |
| 12 |
アプリの解析方法、解析が簡単な事による問題点を学ぶ。 |
暗号鍵のハードコーディング、機微な情報、ロジックをアプリ内に含めてはいけない事を学ぶ。 |
| 【理解度確認】小テスト |
| 13 |
アプリの解析を行う |
実際にアプリの解析を行い、どのように解析され、情報が取得されるのかを知り、セキュリティについて考え対応策を学ぶ。 |
| 【理解度確認】実習課題 |
| 14 |
アプリの解析に対する難読化を行う |
実際にアプリの解析を行い、難読化および署名の技法を学ぶ
|
| 【理解度確認】実習課題 |
| 15 |
試験を行い、習熟度を確認する。 |
試験実施 |
| 【理解度確認】試験 |