善用尋找功能來找自己想知道的字喔~

----------------------------------------------------------------------------------------------

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

三角函數1.png

三角函數2.png

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

我們先定義 Reed-Solomon Code 的生成矩陣 (Generator Matrix) 和奇偶檢驗矩陣 (Parity Check Matrix)。首先有一串非0而且值都不一樣的code locators a0,a1,...,an-1,以及另外一串非0的 column multipliers v0,v1,...,vn-1。奇偶檢驗矩陣定義成

RS.PNG

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

我們先介紹 Product Code。已知 A 是一個 [nA,kA,dA]q code ,B 是一個 [nB,kB,dB]q code。A和B的product code就記作A ⊗ B ,是一個 [nAnB,kAkB,dAdB]q code。具體來說,我們假設 A 是一個 [8,1,8]的 Repetition code (簡單來說 A 會把1個數字重複8次變成密碼) 而 B 是一個 [4,3,2]的 Parity Check code (B會根據3個位置當中1的數量調整第4個位置讓1總共有偶數個)。照剛剛的定義,A ⊗ B 就是 [32,3,16]2

       比如說 u = (101),那麼A會把它加密成

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

       我們在進入正題之前要先介紹Codeword跟Code的關係,我們把一些碼字 (Codeword) 的集合定義成 Code (代號C)。舉例來說 C = {000,101,111},其中000, 101, 111分別就是三組 Codeword 。其中我們把Codeword的長度定義成length n,把 Codeword 的組數取2為底的log然後定義成dimension k (也就是說 k = log2|C|)。如果 C 的每個 Codeword 都有一樣的 length 那麼 C 就是 Block Code。如果 C 的任兩個 Codeword 相加會等於 C 的另外一個 Codeword,那麼 C 就是Linear Code (因為有線性的特性)。要注意的是這裡的數字都是0跟1組成的,所以0+0=0,1+0=1,1+1=0。

        舉例來說 C = {000,100,001,101} 那麼 |C| = 4 ,Codeword 的 length = 3,而 dimension k = log24 = 2。我們隨便把兩個 Codeword 相加就會發現相加完的結果依然是 Codeword。000 + 100 = 100,100 + 101 = 001,100 + 001 = 101 等等,所以這是一個Linear code。此外,因為所有 Codeword 的 Length 都是3,所以這同時也是一個 Block code。

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

       在開始介紹McEliece的算法之前,我們要先簡單說明一點背景知識。Alice想要傳送一段訊息給Bob但是又不想被Eve知道訊息的內容,Alice就必須把她想傳送的訊息加密,Bob則把收到的訊息解密,如此一來就算Eve攔截到傳送中的訊息也只能看到加密後的版本 (加密跟解密方式晚點會介紹)。這裡Alice想傳送的訊息叫做明文(Plaintext),而加密過後的訊息則叫做密文(Ciphertext)。

       McEliece的加密方法總共會有五個參數,其中三個參數 (代號S,G,P) 組成私鑰 (Private Key),另外兩個參數 (代號G',t) 則會組成公鑰 (Public Key)。首先Bob (欲接收訊息者) 會設計出公鑰以及私鑰,顧名思義Bob會將公鑰公開而將私鑰自己藏起來,這麼一來大家都知道Bob的公鑰了。Alice就可以把自己想要傳送的訊息和Bob的公鑰相乘 (在電腦的世界裡我們的資料都會被量化成0跟1,所以你可以把Alice想傳送的訊息以及公鑰想像成一串0跟1組成的數字,這兩串數字乘起來就是加密的第一步),接著Alice還會再加上一段誤差向量 (Error Vector),代號寫作 e。

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

rot90是一個很方便也很常用的指令,可以把陣列轉向。舉例來說我們創造一個由1到10組成的向量

a = 1:10

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

reshape可以把一段陣列重新排成不同的樣子,舉例來說A是1到10的陣列。

A = 1:10;

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

舉例來說,函數是1/((R^2)*(c^2)*(s^2)+2*R*c+1),其中R=1k歐姆,c=100*10^(-9)法拉。波德圖就可以用以下的程式碼畫出來。

R = 1000;

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

當我們在執行Matlab的指令時有時會想知道這些複雜的運算要花多少的時間,或是我們想比較哪一種方法可以比較快產生我們想要的結果,這時候就可以用tic toc來完成這件事。可以把tic toc當成Matlab的計時器來用,舉例來說如果我們想知道畫一張圖要多少時間就可以用以下的指令。

tic

文章標籤

Worldexplorer 發表在 痞客邦 留言(0) 人氣()

Close

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

reload

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