Mã hóa tên gọi là gì

Những khái niệm cơ bản trong Mật mã học

  • Báo cáo

Trong thời đại các đồng tiền ảo đang bùng nổ mạnh mẽ, gọi là tiền ảo nhưng chẳng ảo chút nào cả. Với việc ngày càng có nhiều người sử dụng nó thì nó càng trở nên hiện hữu và không còn là ảo nữa, cái tên tiền ảo nghe có vẻ hơi tiêu cực và trở nên không phù hợp cho lắm. Vì vậy ngoài tên là tiền ảo nó còn được gọi với một cái tên khác là tiền mã hóa và cái tên này nói đúng về bản chất của nó hơn vì nó được sinh bởi sự mã hóa. Mã hóa có trong mọi ngóc ngách của hệ thống công nghệ thông tin . Vậy mật mã quan trọng như thế nào, và những ứng dụng của nó trong đời sống cũng như kỹ thuật là gì?

Một số khái niệm cơ bản

Mật mã học [Cryptography] là ngành khoa học nghiên cứu về việc đảm bảo an toàn thông tin. Mật mã học gắn liền với quá trình mã hóa nghĩa là chuyển đổi thông tin từ dạng "có thể hiểu được" thành dạng "không thể hiểu được" và ngược lại là quá trình giải mã. Cryptography giúp đảm bảo những tính chất sau cho thông tin:

  • Tính bí mật [confidentiality]: thông tin chỉ được tiết lộ cho những ai được phép
  • Tính toàn vẹn [integrity]: thông tin không thể bị thay đổi mà không bị phát hiện.
  • Tính xác thực [authentication]: người gửi [hoặc người nhận] có thể chứng minh đúng họ.
  • Tính chống chối bỏ [non-repudiation]: người gửi hoặc nhận sau này không thể chối bỏ việc đã gửi hoặc nhận thông tin.

Thám mã [cryptanalysis]: nghiên cứu cách phá các hệ mật nhằm phục hồi bản rõ ban đầu từ bản mã, nghiên cứu các nguyên lí và phương pháp giải mã mà không biết khóa. Có 3 phương pháp tấn công cơ bản của thám mã:

  • Tìm khóa vét cạn
  • Phân tích thống kê
  • Phân tích toán

Bản rõ [Plaintext]: Dạng ban đầu của thông báo Bản mã [Ciphertext]: Dạng mã của bản rõ ban đầu Khóa [Key]: thông tin tham số dùng để mã hóa Mã hóa [Encryption]: Quá trình biến đổi thông tin từ dạng bản rõ sang bản mã bằng khóa hoặc không cần khóa Giải mã [Decryption]: Quá trình ngược lại biến đổi thông tin từ dạng bản mã sang bản rõ

Phân loại thuật toán mã hóa

Có nhiều cách phân loại thuật toán mã hóa nhưng cách phân loại theo khóa được sử dụng phổ biến hơn

Thuật toán mã hóa khóa đối xứng

Mã hóa đối xứng còn có một số tên gọi khác như Secret Key Cryptography [hay Private Key Cryptography], sử dụng cùng một khóa cho cả hai quá trình mã hóa và giải mã. Quá trình thực hiện như sau :

Trong hệ thống mã hóa đối xứng, trước khi truyền dữ liệu 2 bên gửi và nhận phải thỏa thuận về khóa dùng chung cho qúa trình mã hóa và giải mã, khóa được sinh ra bởi bộ sinh khóa. Sau đó, bên gửi sẽ mã hóa Plaintext bằng cách sử dụng khóa bí mật này và gửi thông điệp đã mã hóa cho bên nhận. Bên nhận sau khi nhận được thông điệp đã mã hóa sẽ sử dụng chính khóa bí mật mà hai bên thỏa thuận để giải mã và lấy ra Plaintext.

