Mã hóa là gì ? 4 phương pháp mã hóa thông dụng

Với sự tăng trưởng của Internet, việc trao đổi các thông tin, san sẻ dữ liệu ngày càng trở nên thuận tiện. Tuy nhiên việc này cũng tiềm tàng nhiều rủi ro tiềm ẩn, rủi ro đáng tiếc từ việc đánh cắp thông tin từ hacker. Vì vậy, các chiêu thức mã hóa sinh ra đã giúp ích rất nhiều cho việc bảo mật thông tin thông tin. Vậy mã hóa là gì ? Các giải pháp mã hóa nào thường được sử dụng ? Chúng ta cùng tìm hiểu và khám phá nhé .

I. Mã hóa là gì ? Tại sao cần mã hóa dữ liệu ?

1. Mã hóa là gì ?

Mã hóa là cách trộn lẫn dữ liệu chỉ để hai bên trao đổi thông tin hoàn toàn có thể hiểu được. Về mặt kỹ thuật, đó là quy trình quy đổi văn bản gốc sang bản mã. Nói một cách đơn thuần hơn, mã hóa lấy dữ liệu hoàn toàn có thể đọc được và đổi khác nó để dữ liệu này không giống như bắt đầu. Mã hóa nhu yếu sử dụng khóa mã hóa : một tập hợp các giá trị toán học mà cả người gửi và người nhận tin nhắn được mã hóa đều biết .
Mặc dù dữ liệu được mã hóa Open ngẫu nhiên, mã hóa triển khai theo cách hài hòa và hợp lý, hoàn toàn có thể Dự kiến được, để bên nhận sử dụng khóa để mã hóa dữ liệu, biến nó trở lại thành bản dữ liệu bắt đầu. Mã hóa bảo đảm an toàn thực sự sẽ đủ phức tạp để bên thứ ba không hề giải thuật được bằng brute force – nói cách khác, bằng cách đoán .

Dữ liệu có thể được mã hóa “ở trạng thái nghỉ”, khi nó được lưu trữ hoặc “quá cảnh” trong khi nó đang được truyền đi nơi khác.

phương pháp mã hóa

2. Khóa mật mã là gì ?

Khóa mật mã ( cryptographic key ) là một chuỗi các ký tự được sử dụng trong thuật toán mã hóa để đổi khác dữ liệu sao cho nó Open ngẫu nhiên. Giống như một khóa vật lý, nó khóa ( mã hóa ) dữ liệu để chỉ người nào đó có khóa bên phải mới hoàn toàn có thể mở khóa ( giải thuật ) nó .

3. Tại sao cần mã hóa dữ liệu ?

Các chiêu thức mã hóa được sử dụng để bảo vệ dữ liệu xuất phát từ các nguyên do sau :

  • Riêng tư
    Mã hóa đảm bảo rằng không ai có thể đọc thông tin liên lạc hoặc dữ liệu khi nghỉ ngơi ngoại trừ người nhận dự định hoặc chủ sở hữu dữ liệu phù hợp. Điều này ngăn chặn tội phạm mạng, mạng quảng cáo, nhà cung cấp dịch vụ Internet và trong một số trường hợp chính phủ chặn và đọc dữ liệu nhạy cảm.
  • Bảo vệ
    Mã hóa giúp tránh vi phạm dữ liệu, cho dù dữ liệu đang trong quá trình di chuyển hoặc ở trạng thái nghỉ. Nếu một thiết bị của công ty bị mất hoặc bị đánh cắp và ổ cứng của nó được mã hóa chính xác, dữ liệu trên thiết bị đó có thể sẽ vẫn được bảo mật. Tương tự, truyền thông được mã hóa cho phép các bên giao tiếp trao đổi dữ liệu nhạy cảm mà không bị rò rỉ dữ liệu. Mã hóa cũng giúp ngăn chặn các hành vi nguy hiểm như tấn công man-in-the-middle.
  • Xác thực
    Mã hóa khóa công khai, trong số những thứ khác, thiết lập rằng máy chủ gốc của trang web sở hữu khóa riêng và do đó được cấp chứng chỉ SSL hợp pháp.
  • Quy định 
    Vì tất cả những lý do này, nhiều quy định của ngành và chính phủ yêu cầu các công ty xử lý dữ liệu người dùng phải giữ dữ liệu đó được mã hóa. Ví dụ về các tiêu chuẩn quy định và tuân thủ yêu cầu mã hóa bao gồm HIPAA, PCI-DSS và GDPR.

II. 4 chiêu thức mã hóa thông dụng

Có rất nhiều loại chiêu thức mã hóa khác nhau, mỗi loại có những ưu và điểm yếu kém riêng. Thông thường chiêu thức mã hóa dữ liệu được phân loại thành 4 loại chính :

