RSA là gì? Cách thức hoạt động của mã hóa RSA

1649
06-05-2022
RSA là gì? Cách thức hoạt động của mã hóa RSA

Mã hóa RSA giúp giải quyết một trong những vấn đề lớn nhất về bảo mật: Làm thế nào có thể gửi một tin nhắn được mã hóa cho một người mà không được chia sẻ mã? Trong bài viết hôm nay, Bizfly Cloud sẽ hướng dẫn cho bạn về mã hóa RSA, cách RSA được phát triển và hoạt động cũng như một số vấn đề bảo mật mà RSA phải đối mặt.

RSA là gì? 

Một trong những giải pháp an toàn nhằm ngăn chặn kẻ nghe trộm và truy cập nội dung tin nhắn riêng tư của bạn là thực hiện mã hóa tin nhắn đó. Điều này có nghĩa là bạn sẽ thêm mật mã vào tin nhắn đó, làm xáo trộn tin nhắn so với lúc ban đầu. Nếu mật mã đủ phức tạp, chỉ những người có quyền truy cập vào mã mới có thể truy cập vào thư gốc.

Nếu bạn đã chia sẻ mã với người nhận tin nhắn từ trước đó, thì một trong hai người có thể gửi tin nhắn mã hóa bất cứ lúc nào. Tuy nhiên, nếu bạn chưa có cơ hội chia sẻ mật mã đó thì phải xử lý sao?

Đây là một trong những vấn đề cơ bản trong lĩnh vực mật mã, được giải quyết thông qua các sơ đồ mã hóa public-key (mã hóa bất đối xứng) như RSA. Theo đó, các tin nhắn sẽ được mã hóa bằng một mã gọi là public key có thể chia sẻ công khai. Vì một số đặc thù tính toán khoa học khác biệt của thuật toán RSA, một khi một thông điệp được mã hóa bằng public key, thì chỉ có thể giải mã bằng một private key. Mỗi người dùng RSA sẽ có một cặp key bao gồm public key và private key của riêng họ, với private key được lưu giữ bí mật.

Các sơ đồ public key khác với key symmetric ở chỗ, cả quá trình mã hóa và giải mã đều sử dụng private key. Điểm khác biệt này khiến cho mã hóa RSA trở nên đặc biệt hữu ích trong các trường hợp mà người dùng chưa thể phân phối key một cách an toàn.

RSA là gì

Mã hoá RSA có phạm vi ứng dụng vô cùng phổ biến và rộng rãi

Mã hóa RSA thường được sử dụng như thế nào? 

Mã hoá RSA là hệ thống có thể giải quyết được những vấn đề bảo mật, cụ thể:

  • Mã hoá RSA thường được sử dụng để chứng minh tính xác thực và toàn vẹn của một thông điệp bằng cách kết hợp với các chữ ký điện tử hoặc với các sơ đồ mã hoá khác. Việc sử dụng RSA để mã hoá toàn bộ thư hoặc tệp là không khả thi bởi so với mã hoá khoá đối xứng thì nó kém hiệu quả hơn và tốn nhiều tài nguyên hơn.
  • Để mọi thứ trở nên hiệu quả hơn, một tệp sẽ được mã hóa bằng thuật toán mã khoá đối xứng và khóa đối xứng này sau đó sẽ tiếp tục được mã hóa bằng mã hoá RSA. Theo đúng quy trình này, chỉ một thực thể được chia sẻ quyền truy cập vào khoá bí mật RSA thì mới có thể tiến hành giải mã khoá đối xứng.
  • Bạn sẽ không thể giải mã được tệp gốc nếu không thể truy cập được vào khoá đối xứng. Do đó, phương pháp này thường được sử dụng trong việc bảo mật các thư và tệp mà không phải tiêu tốn quá nhiều tài nguyên hay thời gian để tính toán.
  • Mã hoá RSA cũng có thể được sử dụng và triển khai trong một vài hệ thống khác nhau như wolf Crypt, OpenSSL, cryptlib hay một số những thư viện mật mã.
  • Theo truyền thống, RSA là một trong những lược đồ mã hóa công khai được sử dụng rộng rãi trong TLS và PGP. Ngoài ra, RSA cũng được nhìn thấy trong một loạt các trình duyệt web, email, trò chuyện, VPN và nhiều kênh liên lạc khác.
  • RSA cũng thường được sử dụng cho mục đích tạo ra kết nối an toàn giữa máy chủ và máy khách VPN. Theo các giao thức OpenVPN, TLS thì RSA được dùng để thiết lập một kênh an toàn và trao đổi khoá.
Mã hóa RSA thường được sử dụng như thế nào

Mã hoá RSA được sử dụng để chứng minh tính xác thực và toàn vẹn của một thông điệp

Nền tảng của mã hóa RSA 

