QUẢN TRỊ HỆ THỐNG MẠNG - Pdf 39

Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

LỜI CẢM ƠN

Trang 1


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

MỤC LỤC
LỜI CẢM ƠN .............................................................................................................1
DANH MỤC TỪ VIẾT TẮT......................................................................................4
DANH MỤC HÌNH VẼ ..............................................................................................5
TÓM TẮT ĐỒ ÁN......................................................................................................6
PHẦN 1: MỞ ĐẦU .....................................................................................................7
1.

Lý do chọn đề tài: ............................................................................................7

2.

Mục đích: ........................................................................................................7

3.

Phạm vi nghiên cứu:........................................................................................7


Chữ ký số: .............................................................................................16

Thuật toán mã hóa công khai RSA: ..............................................................17
3.1.

Mô tả sơ lược: .......................................................................................17

3.2.

Tạo khóa: ..............................................................................................17

3.3.

Độ an toàn của RSA: ............................................................................18

Sơ lược về hàm băm MD5: ...........................................................................19
4.1.

Sơ lược: .................................................................................................19

Trang 2


Đề tài: Tìm hiểu về chữ ký điện tử

5.

Nhóm 11

4.2.

-

CA: Certificate Authority - ủy quyền chứng chỉ.

-

Demo: Demonstration

Trang 4


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

DANH MỤC HÌNH VẼ
Hình 1: Nhận tài liệu có sử dụng chữ ký điện tử ......................................................13
Hình 2: Gửi tài liệu có sử dụng chữ ký điện tử .........................................................13
Hình 3: Tóm tắt sơ đồ tạo, kiểm tra và xác thực chữ ký điện tử ...............................14
Hình 4: Giao diện demo. ...........................................................................................21
Hình 5: File bên B muốn gửi cho bên A. ..................................................................22
Hình 6: Tạo khóa bằng demo ....................................................................................22
Hình 7: Lưu public key .............................................................................................23
Hình 8: Lưu private key ............................................................................................23
Hình 9: Tải file cần mã hóa. ......................................................................................24
Hình 10: Chọn khóa public key do bên B nắm giữ ...................................................25
Hình 11: Bắt đầu mã hóa tài liệu...............................................................................26
Hình 12: Lưu file đã mã hóa .....................................................................................26
Hình 13: Tải file cần giải mã. ...................................................................................27
Hình 14: Tải khóa private key...................................................................................28


Trang 6


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

PHẦN 1: MỞ ĐẦU
1. Lý do chọn đề tài:
Ngày nay, ứng dụng của công nghệ thông tin vào đời sống là rất phổ biến. Công
nghệ thông tin được ứng dụng ở khắp các lĩnh vực như kinh tế, chính trị, khoa học,
quân sự, giải trí,… Trong đó, yếu tố cực kỳ quan trong khi làm việc là truyền thông.
Để có thể gửi và nhận tài liệu, báo cáo, thư tín hay trao đổi bất kỳ hoạt động gì, chúng
ta đều cần đến truyền thông, cùng với việc gửi và nhận dữ liệu, để biết dữ liệu mà
chúng ta nhận được do ai gửi, và chứng thực được điều đó là vấn đề khá khó khăn.
Đề tài “tìm hiểu về chữ ký điện tử ” mà nhóm chúng em thực hiện sẽ làm rõ điều này.
Nhận thấy được tầm ảnh hưởng và ứng dụng ngày càng lớn về công nghệ thông
tin vào đời sống thực tiễn, trong vài năm trở lại đây, chữ ký điện tử được biết đến ở
Việt Nam. Đối với nước ta, chữ ký điện tử vẫn còn khá mới mẻ, chưa có nhiều tài
liệu công nghệ thông tin nói về lĩnh vực này, cùng với đó là tiềm năng của chữ ký
điện tử có thể được ứng dụng rất phổ biến tại các doanh nghiệp, nhà nước hay cá
nhân, tập thể. Vì vậy nhóm chúng em chọn đề tài này để viết đồ án môn học. Đồ án
nhóm chúng em viết ra vừa là báo cáo nghiên cứu của nhóm, cũng là một tài liệu
công nghệ thông tin hữu ích để mọi người tham khảo.
2. Mục đích:
Tìm hiểu về chữ ký điện tử, sự ra đời, cách hoạt động và bảo mật.
3. Phạm vi nghiên cứu:
Nghiên cứu về chữ ký điện tử, hệ mã hóa để tạo ra chữ ký điện tử, điển hình là hệ
mã hóa RSA, hàm băm.