1. Mã hóa cổ xưa

Mã hóa cổ xưa là chiêu thức mã hóa đơn thuần nhất, tồn lại lâu nhất trên quốc tế và không cần khóa bảo mật thông tin, chỉ cần người gửi và người nhận cùng biết về thuật toán này là được .

phương pháp mã hóa

Ví dụ : nếu tất cả chúng ta dùng thuật toán đổi kí tự trong câu văn thành kí tự liền kề trong bảng vần âm thì chữ “ PAvietnam ” sẽ biến thành “ QBxkfuobn ”. Người nhận khi nhận được chữ “ QBxkfuobn ” thì chỉ việc dịch ngược lại là xong .
Tuy nhiên, giải pháp mã hóa này được xem là không bảo đảm an toàn, vì 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 thông tin nữa. Việc giữ bí hiểm thuật toán trở nên rất quan trọng, và không phải ai cũng hoàn toàn có thể giữ bí hiểm đó một cách toàn vẹn. Có năng lực người đó sẽ rò rỉ ra, hoặc có ai đó ngồi giải ra thuật toán thì xem như tất cả chúng ta thua cuộc .

2. Mã hóa một chiều ( hash )

giải pháp mã hóa này dùng để mã hóa những thứ không cần dịch lại nguyên bản gốc. Ví dụ, khi bạn đăng nhập vào https://support.pavietnam.vn, mật khẩu mà bạn nhập sẽ được chuyển thành một chuỗi dài các kí tự bằng một thứ gọi là hash function ( tạm dịch : hàm băm ) .
Chuỗi này sẽ được lưu vào cơ sở dữ liệu, chứ không lưu mật khẩu thô của bạn nhằm mục đích tăng tính bảo mật thông tin. Lỡ hacker có trộm dữ liệu thì cũng chỉ thấy những thứ như GziyHGV547bklhuHgHZ chứ không biết password thật của bạn là gì .
Mỗi lần bạn đăng nhập, hash function sẽ “ băm ” password thật của bạn thành chuỗi kí tự rồi so sánh nó với cái trong cơ sở dữ liệu, nếu khớp thì đăng nhập tiếp, không thì báo lỗi. Chúng ta không có nhu yếu dịch ngược chuỗi nói trên ra lại thành password thật để làm gì cả .

phương pháp mã hóa

Nói thêm về hash function, trách nhiệm của nó là chuyển một chuỗi có độ dài bất kể thành chuỗi kí tự có độ dài cố định và thắt chặt. Ví dụ, nếu bạn pháp luật chuỗi kí tự sau khi “ băm ” sẽ dài 10 kí tự thì dù nguồn vào của bạn có bao nhiêu chữ đi nữa thì hiệu quả nhận được sẽ luôn là 10 và chỉ 10 kí tự mà thôi .
Đặc điểm của hash function là trong cùng 1 điều kiện kèm theo, dữ liệu nguồn vào như nhau thì tác dụng sau khi băm cũng sẽ y hệt như nhau. Nếu chỉ đổi một chút xíu thôi, có khi chỉ là 1 kí tự nhỏ thì chuỗi tác dụng sẽ khác trọn vẹn .
Cũng vì thế mà người ta dùng hash function để kiểm tra tính toàn vẹn của dữ liệu. Ví dụ, trước khi gửi một tập tin Word cho người bạn thì mình dùng mã hóa một chiều và tạo ra được chuỗi sau băm là UHBFhvsqwuGHYfu. Khi người bạn đó tải tập tin về máy, nếu nó băm và cũng nhận được chuỗi UHBFhvsqwuGHYfu thì có nghĩa là tập tin của mình không bị can thiệp bởi hacker, còn nếu tác dụng khác thì có nghĩa là quy trình truyền tải hoàn toàn có thể đã bị lỗi làm mất một phần dữ liệu, hoặc tệ hơn là có ai đó đã xén bớt hay thêm vào thứ gì đó rồi .
Hiện nay, chiêu thức mã hóa này sử dụng hai thuật toán hash function thông dụng nhất là MD5 và SHA. Nếu bạn tải tập tin trên mạng thì đôi lúc sẽ thấy dòng chữ MD5 do tác giả cung ứng, mục tiêu là để bạn so sánh file đã tải về với file gốc xem có bị lỗi gì không .

3. Mã hóa đối xứng ( symmetric key encryption )