Trước khi mã hoá khoá công khai ra đời, việc giao tiếp an toàn giữa các khoá là một thách thức lớn đối với hệ thống truyền tin. Nếu không có một kênh an toàn hay cơ hội chia sẻ mã trước thời hạn để các khoá có thể được phân phối thì chắc chắn sẽ tạo ra lỗ hổng để tin tặc có thể chặn và truy cập vào các tin nhắn. Và mọi thứ bắt đầu thay đổi trong những năm 1970.

  • Mật mã khóa công khai bắt đầu được xuất bản và phát triển vào đầu thập kỷ 20 bởi James H.Ellis. Tuy nhiên, Ellis lại không tìm ra giải pháp để triển khai công việc của mình. May mắn, Clifford cocks là đồng nghiệp của Ellis đã mở rộng mật mã khóa công khai đó.
  • Malcolm J.Williamson - một đồng nghiệp khác của Ellis đã tìm ra một kế hoạch cho phép hai bên có thể thực hiện việc chia sẻ khoá mã hoá ngay cả khi kênh đang bị theo dõi. Kế hoạch này được gọi là chìa khóa trao đổi Diffie-Hellman.

Tất cả những công việc nói trên đều được thực hiện một cách bí mật tại cơ quan tình báo Vương quốc Anh, Trụ sở Truyền thông chính phủ (GCHQ) bởi những hạn chế về công nghệ và mật mã khóa công khai không được GCHQ sử dụng. Do đó, sự phát triển của nó nằm im trong nhiều năm.

  • Vài năm sau, Ralph Merkle đã tạo ra một dạng mật mã khóa công khai có ảnh hưởng nhất định đến Martin Hellman và Whitfield Diffie khi thiết kế chìa khoá trao đổi Diffie-Hellman.
  • Nhận thấy ý tưởng của Diffie-Hellman vẫn còn thiếu một khía cạnh quan trọng để khiến công việc của họ trở thành nền tảng cho mật mã khóa công khai bởi đây là hàm một chiều rất khó để thực hiện đảo ngược, năm 1977, Ron Rivest, Adi Shamir và Leonard Adleman đã đưa ra giải pháp mã hoá RSA sau hơn một năm nghiên cứu.
  • Đến năm 1977, công trình nghiên cứu mật mã này mới được giải mật và những người ban đầu phát minh ra RSA đều được công nhận.

Các học giả tại trụ sở MIT này đã tạo ra được một bước đột phá. Ý tưởng của họ được MIT cấp bằng sáng chế vào năm 1983 nhưng thuật toán RSA chỉ bắt đầu được sử dụng một cách rộng rãi như một công cụ bảo mật quan trọng trong những ngày đầu của Internet.

Nền tảng của mã hóa RSA

RSA được sử dụng một cách rộng rãi như một công cụ bảo mật quan trọng

Mã hóa RSA hoạt động như thế nào?

RSA hoạt động theo các bước cơ bản như sau:

  • Mỗi thực thể cần chia sẻ khoá công khai với nhau và thiết lập cặp khoá của riêng mình. Để thông tin liên lạc được đảm bảo bảo mật, hai thực thể cần giữ bí mật các chìa khoá riêng tư.
  • Sau khi người gửi đã có được chìa khoá riêng tư của người nhận, họ có thể mã hoá dữ liệu mà họ muốn bảo mật bằng chìa khoá này. Tuy nhiên, khi các dữ liệu đã được mã hoá bằng khoá công khai thì chỉ có khoá riêng tư đi kèm với khoá công khai mới có thể giải mã chúng. Tất cả những điều này được hình thành do chức năng cửa bẫy.
  • Khi người nhận nhận được tin nhắn đã được mã hoá, họ có thể truy cập vào dữ liệu bằng cách sử dụng khoá riêng của mình. Nếu người nhận muốn đảm bảo mức độ an toàn cho việc liên lạc thì họ có thể sử dụng khoá công khai của bên mà mình liên lạc để mã hoá tin nhắn. Và tất nhiên, cách duy nhất để đối phương truy cập được vào thông tin bị mã hoá bằng khoá công khai là sử dụng chìa khoá riêng tư phù hợp.

Bằng cách này, mã hoá RSA được sử dụng khi các bên không biết gửi dữ liệu một cách an toàn.

Việc hiểu rõ RSA là gì là quan trọng bởi nó sẽ mang đến cho bạn một số kiến thức nền tảng để bạn có thể giải quyết những vấn đề lớn nhất trong mật mã. Rõ ràng, chỉ với hai tính năng mã hoá và giải mã tối ưu đến tuyệt đối, RSA cung cấp cho người dùng những giá trị vô cùng lớn. Chắc chắn với những nội dung hữu ích mà Bizfly Cloud chia sẻ đã đủ để bạn có được cái nhìn tổng quan nhất về RSA cũng như những thông tin quan trọng nhất để sử dụng hệ mã hoá này một cách tốt nhất.

>>> Xem thêm: RSA cảnh báo: Hãy coi chừng các điểm mù bảo mật blockchain

Bizfly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

Bizfly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Độc giả quan tâm đến các giải pháp của Bizfly Cloud có thể truy cập tại đây.

DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud

TAGS: Rsa
SHARE