trao đổi và truyền đưa thông tin cho nhau, đặc biệt khi các thông tin đó đã được thể
hiện dưới hình thức ngôn ngữ, thư từ. Trải qua thời gian, con người đã biết dung mật
mã để giữ bí mật thông tin khi trao đổi với nhau trong nhiều lĩnh vực, đặc biệt là quân
sự, chính trị, ngoại giao.
Từ đầu thế kỷ 20, những thập niên đầu của thế kỷ. Nền công nghệ thông tin bắt
đầu phát triển, kéo theo đó là việc xử lý mật mã từ thủ công dần dần được công nghệ
hóa. Thay vì soạn thảo các văn bản bằng tay, con người bắt đầu sử dụng ngôn ngữ ảo
để viết. Ngôn ngữ được chuyển thành các tín hiệu nhị phân (các bit), và việc biến đổi
để giải mã trở thành biến đổi trên các bit bằng các hàm số toán học. Và từ đó các
thuật toán tham gia vào quá trình tạo và giải mật mã. Nền công nghệ thông tin ngày
càng phát triển mạnh, nhu cầu trao đổi thông tin nói chung, các thông tin quan trong
cần được bảo mật nói riêng trở thành tất yếu. Vậy nên việc xác nhận và chứng thực
người gửi thông tin là rất quan trọng. Khái niệm chữ ký điện tử ra đời.
Năm 1978, Rivest, Shamir và Adleman tìm ra một hệ mật mã khóa công khai và
một sơ đồ chữ ký điện tử hoàn toàn có thể ứng dụng trong thực tiễn, tính bảo mật và
an toàn của chúng được bảo đảm bằng độ phức tạp của một bài toán số học nổi tiếng
là bài toán phân tích số nguyên thành các thừa số nguyên tố. Hệ mã hóa này được gọi
là RSA. RSA ra đời đánh dấu một bước ngoặt lớn về bảo mật và chứng thực thông
tin. Từ đó, mật mã và an toàn thông tin trở thành một lĩnh vực khoa học phát triển
nhanh chóng.
Vào năm 1889, tòa án tối cao bang New Hampshire (Hoa kỳ) đã phê chuẩn tính
hiệu lực của chữ ký điện tử. Tuy nhiên, chỉ với những phát triển của khoa học kỹ
thuật gần đây thì chữ ký điện tử mới đi vào cuộc sống một cách rộng rãi.

Trang 9


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11


-

Có thể dễ bị làm giả

Chữ ký thông thường có rất nhiều mặt hạn chế, mức độ bảo mật không không cao.
Vì vậy cần có phương pháp để khắc phục những mặt hạn chế nêu trên, giúp nâng cao
tính bảo mật và an toàn. Chữ ký điện tử ra đời trong thời buổi công nghệ thông tin
đang phát triển chóng mặt. Người ta có thể sử dụng chữ ký điện tử để ký vào các văn
bản, tài liệu số hoàn toàn bằng thiết bị điện tử, giúp việc xác minh nhanh chóng hơn
và đặc biệt là tính xác thực cao hơn, an toàn hơn vì rất khó làm giả.
Chữ ký điện tử có các ưu điểm vượt trội so với chữ ký thông thường:
-

Bảo mật: chữ ký điện tử có khả năng bảo mật cao, chìa khóa được bảo mật
với tất cả mọi người trừ những người được phép biết.

-

Toàn vẹn thông tin: các tài liệu, thông tin được ký bằng chữ ký điện tử
được bảo vệ một cách toàn vẹn, không thể thay đổi thông tin khi đã được
ký, nếu thông tin đã bị thay đổi thì thông tin đó lập tức bị loại bỏ.

-

Xác nhận thực thể: chữ ký điện tử sẽ xác nhận thực thể đã ký vào thông tin
một cách chính xác và tin cậy.

Chữ ký điện tử là thông tin đi kèm theo dữ liệu (văn bản, hình ảnh, video...) nhằm
mục đích xác định người chủ của dữ liệu đó. Chữ ký điện tử đi kèm với các thông tin

chịu vì không tài nào giải mã được. Dùng Private Key, cùng với một phần mềm phù
hợp, chúng ta có thể ký tên lên một văn bản hay tập tin dữ liệu nào đó. Chữ ký điện
tử này tương tự như một con tem độc nhất vô nhị dán lên văn bản, khó có thể giả mạo
được.
Khi nhận dữ liệu: sử dụng chữ ký điện tử để khách thể đảm bảo đúng chủ thể
nhận và chỉ duy nhất chủ thể có thể xem được tài liệu do cá thể gửi do chỉ có Private
Key của chủ thể mới có thể giải mã được dữ liệu này.