Để hiểu về giải pháp mã hóa này, tất cả chúng ta khởi đầu đi tìm hiểu và khám phá về việc bảo mật thông tin có dùng khóa. Khóa ở đây được gọi là “ key ”, nó là mấu chốt để thuật toán hoàn toàn có thể nhìn vào mà biết đường mã hóa và giải thuật dữ liệu .
Cũng giống như cánh cửa nhà của bạn, nếu bạn có khóa thì bạn hoàn toàn có thể nhanh gọn đi vào trong, còn không có khóa thì bạn vẫn hoàn toàn có thể đục cửa hay kêu thợ sửa khóa, nhưng sẽ tốn thời hạn và công sức của con người hơn. Mỗi chìa khóa cho mỗi ổ khóa trên quốc tế là duy nhất với các đường rãnh không chìa nào giống chìa nào – key mã hóa cũng tương tự như như vậy .
Ở chiêu thức mã hóa đối xứng, chìa khóa để mã hóa và giải thuật là như nhau nên người ta mới gọi là đối xứng, tiếng Anh là symmetric. Theo 1 số ít tài liệu thì chiêu thức mã hóa đối xứng là giải pháp được sử dụng nhất thông dụng lúc bấy giờ .
Giả sử mình cần mã hóa một tập tin để gửi cho bạn, thì tiến trình của chiêu thức mã hóa đối xứng sẽ như sau :

  • B1: Mình sử dụng một thuật toán mã hóa, cộng với khóa của mình để mã hóa file (cách tạo khóa tạm thời không bàn đến, chủ yếu là dùng các giải thuật ngẫu nhiên).
  • B2: Bằng cách nào đó, mình giao cho bạn một khóa giống với mình, có thể là giao trước hoặc sau khi mã hóa tập tin đều được.
  • B3: Khi bạn nhận tập tin, bạn sẽ dùng khóa này để giải mã ra tập tin gốc có thể đọc được.Những điều bạn cần biết về mã hoá thông tin và ứng dụng của chúng.

phương pháp mã hóa

Vấn đề ở đây, đó là mình phải làm thế nào để chuyển khóa cho bạn một cách bảo đảm an toàn. Nếu khóa này bị lộ ra thì bất kể ai cũng hoàn toàn có thể xài thuật toán nói trên để giải thuật tập tin, như vậy thì tính bảo mật thông tin sẽ không còn nữa .
Ngày nay người ta thường xài password như là khóa mã hóa, và bằng cách này bạn hoàn toàn có thể nhanh gọn nhắn cho người nhận cùng đoạn password đó để xài làm khóa giải thuật .
Các thuật toán mã hóa thường thấy giờ đây là DES và AES. Trong đó, AES phổ cập trong quốc tế văn minh hơn và nó dùng để sửa chữa thay thế cho DES vốn đã Open từ năm 1977. Hiện nay nhiều cơ quan cơ quan chính phủ trên quốc tế pháp luật tài liệu khi được gửi qua mạng phải mã hóa AES .
Thuật toán AES hoàn toàn có thể dùng nhiều kích 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ố ít 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 thuật và mã hóa cũng cần nhiều năng lượng giải quyết và xử lý hơn .
Hiện chính sách mã hóa mặc định của Android 5.0 đang xài là AES 128 – bit. Điều này có nghĩa là mỗi khi bạn chuẩn bị sẵn sàng ghi dữ liệu xuống bộ nhớ máy thì hệ quản lý sẽ mã hóa nó rồi mới triển khai ghi .

Tương tự, mỗi khi OS chuẩn bị đọc dữ liệu thì Android phải giải mã trước rồi mới chuyển ra ngoài, khi đó thì hình ảnh mới hiện ra được, các tập tin nhạc mới chơi được và tài liệu mới có thể đọc được. Bằng cách này, nếu bạn có lỡ làm mất máy thì người lượm được cũng không thể xem trộm dữ liệu của bạn (giả sử bạn đã lock màn hình).

Nếu người đó có gỡ chip nhớ ra để đọc thì dữ liệu cũng đã mã hóa hết. Tất nhiên, Android cũng xài key dạng symmetric ( tạo ra dựa vào password của bạn ), và key đó còn được băm thêm một lần nữa bằng SHA 256 – bit để tăng tính bảo đảm an toàn .

4. Mã hóa bất đối xứng ( public key encryption )

