Mã hóa bất Đối xứng và bất Đối xứng, mật mã Đối xứng và mật mã bất Đối xứng

     

Hầu như ai có tìm hiểu về bình yên đọc tin phần nhiều biết đến nhì nhiều loại mã hoá thông dụng là mã hoá đối xứng (symmetric cryptography) và mã hoá bất đối xứng (asymmetric cryptography). Về cơ bạn dạng thì:

Mã hoá đối xứng (tốt còn gọi là mã hoá túng mật): Nói đơn giản là tín đồ ta cần sử dụng và một chìa khoá để khoá cùng mlàm việc lên tiếng rất cần phải giữ lại kín. Và cả phía 2 bên gửi và dìm biết tin đều phải sở hữu chìa khoá này.

Bạn đang xem: Mã hóa bất Đối xứng và bất Đối xứng, mật mã Đối xứng và mật mã bất Đối xứng

Mã hoá bất đối xứng (tốt có cách gọi khác là mã hoá công khai): cũng có thể đọc là fan ta cần sử dụng hai chìa khoá khác nhau để khoá cùng mnghỉ ngơi khoá báo cáo kín đáo. public key sẽ tiến hành công khai, với được gửi đi mang đến đối tượng người dùng phải mã hoá báo cáo, còn private key được giữ lại bí mật, cùng nó đóng sứ mệnh như chìa khoá vạn năng hoàn toàn có thể mlàm việc được toàn bộ báo cáo được khoá bởi public key.

2. Tại sao cần má hoá bất đối xứng?

*

Nói nđính thêm gọn thì phần đông những áp dụng các bạn cần sử dụng từng ngày bây chừ nlỗi Facebook, Gmail, Amazon, PayPal v.v phần đa sử dụng giao thức HTTPs. Có thể gọi là giao thức HTTPs bình an rộng HTTPhường. vày cục bộ báo cáo truyền rằng thân client cùng VPS được bảo vệ vì chưng cỗ mã hoá SSL/TSL. SSL/TSL này hoạt động dựa trên cả hai nhiều loại mã hoá đối xứng và bất đối xứng. Nhờ nó nhưng chúng ta có thể bảo đảm an toàn kín khi triển khai gần như thanh toán có cất công bố mẫn cảm bên trên Internet mà không bị đánh tráo báo cáo nhìn trong suốt quy trình truyền thừa nhận tài liệu. cũng có thể nói, giả dụ không tồn tại mật mã, đặc biệt là mã hoá bất đối xứng thì không tồn tại thương thơm mại điện tử.

Về cơ phiên bản, HTTP truyền tài liệu dưới dạng plain text, tức thị ví như ai đó nghe lén tài liệu chúng ta truyền cùng nhận với server thì có thể gọi và can thiệp được nội dung (man-in-the-middle attack). mặc khi khi dùng mã hoá đối xứng để encrypt với decrypt lên tiếng truyền cùng nhấn thì cũng có lỗ hổng là hai bên nên dàn xếp key new mã hoá cùng giải thuật được, điều này attacker vẫn có thể nắm được key cùng gọi được lên tiếng nlỗi hay.

Xem thêm:

Điểm yếu hèn của mã hoá đối xứng được khắc chế vào mã hoá bất đối xứng. Ý tưởng là vắt bởi gửi chìa khoá cho phía client, thì server đang gửi ổ khoá, để client khoá thông điệp kín đáo trong một mẫu hộp, còn chỉ gồm hệ thống có thể giải mã được. Cho buộc phải các client vẫn không phát âm được thông điệp của nhau, và chỉ bao gồm máy chủ cùng với private key bắt đầu mnghỉ ngơi khoá được các chiếc hộp này. (Trên thực tiễn thì public key vừa dùng để mã hoá vừa dùng làm giải mã thông tin nhận với trình lên server!)

3. Về RSA

RSA là 1 trong giữa những khối hệ thống mã hoá bất đối xứng được thực hiện thoáng rộng. Nó được đặt theo tên của 3 đơn vị kỹ thuật MIT xây đắp ra nó là: Ron Rivest, Adi Shamir, cùng Leonard Adleman. Ý tưởng chính yếu nhằm bảo đảm tính an toàn của RSA là dựa vào sự trở ngại trong câu hỏi đối chiếu nhân tử của 2 số nguim tố to. (a x b = c, kiếm tìm ngược lại a, b tự c là phân tích nhân tử).

