1. Trang chủ
  2. » Tất cả

Giải thuật md5 rsa và ứng dụng trong an toàn điện toán đám mây

25 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giải thuật MD5 - RSA và ứng dụng trong an toàn điện toán đám mây
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành An toàn Điện Toán Đám Mây
Thể loại Bài tập lớn
Thành phố Hà Nội
Định dạng
Số trang 25
Dung lượng 2,2 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nói một cách đơn giản, điện toán đám mây là một mô hình điện toán trong đó tài nguyên được cung cấp cho người dùng dựa trên nhu cầu của họ.. Trong bài tiểu luận này, chúng ta sẽ phân tíc

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA: VIỄN THÔNG I

Trang 2

DANH SÁCH THÀNH VIÊN VÀ PHÂN

CÔNG CÔNG VIỆC

thiệu chung về hệ thống điện toán đám mây và Chương 2: Hàm băm mật mã MD5

thuật mã hóa khóa công khai RSA

- Tổng hợp WORD

dụng hai giải thuật MD5 và RSA trong an toàn điện toán đám mây

- Xây dựng đề cương cho bài tiểu luận

Trang 3

MỤC LỤC

THUẬT NGỮ VIẾT TẮT 3

DANH MỤC CÁC BẢNG, HÌNH VẼ Error! Bookmark not defined MỞ ĐẦU 5

CHƯƠNG I : GIỚI THIỆU CHUNG VỀ ĐIỆN TOÁN ĐÁM MÂY 6

1.1 Tổng quan 6

1.2 Một vài đặc điểm chính 7

1.3 Ưu , nhược điểm điện toán đám mây 7

1.3.1 Ưu điểm 7

1.3.2 Nhược điểm 7

1.4 Vấn đề bảo mật trong điện toán đám mây 8

CHƯƠNG II : HÀM BĂM MẬT MÃ MD5 8

2.1 Tổng quan 8

2.2 Giải thuật 8

2.2.1 Quá trình đệm 8

2.2.2 Quá trình nén 9

CHƯƠNG III: GIẢI THÍCH THUẬT MÃ HÓA CÔNG KHAI RSA 12

3.1 Giới thiệu về thuật toán RSA 12

3.2 Giải thuật, mã hóa và giải mã RSA 12

3.3 Phạm vi ứng dụng của hệ mã hóa RSA 13

3.4 Ví dụ về giải thuật mã hóa công khai RSA: 13

CHƯƠNG IV: ỨNG DỤNG HAI GIẢI THUẬT MD5 VÀ RSA TRONG AN TOÀN ĐIỆN TOÁN ĐÁM MÂY 17

4.1: Các công việc thực hiện 17

4.2: Tính bảo mật của hệ thống 18

4.3: Kết quả thực tế 19

CHƯƠNG V : KẾT LUẬN 22

TÀI LIỆU THAM KHẢO 23

24

Trang 4

THUẬT NGỮ VIẾT TẮT

Standards

Tiêu chuẩn xử lý thông tin liên bang

MD4 Message-Digest Algorithm 4 Thuật toán thông báo-thông báo 4 MD5 Message-Digest Algorithm 5 Thuật toán thông báo-thông báo 5

and Technology

Viện Tiêu chuẩn và Công nghệ quốc gia

Extension

Bảo mật-Tiện ích mở rộng Internet Mail đa năng

Trang 5

DANH MỤC CÁC BẢNG, HÌNH VẼ

Trang 6

MỞ ĐẦU

Điện toán đám mây là một công nghệ mới nổi trong lĩnh vực mạng Nó đang trở nên phổ biến trong mọi lĩnh vực Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) định nghĩa điện toán đám mây là một mô hình cho phép truy cập mạng phổ biến, thuận tiện, theo yêu cầu vào một nhóm tài nguyên máy tính có thể định cấu hình được chia sẻ Nói một cách đơn giản, điện toán đám mây là một mô hình điện toán trong đó tài nguyên được cung cấp cho người dùng dựa trên nhu cầu của họ Trong điện toán đám mây, tài nguyên được cung cấp bởi nhà cung cấp dịch vụ đám mây được gọi là CSP Nhiều công ty phần mềm như Google, Microsoft, Amazon, Salesforce, v.v đang cung cấp các dịch vụ đám mây trên các tham số khác nhau

