Giới thiệu về mật mã cổ điển (Phần 1)

Thảo luận trong 'ACM/Programming' bắt đầu bởi WhiteHat Support #ID:658, 16/10/14, 02:10 PM.

  1. WhiteHat Support #ID:658

    WhiteHat Support #ID:658 WhiteHat Support

    Tham gia: 10/10/14, 04:10 PM
    Bài viết: 6
    Đã được thích: 2
    Điểm thành tích:
    8
    1. Lịch sử phát triển của mật mã
    Trong lịch sử phát triển của nhân loại, từ khi con người xuất hiện nhu cầu trao đổi thông tin với nhau thì nhu cầu giữ bí mật và đảm bảo tính an toàn của những thông tin đó cũng xuất hiện theo. Đó có thể là những thông tin quân sự quan trọng không thể để lộ ra cho kẻ thù, những âm mưu được ấp ủ, chỉ được thông báo cho những người liên quan, những ghi chép về kho báu hay thậm chí là thư từ cá nhân.

    Sự cần thiết của việc tìm ra một phương pháp đơn giản, hiệu quả để đảm bảo an toàn cho một thông điệp cần gửi đi chính là nguyên nhân của sự hình thành mật mã.

    Và cuộc chiến giữa một bên luôn muốn che giấu thông tin của mình còn một bên luôn muốn đọc được những thông tin đó đã thúc đẩy mật mã ngày càng phát triển.


    2. Các khái niệm cơ bản
    - Ngành Mật mã (cryptology) thường được quan niệm như sự kết hợp của 2 lĩnh vực con:


    • [*=1]· Sinh, chế mã mật (cryptography): nghiên cứu các kỹ thuật toán học nhằm cung cấp các công cụ hay dịch vụ đảm bảo an toàn thông tin



    • [*=1]· Phá giải mã (cryptanalysis): nghiên cứu các kỹ thuật toán học phục vụ phân tích phá mật mã và/hoặc tạo ra các đoạn mã giản nhằm đánh lừa bên nhận tin.

    Hai lĩnh vực con này tồn tại như hai mặt đối lập, “đấu tranh để cùng phát triển” của một thể thống nhất là ngành khoa học mật mã (cryptology). Tuy nhiên, do lĩnh vực thứ hai (cryptanalysis) ít được phổ biến quảng đại nên dần dần, cách hiểu chung hiện nay là đánh đồng hai thuật ngữ cryptography và cryptology. Theo thói quen chung này, hai thuật ngữ này có thể dùng thay thế nhau. Thậm chí cryptography là thuật ngữ ưa dùng, phổ biến trong mọi sách vở phổ biến khoa học, còn cryptology thì xuất hiện trong một phạm vi hẹp của các nhà nghiên cứu học thuật thuần túy.

    - Plaintext: Văn bản ban đầu khi chưa được mã hóa, thường được gọi là bản rõ.

    - Ciphertext: Văn bản sau khi đã được mã hóa, thường được gọi là bản mã.

    - Encrypt: Hành động biến đổi bản rõ thành bản mã, sử dụng một thuật toán mã hóa nào đó.

    - Decrypt : Hành động biển đổi bản mã thành bản rõ, sử dụng thuật toán giải mã tương ứng với thuật toán mã hóa đã được sử dụng để tạo ra bản mã.


    3. Mật mã cổ điển
    Ta có nhiều cách để phân loại mật mã.

    - Dựa theo tính chất của khóa ta có thể phân chia thành Mật mã khóa đối xứng(còn được gọi là mật mã khóa bí mật) và Mật mã khóa bất đối xứng (mật mã khóa công khai).

    - Dựa theo cách thức tiến hành mã hóa ta có thể phân chia thành Mật mã dòng (Stream Cipher) và Mật mã khối (Block Cipher).

    - Dựa theo thời gian xuất hiện hệ mã hóa ta có thể phân chia thành mật mã hiện đại và mật mã cổ điển. Mật mã cổ điển là các loại mật mã xuất hiện trước năm 1970 còn mật mã hiện đại là các mật mã xuất hiện trong khoảng thời gian từ 1970 đến nay.​

    Bản thân mật mã cổ điển có thể được chia thành 2 nhánh : Chuyển vị và Thay thế.
    2 nhánh này có bản chất của quá trình mã hóa khác nhau:

    - Chuyển vị : là sự thay đổi vị trí các thành phần (thường là ký tự) của bản rõ. Bản rõ và bản mã có các ký tự giống nhau, chỉ khác nhau về vị trí của các ký tự đó.

    - Thay thế : là việc thay một ký tự của bản rõ bằng một ký tự khác trong bản mã. Bản rõ và bản mã có các ký tự là khác nhau cả về số lượng và vị trí.


    Hẹn gặp lại mọi người trong phần tiếp theo trình bày về Mật mã chuyển vị.

     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
    Cord thích bài này.