C 語言使用 OpenSSL 實作 PBKDF2 教學與範例

介紹如何在 C 語言中使用 OpenSSL 函式庫實作各種 PBKDF2 密鑰延伸演算法。 PBKDF2(Password-Based Key Derivation Function)是一種密鑰延伸(key stretching)演算法,透過反覆的大量運算,降低密鑰產生的速度,讓暴力破解的難度變高。實務上 PBKDF2 會搭配 SHA1、SHA256、SHA512 等雜湊演算法,以下是以 OpenSSL 函式庫實作的 C 語言範例。 ...

December 8, 2022 · G. T. Wang

C 語言使用 OpenSSL 實作 AES 加密、解密教學與範例

介紹如何在 C 語言程式中使用 OpenSSL 函式庫,以 AES 對稱式加密演算法實作資料的加密與解密。 安裝 OpenSSL 函式庫 若在 Ubuntu Linux 中,可以使用 apt 安裝 OpenSSL 函式庫與編譯相關套件: ...

December 6, 2022 · G. T. Wang

C++ 程式語言 std::set 集合容器用法教學與範例

介紹如何在 C++ 程式中使用標準程式庫的 set 儲存集合的資料。 std::set 簡介 C++ 標準函式庫中的 set 可以用來儲存集合的資料,set 裡面的元素都是唯一的,不可以重複,可以新增或刪除元素,但不可以修改元素的值。 ...

June 29, 2021 · G. T. Wang

C++ 程式語言 std::map 儲存鍵值對應用法教學與範例

介紹如何在 C++ 程式中使用標準程式庫的 map 處理鍵值對應(key-value)的資料。 std::map 簡介 C++ 標準函式庫中的 std::map 可以用來儲存一對一鍵值對應的資料,例如姓名對應年紀的資料。 ...

June 28, 2021 · G. T. Wang

Cppcheck:C/C++ 靜態程式碼分析工具使用教學與範例

介紹如何在 Linux 中使用 Cppcheck 靜態程式碼分析工具檢查,偵測 C/C++ 程式的臭蟲。 Cppcheck 是一個適用於 C/C++ 程式碼的靜態分析工具,可以偵測程式碼中的臭蟲(bugs)以及不合理的異常程式結構,其設計原則為低偽陽性(false positives),亦可用於非標準的語法結構(例如嵌入式專案)。 ...

May 2, 2021 · G. T. Wang