Nếu như ở trên, khóa mã hóa và khóa giải thuật đều giống nhau thì với chiêu thức mã hóa bất đối xứng, hai khóa này trọn vẹn khác nhau. Để phân biệt giữa hai khóa thì người ta gọi khóa mã hóa là public key, còn khóa giải thuật là private key .
Public, như cái tên đã gợi ý, mang đặc thù “ công cộng ” và hoàn toàn có thể được sử dụng để mã hóa dữ liệu bởi bất kỳ ai. Tuy nhiên, chỉ người nào nằm trong tay private key mới có năng lực giải thuật dữ liệu để xem .
Phương pháp mã hóa bất đối xứng sử dụng quy trình tiến độ như sau :

  • B1: Bên nhận sẽ tạo ra một cặp public + private key. Người này giữ lại private key cho riêng mình và cất cẩn thận, còn public key thì chuyển cho bên gửi (dưới hình thức email, copy qua USB, v.v) hoặc post đâu đó lên mạng.
  • B2: Bên gửi sử dụng public key để mã hóa dữ liệu, sau đó gửi file đã mã hóa lại cho bên nhận.
  • B3: Bên nhận lúc này sẽ xài private key đã lưu khi nãy để giải mã dữ liệu và sử dụng.Những điều bạn cần biết về mã hoá thông tin và ứng dụng của chúng

phương pháp mã hóa

Nhược điểm của chiêu thức mã hóa bất đối xứng là vận tốc giải thuật chậm hơn so với giải pháp mã hóa đối xứng, tức là tất cả chúng ta phải tốn nhiều năng lượng giải quyết và xử lý của CPU hơn, phải chờ lâu hơn, dẫn đến “ ngân sách ” cao hơn. Khoảng thời hạn lâu hơn là bao nhiêu thì còn tùy vào thuật toán mã hóa, phương pháp mã hóa và key .
Chính cho nên vì thế mà hiện tại ít ai mã hóa cả một file bằng giải pháp mã hóa bất đối xứng. Thay vào đó, họ sử dụng giải pháp mã hóa bất đối xứng để mã hóa chính cái key dùng trong chiêu thức mã hóa đối xứng ( hoặc tạo ra key đó bằng cách tổng hợp public và private key của bên gửi và nhận ) .
Như đã nói ở trên, chiêu thức mã hóa đối xứng có điểm yếu kém là key bị lộ là coi như xong, vậy thì giờ tất cả chúng ta mã hóa luôn cái key đó cho bảo đảm an toàn và hoàn toàn có thể gửi key tự do hơn. Một khi đã giải thuật bất đối xứng để ra key gốc rồi thì triển khai giải thuật thêm lần nữa bằng giải pháp đối xứng để ra file khởi đầu .
Một thuật toán mã hóa thường được xài là RSA .

III. HTTPS – Ứng dụng của mã hóa

Mã hóa là nền tảng cho nhiều công nghệ tiên tiến, nhưng nó đặc biệt quan trọng quan trọng để giữ bảo đảm an toàn cho các nhu yếu và phản hồi HTTP và để xác nhận các sever gốc của website. Giao thức chịu nghĩa vụ và trách nhiệm cho việc này được gọi là HTTPS ( Hypertext Transfer Protocol Secure ). Một website được phân phát qua HTTPS thay vì HTTP sẽ có URL mở màn bằng https : / / thay vì http : / / .

HTTPS sử dụng giao thức mã hóa có tên là Transport Layer Security (TLS). Trước đây, một giao thức mã hóa trước đó được gọi là Lớp cổng bảo mật (SSL) là tiêu chuẩn, nhưng TLS đã thay thế SSL. Một trang web thực hiện HTTPS sẽ có chứng chỉ SSL được cài đặt trên máy chủ gốc của nó. 

Bạn có thể tìm hiều thêm về https tại đây

IV. Kết luận

Trong thiên nhiên và môi trường Internet lúc bấy giờ, tiềm ẩn rất nhiều rủi ro tiềm ẩn và rủi ro đáng tiếc. Vì vậy việc mã hóa dữ liệu là thiết yếu để bảo vệ tốt thông tin người dùng. Các ứng dụng hầu hết đã tương hỗ khá đầy đủ các giải pháp mã hóa. Tuy nhiên, không ít người dùng vẫn sử dụng các giao thức thường thì ( không được mã hóa ), rất dễ bị rò rỉ thông tin. Hi vọng qua bài viết này, bạn sẽ hiểu hơn về mã hóa và các chiêu thức mã hóa. Chúc bạn bảo vệ tốt thông tin, dữ liệu của mình

P.A Việt Nam giúp các bạn lựa chọn chứng chỉ SSL phù hợp với nhu cầu
https://www.pavietnam.vn/vn/tu-van-ssl.html
Tham khảo chứng chỉ số SSL của các hãng bảo mật nổi tiếng
Sectigo – Comodo
Geotrust
Digicert

Tham khảo các tặng thêm : https://www.pavietnam.vn/vn/tin-khuyen-mai/

5

/

5
(
1
bầu chọn

)

Mã hóa là gì ? 4 phương pháp mã hóa thông dụng

Bài viết liên quan
Hotline 24/7: O984.666.352
Alternate Text Gọi ngay