Bằng cách sử dụng dịch vụ của nhà cung cấp dịch vụ đám mây, người dùng chuyển gánh nặng cài đặt phần mềm, bảo trì dữ liệu, cơ sở hạ tầng, không gian lưu trữ, v.v sang nhà cung cấp dịch vụ đám mây Các nhà cung cấp luận án cung cấp cho khách hàng của họ khả năng lưu trữ, truy xuất và chia sẻ dữ liệu với những người dùng khác một cách dễ dàng Vì

dữ liệu được chia sẻ giữa những người dùng khác nhau trong đám mây nên có thể có khả năng dữ liệu bị mất hoặc sử dụng sai bởi những người dùng khác Đó là vấn đề đáng quan tâm nhất trong điện toán đám mây Nhiều người ngại chia sẻ dữ liệu của họ trên đám mây

vì họ không biết dữ liệu của họ được chia sẻ với ai Trong bài tiểu luận này, chúng ta sẽ phân tích khả năng bảo mật cũng như toàn vẹn dữ liệu của mô hình điện toán đám mây, trong đó trước hết dữ liệu được mã hóa bằng thuật toán RSA và sau đó nó được tải lên trên các máy chủ đám mây rồi được xác minh bằng hàm băm MD5 Trong cách tiếp cận này, mỗi khách hàng có thể tạo khóa công khai và khóa bí mật của họ Khóa công khai được chia sẻ đến tất cả mọi người và khóa bí mật chỉ được chia sẻ đến với những người dùng được ủy quyền

Phần còn lại của bài nghiên cứu được sắp xếp như sau: Giới thiệu chung về điện toán

mã hóa RSA được trình bày trong Phần III Phần IV trình bày Ứng dụng hai giải thuật trên trong an toàn điện toán đám mây Và cuối cùng Phần V nêu kết luận cho bài tiểu luận

Trang 7

GIẢI THUẬT MD5 - RSA VÀ ỨNG DỤNG TRONG AN TOÀN ĐIỆN TOÁN ĐÁM MÂY

I GIỚI THIỆU CHUNG VỀ ĐIỆN TOÁN ĐÁM MÂY

1.1 Tổng quan

Điện toán đám mây ( với tên tiếng Anh là: cloud computing), hay còn gọi là các máy chủ ảo, là mô hình sử dụng công nghệ máy tính tiên tiến và phát triển dựa vào Internet Theo tổ chức quốc tế IEEE "Đây là hình mẫu trong đó thông tin được lưu trữ thường trực tại các máy chủ trên Internet và chỉ được được lưu trữ tạm thời ở các máy khách như là các trung tâm giải trí, máy tính cá nhân và các phương tiện máy tính cầm tay, hoặc máy tính trong doanh nghiệp ".Tên gọi "đám mây" ở đây là ám chỉ mạng Internet cũng như sự tưởng tượng về độ phức tạp của các cơ sở hạ tầng chứa trong nó Trong mô hình này, nó cho phép người sử dụng có thể truy cập các dịch vụ công nghệ từ một nhà cung cấp bất kì

"trong đám mây" mà không nhất thiết có các am hiểu, kinh nghiệm về chúng, hay là không cần quan tâm đến các cơ sở hạ tầng phục vụ công nghệ đó

Hình 1 : Mô hình điện toán đám mấy (cloud computing)

Trang 8

1.2 Một vài đặc điểm chính

Điện toán đám mây cần được phân biệt rõ ràng với tính toán tiện ích, điện toán lưới, hoặc

tự trị tính toán có liên quan đến sự tương tác của một số tài nguyên ảo hóa Đám mây máy chủ kết nối và chia sẻ thông tin dựa trên mức độ lưu lượng truy cập trang web trên toàn bộ mạng Các dịch vụ được điện toán đám mây cung cấp thường là dưới hình thức sau:

Một cách đơn giản, cloud computing là việc ảo hóa tài nguyên và các ứng dụng Thay vì khách hàng dùng một hoặc nhiều server thật thì khách hàng sẽ sử dụng các tài nguyên được

