Mã hóa RSA là 1 khối hệ thống giải quyết và xử lý các gì đã từng là một trong vấn đề to nhất trong bảo mật: làm như thế nào có thể gửi cho ai đó một tin nhắn được mã hóa mà không có cơ hội share mã trước đó? Nội dung bài viết này sẽ hướng dẫn cho mình biết mã hóa RSA là gì, bí quyết nó được phát triển và vận động cũng tương tự một trong những luận điểm bảo mật mà nó phải đối diện.
RSA là gì?
giả sử bạn muốn nói mang bạn mình một bí mật. Nếu bạn ở ngay sát bên chúng ta, bạn chỉ cần rỉ tai điều nào đó. Nếu khách hàng ở hai phí đối nhau của tổ quốc, điều đó sẽ không còn an ninh. Bạn có thể viết nó ra & gửi cho chúng ta qua đường bưu điện hoặc lạm dụng quá Smartphone. Nhưng cách này sẽ không còn an ninh & bất cứ ai sở hữu động cơ đủ mạnh đều mà thậm chí chặn được tin nhắn.
trường hợp bí hiểm đó đủ quan trọng, bạn không nên mạo hiểm viết nó ra. Gián điệp hoặc một chuyên viên bưu điện lừa đảo có thể xem nó qua thư của người tiêu dùng. Tương tự như vậy, ai đó mà thậm chí nghe trộm điện thoại cảm ứng của chúng ta mà bạn chưa biết và bọn họ sẽ lưu lại tất cả cuộc gọi mà bạn triển khai.
Một cách khắc phục để ngăn cản kẻ nghe trộm và truy cập content tin nhắn là mã hóa nó. Về chủ yếu, điều đó Có nghĩa là thêm 1 mã vào tin nhắn, nó sẽ làm cho tin nhắn thành một mớ hỗn độn. Nếu mã của người tiêu dùng đủ phức hợp, thì những người duy nhất có thể truy vấn vào thư gốc là người có quyền truy cập vào mã.
nếu như bạn có cơ hội share mã có bạn mình trước đấy, thì một trong các hai người có thể gửi tin nhắn đc mã hóa bất cứ lúc nào. Nhưng nếu bạn không tồn tại cơ hội share mã đó thì sao?
trên đây là 1 vấn đề cơ bản của mật mã, đã được giải quyết và xử lý bằng những sơ đồ mã hóa public-key ( có cách gọi khác là mã hóa bất đối xứng) như RSA.
Theo mã hóa RSA, những tin nhắn được mã hóa bằng một mã thường gọi là public key, mã này có thể được chia sẻ công khai. Do một trong những đặc điểm tính toán khoa học khác hoàn toàn của thuật toán RSA, khi nào một thông điệp đã được mã hóa bằng public key, nó chỉ mà thậm chí được giải mã bằng một key được có tên thường gọi là private key. Mỗi người tiêu dùng RSA có cặp key bao gồm public key & private key của riêng bọn họ. Private key cần phải giữ bí ẩn.
Trong mật mã học, RSA là 1 trong những thuật toán mật mã hóa khóa công khai. Đây là thuật toán trước tiên phù hợp với việc sản sinh chữ ký điện tử đồng thời cùng lúc với việc mã hóa. Nó ghi lại một sự văn minh vươn tầm của nghành mật mã học trong các việc sử dụng quá khóa công cộng. RSA đang đc sử dụng phổ cập trong dịch vụ thương mại điện tử & được cho là đảm bảo mang điều kiện độ dài khóa đủ lớn. &Ndash; Wikipedia
>>> Xem thêm: bán máy trạm HP Z640 tại Hà Nội
Mã hóa RSA đc lạm dụng quá ở đâu?
Mã hóa RSA thường dùng kết hợp với những sơ đồ mã hóa khác. Và cho những chữ ký kỹ thuật số thậm chí chứng minh tính chứng thực và tính trọn vẹn của một thông điệp. Nó xoàng xĩnh ko được lạm dụng để mã hóa toàn cục thư & file vì nó kém cỏi kết quả & tốn khoáng sản hơn so với mã hóa key đối xứng.
Để khiến cho toàn bộ thứ công dụng hơn, một file kém cỏi sẽ đc mã hóa bằng thuật toán key đối xứng. Kế tiếp key đối xứng sẽ đc mã hóa bằng mã hóa RSA. Theo quy trình này, chỉ người có quyền được truy cập vào RSA private key mới có thể giải thuật key đối xứng.
giả dụ không còn truy vấn key đối xứng, thì không còn giải thuật file gốc. Biện pháp này mà thậm chí được sử dụng để bảo mật các thư & file mà dường như không mất nhiều số giờ và khoáng sản.
Mã hóa RSA mà thậm chí đc lạm dụng trong một số hệ thống khác nhau. Nó mà thậm chí vận hành trong OpenSSL, wolfCrypt, cryptlib và một trong những thư viện mật mã khác.
Theo cổ xưa, nó đc sử dụng quá trong TLS & cũng chính là thuận toán ban sơ được lạm dụng quá trong mã hóa PGP. RSA vẫn đc nhìn thấy trong một loạt các trình duyệt web, email, VPN, chat và những kênh giao tiếp khác.
RSA cũng hay sử dụng để tạo kết nối bình an giữa VPN client và VPN server. Theo các giao thức như OpenVPN, TLS mà thậm chí sử dụng quá thuật toán RSA để bàn thảo key và thiết lập một kênh an toàn.
>>> Xem thêm: bán bo mạch chủ ibm x3650 m4
Mã hóa RSA vận động như vậy nào?
Phần sau sẽ dễ chơi hơn một chút. Chính vì quá nhiều người hâm mộ thậm chí bị giáo viên cấp ba để cho họ sốt ruột về việc mã hóa. Chúng ta sẽ dễ chơi hóa một trong những khái niệm & sử dụng quá những số không cầu kỳ. Trong thực chất, mã hóa RSA sử dụng các số nguyên tố sở hữu độ lớn lớn hơn phổ biến và sẽ sở hữu một số trong những trường hợp số phức hợp.
có một số khái niệm không giống nhau mà bạn phải tìm hiểu trước lúc chúng tôi trình bày về chúng. Chúng bao hàm hàm trapdoor, tạo số nguyên tố, hàm phi Carmichael. &Amp; các công đoạn cá biệt liên quan tới việc thống kê giám sát các public key và private key đc lạm dụng quá trong thời gian mã hóa & lời giải.
Hàm trapdoor
Mã hóa RSA vận động dựa theo tiền đề rằng thuật toán dễ dàng đo lường và thống kê theo một hướng. Nhưng hầu như không hề triển khai Ngược lại. Cụ thể nếu bạn đc cho biết thêm rằng 701,111 là tích của hai số nguyên tố, vậy bạn cũng có thể đưa ra hai số đó là bao nhiêu không?
ngay cả mang laptop hay PC thì hầu hết bọn họ cũng biến thành chưa chắc chắn xuất phát điểm từ đâu chứ đừng nói đến đưa ra câu trả lời. Nhưng ví như lật lại tất cả trang bị thì nó sẽ dễ dàng hơn không ít. Hiệu quả của:
907 x 773
nếu bạn dùng máy tính để tính phép toán này thì bạn sẽ phát hiện lời đáp là 701,111 & nó đã được đề cập trước đấy. 907 &Amp; 773 đó là hai số nguyên tố buộc phải replay cho câu hỏi trước hết của công ty chúng tôi. Điều ấy cho chúng ta thấy rằng một số phương trình thậm chí dễ dãi giải ra 1 cách thuận lợi, nhưng Ngược lại đã không thể.
Một góc độ hấp dẫn khác của phương trình này là việc tìm kiếm ra 1 trong số nguyên tốt không cầu kỳ trường hợp bạn đã sở hữu số sót lại. Nếu bạn cho thấy thêm rằng 701,111 là kết quả của 907 nhân với cùng một số nguyên tố khác, bạn sẽ đưa ra được số nguyên tố đó mang phương trình sau:
701,111 ÷ 907 = 773
chính vì điều ấy, RSA lạm dụng số lượng to hơn phổ biến. Form size của những số nguyên tố trong quá trình quản lý và vận hành RSA là đồng nhất. Nhưng trong RSA 2048-bit, chúng sẽ kết hợp với nhau để tạo ra các key dài 617 chữ số.
>>> Xem thêm: mua may chu supermicro2029u
Tạo số nguyên tố
chức năng của hàm trapdoor đã đc đề cập ở trên tạo cơ sở cho phương pháp buổi giao lưu của những lược đồ mã hóa public key và private key. Những thuộc tính của chúng cho phép share public key mà không khiến nghiêm trọng cho tin nhắn hoặc tiết lộ private key. Chúng cũng cho phép Ác liệu đc mã hóa bằng một key theo cách mà chỉ mà thậm chí giải thuật bằng key khác.
những số nguyên tố trong RSA cần phải cực kỳ nghiêm trọng & cũng tương đối cách nhau chừng. Các số nhỏ hoặc sắp nhau sẽ dễ bị Bẻ khóa hơn phổ biến. Tuy nhiên, cụ thể của Shop chúng tôi sẽ lạm dụng quá các số bé nhiều hơn để khiến cho mọi vật dụng dễ theo dõi và tính toán hơn.
Tạo private key
Trong mã hóa RSA, một khi hung ác liệu hoặc tin nhắn đã đc chuyển thành bạn dạng mã sở hữu public key. Nó chỉ thậm chí được giải thuật bằng private key từ cộng một cặp key. Private key bao hàm d và n. Chúng ta đã biết n, và phương trình sau được lạm dụng để mua d:
d =1/e mod λ(n)
Trong phần tạo public key, chúng ta đã sắm e=11. Gần giống, bọn họ biết rằng λ (n) bằng 349,716 từ phép tính bên trên. Hầu hết thiết bị trở nên phức tạp hơn một chút khi xem phần này của công thức:
1/e mod
Phương trình này thậm chí giống như mong muốn bạn chia 1 cho 11, nhưng vẫn không nên vậy. Thay vào đó, điều này chỉ tượng trưng rằng bọn họ buộc phải tính toán nghịch đảo module của hoảng hồn (trong trường hợp này là 11) và λ (n) (trong trường hợp này là 349,716).
Về cơ bản, điều đó Tức là thay vì triển khai một phép toán modulo chuẩn mức, bọn họ sẽ sử dụng phép nghịch đảo. Điều ấy thường được đưa ra sở hữu Thuật toán Euclid lan rộng ra, nhưng nó nằm không tính phạm vi của nội dung bài viết này. Vì vậy họ sẽ sử dụng quá máy tính trực tuyến để sửa chữa thay thế. Hiện giờ họ sẽ kết hợp thông tin đã sở hữu vào công thức:
d =1/11 mod 349,716
Để triển khai làm việc này, chỉ cần nhập 11 (hoặc bất cứ lạnh lẽo trị nào bạn gán cho e) trong các số ấy số nguyên là 349,716 ( hoặc bất kỳ rét mướt trị nào mà bạn đã tính ra cho λ (n)). Ví như làm đúng, các bạn sẽ nhận được kết quả:
d = 254, 339
bây chừ chúng ta với lạnh trị cho d, bạn có thể giải thuật những tin nhắn đã được mã hóa bằng public key bằng công thức sau:
m = cd mod n
hiện nay hãy quay lại phần ciphertext © mà đã được mã hóa trong phần private key. Lúc mã hóa thư bằng public key, nó cho rét trị c là 688,749. Như trên, bọn họ đã biết rằng d=254,339. &Amp; bọn họ cũng từng biết n=701,111. Điều ấy mang lại:
m = 688,749254,339 mod 701,111.
Như bạn cũng có thể nhận ra, cố gắng lấy một số tới lũy thừa đồ vật 254,339 có thể tương đối phổ biến so với laptop tầm thường. Thay vào đó, họ sẽ lạm dụng laptop giải thuật RSA online.
khi chúng ta đã nhập ác nghiệt liệu, hãy nhấn Decrypt, làm việc này sẽ đưa những số thông qua công thức giải thuật đc liệt kê ở bên trên. Nếu bạn đã làm toàn bộ vật dụng đúng đắn, các bạn sẽ nhận được lời đáp là 4. Đó là tin nhắn lúc đầu mà Shop chúng tôi đã mã hóa bằng public key.