Những gì bạn nhìn thấy hình trên chính là quá trình tiến hành trao đổi thông tin giữa bên gửi và bên nhận thông qua việc sử dụng phương pháp mã hóa đối xứng.Trong quá trình này thì thành phần quan trọng nhất cần phải được giữ kín chính là khóa. Việc trao đổi, thỏa thuận về thuật toán được sử dụng trong việc mã hóa có thể tiến hành một cách công khai, nhưng bước thỏa thuận về khóa trong việc mã hóa và giải mã phải tiến hành bí mật. Phải có bước thỏa thuận về khóa, vì hai lý do cơ bản sau đây :

  • Nếu như hai bên đã thống nhất thuật toán mã hóa, nhưng sau đó nơi gửi gửi thông điệp đã mã hóa tới cho nơi nhận mà không cho biết khóa đã sử dụng trong quá trình mã hóa. Nơi nhận không có khóa để giải mã cho nên sẽ chẳng hiểu được nội dung trong tài liệu muốn nói gì. Vì thế bắt buộc ngoài việc trao đổi về thuật toán thì cần phải trao đổi về khóa
  • Khóa phải được trao đổi theo một kênh bí mật nào đó.Ví dụ trực tiếp trao đổi [mặt đối mặt] hay gián tiếp trao đổi [thông qua điện thoại, email, tin nhắn]. Phải thực hiện qua kênh truyền bí mật vì rất có thể sẽ có một bên thứ ba nghe lén cuộc trao đổi giữa hai bên và có được khóa, như vậy thông tin trao đổi sẽ bị kẻ khác biết được. Thêm vào đó hai bên buộc phải tin cậy lẫn nhau, không thể nhờ một người khác gửi hộ khóa được vì rất có thể người này sẽ dùng khóa đó để ăn cắp thông tin Thuật toán mã hóa loại này có ưu điểm là nhanh, độ an toàn gần như tuyệt đối nếu khô để lộ khóa bí mật. Chính vì vậy mấu chốt của việc sử dụng loại thuật toán mã hóa này là việc truyền khóa bí mật cho bên nhận một cách an toàn.

Một số thuật toán mã hóa khóa công khai phổ biến

  • DES viết tắt của Data Encryption Standard. Với DES, Plaintext được mã hóa theo từng khối 64 bits và sử dụng một khóa là 64 bits, nhưng thực tế thì chỉ có 56 bits là thực sự được sự dụng để tạo khóa. Là một thuật toán được sử dụng rộng rãi nhất trên thế giới với bề dày lịch sử hơn 20 năm, được phát triển bởi IBM Team vào những năm 1970, sau đó được phát triển bởi NIST [National Institute of Standard and Technology] cho các ứng dụng thương mại. Hiện tại DES không còn được đánh giá cao do kích thước của khóa là quá nhỏ 56 bit và nó dễ dàng bị phá vỡ chỉ trong vòng 24 tiếng đồng hồ.
  • Triple DES [3DES] cải thiện độ mạnh của DES bằng việc sử dụng một quá trình mã hóa-giải mã-mã hóa mà sử dụng 3 khóa.Khối 64-bit Plaintext đầu tiên được mã hóa sử dụng khóa thứ nhất. Sau đó, dữ liệu bị mã hóa được giải mã bằng việc sử dụng một khóa thứ hai. Cuối cùng, sử dụng khóa thứ ba và kết quả của quá trình giải mã trên để mã hóa.
  • AES : viết tắt của Advanced Encryption Standard. Xuất hiện theo lời kêu gọi của NIST, cần phải phát triển một thuật toán mới thay thế cho DES. AES chính thức thay thế cho DES vào tháng 11 năm 2001. Nó hỗ trợ độ lớn nhỏ nhất của khóa là 128, 192 và 256 bits. Và hiện giờ nó đang được sử dụng phổ

Thuật toán mã hóa bất đối xứng

Hay còn được gọi với một cái tên khác là mã hóa khóa công khai [Public Key Cryptography], nó được thiết kế sao cho khóa sử dụng trong quá trình mã hóa khác biệt với khóa được sử dụng trong quá trình giải mã. Hơn thế nữa, khóa dùng trong quá trình giải mã không thể được tính toán hay suy luận từ khóa dùng để mã hóa và ngược lại, tức là hai khóa này có quan hệ với nhau về mặt toán học nhưng không thể suy diễn được ra nhau. Thuật toán này được gọi là Public-Key bởi vì khóa dùng cho việc mã hóa được công khai cho tất cả mọi người. Một người hòan toàn xa lạ có thể dùng khóa này để mã hóa dữ liệu nhưng chỉ duy nhất người mà có khóa giải mã tương ứng mới có thể đọc được dữ liệu mà thôi. Do đó trong thuật mã hóa này Encryption key được gọi là Public key còn Decryption Key được gọi là Private key.

Tại sao lại có sự xuất hiện của Mã hóa khóa công khai? Như đã trình bày với các bạn ở trên, thuật toán mã hóa khóa riêng tuy có tốc độ thực hiện rất nhanh nhưng nó có một số nhược điểm như sau:

  • Khóa phải được trao đổi theo một kênh bí mật.
  • Nếu mất khóa thì thông tin hoàn toàn có thể bị lấy cắp hoặc giả mạo.
  • Khóa cần phải thay đổi một cách định kì
  • Khi số lượng người dùng tăng lên thí số lượng khóa được sử dụng cũng tăng lên.