ảo hóa (virtualized) thông qua Internet

1.3 Ưu và nhược điểm điện toán đám mây

1.3.1 Ưu điểm

Như vậy, trước đây thay vì việc phải đi mua các server thật rồi đặt vào trung tâm dữ liệu thì bây giờ các doanh nghiệp chỉ cần đưa ra yêu cầu thì hệ thống đám mây sẽ tự động tìm các tài nguyên rỗi mà cấp phát cho bạn Cụ thể các lợi ích như sau:

 Các tài nguyên được cấp phát cho doanh nghiệp đúng như những gì họ yêu cầu một cách nhanh chóng

 Doanh nghiệp sẽ cắt giảm được lượng lớn chi phí mua bán, cài đặt và bảo trì server trong quá trình sử dụng

 Cắt giảm khâu chuyên gia vận hành và bảo trì server

 Doanh nghiệp có thể không phải lo lắng về vấn đề công nghệ được cập nhật trong server vì lúc này các công nghệ mới trên server sẽ được các nhà cung cấp điện toán đám mây làm việc này

Trang 9

Một vấn đề khác liên quan đến nhà cung cấp, khi khách hàng muốn thay đổi nhà cung cấp thì việc thay đổi đám mây cũng tương đối mệt mỏi, do vậy bạn rất có thể phụ thụ rất nhiều vào nhà cung cấp và hầu như rất ít có ai nghĩ rằng sẽ thay đổi nhà cung cấp khi mà

sẽ có rất nhiều vấn đề xảy ra khi thực hiện điều này

1.4 Vấn đề bảo mật trong điện toán đám mây

trong đám mây nên có thể có khả năng dữ liệu bị mất hoặc sử dụng sai bởi những người dùng khác Đó là vấn đề đáng quan tâm nhất trong điện toán đám mây Nhiều người ngại chia sẻ dữ liệu của họ trên đám mây vì họ không biết dữ liệu của họ được chia sẻ với ai Giải pháp được cung cấp để duy trì bảo mật dữ liệu và tính toàn vẹn của dữ liệu Lược

đồ này chứa sự kết hợp của thuật toán RSA và thuật toán băm MD5 Trong giải pháp này,

dữ liệu được mã hóa bởi RSA trước khi tải nó lên máy chủ đám mây Sau khi tải lên giá trị băm của nó được tính bằng lược đồ băm MD5 Tất cả các phương pháp này đều trải qua các bước sau Mã hóa / Giải mã, Tải lên dữ liệu trên đám mây, Băm và Xác minh

2.1 Tổng quan

- Khái niệm: MD5 (viết tắt của tiếng Anh Message-Digest algorithm 5, giải thuật Tiêu

hóa tin 5) là một hàm băm mật mã học được sử dụng phổ biến với giá trị Hash dài 128-bit

- Đặc điểm:

• Việc tính MD đơn giản, có khả năng xác định được file có kích thước nhiều Gb

• Không có khả năng tính ngược khi tìm ra MD

• Do bản chất ngẫu nhiên của hàm băm và số lượng lớn các giá trị hash có thế nên hầu như không có khả năng hai bản tin phân biệt có cùng giá trị hash

• Giá trị MD phụ thuộc vào bản tin tương ứng và các bit trong bản tin đó

• Một chuỗi chỉ có duy nhất 1 hash

2.2 Giải thuật

Về cơ bản thuật toán MD5 được thực hiện qua 2 bước chính đó chính là đệm dữ liệu và nén thông điệp Mục đích của việc đệm là để đồng bộ thông điệp có độ dài bất kì thành thông điệp có độ dài là một số nguyên lần của 512 bit Còn mục đích của việc nén thông điệp là để chuyển đổi thông điệp sau khi đệm thành thông điệp có độ dài 128 bit

2.2.1 Quá trình đệm

Bản tin đầu vào B được độn thêm các bit sao cho chiều dài của nó chỉ cần thêm 64 bit nữa sẽ là bội của 512 Việc độn luôn được thực hiện kể cả chiều dài bản tin đầu vào đã đồng