Hệ thống mã hoá RSA bao gồm 4 bước: key generation, key distribution, encryptiondecryption. Vì nhằm đảm bảo an toàn tính kín, cần mỗi khối hệ thống không giống nhau đề xuất tạo ra các public, với private key khác biệt. Sau qúa trình handshake và public key được gởi cho tới phía client thì lên tiếng new chấp nhận được mã hoá Khi VPS với client giao tiếp với nhau.

4. Mã hoá với giải mã

Tạm thời bỏ lỡ bước public key cùng private được tạo ra thế nào. Chúng ta bao gồm bí quyết nhằm mã hoá cùng lời giải dữ liệu nlỗi sau:

Encryption: (m^e gian lận n = c) Decryption: (c^d gian lận n = m)

Trong đó:

m là message ban đầu e, n là public key c là dữ liệu đã có mã hoá d là private key thường xuyên là một trong những rất cao, tích của 2 số nguim tố, với được giữ lại an ninh tuyệt đối

ví dụ như mang đến e = 17, n = 3233, d = 2753 với mang lại thông điệp yêu cầu đc mã hoá là m = 42

Mã hoá: (42^17 hack 3233 = 2557)

Số 2557 này Lúc được lời giải thì nó trlàm việc về 42 nlỗi cũ:

Giải mã: (2557^2753 hủ thuật 3233 = 42)

private key d được tạo thành phụ thuộc vào 2 prime factor của n. Trong thực tiễn n được tạo nên bằng cách nhân hai số ngulặng tố 2048 bits do đó tính ra d thì dễ dàng, còn từ n tính ngược chở lại 2 số đó để kiếm tìm private key là gần như bất khả thi cùng với máy vi tính bây chừ.

5. Cách chế tạo ra public cùng private key

Phần này thiêng về toán, hầu như họ không nên quan tâm nếu nlỗi sử dụng các gói Cipher bao gồm sẵn của Java hoặc JavaScript.

Chọn nhị số nguim tố thốt nhiên minh bạch p cùng q (vào thực tế là càng phệ càng xuất sắc, cỡ 2048 bits giỏi 617 chữ số). Ví dụ: p = 61 với q = 53 Tính tích (n = p * q = 61 * 53 = 3233) Tính tác dụng hàm số Euler (totient): (Phi(n) = (p − 1)(q − 1)) (Phi(3233) = (61 - 1) * (53 - 1) = 3120) Chọn một số trong những ngẫu nhiên (1 số ít ngulặng tố cùng nhau của 31đôi mươi Chọn (e = 17) <\ e*d hủ thuật Phi(n) = 1 \ 17*d gian lận 3120 = 1>

Hoặc là sử dụng phương pháp brute force để tính d (hoàn toàn có thể được vì họ chọn những số nhỏ), hoặc dùng thuật toán thù Euclid mở rộng, ta tất cả (d = 2735)

Cách brute force thì như sau (chạy chưa đến 15 bước là ra):

def compute_d(phi_n, e):for i in range(1, 1000):x = ((i * phi_n) + 1) / ey = (e * x) % phi_nif y == 1:print xbreakcompute_d(3120, 17)do vậy ở đầu cuối họ tính toán được public key: e = 17, n = 3233 với private key: d = 2735

6. Tính an ninh của RSA

Tính an ninh của RSA chủ yếu dựa vào cỗ tạo ra số bỗng nhiên xuất hiện 2 số ngulặng tố p với q lúc đầu. Việc tính trở lại p với q tự n là cthị trấn hầu hết cần yếu cùng với nhị số nguim tố 2048 bits như sẽ đề cập sinh sống trên. Nhưng việc tính ra d rảnh p cùng q là bài toán rất dễ dàng. Do kia nếu nlỗi một bên nào đó đân oán ra được hoặc tìm thấy lỗ hổng của bộ sinc số hốt nhiên đó thì coi RSA bị hoá giải. Gần trên đây tất cả chủ kiến cho rằng Bộ An ninch Nội địa Hoa Kỳ (NSA) sẽ cài đặt một back door vào cỗ sản xuất số tự nhiên Dual Elliptic Curve sầu sẽ giúp đỡ NSA có thể craông chồng RSA nhanh rộng 10,000 lần. Và điều đáng quyên tâm là bộ chế tác số tự dưng này được cửa hàng RSA (được ra đời vì chưng 3 đồng tác giả của khối hệ thống RSA) setup khoác định vào tương đối nhiều vận dụng khác biệt. (Exclusive: NSA infiltrated RSA security more deeply than thought - study)


Chuyên mục: Domain Hosting