Vậy là điểm yếu của thuật toán mã hóa khóa riêng nằm ở khâu quản lý khóa thế nào cho hợp lý. Mã hóa khóa công khai ra đời đã giải quyết được vấn đề này. Hình minh họa ở trên cho chúng ta thấy được quá trình truyền tin an toàn dựa vào hệ thống mã hóa khóa công khai. Như các bạn thấy, trong hệ thống mã hóa này thì mỗi một người sử dụng khi tham gia vào đều được cấp 2 khóa : Một khóa dùng cho việc mã hóa dữ liệu [Public key] và một khóa dùng cho việc giải mã dữ liệu [Private key], trong đó Public key được đưa ra cho tất cả mọi người cùng biết, còn Private key phải được giữ kín một cách tuyệt đối.Giả sử hai phía muốn truyền tin cho nhau thì quá trình truyền sử dụng mã hóa khóa công khai được thực hiện như sau :

  • Sender yêu cầu cung cấp hoặc tự tìm khoá công khai của Receiver trên một Server chịu trách nhiệm quản lý khoá công khai.
  • Sau đó hai phía thống nhất thuật toán dùng để mã hóa dữ liệu, Sender sử dụng khóa công khai của Receiver cùng với thuật toán đã thống nhất để mã hóa thông tin bí mật.
  • Thông tin sau khi mã hóa được gửi tới Receiver, lúc này chính Sender cũng không thể nào giải mã được thông tin mà anh ta đã mã hóa [khác với mã hóa khóa riêng].
  • Khi nhận được thông tin đã mã hóa, Receiver sẽ sử dụng khóa bí mật của mình để giải mã và lấy ra thông tin ban đầu.

Vậy là với sự ra đời của Mã hóa khóa công khai thì khóa được quản lý một cách linh hoạt và hiệu quả hơn.Người sử dụng chỉ cần bảo vệ khóa Private key. Hệ thống này an toàn hơn nhiều so với mã hóa khóa riêng, người mã hóa không thể giải mã được dữ liệu đã mã hóa bằng khóa công khai của người khác.Tuy nhiên nhược điểm của Mã hóa khóa công khai nằm ở tốc độ thực hiện, nó chậm hơn mã hóa khóa riêng cỡ ~1000 lần. Do đó người ta thường kết hợp hai hệ thống mã hóa khóa riêng và công khai lại với nhau và được gọi là Hybrid Cryptosystems [Hệ thống mã hóa lai]. Một số thuật toán mã hóa công khai phổ biến :

  • RSA : Cái tên RSA là ba chữ cái bắt đầu từ ba cái tên của ba tác giả: Ron Rivest, Adi Shamir ,Len Adleman. Sử dụng đồng thời cho mã hóa khóa công khai và chữ kí điện tử. Độ an toàn của thuật toán mã hóa RSA dựa trên việc phân tích một số nguyên tố rất lớn thành hai số nguyên tố.

Mã hóa một chiều

Đôi khi ta chỉ cần mã hóa thông tin chứ không cần giải mã thông tin, khi đó ta sẽ dùng đến phương pháp mã hóa một chiều [Chỉ có thể mã hóa chứ không thể giải mã]. Thông thường phương pháp mã hóa một chiều sử dụng một hàm băm [hash function] để biến một chuỗi thông tin thành một chuỗi hash có độ dài nhất định. Ta không có bất kì cách nào để khôi phục [hay giải mã] chuỗi hash về lại chuỗi thông tin ban đầu Hàm băm [Hash function] là một hàm mà nó nhận vào một chuỗi có độ dài bất kì, và sinh ra một chuỗi kết quả có độ dài cố định [Gọi là chuỗi hash], dù hai chuỗi dữ liệu đầu vào, được cho qua hàm băm thì cũng sinh ra hai chuỗi hash kết quả khác nhau rất nhiều. Ví dụ như đối với kiểu dữ liệu Hash-table, ta có thể coi đây là một dạng kiểu dữ liệu mảng đặc biệt mà index nó nhận vào là một chuỗi, nó được định nghĩa bằng cách bên trong nó chứa một mảng thông thường, mỗi khi truyền vào index là một chuỗi, thì chuỗi này sẽ đi qua hàm băm và ra một giá trị hash, giá trị này sẽ tương ứng với index thật của phần tử đó trong mảng bên dưới. Đặc điểm của hash function là khi thực hiên băm hai chuỗi dữ liệu như nhau, dù trong hoàn cảnh nào thì nó cũng cùng cho ra một chuỗi hash duy nhất có độ dài nhất định và thường nhỏ hơn rất nhiều so với chuỗi gốc, và hai chuỗi thông tin bất kì dù khác nhau rất ít cũng sẽ cho ra chuỗi hash khác nhau rất nhiều. Do đó hash function thường được sử dụng để kiểm tra tính toàn vẹn của dữ liệu.