dư với 448 theo mudulo 512

Việc độn được tín hành như sau: Một bit “1” được chèn vào sau bản tin, sau đó là chuỗi bit “0” được chèn vào tiếp sao cho chiều dài tính theo bit của bản tin đã được độn là đồng

dư với 448 theo modulo 512

Trang 10

Như vậy, bản tin sau khi độn các bit thì sẽ có chiều dài là bội của 512 bit

Hình 2 : Sơ đồ quá trình đệm

Khởi tạo biến trạng thái: Trong MD5 này sử dụng 4 biến trạng thái Biến là một số

nguyên 32 bit Bốn biến này được cắt lát và cắt hạt lựu Chúng được đặt tên là A, B, C, D

và chúng được khởi tạo Ví dụ các khởi tạo này như sau:

- Quá trình nén xử lí được mô tả như sau:

Hình 3 : Sơ đồ tổng quát quá trình nén

Trang 11

Hình 4 : Sơ đồ nén 1 khối 512 bit thành 128 bit

- Mỗi khối 512 bit được chia thành 4 vòng xử lí với công thức tính như sau :

Vòng 1 : 𝑎 = 𝑏 + ((𝑎 + 𝐹(𝑏, 𝑐, 𝑑) + 𝑀[𝑖] + 𝐾[𝑖]) <<< 𝑠)(i = [ 0 , 15 ])

Vòng 2 : 𝑎 = 𝑏 + ((𝑎 + 𝐺(𝑏, 𝑐, 𝑑) + 𝑀[𝑖] + 𝐾[𝑖]) ≪< 𝑠)(i = [ 16 , 31 ])

Vòng 3 : 𝑎 = 𝑏 + ((𝑎 + 𝐻(𝑏, 𝑐, 𝑑) + 𝑀[𝑖] + 𝐾[𝑖]) ≪< 𝑠)(i = [ 32 , 47 ])

Vòng 4 : 𝑎 = 𝑏 + ((𝑎 + 𝐼(𝑏, 𝑐, 𝑑) + 𝑀[𝑖] + 𝐾[𝑖]) <<< 𝑠)(i = [ 48 , 63 ])

- Với mỗi vòng sẽ thực hiện 16 bước với i lần lượt theo thứ tự 0 đến 63

Hình 5: Sơ đồ mô tả công thức tính hàm

Trang 12

- Các công thức F, G, H, I được tính như sau :

𝐹(𝑋, 𝑌, 𝑍) = (𝑋⋀𝑌)⋁(𝑋̅ ⋀𝑍) 𝐺(𝑋, 𝑌, 𝑍) = (𝑋⋀𝑍)⋁(𝑌⋀𝑍̅) 𝐻(𝑋, 𝑌, 𝑍) = 𝑋⨁𝑌⨁𝑍 𝐼(𝑋, 𝑌, 𝑍) = 𝑌⨁(𝑋⋁𝑍̅)

Ta có bảng hằng số T[i]= K[i] theo i như sau :

Bảng 1 : Hằng số T của MD5 Bảng dịch S theo i :

Bảng 2 : Bảng dịch S theo I Sau đó thực hiện các phép cộng sau (cộng vào mỗi thanh ghi giá trị của nó trước khi vào vòng lặp) Cuối cùng , bản tin tóm lược bao gồm bốn từ liên tiếp A,B,C,D

Trang 13

III GIẢI THÍCH THUẬT MÃ HÓA CÔNG KHAI RSA

3.1 Giới thiệu về thuật toán RSA

 RSA là thuật toán đầu tiên phù hợp với việc tạo ra chữ ký điện tử đồng thời với

3.2 Giải thuật, mã hóa và giải mã RSA

Hình 6: Quá trình mã hóa và giải mã RSA

Trước khi mã hóa khóa tệp được tạo, các bước sau được thực hiện như sau:

 Chọn hai số nguyên tố lớn p và q (p ≠ q.)

 Tính n = p * q

