Bài giảng Lập trình an toàn - Chương 4: Mã hóa đối xứng trình bày các nội dung: Biểu diễn khóa, chuyển đổi chuỗi hexa và khóa nhị phân, mã hóa và giải mã Base64, các phương pháp mã hóa đối xứng, mã hóa đối xứng với OpenSSL, mã hóa đối xứng với Microsoft Crypto API. Mời các bạn cùng tham khảo nội dung chi tiết.
Chương 4 Mã hóa đối xứng Symmetric Crytography Lương Ánh Hoàng hoangla@soict.hut.edu.vn Nội dung 4.1 Biểu diễn khóa 4.2 Chuyển đổi chuỗi hexa và khóa nhị phân 4.3 Mã hóa và giải mã Base64 4.4 Các phương pháp mã hóa đối xứng 4.5 Mã hóa đối xứng với OpenSSL 4.6 Mã hóa đối xứng với Microsoft Crypto API 56 4.1 Biểu diễn khóa • Khóa đối xứng: Một số rất lớn sử dụng để mã hóa và giải mã thơng điệp • Biểu diễn khóa: • Phân tách thành các byte và lưu dưới dạng một mảng unsigned char key[KEYLEN_BYTES] • Biểu diễn dưới dạng số nguyên lớn nếu khóa có chiều dài 64-‐bit long long key • Biểu diễn dưới dạng chuỗi chữ số hexa char key[]=“AF12B5C7E0…” • Biểu diễn dưới dạng xâu ASCII (mật khẩu) char key[]=“secret!!!” • Lưu ý về tính “endian” của máy thực hiện mã hóa 57 4.2 Chuyển đổi chuỗi hexa và khóa nhị phân • Chuyển đổi khóa nhị phân sang dạng chuỗi chữ số hexa #define MAX_KEY_LEN 32 unsigned char key[MAX_KEY_LEN]; char result[MAX_KEY_LEN*2+1]; for (int i=0;i