Giả sử bạn có một file dữ liệu định up lên mạng, và bạn muốn người dùng có thể kiểm tra xem dữ liệu họ down về có chính sát dữ liệu mình up lên hay không. Thì bạn sẽ dùng một hash function để băm dữ liệu của file đó ra một chuỗi hash, và gửi kèm cho người dùng chuỗi hash này. Khi đó, người dùng chỉ việc dùng đúng hash function đó để tìm chuỗi hash hiện tại của file down về, rồi so sánh với chuỗi hash ban đầu, nếu hai chuỗi này giống nhau thì dữ liệu down về vẫn toàn vẹn.

Ngoài ra có một ứng dụng mà có thể bạn thường thấy, đó là để lưu giữ mật khẩu. Vì mật khẩu là một thứ cực kì quan trọng, do đó ta không nên lưu mật khẩu của người dùng dưới dạng rõ, vì như vậy nếu bị hacker tấn công, lấy được CSDL thì hacker có thể biết được mật khẩu của người dùng. Do đó, mật khẩu của người dùng nên được lưu dưới dạng chuỗi hash, và đối với server thì chuỗi hash đó chỉnh là mật khẩu đăng nhập [lúc đăng nhập thì mật khẩu mà người dùng nhập cũng được mã hóa thành chuỗi hash và so sánh với chuỗi hash trong CSDL của server]. Dù hacker có lấy được CSDL thì cũng không tài nào có thể giải mã được chuỗi hash để tìm ra mật khẩu của người dùng.

Thuật toán mã hóa một chiều [hàm băm] mà ta thường gặp nhất là MD5 và SHA MD5 đã được chứng minh là không còn an toàn nhưng nó vẫn được sử dụng rất phổ biến trong việc lưu mât khẩu SHA ra đời sau MD5 và đã có phiên bản SHA-256, SHA-512 có độ an toàn cao hơn


Mã hóa dữ liệu và những điều quan trọng để bảo mật thông tin

Mạng máy tính là một môi trường mở, những thông tin gửi lên internet hoặc nhận về internet đều có thể bị lộ bởi các đối tượng. Một trong những phương thức bảo mật dữ liệu an toàn và được sử dụng phổ biến hiện nay là mã hóa dữ liệu. Tuy nhiên, không phải ai cũng hiểu rõ mã hóa dữ liệu là gì, nó có chức năng ra sao và quá trình mã hóa diễn ra như thế nào.

1. Mã hóa dữ liệu là gì?

Có thể hiểu đơn giản mã hóa là một phương pháp bảo vệ thông tin, bằng cách chuyển đổi thông tin từ dạng có thể đọc và hiểu được thông thường sang dạng thông tin không thể hiểu theo các thông thường chỉ có người có quyền truy cập vào khóa giải mã hoặc có mật khẩu mới có thể đọc được nó. Việc làm này giúp ta có thể bảo vệ thông tin tốt hơn, an toàn trong việc truyền dữ liệu. Thực chất việc mã hóa dữ liệu sẽ không thể nào ngăn việc dữ liệu có thể bị đánh cắp, nhưng nó sẽ ngăn việc người khác có thể đọc được nội dung của tập tin đó, vì nó đã bị biến sang thành một dạng ký tự khác, hay nội dung khác. Dữ liệu được mã hóa thường gọi là ciphertext, dữ liệu thông thường, không được mã hóa thì gọi là plaintext.

2. Vì sao việc mã hóa dữ liệu lại đặc biệt quan trọng?

Việc mã hóa là để đảm bảo tính an toàn cho thông tin, đặc biệt trong thời đại công nghệ số như hiện nay. Đặc biệt là trong giao dịch điện tử. Có thể nói mã hóa chính là việc đảm bảo bí mật , toàn vẹn thông tin, khi thông tin được truyền trên mạng internet. Mã hóa cũng là nền tảng của kĩ thuật chữ ký điện tử, hệ thống PKI