sao cho 1 <e <ø (n) và ước chung lớn nhất (gcd) của e và ø (n) là 1 e này là thành phần khóa công khai

 Tính d = e-1 (mod ø (n)) tức là d là phép nhân nghịch đảo của e module ø (n)

 Khóa riêng bao gồm n và số mũ của khóa riêng d tức là (d, n)

Trang 14

 Đào tạo, thi cử từ xa, bảo mật dữ liệu tuyển sinh

 Ngân hàng thương mại:Giao dịch, thanh toán qua mạng

 Xuất nhập cảnh

3.4 Ví dụ về giải thuật mã hóa công khai RSA:

In số q và p :

Trang 15

Ở đây ví dụ p = 23 và q =17 ;

Sau đó ta kiểm tra xem số đó có phải số nguyên tố hay không :

Xét số q và p có trùng nhau không :

Trang 16

Thuật toán tính n và Euler(r) :

Ước chung lớn nhất của e và r :

Tính e :

Trang 17

Khóa riêng tư và khóa công khai :

Chọn mã hóa(1) hoặc giải mã (2)

Trang 18

IV ỨNG DỤNG HAI GIẢI THUẬT MD5 VÀ RSA TRONG AN TOÀN ĐIỆN TOÁN ĐÁM MÂY

4.1: Các công việc thực hiện

Mô hình điện toán đám xoay quanh việc trao đổi dữ liệu giữa ba thực thể chính bao gồm Chủ sở hữu dữ liệu, CSP và Người dùng Chủ sở hữu dữ liệu là người sở hữu đồng thời tải

dữ liệu này lên máy chủ, người dùng là người yêu cầu dữ liệu đó được chủ sở hữu dữ liệu

ủy quyền và CSP là nhà cung cấp dịch vụ đám mây cung cấp môi trường trao đổi cho toàn

bộ mô hình Các bước thực hiện được mô tả lần lượt như sau:

Bước 1: Mã hóa tệp và tạo khóa

Trước khi tải tệp lên đám mây thì chủ sở hữu dữ liệu cần phải thực hiện một số bước

cơ bản, đó là mã hóa tệp được chỉ định, tạo khóa công khai và khóa bí mật Trong mô hình

mã hóa này thuật toán RSA sẽ được sử dụng Để mã hóa, chủ sử hữu chỉ phải tải tệp của

họ lên và tạo khóa công khai cho nó Thuật toán mã hóa RSA sẽ tạo khóa bí mật để liên lạc một cách an toàn Giờ đây, tệp dữ liệu được mã hóa sẽ tiếp tục gửi đến máy chủ đám mây

để tải dữ liệu lên Tệp truy cập cũng được tải lên chứa thông tin chi tiết về danh sách người dùng được ủy quyền

Bước 2: Tải dữ liệu lên

Sau khi tải lên, chủ sở hữu dữ liệu sẽ nhận được những thông tin chi tiết như thời gian và ngày tải tệp lên, giá trị băm và mã xác minh Trong bước này để duy trì quyền truy cập bảo mật dữ liệu, chủ sở hữu sẽ dùng mã xác minh được cung cấp từ trước để kiểm soát việc tải dữ liệu lên Người dùng sẽ nhận tệp dưới dạng mã hóa có thể được giải mã bằng khóa bí mật được tạo tại thời điểm mã hóa Trong trường hợp có kẻ tấn công sử dụng mã độc đánh cắp dữ liệu, chúng không thể giải mã ra được vì không có khóa bí mật

Bước 3: Sao lưu dữ liệu

Khi dữ liệu hoặc tệp được tải lên trên đám mây, cần phải giữ an toàn cho chúng để có thể sử dụng trong tương lai Dữ liệu sẽ được sao lưu lại để tránh trường hợp bị hỏng hoặc mất Để giữ cho bản sao lưu dữ liệu mạnh mẽ, cần thực hiện một số việc sau:

+ Thực hiện băm dữ liệu: Để giữ an toàn cho dữ liệu trên máy chủ đám mây, giá trị

băm của tệp tải lên được tính toán Quá trình này được thực hiện bởi CSP với sự trợ giúp của thuật toán băm MD5 Bản sao tính toán giá trị băm sẽ được gửi đến chủ sở hữu dữ liệu

