結尾有提示。 必須將正確答案完整抄寫 該題才有滿分。 答案請寫在答案紙上或背面; 寫在題目旁邊的答案不計分。
諸如 sha256sum、 md5sum 這些演算法稱為 (A) 。 它們可以對輸入資料 (可以是一小段文字或是一個很大的圖檔、壓縮檔等等) 產生一串十六進位數字的輸出, 稱為 (B)。 這彷彿是輸入資料的 "指紋" 或 "摘要", 具有指認這一段文字或檔案的效果。 (A) 類型的演算法具有一些特性:
由三位電腦科學家所發明的 (F) 演算法是第一個 「非對稱式加解密」 asymmetric encryption 演算法。 它會產生兩個很大的質數 p 跟 q, 並拿它們的乘積 r=p*q 來當公鑰; 又拿 p 或 q 當私鑰。 基於 「因數分解沒有很快的算法」 這個事實來確保私鑰很難被破解出來。
大雄、胖虎、靜香、小夫每個人在各自的電腦上產生屬於自己的一對公鑰私鑰。 他們的電腦上網 (包含同學之間的電腦連線) 都需要經過學校的伺服器。 伺服器上也有一對公鑰私鑰, 是老師在管的。 如果同學之間的通訊沒有加密, 老師因為他的特殊位置 (掌握資訊流通時必須經過的節點) 就有能力對同學們進行 (G)。 小夫想要寄加密的 email 對胖虎說悄悄話。 這時他應該拿 (H) (誰的什麼鑰?) 進行加密; 而胖虎收到訊息之後, 要拿 (I) (誰的什麼鑰?) 進行解密。 大雄把他的電腦變成檔案伺服器。 他不想把檔案跟照片分享給胖虎跟小夫, 只想要信任靜香、 讓靜香可以遠端登入他的檔案伺服器。 這時必須把 (J) (誰的什麼鑰?) 傳送到對方的電腦裡。
大雄向老師告狀, 說胖虎勒索他, 他只好付了 0.1 乙太幣給胖虎。 老師查看區塊鏈上的紀錄, 上面雖然沒有任何人的名字, 但是老師可以這樣確認付款人或是收款人其中一人的身份: 老師可以寫一段文字, 叫某人用 (K) (誰的什麼鑰?) 進行數位簽章、 產生密文 (cypher text), 然後老師就可以用區塊鏈上查到的 (L) (誰的什麼鑰?) 去對它進行解密, 驗證是否得到與原始文字相同的明文 (plain text)。 這種 (看起來像是一串亂碼的) 密文沒有保密的效果, 主要是用來確認簽章者的身份。
電腦產生金鑰的過程, 為了要產生很大的質數, 需要用到 (M) 這種類型的演算法。 2005 年時, 有一家公司推出一個可以 「在公鑰夾裡帶部分私鑰資訊」 的 (M), 稱為 (N)。 後來美國國安局 (NSA) 竟然促成將 (N) 變成國家標準, 而微軟也就光明正大地從 2007 年開始將這個 「國家標準」 實作放入 windows 程式碼。 在 windows 10 之前的版本, 它一直是藏在 windows 裡的一個後門。 2013 年有一位 NSA 外包商工程師 (O) 揭發了稜鏡計畫 (PRISM) 以及 NSA 如何用許多其他黑科技監控各大資訊科技廠商的用戶, 其中也包含 (N) 的相關資訊。 他的故事被拍成一部紀錄片 「第四公民」。
一位自稱 (P) 的神秘人士於 2008 年在網路上發表了一份白皮書。 程式設計師們據此開發出了 Bitcoin, 也就是第一個區塊鏈的程式碼。 如果採用 「非託管錢包」 參與比特幣交易, 必須先用程式碼在自己的電腦裡產生一組 12 個字的 (Q)。 這組 (Q) 就像是保險箱的鑰匙一樣, 必須保護好, 不可以遺失也不可以讓別人知道。 接下來電腦會用這組 (Q) 產生私鑰、 公鑰以及 (R)。 所謂 (R) 可以把它想成是一張面額變動的紙鈔, 別人要匯款比特幣給你, 就必須知道你的 (R)。 而你則用私鑰來保護這個 (R)。
有史以來所有比特幣交易都會收錄在區塊鏈裡面, 成為一個很大的 ledger (帳本)。 所謂區塊鏈, 就是很多個區塊串成一條鏈。 每個區塊裡面存放很多筆交易紀錄。 每一筆記錄除了包含付款人 (R)、 收款人 (R)、 交易金額、 時間等等資訊之外, 還包含數位簽章跟 (S) (誰的什麼鑰?) (S) 的目的是要讓任何人都可以驗證這一筆交易的數位簽章。
這些交易紀錄在區塊裡面被整理成一個樹狀結構, 稱為 (T) Tree, 而樹的最上層數值稱為 (T) root, 它其實是一個 (B)。 你可以把它想成是本區塊內所有交易紀錄綜合起來的 "指紋", 具有防止竄改的效果, 因為如果有人試圖改變任何一筆交易紀錄的內容, 這個數值也會跟著改變。
一個區塊內還有一個特殊欄位稱為 (U), 礦工會試著在這個欄位裡填入不同的數值, 想辦法讓整個區塊的 (B) 符合某個數學條件。 一旦成功, 礦工就會把他找到的數值廣播給其他所有礦工, 請大家驗證, 而他也就可以幫這個區塊打包, 並且賺取到打包的費用, 完成一次挖礦行動。 因為人類的電腦速度越來越快, 這個數學條件也就設計成 「隨著時間演進越變越嚴格」, 讓礦工挖礦的速度能保持固定, 大約每10分鐘產生一個新的區塊。
以太坊是第一個提供 (V) 功能的區塊鏈。 所謂 (V) 簡單說就是區塊鏈上的程式嗎。 它可以設定條件 (例如時間、 某些特定交易的金額等等), 每當滿足條件時, 就自動觸發新的交易。 利用 (V) 所定義出來的 「藝術收藏品」 稱為 (W)。 其中有很多只是蓋上作者數位簽章的圖片; 有一些則是區塊鏈遊戲裡面的特殊功能裝備。 投資 (W) 的風險比投資密碼貨幣的風險又更高很多。