3. Chức năng chính của mã hóa dữ liệu

Mục đích của việc mã hóa dữ liệu là bảo vệ dữ liệu số khi nó được lưu trữ trên các hệ thống máy tính và truyền qua Internet hay các mạng máy tính khác. Các thuật toán mã hóa thường cung cấp những yếu tố bảo mật then chốt như xác thực, tính toàn vẹn và không thu hồi. Xác thực cho phép xác minh nguồn gốc của dữ liệu, tính toàn vẹn chứng minh rằng nội dung của dữ liệu không bị thay đổi kể từ khi nó được gửi đi. Không thu hồi đảm bảo rằng người người không thể hủy việc gửi dữ liệu.

Quá trình mã hóa sẽ biến nội dung sang một dạng mới, vì thế sẽ tăng thêm một lớp bảo mật cho dữ liệu. Như vậy cho dù dữ liệu của bạn bị đánh cắp thì việc giải mã dữ liệu cũng vô cùng khó khăn, tốn nhiều nguồn lực tính toán và cần rất nhiều thời gian. Với những công ty, tổ chức thì việc sử dụng mã hóa dữ liệu là điều cần thiết. Điều này sẽ tránh được những thiệt hại khi những thông tin mật nếu vô tình bị lộ ra ngoài, cũng khó lòng giải mã ngay lập tức.

Hiện nay có rất nhiều ứng dụng tin nhắn đều sử dụng mã hóa nhằm bảo mật tin nhắn cho người dùng. Chúng ta có thể kể đến Facebook, WhatApps với loại mã hóa sử dụng được gọi là End-to-End

4. Các phương pháp mã hóa

Mã hóa dữ liệu là một trong những phương pháp bảo mật dữ liệu phổ biến và hiệu quả nhất, được nhiều tổ chức, cá nhân tin tưởng. Thực tế, việc mã hóa dữ liệu sẽ không thể nào ngăn việc dữ liệu có thể bị đánh cắp, nhưng nó sẽ ngăn việc người khác có thể đọc được nội dung của tập tin đó, vì nó đã bị biến sang thành một dạng ký tự khác, hay nội dung khác.

Mã hóa cổ điển

Đây là phương pháp mã hóa cổ xưa và đơn giản nhất. Ngày nay phương pháp này không còn được sử dụng nhiều so với những phướng pháp khác. Bởi nó quá đơn giản. Ý tưởng của phương pháp này là: bên A mã hóa thông tin bằng thuật toán mã hóa cổ điển, và bên B giải mã thông tin, dựa vào thuật toán của bên A cung cấp, không cần dùng đến bất kì key nào. Vì thế toàn bộ độ an toàn của kiểu mã hóa này phụ thuộc vào bí mật của thuật toán. Nếu một người thứ ba biết được thuật toán thì xem như thông tin không còn bảo mật nữa. Việc giữ bí mật thuật toán trở nên vô cùng quan trọng, và không phải ai cũng có thể giữ bí mật đó một cách trọn vẹn.

Mã hóa một chiều [hash]

Có những tường hợp chúng ta chỉ cần mã hóa thông tin chứ không cần giải mã nó. Đó là khi chúng ta cần sử dụng kiểu mã hóa một chiều này. Ví dụ, khi bạn đăng nhập vào một trang web, mật khẩu của bạn sẽ được hàm băm [hash function] băm nhỏ , chuyển thành một chuỗi các kí tự như KhhdhujidbH. Thực chất, cơ sở dữ liệu lưu lại các kí tự mã hóa này chứ không lưu lại mật khẩu của bạn. Lỡ hacker có trộm dữ liệu thì cũng chỉ thấy những kí tự khó hiểu chứ không biết password thật của bạn là gì.

Đặc điểm của hash function đó là trong cùng 1 điều kiện, dữ liệu đầu vào giống nhau thì nó sẽ cho ra kết quả y hệt nhau. Nếu chỉ cần thay đổi một kí tự trong chuỗi, từ chữ hoa sang chữ thường, kết quả sẽ hoàn toàn khác. Cũng vì vậy mà người ta dùng hash function để kiểm tra tính toàn vẹn của dữ liệu.

Hiện nay, hai thuật toán hash function thường được dùng nhất là MD5 và SHA. Nếu bạn download file trên mạng thì đôi khi sẽ thấy dòng chữ MD5 do tác giả cung cấp. Bạn sẽ phải nhập mã hiện lên theo yêu cầu. Mục đích là để bạn so sánh file đã download với file gốc xem có bị lỗi gì không.