và được sử dụng thêm cho mục đích xác minh Trên máy chủ dịch vụ đám mây chỉ hiển thị

dữ liệu dưới dạng tệp mã hóa và giá trị băm của nó, điều này nhằm mục đích bảo mật vì CSP sẽ không thể sử dụng dữ liệu của khách hàng cho các mục đích khác

+ Xác minh: Xác minh là một bước quan trọng của mô hình này Dữ liệu lưu trữ trên

máy chủ đám mây được chủ sở hữu xác minh lại để đảm bảo tính toàn vẹn của dữ liệu Tác

Trang 19

khi tính toán giá trị băm của dữ liệu, giá trị đó được gửi lại cho chủ sở hữu để xác minh tính toàn vẹn Chủ sở hữu cũng có thể yêu cầu xác minh dữ liệu của họ tại bất kì thời điểm nào bằng cách yêu cầu tùy chọn xác minh Khi đó, giá trị băm của dữ liệu hiện tại đang lưu trên máy chủ đám mây sẽ được tính toán rồi đem so sánh với giá trị băm có ở phía chủ sở hữu Nếu chúng khớp với nhau thì dữ liệu hiện có trên máy chủ đám mây là an toàn và không có sửa đổi nào được thực hiện Còn nếu nó không khớp thì đã có một số thay đổi được thực hiện trên dữ liệu Chủ sở hữu cần xem xét và sửa lại những thay đổi này Chủ sở hữu dữ liệu sẽ nhận được kết quả đầu ra dưới dạng một báo cáo chi tiết

Bước 4: Chia sẻ dữ liệu

Quá trình chia sẻ dữ liệu trong đó chủ sở hữu dữ liệu chia sẻ dữ liệu của họ với những người dùng được ủy quyền Để chia sẻ, danh sách truy cập được tạo bởi chủ sở hữu Danh sách này chứa tên, thông tin nhận dạng cũng như quyền truy cập của những người dùng được ủy quyền Để giải mã được những tệp dữ liệu, khóa bí mật của chủ sở hữu sẽ được gửi qua email cho người dùng Bằng cách này, bảo mật dữ liệu vẫn sẽ được duy trì Quyền truy cập của người dùng được chia thành hai dạng là Chỉ đọc (Read Only) và Đọc và Viết (Read and Write) được mô tả như sau:

bất kỳ sửa đổi nào trên đó

 Đọc và Viết: Người dùng có quyền này có thể thực hiện cả hai thao tác Đọc và Ghi trên tệp

4.2: Tính bảo mật của hệ thống

Trong phần này, một cuộc thảo luận không chính thức về bảo mật được đề xuất như sau

- Bảo mật

Trong mô hình này, mã hóa được thực hiện để bảo mật dữ liệu Đầu tiên, dữ liệu được

mã hóa bằng RSA, tạo ra khóa công khai và khóa bí mật Tệp được mã hóa này sau đó được tải lên trên các máy chủ đám mây Trong trường hợp nếu có kẻ tấn công muốn lấy dữ liệu thì chúng không thể lấy được vì không có khóa bí mật Nhờ đó, dữ liệu được bảo mật với những người dùng khác

- Kiểm soát truy nhập

Để chia sẻ an toàn dữ liệu, cơ chế kiểm soát truy nhập hai lần được sử dụng Thứ nhất

là quyền truy cập vào tệp được cấp bởi chủ sở hữu và được quản lý bởi nhà cung cấp dịch

vụ đám mây Nếu bất kỳ người dùng nào muốn truy cập vào dữ liệu, danh tính của họ phải được CSP xác thực Thứ hai là chỉ cung cấp dữ liệu dưới dạng mã hóa Khi người dùng truy cập vào một tệp dữ liệu, hệ thống sẽ yêu cầu họ tải xuống để đọc Tuy nhiên dữ liệu tải về này là bản đã được mã hóa và người dùng cần có khóa bí mật để giải mã chúng Bằng cách này, bảo mật của dữ liệu được duy trì tránh những trường hợp kẻ tấn công sử dụng mã độc để đánh cắp dữ liệu

Ngày đăng: 26/02/2023, 15:12

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w