Trang 12


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

Hình 1: Nhận tài liệu có sử dụng chữ ký điện tử

Khi gửi dữ liệu: sử dụng chữ ký điện tử để khách thể có thể xác minh dữ liệu đó
do ai gửi, vì dữ liệu mà Public Key giải mã được chỉ có thể do chủ thể gửi mà thôi.

Hình 2: Gửi tài liệu có sử dụng chữ ký điện tử

2.2.2. Ký chữ ký điện tử vào dữ liệu:
Các bước để thực hiện việc ký chữ ký điện tử vào thông tin để gửi :
-

B1: Băm dữ liệu (dữ liệu được xử lý bởi hàm băm trở thành một bản tóm lược).

Trang 13



Nhóm 11

dùng Bpv ký lên Y để được tài liệu N và gửi N cho bên A. Để bên A xác minh được
tài liệu N do chính bên B gửi, bên A sử dụng Bpl để giải mã tài liệu N và thu được
tài liệu đã được bên B ký.
Một số trường hợp xảy ra với chữ ký điện tử, cũng giống như các trường hợp xảy
ra với chữ ký truyền thống. Ví dụ: Khi tài liệu TL của A bị thay đổi (dù chỉ một ký
tự, một dấu chấm, hay một ký hiệu bất kỳ), khi B xác nhận, anh ta sẽ thấy bản giải mã
khác với tài liệu TL của anh A. B sẽ kết luận rằng tài liệu đó đã bị thay đổi, không
phải là tài liệu anh A đã ký.
Trường hợp khác, nếu A để lộ khóa bí mật, nghĩa là văn bản tài liệu của A có thể
ký bởi người khác có khóa bí mật của A. Khi một ai đó xác nhận tài liệu được cho là
của A ký, chữ ký vẫn là hợp lệ, mặc dù không phải chính A ký. Như vậy, chữ ký của
A sẽ không còn giá trị pháp lý nữa. Do đó, việc giữ khóa bí mật là tuyệt đối quan
trọng trong hệ thống chữ ký điện tử.
Như vừa nêu trên, khi bên A để lộ mã khóa bí mật, thì bất kỳ ai có được mã khóa
bí mật của A cũng có thể ký vào những thông tin mà thông tin đó không phải do A
ký. Vậy làm thế nào để hạn chế việc giả dạng người ký khi khóa bí mật bị lộ (nhằm
hạn chế rủi ro khi chưa kịp thời thay chữ ký điện tử mới).
Có một giải pháp hữu hiệu giúp khắc phục vấn đề này. Đó là thông tin giữa A và
B sẽ được xác nhận bằng một bên trung gian mà A và B tin tưởng. Bên trung gian đó
là nhà cung cấp chứng chỉ số CA. CA có một chứng chỉ số của riêng mình, CA sẽ cấp
chứng chỉ số cho A và B cũng như những đối tượng khác. Chứng chỉ số sẽ giúp xác
minh đối tượng đang thực hiện giao dịch. Chứng chỉ số là hoàn toàn tin cậy.
Đây là giải pháp có thể dùng để khắc phục vấn đề mã khóa bí mật của bên A bị
lộ. Tức là khi gửi tài liệu đã được ký, bên A sẽ gửi cả chứng chỉ CA của mình để bên
B xác minh. Người khác tuy đã có được mã khóa bí mật của A nhưng sẽ không thể
thực hiện giao dịch nếu không có chứng chỉ số CA của bên A. Tuy vậy, việc cất giữ