Mã hóa bất đối xứng

Kiểu mã hóa này còn có tên gọi khác là mã hóa khóa công khai. Nó sử dụng đến hai khóa [key] khác nhau. Một khóa gọi là khóa công khai [public key] và một khóa khác là khóa bí mật [private key]. Dữ liệu được mã hóa bằng public key. Tất cả mọi người đều có thể có được key này. Tuy nhiên để giải mã được dữ liệu, người nhận cần phải có private key.

Để thực hiện mã hóa bất đối xứng thì:

Người nhận sẽ tạo ra một gặp khóa [public key và private key], họ sẽ giữ lại private key và truyền cho bên gửi public key. Vì public key này là công khai nên có thể truyền tự do mà không cần bảo mật.

Trước khi gửi tin nhắn, người gửi sẽ mã hóa dữ liệu bằng mã hóa bất đối xứng với những key nhận được từ người nhận

Người nhận sẽ giải mã dữ liệu nhận được bằng thuật toán được sử dụng ở bên người gửi, với key giải mã là private key.

Điểm yếu lớn nhất của kiểu mã hóa này là tốc độ mã hóa và giải mã rất chậm. Nếu dùng kiểu mã hóa bất đối xứng trong việc truyền dữ liệu thì sẽ rất tốn phí và mất thời gian.

Thuật toán mã hóa bất đối xứng thường thấy: RSA.

Mã hóa đối xứng

Phương pháp mã hóa này chỉ cần dùng một key giống nhau để mã hóa và giải mã. Theo một số tài liệu thì mã hóa đối xứng là giải pháp được sử dụng nhất phổ biến hiện nay.

Quy trình mã hóa được miêu tả như sau:

-Dùng giải thuật ngẫu nhiên mã hóa + key để mã hóa dữ liệu gửi đi.

-Bằng cách nào đó, key của người gửi sẽ được gửi đến cho người nhận, có thể là giao trước hoặc sau khi mã hóa file đều được.

-Khi người nhận nhận được dữ kiệu, họ sẽ dùng key này để giải mã dữ liệu để có được dữ liệu chuẩn.

Tuy nhiên vấn đề bảo mật nằm ở chỗ, làm thế nào đẻ chuyển key cho người nhận một cách an toàn. Nếu key này bị lộ, bất kì ai sử dụng giải thuật phía trên đều có thể giải mã được dữ liệu như vậy thì tính bảo mật sẽ không còn nữa.

Chúng ta sẽ thường thấy hai thuật toán thường thấy là DES và AES. Thuật toán DES xuất hiện từ năm 1977 nên không được sử dụng phổ biến bằng AES. Thuật toán AES có thể dùng nhiều kích thước ô nhớ khác nhau để mã hóa dữ liệu, thường thấy là 128-bit và 256-bit, có một số lên tới 512-bit và 1024-bit. Kích thước ô nhớ càng lớn thì càng khó phá mã hơn, bù lại việc giải mã và mã hóa cũng cần nhiều năng lực xử lý hơn.

Ứng dụng của mã hóa dữ liệu được áp dụng trong

Cơ sở dữ liệu

Trong SQL Server có thể tự tạo các hàm của riêng mình hoặc sử dụng các DLL ngoài để mã hoá dữ liệu như:

Mã hoá bằng mật khẩu
Mã hoá khoá đối xứng
Mã hoá khoá không đối xứng
Mã hoá chứng nhận

Giao thức HTTPS

HTTPS dùng thuật toán mã hóa TLS [lai giữa đối xứng và bất đối xứng] để mã hóa dữ liệu của bạn khi gửi thông tin giữa trình duyệt và máy chủ.

HTTPS là dạng mã hóa thông tin đang di chuyển, và người ta còn có thể dùng mã hóa để đảm bảo an toàn cho rất nhiều thứ khác, từ email, thông tin di động, Bluetooth cho đến ứng dụng vào các máy ATM.

USB

USB ngày nay cũng cung cấp phần mềm AES đi kèm để bạn có thể mã hóa dữ liệu của mình thông qua password, nếu lỡ có làm rớt mất USB thì cũng không lo bị ai đó lấy trộm dữ liệu chứa bên trong. Ngay cả khi kẻ xấu cố gắng gỡ chip ra, gắn vào một phần cứng khác để đọc thì cũng chỉ thấy dữ liệu đã mã hóa.

Chữ ký điện tử

