1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYỄN MINH QUANG NGHIÊN CỨU MỘT SỐ GIẢI PHÁP AN TOÀN
VÀ BẢO MẬT THÔNG TIN TRONG CÁC GIAO
DỊCH THƯƠNG MẠI ĐIỆN TỬ
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.o1
Người hướng dẫn khoa học: TS. PHẠM THẾ QUẾ TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI – 2012
2
Hiện nay định nghĩa thương mại điện tử được rất nhiều tổ chức quốc
tế đưa ra song chưa có một định nghĩa thống nhất về thương mại điện tử.
Khái niệm thương mại điện tử (TMĐT) cơ bản phải bao hàm các nội
dung sau:
− Đó phải là một hoạt động kinh doanh thương mại, tức là phản ảnh
một hoạt động mua bán hàng hoá và dịch vụ thông qua một chu trình kinh
doanh thương mại: chào hàng, chào giá, đàm phán mua bán, ký hợp đồng
mua bán, vận chuyển giao hàng, thanh lý hợp đồng và thanh toán.
− Việc kinh doanh thương mại phải được thực hiện trong một môi
trường đặc biệt đó là môi trường mạng máy tính nói chung và đặc biệt là
mạng internet.
− Công nghệ thông tin đã tạo ra môi trường và phát triển các công
nghệ cho TMĐT phát triển. Công nghệ thông tin cũng mở ra một loại hàng
hoá và dịch vụ đặc trưng là các hàng hoá và dịch vụ số (hàng hoá và dịch vụ
phi vật thể được số hoá và có thể giao hàng ngay qua mạng) góp phần vào
việc phát triển hình thức thương mại điện tử.
4
1.2 Các hình thức hoạt động chủ yếu của thương mại điện tử
Dựa vào chủ thể của thương mại điện tử, có thể phân chia
thương mại điện tử ra các loại hình phổ biến như sau:
- Giao dịch giữa doanh nghiệp với doanh nghiệp - B2B (business to
business);
- Giao dịch giữa doanh nghiệp với khách hàng - B2C (business to
consumer);
- Giao dịch giữa doanh nghiệp với cơ quan nhà nước - B2G (business
to government);
- Giao dịch trực tiếp giữa các cá nhân với nhau - C2C (consumer to
consumer);
- Giao dịch giữa cơ quan nhà nước với cá nhân - G2C (government
to consumer).
hình trên, những vấn đề quan trọng nhất các nước cần quan tâm để
phát triển Thương mại điện tử gồm: Nhận thức, Nối mạng, Nhân lực
và Nội dung (4N). Những vấn đề khó khăn nhất hiện nay đối với
Thương mại điện tử gồm: thanh toán trực tuyến, an ninh, bảo mật
trong giao dịch thương mại điện tử, chứng thực điện tử quốc tế.
6
Chương 2. CHỮ KÝ SỐ VÀ ỨNG DỤNG TRONG CÁC GIAO
DỊCH THƯƠNG MẠI ĐIỆN TỬ
2.1 Bảo mật các giao dịch điện tử
Để đảm bảo an toàn tuyệt đối là rất khó, thậm chí là không thể,
mà chỉ có thể tạo ra các rào cản đủ để ngăn chặn sự xâm phạm. An
toàn tích hợp là việc kết hợp tất cả các biện pháp với nhau nhằm ngăn
chặn việc khám phá, phá huỷ hoặc sửa đổi trái phép các tài sản.
Thông tin dữ liệu cũng có thể được xem là đảm bảo độ an toàn nếu
như khi tội phạm tấn công khai thác được thì đã mất hiệu lực sử dụng
nó. Trong giao dịch điện tử với quy mô toàn cầu, có sự tham gia của
nhiều người, nhiều thành phần, thiết bị thì việc khẳng định được độ
tin cậy trong thời gian dài là một thách thức.
2.2 Các kỹ thuật đảm bảo an toàn cho giao dịch điện tử
2.2.1 Mã hóa đối xứng
Phương pháp mã hóa khóa bí mật (secret key cryptography) còn
được gọi là mã hóa đối xứng (symmetric cryptography). Với phương
pháp này, người gửi và người nhận sẽ dùng chung một khóa để mã
hóa và giải mã dữ liệu. Trước khi mã hóa dữ liệu để truyền đi trên
mạng, hai bên gửi và nhận phải có khóa và phải thống nhất thuật toán
dùng để mã hóa và giải mã. Có nhiều thuật toán ứng dụng cho mã
hóa khóa bí mật như: DES - Data Encrytion Standard, 3DES - triple-
strength DES, RC2 - Rons Cipher 2 và RC4, v.v
H được áp dụng cho một khối dữ liệu có kích cỡ bất kỳ.
Đầu ra H có độ dài cố định
Dễ tính toán được H(x) với mọi x cho trước
Với mọi mã h cho trước, không thể tìm được x thoả mãn
H(x)=h
Với mọi khối x cho trước, không thể tìm ra được y x sao
cho H(y) = H(x) tức là khả năng trùng lặp ít.
Không tìm thấy bất cứ cặp (x,y) nào sao cho H(x) = H(y),
điều này nhấn mạnh khả năng không bị va chạm.
9
2.3. Chữ ký số
Chữ ký số (digital signature), là một dạng của chữ ký điện tử, là
đoạn dữ liệu ngắn đính kèm với văn bản gốc để chứng thực tác giả
của văn bản và giúp người nhận kiểm tra tính toàn vẹn của nội dung
văn bản gốc.
Chữ ký số được tạo ra bằng cách áp dụng thuật toán băm một
chiều trên văn bản gốc để tạo ra bản phân tích văn bản/văn bản tóm
lược (message digest) hay còn gọi là fingerprint, sau đó mã hóa bằng
private key tạo ra chữ ký số đính kèm với văn bản gốc để gửi đi. khi
nhận, văn bản được tách làm 2 phần, phần văn bản gốc được tính lại
fingerprint để so sánh với fingerprint cũ cũng được phục hồi từ việc
giải mã chữ ký số. Hình 2.3. Mô hình mã hóa
10
2.4. Chữ ký mù
Khái niệm của chữ ký mù trước hết được giới thiệu : Chúng
tôi yêu cầu chữ ký phải được xác thực(chỉ một người ký , có thể ký
nhiều báo cáo) và có thể kiểm tra chung (bất kỳ người nào cũng có
2.6. Cơ sở hạ tầng khóa công khai
Hiện nay giao tiếp qua Internet chủ yếu sử dụng giao thức
TCP/IP, mà giao thức này cho phép các thông tin được gửi từ máy
tính này đến máy tính khác thông qua các máy trung gian hoặc các
mạng riêng biệt. Chính điều này đã tạo cơ hội cho những kẻ tấn công
có thể lấy cắp được những thông tin nhạy cảm. Vì thế, những khách
hàng muốn tham gia giao dịch điện tử đều lo sợ thông tin của mình bị
rò rỉ, thậm chí bị đánh cắp, nên họ cần đến một tổ chức an toàn có thể
tin tưởng được.
Biện pháp nhiều người thực hiện để bảo mật là mã hoá các
thông tin. Một khi đã mã hoá dữ liệu, trong quá trình truyền, dẫu có
bị đánh cắp thì bọn tội phạm cũng không thể đọc được. Khi dữ liệu
đến đích, người nhận sẽ sử dụng một công cụ để giải mã.
Và phương pháp mà mọi người và các tổ chức sử dụng để mã
hoá thông tin là chứng chỉ số DC (Digital Certificate). Với chứng chỉ
số (DC), người sử dụng có thể mã hoá thông tin, chống giả mạo và
xác thực danh tính của người gửi. Ngoài ra, DC còn là một công cụ
12
để xác định nguồn gốc, nó ngăn chặn người gửi chối cãi nguồn gốc
tài liệu họ đã gửi.
Vậy chúng chỉ số là gì? DC là một file điện tử dùng để xác
định thực danh tính của một cá nhân, một máy chủ hay một ct, tổ
chức trên Internet. Cũng như các giấy tờ chứng thực cá nhân khác,
DC phải do một tổ chức đứng ra chứng nhận những thông tin của
chúng ta là chính xác. Tổ chức đó gọi là nhà cung cấp chứng chỉ số.
Nhà cung cấp chứng chỉ số CA (Certificate Authority) phải đảm bảo
về độ tin cậy, chịu trách nhiệm về độ chính xác của DC mà mình
cung cấp cho khách hàng.
Nhà cung cấp chứng chỉ số (hoặc cơ quan chứng thực) là một
3.2. Xây dựng chương trình
3.2.1. Thuật toán MD5
Hàm băm (Hash Function) nh ận giá trị vào (Input) là m ột thông
điệp M ở có chiều dài bất kỳ, để biến (băm) thành một giá trị h ở đầu
ra (Output) có chiều dài cố định, h được gọi là giá trị băm (Hash
Value).
14
Hình 3.1. Minh họa hàm băm
Thuật toán MD5 (Message Digest 5), do Ronald Rivest thi ết kế năm
1991, là xây dựng một hàm băm để mã hóa một tín hiệu vào có chiều
dài bất kỳ và đưa ra một tín hiệu (Digest) ở đầu ra có chiều dài cố
định 128 bit (tương ứng với 32 chữ số hệ 16).
Dưới đây là các ví dụ mô tả các kết quả sau khi thực hiện hàm băm
MD5.
- MD5("xin chao") = 2201c07c37755e663c07335cfd2f44c6
Chỉ cần một thay đổi nhỏ (chẳng hạn viết hoa chữ x thành X) cũng
làm thay đổi
hoàn toàn kết quả trả về :
- MD5("Xin chao") = e05c1d9f05f5b9eb56fe907c36f469d8
Thuật toán cũng cho kết quả đối với chuỗi rỗng :
- MD5(" ") = d41d8cd98f00b204e9800998ecf8427e
3.2.2. Thuật toán RSA
Phương pháp sử dụng thuật toán mã hóa khóa công khai
RSA (được đặt tên từ ba nhà phát minh là Ron Rivest, Adi Shamir và
Leonard Adleman), được sử dụng nhiều nhất, thuật toán sử dụng biểu
thức với hàm mũ để mã hóa bản gốc thành các khối, mỗi khối có một
giá trị nhị phân nhỏ hơn n.
15
mod
Φ
(n)
C = M
e
mod n
M = C
d
mod n
M
M
Khóa
công khai
Ku =
{e,n}
Khóa bí mật
Kr
= {d,n}
16
G
ử
Thông điệp nhận
Tách file và
Ch
ữ ký
File ban
đầu
Gi
ải
Giải
mã
Khóa
công
khai
của
người
g
ửi
Có
Không
Không đúng
người gửi
Hàm băm MD5
Bản tóm
điệp đã ký và gửi đi cho người nhận.
3.2.3.2. Quá trình nhận văn bản
Sau khi người nhận đăng nhập vào hệ thống và thực hiện việc nhận
các tệp văn bản.
Hệ thống sẽ tách thông điệp đã ký thành ra file và chữ ký điện tử.
Đến giai đoạn này sẽ có 2 quá trình kiểm tra :
a. Kiểm tra file có đúng người gửi hay không?
- Sử dụng thuật toán RSA để giải mã chữ ký điện tử bằng khóa công
khai (username) của người gửi.
- Nếu giải mã không được thì file nhận được không đúng người gửi.
- Nếu giải mã thành công thì file nhận được đúng người gửi và có
được Bản tóm lược 1.
b. Kiểm tra file có bị thay đổi hay không?
- Từ file được tách ra ta sử dụng hàm băm MD5 mã hóa thành Bản
tóm lược 2.
- Kiểm tra Bản tóm lược 1 và Bản tóm lược 2 có giống nhau hay
không? Nếu
giống nhau thì file nhận được là vẹn toàn (không bị thay đổi hay tác
động), ngược lại là file đã bị thay đổi.
3.2.4. Cài đặt chương trình
Tạo khóa
18
Ký văn bản
Xác nhận chữ ký
19
Trường hợp văn bản hoặc chữ ký không toàn vẹn