密碼學基礎與應用

ECDSA數位簽章在每次簽章時都使用秘密的亂數 k。關於 k 的處理方式的說明,正確的是下列何者?

  1. Ak 包含在簽章中公開,因此相同的值使用幾次都不影響安全性
  2. B若對不同訊息的簽章使用相同的 k,就能由兩個簽章計算出私密金鑰
  3. C即使 k 是可預測的值,只要私密金鑰本身沒有外洩,簽章就不會被偽造
查看答案與解析

正確答案:B. 若對不同訊息的簽章使用相同的 k,就能由兩個簽章計算出私密金鑰

ECDSA的簽章 (r, s) 由 k、訊息的雜湊值與私密金鑰計算而得。若以相同的 k 對兩則訊息簽章,就能從兩個 s 的式子消去 k,求出 k 與私密金鑰。已知即使 k 只有部分位元有偏差或可被預測,也能從大量簽章求出私密金鑰。因此要使用品質良好的亂數,或像RFC 6979那樣,由私密金鑰與訊息確定性地產生 k。

  • A. k 本身並不公開。使用相同的 k 會使簽章的 r 相同,成為求出私密金鑰的線索。
  • B. 正確。重複使用相同的 k,會直接導致私密金鑰外洩。
  • C. 只要知道 k,就能由簽章的式子計算出私密金鑰。知道私密金鑰就能偽造簽章。
練習這個領域 前往領域頁面

密碼學基礎與應用的其他題目

  1. 瀏覽器驗證網頁伺服器的憑證時,關於憑證鏈的說明,正確的是下列何者?
  2. 驗證TLS的憑證時,除了確認簽章鏈與有效期間,也要確認所要連線的主機名稱是否包含在憑證的SAN(主體別名)中。這項確認不可或缺的理由,正確的是下列何者?
  3. 關於憑證透明度(Certificate Transparency,CT)機制的說明,正確的是下列何者?
  4. TLS 1.3(RFC 8446)相對於TLS 1.2的變更,正確的是下列何者?
  5. TLS 1.3的加密套件 TLS_AES_128_GCM_SHA256 所指定之內容的組合,正確的是下列何者?

這個領域的比較