Chữ ký số là một dạng chữ ký điện tử dựa trên công nghệ mã khóa công khai. Mỗi người dùng chữ ký số phải có một cặp khóa [keypair], gồm khóa công khai [public key] và khóa bí mật [private key]. Khóa bí mật dùng để tạo chữ ký số. Khóa công khai dùng để thẩm định chữ ký số hay xác thực người tạo ra chữ ký số đó.

Một số cách mã hóa dữ liệu

Dù bạn lưu trữ dữ liệu dưới bất kì hình thức nào, trên USB, email hoặc trực tiếp trên ổ cứng máy tính, bạn cũng cần phải thiết lập thêm 1 hay nhiều lớp bảo vệ cho tập tin hoặc thư mục để bảo đảm an toàn.

Và việc thiết lập mật khẩu cho tập tin hoặc thư mục là cách an toàn nhất cho việc mã hóa và bảo vệ dữ liệu. Tập tin hoặc thư mục của bạn sẽ được mã hóa và chỉ có thể mở hoặc sử dụng bằng cách khai báo mật khẩu.

1. Tạo và mã hóa dữ liệu

Windows XP cho phép người dùng có thể tạo ra các tập tin ZIP với mật khẩu được thiết lập để mã hóa. Tuy nhiên, tính năng này trong Windows 7 đã được loại bỏ. Nếu muốn làm việc này, người dùng phải tiến hành tải về và cài đặt phần mềm từ nhà cung cấp thứ 3. Có nhiều chương trình có tính năng tạo và mã hóa dữ liệu bằng mật khẩu, hầu hết chúng đều được cung cấp miễn phí, tuy nhiên, người viết khuyên bạn nên sử dụng phần mềm 7-ZIP

Sau khi tải về và cài đặt, bạn đọc có thể tạo các tập tin nén ngay trong giao diện phần mềm hay từ lệnh trong menu chuột phải của Windows Explorer với thiết lập mật khẩu để mã hóa. Và kiểu mã hóa bạn nên chọn ở đây là chuẩn AES-256. Như vậy, bất cứ ai muốn giải nén đều phải tiến hành nhập mật khẩu để mở khóa tập tin và sử dụng.

2. Mã hóa tài liệu Office

Các gói phần mềm văn phóng Microsoft Office của Microsoft cũng cung cấp thêm cho người dùng tính năng đặt mật khẩu cho các tập tin văn bản và bảng tính nhầm mã hóa và bảo vệ tập tin.

Và trong phiên bản Office 2007, Microsoft đã chuyển sang sử dụng chuẩn AES để mã hóa tập tin nhầm nâng cao tính bảo mật và an toàn cho tập tin.

Dữ liệu được lưu trữ trên một ổ đĩa đã được mã hóa [encryption volume] không thể đọc được nếu người dùng không cung cấp đúng khóa mã hóa bằng một trong ba hình thức là mật khẩu [password] hoặc tập tin có chứa khóa [keyfile] hoặc khóa mã hóa [encryption key]. Toàn bộ dữ liệu trên ổ đĩa mã hóa đều được mã hóa [ví dụ như tên file, tên folder, nội dung của từng file, dung lượng còn trống, siêu dữ liệu].

Dữ liệu có thể được copy từ một ổ đĩa mã hóa của TrueCrypt sang một ổ đĩa bình thường không mã hóa trên Windows [và ngược lại] một cách bình thường mà không có sự khác biệt nào cả, kể cả các thao tác kéo-thả.

3. Sử dụng TrueCrypt để mã hóa phân vùng

TrueCrypt được phát hành bởi TrueCrypt Foundation. Với những ưu điểm là phần mềm hoàn toàn miễn phí, mã nguồn mở, bạn có thể tạo ổ đĩa ảo được mã hóa hoặc mã hóa toàn bộ đĩa cứng của mình [bao gồm cả ổ cài đặt Windows].

Cơ chế thiết lập và quản lý của TrueCrypt là mã hóa ổ đĩa trên đường đi [on-the-fly encryption]. Nghĩa là dữ liệu tự động được mã hóa hoặc giải mã ngay khi được ghi xuống đĩa cứng hoặc ngay khi dữ liệu được nạp lên mà không có bất kỳ sự can thiệp nào của người dùng.

Dữ liệu được lưu trữ trên một ổ đĩa đã được mã hóa [encryption volume] không thể đọc được nếu người dùng không cung cấp đúng khóa mã hóa bằng một trong ba hình thức là mật khẩu [password] hoặc tập tin có chứa khóa [keyfile] hoặc khóa mã hóa [encryption key]. Toàn bộ dữ liệu trên ổ đĩa mã hóa đều được mã hóa [ví dụ như tên file, tên folder, nội dung của từng file, dung lượng còn trống, siêu dữ liệu].