3. Thuật toán mã hóa công khai RSA:
Trong mật mã học, RSA là một thuật toán mật mã hóa khóa công khai. Đây 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 việc mã hóa.
Nó đánh dấu một sự tiến bộ vượt bậc của lĩnh vực mật mã học trong việc sử dụng
khóa công cộng. RSA đang được sử dụng phổ biến trong thương mại điện tử và được
cho là đảm bảo an toàn với điều kiện độ dài khóa đủ lớn.
3.1. Mô tả sơ lược:
Thuật toán RSA có hai khóa: khóa công khai (hay khóa công cộng) và khóa bí
mật (hay khóa cá nhân). Mỗi khóa là những số cố định sử dụng trong quá trình mã
hóa và giải mã. Khóa công khai được công bố rộng rãi cho mọi người và được dùng
để mã hóa. Những thông tin được mã hóa bằng khóa công khai chỉ có thể được giải
mã bằng khóa bí mật tương ứng. Nói cách khác, mọi người đều có thể mã hóa nhưng
chỉ có người biết khóa cá nhân (bí mật) mới có thể giải mã được.
Nhìn vào mô tả khái quát về thuật toán RSA, chúng ta thấy cách thức mã hóa
tương tự như chữ ký điện tử. Vậy nên đây là thuật toán điển hình để tạo ra chữ ký
điện tử.
3.2. Tạo khóa:
Việc tìm ra 2 số nguyên tố đủ lớn p và q thường được thực hiện bằng cách thử xác
suất các số ngẫu nhiên có độ lớn phù hợp (dùng phép kiểm tra nguyên tố cho phép
loại bỏ hầu hết các hợp số).
Bên cạnh đó, cần tránh sử dụng các phương pháp tìm số ngẫu nhiên mà kẻ tấn
công có thể lợi dụng để biết thêm thông tin về việc lựa chọn (cần dùng các bộ tạo số
ngẫu nhiên tốt). Yêu cầu ở đây là các số được lựa chọn cần đồng thời ngẫu nhiên và
không dự đoán được. Đây là các yêu cầu khác nhau: một số có thể được lựa chọn
ngẫu nhiên (không có kiểu mẫu trong kết quả) nhưng nếu có thể dự đoán được dù chỉ
một phần thì an ninh của thuật toán cũng không được đảm bảo. Nếu kẻ tấn công đoán
được một nửa chữ số của p hay q thì chúng có thể dễ dàng tìm ra nửa còn lại.

Trang 17


Bước5: Tính khóa giải mã d sao cho: d*e ≡ 1 (mod Φ(n)). Với 0
MD5. MD5 (1991) là hàm băm được cải tiến từ MD4 (1990) do Ronald Rivest phát

minh ra. Trước đó ông cũng đã đưa ra sử dụng hàm băm MD2.

Trang 19


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

4.2. Tóm tắt giải thuật:
MD5 chuyển một đoạn thông tin chiều dài thay đổi thành một kết quả chiều dài
không đổi 128 bit. Mẩu tin đầu vào được chia thành từng đoạn 512 bit; mẩu tin sau
đó được độn sao cho chiều dài của nó chia chẵn cho 512. Công việc độn vào như sau:
đầu tiên một bit đơn, 1, được gắn vào cuối mẩu tin. Tiếp theo là một dãy các số 0 sao
cho chiều dài của mẩu tin lên tới 64 bit ít hơn so với bội số của 512. Những bit còn
lại được lấp đầy bằng một số nguyên 64-bit đại diện cho chiều dài của mẩu tin gốc.
Giải thuật MD5 chính hoạt động trên trạng thái 128-bit, được chia thành 4 từ 32bit, với ký hiệu A, B, C và D. Chúng được khởi tạo với những hằng số cố định. Giải
thuật chính sau đó sẽ xử lý các khối tin 512-bit, mỗi khối xác định một trạng thái.
Quá trình xử lý khối tin bao gômg bốn giai đoạn giống nhau, gọi là vòng; mỗi vòng
gồm có 16 tác vụ giống nhau dựa trên hàm phi tuyến F, cộng mô đun, và dịch trái.
4.3. Khả năng bị tấn công:
Vì MD5 chỉ dò qua dữ liệu một lần, nếu hai tiền tố với cùng bảng băm được xây
nên, thì cùng một hậu tố có thể cùng được thêm vào để khiến cho đụng độ dễ xảy ra.
Tức là hai dữ liệu vào X và Y hoàn toàn khác nhau nhưng có thể ra được một kết quả
băm giống nhau. Tuy nhiên xác suất để xảy ra điều này là khá nhỏ.
Vì những kỹ thuật tìm đụng độ hiện nay cho phép các trạng thái băm trước đó
được xác định một cách ngẫu nhiên, có thể tìm thấy xung đột đối với bất kỳ tiền tố
mong muốn nào; có nghĩa là, đối bất kỳ một chuỗi các ký tự X cho trước, hai tập tin

Nhóm 11

Hình 5: File bên B muốn gửi cho bên A.
Trước hết bên A sẽ tạo ra 2 khóa bằng cách chọn “Xử lý tài liệu” và chọn “Tạo
khóa”.

Hình 6: Tạo khóa bằng demo

Trang 22


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

Tiếp theo là lưu hai khóa được tạo lần lượt là public key và private key.

Hình 7: Lưu public key

Hình 8: Lưu private key

Trang 23


Đề tài: Tìm hiểu về chữ ký điện tử

Nhóm 11

Bên A đã tạo được hai khóa, đến đây, bên A chỉ còn nắm giữ private key, còn
public key sẽ giao cho bên B nắm giữ. Bây giờ, bên B sẽ thực hiện mã hóa dữ liệu


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status