---
# System prepended metadata

title: 網路安全期中筆記 - 國立中興大學大資訊工程系 Autumn 2020
tags: [大三]

---

---
tags: 大三
---
# 網路安全期中筆記 - 國立中興大學大資訊工程系 Autumn 2020 

[![](https://img.shields.io/badge/最大連線數-9人%20@Nov%206%2014:08%20-green)](https://i.imgur.com/AEqRK8Y.png) [![](https://img.shields.io/badge/dynamic/json?color=blue&label=%E7%B8%BD%E8%A7%80%E7%9C%8B%E6%95%B8&query=%24.viewcount&url=https%3A%2F%2Fhackmd.io%2FW6QZqnNLRUiaFag_I0Yhug%2Finfo&suffix=人)]() [![](https://img.shields.io/badge/%E5%91%BD%E4%B8%AD%E7%8E%87-100%25完全命中-yellow)](https://hackmd.io/jZfXixhrTmWPZzYY5IH_fQ)

<p id="blessing">還敢不補課ㄏㄚˋ</p>

### 翻轉課程連結傳送門
> 1. [week6](https://www.youtube.com/playlist?list=PLz52Gu8MISz9G3BKDL0pMo_M4fw7ZfuqK)
> 2. [week7](https://www.youtube.com/playlist?list=PLY1loj6RT4Ez4NdlmAHM34gBfQpNYcs73)


<style>
#blessing{
    font-weight: bolder;
    font-size: 2em;
    text-align: center;
    margin: 20px 0px;
    animation-name: bling;
    animation-duration: 7s;
    animation-iteration-count: infinite;
    animation-timing-function:cubic-bezier(0.65, 0, 0.35, 1);
}
@keyframes bling{
0%  {color: black;}
10% {color: brown;}
20% {color: red;}
30% {color: orange;}
40% {color: yellow;}
50% {color: green; }
60% {color: blue;}
70% {color: purple;}
80% {color: gray;}
90% {color: gold;}
}


</style>

## Overview

通訊安全：密碼法 = Algorithm + key 

```mermaid
sequenceDiagram
    participant Alice
    participant Bob
    Alice->>Bob: 密文
    Note right of Alice: Eve 偷聽 
```

一個好的密碼系統對資訊安全提供四大功能

1. 機密性 (confidentiality) 確保訊息只有授權者才能取得

2. 資料完整性 (data integrity) 訊息不可被竄改或能偵測訊息是否遭受竄改

3. 可認證性 (authentication) 傳送方與接收方需身份識別 (Bob要知道Alice, Alice要知道Bob)

4. 不可否認性 (Non-repudiation) Alice不可以否認傳訊息給Bob，反之亦然。提供訊息傳送方與接受方的交易證明

> **常見對稱式加密 (Symmetric)**
對稱式加密又稱私鑰系統，如：DES, AES (兩者有同一把鑰匙做解密)
>
> **常見非對稱式加密 (Asymmetric)**
非對稱式加密又稱公鑰系統，如：RSA

### 安全性

1. 無條件安全 (Unconditionally Secure) 絕對安全

   壞蛋即使有無限的計算能力也能保帳密碼系統的安全性

   > + One-Time Pad 一次性密碼本 (使用完畢直接銷毀)
   >
   > + 量子電腦

2. 計算上安全 (Computationally Secure)

   > 雖然可以破解，但破解的時間超過該訊息的價值

3. 可證明安全

   > RSA (這輩子別想破解)

---

## 對稱式加密

### 凱撒密碼 (Caesar)

> 將明文做平移
>
> key = 1
>
> ```
> 明文：
> H E L L O W O R L D
> 密文：
> I F M M P X P S M E
> ```

### 單一字母替代法 (Monoalphabetic)

> key = "KEYWORD"
>
> ```c
> A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
> K E Y W O R D A B C F G H I J L M N P Q S T U V X Z
> 
> 轉換
> M O N O A L P H A B E T I C
> H J I J K G L A K E O Q B Y
> ```
>
> **優點**：複雜度很高
> 高達 26! = 4.03E26
>
> **破解方法：(字母頻率分析)**
>
> 英文中 E 出現的機率高達 12.7%, T: 9.0%  A: 8.2%
>
> 最少出現的比如：Q, X, Z: 0.1%
>
> 雙字母：th, he, an, in
>
> 三字母：the, ing, and

### 多字母替代法

#### 維吉尼亞密碼 (Vigenere Cipher)

> key = (2, 5, 7) = (C, F, H)
>
> 加密 = C<sub>i</sub> = (P<sub>i</sub> + K<sub>i</sub>) mod 26
>
> 解密 = P<sub>i</sub> = (C<sub>i</sub> - K<sub>i</sub>) mod 26
>
> |   00   |   01   |   02   |   03   |   04   |   05   |   06   |   07   |   08   |   09   |
> | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
> |   A    |   B    |   C    |   D    |   E    |   F    |   G    |   H    |   I    |   J    |
> | **10** | **11** | **12** | **13** | **14** | **15** | **16** | **17** | **18** | **19** |
> |   K    |   L    |   M    |   N    |   O    |   P    |   Q    |   R    |   S    |   T    |
> | **20** | **21** | **22** | **23** | **24** | **25** |        |        |        |        |
> |   U    |   V    |   W    |   X    |   Y    |   Z    |        |        |        |        |
>
> ```
>   WE ARE THE WORLD
> + 25 725 725 72572
> ------------------
>   YJ HTJ AJJ DQVSF
> ```

### 旋轉取代法
![](https://i.imgur.com/0aPKlRU.png)


### 換位加密法 (Transposition Cipher)

> 將原本的明文位子轉換掉
>
> 比如明文：I love you
>
> 密文(反轉)：uoy evol I

#### 鐡軌法

> 比如規定排成四列 (4 rows)
>
> 明文：STRIKE WHILE THE IRON IS HOT
>
> ```
> S K I H O H
> T E L E N O
> R W E I I T
> I H T R S X
> 
> 密文：
> SKIHONTELENORWEIITIHTRSX 
> ```
>
> More example:
>
> 密文：SNHLSOEDEPON 
> KEY: 分兩列
>
> ```
> S N H L S O
> E D E P O N
> ```
> SEND HELP SOON

#### 鑰匙排列法

> KEY: {4, 3, 1, 2, 5, 6, 7}
>
> 明文：ISITBYMYWINDOWWAITINGFORYOU
>
> |  4   |  3   |  1   |  2   |  5   |  6   |  7   |
> | :--: | :--: | :--: | :--: | :--: | :--: | :--: |
> |  I   |  S   |  I   |  T   |  B   |  Y   |  M   |
> |  Y   |  W   |  I   |  N   |  D   |  O   |  W   |
> |  W   |  A   |  I   |  T   |  I   |  N   |  G   |
> |  F   |  O   |  R   |  Y   |  O   |  U   |  X   |
>
> 密文：IIIRTNTYSWAOIYWFBDIOYONUMWGX
>
> **More example:**
>
> 密文：ETTH EAKI MAOT YCNX NTSG
>
> KEY: {2, 5, 1, 3, 4}
>
> |  2   |  5   |  1   |  3   |  4   |
> | :--: | :--: | :--: | :--: | :--: |
> |  E   |  N   |  E   |  M   |  Y   |
> |  A   |  T   |  T   |  A   |  C   |
> |  K   |  S   |  T   |  O   |  N   |
> |  I   |  G   |  H   |  T   |  X   |

### P盒 (Permutation box)

```
    +-----------------------+
    |  in port -> out port  |
0 +>+ 1                   1 +-->1
    |         1->5          |
1 +>+ 2                   2 +-->0
    |         2->3          |
1 +>+ 3                   3 +-->1
    |         3->1          |
0 +>+ 4                   4 +-->0
    |         4->2          |
0 +>+ 5                   5 +-->0
    |         5->4          |
    +-----------------------+

```

## 非對稱式加密

### 中國剩餘定理 (Chinese Remainder Theorem)

> 令 n1, n2, n3, ..., nk 兩兩互質
>
> n = n1, n2, n3,... (n 為最小公倍數)
> $$
> X \equiv x_1\ (mod\ n_1)
> $$
>
> $$
> X \equiv x_2\ (mod\ n_2)
> $$
>
> $$
> X\equiv x_3\ (mod\ n_3)
> $$
>
> $$
> M_i = \frac{n}{n_i}
> $$
>
> $$
> S_i=M_i^{-1}\ (mod\ n_i)
> $$
>
> $$
> \Sigma_{i=0}^{k} = x_iM_iS_i
> $$

**Example:**

> n1 = 4, n2 = 5, n3 = 7, key = 117
>
> Alice: (4, 1)
>
> Bob: (5, 2)
>
> Cindy: (7, 5)
> $$
> X \equiv 1\ (mod\ 4)
> $$
>
> $$
> X\equiv2\ (mod\ 5)
> $$
>
> $$
> X\equiv5\ (mod\ 7)
> $$
>
> $$
> n=4\times5\times7=140
> $$
>
> $$
> M_1=35,\ M_2=28,\ M_3=20
> $$
>
> $$
> S_1=3,\ S_2=2,\ S_3=6
> $$
>
> $$
> 1\times35\times3+2\times28\times2+5\times20\times6 = 817\ (mod\ 140)\equiv 117
> $$

![](https://i.imgur.com/6IQH2cN.png)

---

<style>
#author{
    border: 1px solid gray;
    border-radius: 10px;
    padding: 10px;
    width: 80%;
    margin: 10px auto;
}
</style>
<div id="author">
<p>111級中興資工</p>
<p>作者：<a href="https://github.com/liao2000">廖柏丞</a>、<a title="瑋哥" href="https://github.com/wei-coding">游庭瑋</a>、<a title="aka 中興噁男" href="https://github.com/leonardo-lin">林子安</a></p>
</div>

```mermaid
sequenceDiagram
    participant 瑋哥
    participant 文全
    瑋哥->>文全: 色色的東西
    Note right of 瑋哥: 林子安偷看
```