Linux 使用 TPM 2.0 產生真實隨機亂數教學與範例

介紹如何在 Linux 系統中使用 TPM 2.0 產生真實的隨機亂數(true random numbers)。 TPM(Trusted Platform Module)是一個安全加密處理器,透過加密金鑰來保護硬體的安全,而 TPM 也同時意指安全加密處理器的國際標準(也稱為 ISO/IEC 11889),在實務上 TPM 可用於安全開機(secure boot)、金鑰儲存以及隨機亂數的產生等。 ...

May 28, 2023 · G. T. Wang

hashcat 密碼雜湊快速破解工具使用教學與範例

介紹如何使用 hashcat 搭配各種字典檔與破解模式,快速破解各種類型的密碼雜湊。 hashcat 是一個快速破解密碼雜湊的開放原始碼工具,支援 5 種破解模式、300 種以上的雜湊演算法、CPU 與 GPU 等各種硬體加速,可運行於 Linux、Windows 與 macOS 作業系統,當單一台電腦運算能力不足時,hashcat 也可以搭配其他的軟體架構,使用多台電腦建置分散式密碼破解系統,減少破解密碼所需要的時間。 ...

May 22, 2023 · G. T. Wang

Ubuntu Linux 安裝、使用 Crypto++ 加密函式庫教學與範例

介紹如何在 Ubuntu Linux 系統中安裝 Crypto++ 加密函式庫,並編譯使用 Crypto++ 的 C++ 程式碼。 Crypto++(亦稱 CryptoPP、libcrypto++ 或 libcryptopp)是一套開放原始碼的 C++ 密碼學函式庫,除了完整支援常見的演算法之外,Crypto++ 也包含了較冷門、較少被使用的演算法,目前已廣泛被學術界與業界使用。 ...

December 12, 2022 · G. T. Wang

OpenSSL 指令產生、驗證 ECDSA 橢圓曲線數位簽章教學與範例

介紹如何使用 OpenSSL 指令產生橢圓曲線加密金鑰,以 ECDSA 對檔案進行數位簽章,並驗證簽章有效性。 OpenSSL 指令實作 ECDSA 橢圓曲線數位簽章 在實作 ECDSA 之前,要先決定採用的橢圓曲線,我們可以使用已下指令查詢 OpenSSL 中支援的橢圓曲線: ...

December 5, 2022 · G. T. Wang

OpenSSL 指令實作橢圓曲線 ECDH 金鑰交換與 AES 加密教學與範例

介紹如何以 OpenSSL 的指令實作橢圓曲線 ECDH 金鑰交換,並參考 ECIES 加密架構,搭配 AES 演算法加密資料。 本篇文章屬於個人學習記錄,內容可能有誤,僅供參考,請勿用於正式環境。 OpenSSL 指令實作 ECDH 金鑰交換 橢圓曲線迪菲-赫爾曼(Elliptic Curve Diffie–Hellman,簡稱 ECDH)金鑰交換方法是雙方利用由橢圓曲線密碼學建立的公鑰與私鑰對,在一個不安全的通道中,建立一組雙方共享的密鑰。 ...

December 4, 2022 · G. T. Wang