Dữ liệu có thể được copy từ một ổ đĩa mã hóa của TrueCrypt sang một ổ đĩa bình thường không mã hóa trên Windows [và ngược lại] một cách bình thường mà không có sự khác biệt nào cả, kể cả các thao tác kéo-thả.

4. Sử dụng tính năng mã hóa được cung cấp sẳn trong Windows

Nếu bạn đang sử dụng một phiên bản Windows chuyên nghiệp như bản Professional hoặc Enterprise, bạn sẽ được Windows cung cấp sẳn 1 số tính năng mã hóa chuyên nghiệp, ngoại trừ phiên bản Home.

Bao gồm 2 tính năng

BitLocker:

Cho phép người dùng mã hóa phân vùng ổ đĩa, kể cả USB. Xét về mặt tính năng thì BitLocker được xây dựng tương tự như TrueCrypt, vì thế bạn có thể lựa chọn sử dụng 1 trong 2.

Encrypting File System [EFS]:

Cho phép người dùng mã khóa tập tin cá nhân. Bạn có thể sử dụng tính năng này bằng cách nhấn phải chuột vào tập tin và chọn Properties > nhấn chọn Advanced trong tab General. Một cửa sổ hiện lên, đánh dấu vào tùy chọn Encrypt contents to secure data.

Như thế là bạn đã mã hóa tập tin với tài khoản của Windows, vì thế nếu mất tài khoản, bạn coi như mất tập tin vĩnh viễn!. Bạn cũng nên lưu ý là tập tin chỉ được lưu trữ trên ổ cứng hiện tại, nếu bạn gửi qua email, tính an toàn của tập tin sẽ không được bảo đảm hoặc sẽ bị hỏng.

Mã hóa dữ liệu trong hội nghị truyền hình

Với sự ra đời của các dịch vụ truyền thông dựa trên Internet, bảo vệ dữ liệu bị rò rỉ chiếm phần rất quan trọng. Thế nên, các ứng dụng hỗ trợ mã hóa là một trong những tùy chọn an toàn nhất cho máy trạm mà không muốn đối mặt với khả năng bị truy cập trái phép với lưu lượng thông tin, ví dụ như:

Ăn cắp tài khoản và mật khẩu;
Ghi âm trái phép;
Nghe hoặc theo dõi hội nghị.
Mã hóa SSL

SSL [Secure Sockets Layer] là một giao thức mã hóa cung cấp bảo mật thông tin liên lạc và phăn chặn sự giả mạo. SSL liên quan đến công việc trao đổi chìa khóa giữa 2 điểm: máy trạm và máy chủ, trong đó họđồng ý cách các thuật toán và chìa khóa mã hóa thông tin.

Hoạt động của mã hóa dữ liệu trong hội nghị truyền hình?

Việc sử dụng SSL cho hội nghị truyền hình sử dụng kênh bảo mật với mã hóa đối xứng duy nhất. để người dùng kết nối an toàn đến máy chủ, một chìa khóa xác thực quá trình được gửi từ máy chủ tới máy trạm. Đổi lại, máy trạm nhận được chìa khóa này, sau đó xác nhận độ tin cậy của nguồn. Thủ tục như vậy cho việc thu thập và thỏa thuận được gọi là handshake hoặc thủ tục phù hợp với SSL giữa máy chủ và điểm cầu và nó tiếp tục trong suốt hội nghị truyền hình, do đó cung cấp một kết nối an toàn và bảo mật.

Mục đích chính của việc trao đổi chìa khóa mã hóa và giải mã là tạo một môi trường máy trạm bí mật, được biết bởi máy chủ và máy trạm. Do đó truy cập trái phép sẽ không thể kết nối tới hội nghị nếu nó không có chìa khóa bí mật.

Tiêu chuẩn AES mã hóa đối xứng là phổ biến và an toàn nhất. Có 3 tiêu chuẩn: AES-128, AES-192, AES-256. Sự khác biệt giữa chúng là trong chìa khóa, được xác định bởi số lượng bit. Nhiều bit hơn thì mức bảo mật tốt hơn được cung cấp với chìa khóa này.

Vì vậy AES-256 là chìa khóa đáng tin cậy nhất trong 3 loại trên.

Nguồn internet

Video liên quan

Chủ Đề