Cryptographic là gì

Cryptography là một thuật ngữ khá thông dụng trong lĩnh vực công nghệ nói chung và tiền điện tử nói riêng. Bạn đã từng tìm hiểu về thuật ngữ này chưa? Nếu chưa hãy cùng The Block 101 tìm hiểu rõ hơn qua bài viết này nhé!  

Cryptography là một thuật ngữ khá thông dụng trong lĩnh vực công nghệ nói chung và tiền điện tử nói riêng. Bạn đã từng tìm hiểu về thuật ngữ này chưa? Nếu chưa hãy cùng The Block 101 tìm hiểu rõ hơn qua bài viết này nhé!  

Cryptographic là gì

1. Cryptography là gì?

Cryptography đề cập tới một ngành khoa học nghiên cứu về mã hóa và giải mã thông tin, chuyên nghiên cứu các phương pháp, cách thức để chuyển đổi thông tin từ dạng “đọc-hiểu”(plaintext) sang dạng “đọc-nhưng-không-hiểu”(ciphertext) và ngược lại.

Là một ngành khoa học nghiên cứu, Cryptography thực sự phức tạp và khô khan nhưng cũng không kém phần thú vị khi áp dụng trong thực tế. Với loạt bài viết về chủ đề Cryptography, mình hy vọng phần nào sẽ đáp ứng được nhu cầu tìm hiểu của mọi người.

2. Tại sao phải sử dụng Cryptography?

Trong thực tế, Cryptography được sử dụng rất rộng rãi – nhất là trong lĩnh vực công nghệ thông tin. Mục đích của việc sử dụng mã hóa – giải mã là để đảm bảo thông tin được truyền đi không bị đọc-hiểu một cách dễ dàng.

Khi chúng ta sử dụng mạng internet hàng ngày; các thông tin cá nhân, thông tin trao đổi với người khác, nội dung chat, tài khoản email, facebook v.v. là các dữ liệu được truyền đi trên mạng và không có gì đảm bảo những thông tin này là an toàn không bị đọc trộm. Do đó mã hóa được áp dụng như một biện pháp bắt buộc nhằm giúp chúng ta tự bảo vệ chính mình an toàn trên internet.

3. Thuật toán mã hóa là gì?

Để mã hóa thông tin, Cryptography sử dụng các thuật toán để biến đổi thông tin dạng plain-text sang cipher-text và ngược lại.Áp dụng toán học và logic học, các thuật toán mã hóa được sử dụng có thể từ đơn giản đến cực kỳ phức tạp.

Ví dụ : Julie muốn mã hóa một thông tin với thuật toán đơn giản là:

Thay thế tất cả các chữ cái xuất hiện trong thông tin theo cách:

“a” thành “h”;

“h” thành “t”;

“t” thành “a”;

Như vậy với một thông điệp gốc là “whitehat” qua quá trình biến đổi sử dụng thuật toán thông điệp sẽ trở thành “wtiaetha”. Để giải mã, đảo ngược lại thứ tự của thuật toán. Julie chia sẻ với một người bạn tên Bob về thuật toán và viết một bức thư áp dụng để mã hóa. Như vậy bức thư mà Julie viết có thể nhờ Eve – một người bạn giúp gửi cho Bob mà không lo ngại việc Eve có thể hiểu nội dung bức thư hay không.

Khi tính bí mật của thuật toán chỉ có Julie và Bob biết thì tính an toàn của nội dung bức thư mới được đảm bảo. Tuy nhiên cách thức này chỉ áp dụng trước đây do hiện nay, bằng sức mạnh tính toán và xử lý tốt của máy tính, tính bí mật của thuật toán hoàn toàn có thể bị khám phá ra dẫn đến việc có thể giải mã được thông tin gốc. Ở ví dụ trên, thuật toán có thể bị Eve đoán ra bằng cách thử thay thế nhiều lần. Nếu như Eve phát hiện ra tính bí mật của thuật toán thì mức độ an toàn của nội dung thư mà Julie gửi đi đã bị phá vỡ hoàn toàn.

4. Một số thuật ngữ sử dụng trong Cryptography

The Block 101 sẽ tổng hợp dần dần theo từng bài viết về một số thuật ngữ cơ bản được sử dụng trong Cryptography như sau :

  • Sender/Receiver : Người gửi và nhận dữ liệu – từ đây và các bài viết sau, mình sử dụng Alice và Bob là người gửi và nhận dữ liệu.
  • Attacker / Hacker : Người tấn công hoặc vận chuyển thông tin trên đường truyền – Eve.
  • Plaintext: Thông tin trước khi được mã hóa - dữ liệu ban đầu ở dạng có thể đọc-hiểu được.
  • Ciphertext: Thông tin đã được mã hóa - dữ liệu ở dạng đọc-nhưng-không-hiểu được.
  • Encryption: Quá trình mã hóa thông tin (Plaintext -> Ciphertext).
  • Decryption: Quá trình giải mã lấy lại thông tin ban đầu (Ciphertext -> Plaintext).

Khi nói về mật mã, người ta thường nói về chúng trong ứng dụng máy tính. Làm cách nào để các thông tin cá nhân, thông tin tài chính được trao đổi một cách bảo mật qua web (trong các giao dịch ngân hàng online); Làm cách nào để dữ liệu có thể được lưu trữ một cách an toàn ? Nhắc tới mật mã, và việc bảo mật dữ liệu, ta sẽ thường phải quan tấm tới nhiều vấn đề. Chúng bao gồm những khái niệm về confidentiality (bảo mật), integrity (tính toàn vẹn), availability, and non-repudiation.

Confidentiality: Dữ liệu của ta không thể bị truy cập / đọc bảo người dùng không được cấp phép.

Integrity: Dữ liệu của ta phải 100% nguyên vẹn, đảm bảo là không bị chỉnh sửa, dù là bởi nguyên nhân nào như bị tấn công, mất mát dữ liệu …

Availability: Data có thể truy cập bất cứ khi nào cần thiết.

Non-repudiation: Trong một giao dịch, khi một bên A thực hiện gửi data cho bên B, thì người đó sẽ không có khả năng phủ nhận việc đó sau này. Nói cách khác, phải có một cách để đảm bảo rằng không ai khác ngoài A có thể là tác giả và người gửi thông điệp.

Cryptography không giúp chúng ta nhiều về tính availability, mặt khác, các cơ chế mã hóa điện tử hiện nay thường được sử dụng rộng rãi và giúp ta thực hiện việc đảm bảo 3 mục tiêu còn lại. Khi nói về mã hóa điện tử, đó sẽ thường là việc ám chỉ một trong những kĩ thuật phổ biến như:

Symmetric encryption

Asymmetric encryption

Hash functions

Digital signatures

Trên đây là những điều cần biết về cryptography cho người mới bắt đầu quan tâm về lĩnh vực crypto. Hi vọng bài viết có thể giúp bạn nắm rõ hơn về định nghĩa cũng như một số thuật ngữ sử dụng trong Cryptography. Nếu thấy hay, hãy chia sẻ bài viết tới bạn bè và người thân để mọi người cùng nắm rõ nhé !

Theo: The Block 101 tổng hợp

Thảo luận thêm tại :

Email :

Hotline : (+84) 972 678 963

Facebook Fanpage : https://www.facebook.com/102457777856012/

Telegram : https://t.me/theblock101

Youtube channel : https://www.youtube.com/channel/UCSqu48gRo3ClM71WAUgFgx