Tải bản đầy đủ (.docx) (13 trang)

AN NINH TRONG ĐẤU GIÁ ĐIỆN TỬ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (246.26 KB, 13 trang )

Bài 13.8
Bảo đảm An toàn thông tin trong Đấu giá điện tử:
Các bài toán và cách giải quyết (Các giải pháp và công nghệ)
AN NINH TRONG ĐẤU GIÁ ĐIỆN TỬ
1. Giới thiệu
Việc mua bán trực tuyến có thể chia thành 3 giai đoạn(phase): thoả thuận giá, thanh toán, giao
hàng. Cho đến nay, vấn đề an toàn trong thương mại điện tử chủ yếu tập trung vào 2 giai đoạn
sau (thanh toán và giao hàng).
Thời gian gần đây xuất hiện nhiều trang web đấu giá trực tuyến quy mô nhỏ, cùng với đó thì các
nhà an toàn thông tin cũng phân tích và thiết kế các giao thức đảm bảo an toàn cho nhiều loại
hình đấu giá hay loại ứng dụng khác nhau.
Phần tiếp theo sẽ giới thiệu một số thuật ngữ và khái niệm trong đấu giá. Sau đó, phân tích lỗ
hổng trong các trang đấu giá trực tuyến hiện nay để thấy các y/c về an ninh cũng như đưa ra các
biện pháp đối phó. Cuối cùng đề xuất một một số hướng nghiên cứu.
2. Các kiểu đấu giá
“Đấu giá là quá trình mua bán bằng cách đưa ra món hàng cần đấu giá và một số quy tắc
đặt giá, sau đó bán món hàng cho người đưa ra giá hợp lý nhất theo những quy tắc đã đề
ra.”
“Đấu giá trực tuyến là đấu giá diễn ra trên mạng Internet.”
Các quy tắc trong đấu giá trả lời các câu hỏi:
 Khi nào được đặt giá
 Bước giá
 Giá người thắng cuộc trả
Đấu giá công khai - Open cry auction: phương thức đấu giá truyền thống, sự đặt giá được công
khai thông báo tới tất cả người tham dự.
Đấu giá Anh – English Auction: Mỗi lượt đặt giá sẽ cao hơn lượt trước nó, người thắng
cuộc là người đặt giá sau cùng.
Đấu giá Hà Lan – Dutch Auction: Người phụ trách đấu giá đề xuất một mức giá cao. Nếu
không ai chấp nhận thì giá sẽ được giảm dần đến khi có người chấp nhận. Người chiến
thắng là người đầu tiên đặt giá. (Nếu nhiều người cùng chấp nhận thì mức giá lại tăng


dần đến lúc dừng).
HỌ TÊN: PHAN HỮU QUYỀN
MÃ HV: 12025239
BÀI 13.8
2014
AN NINH TRONG ĐẤU GIÁ ĐIỆN TỬ
MẬT MÃ VÀ AN TOÀN THÔNG TIN
Đấu giá kín – Sealed Bids Auction: Tất cả người tham gia đều đưa ra giá nhưng giá được giữ kín. Sau
đó tất cả lượt đặt giá được mở và người đặt cao nhất thắng. Đấu giá kín có thể thực hiện nhiều
vòng.
Đấu giá nhiều hàng – Multi items Auction: Đấu giá số lượng nhiều mặt hàng cùng loại.
Đấu giá riêng – Discriminative Auction: là đấu giá nhiều hàng trong đó những người
thắng cuộc sẽ trả theo giá họ đã đặt.
Đấu giá chung – Nondiscriminative Auction: là đấu giá nhiều hàng trong đó những
người thắng sẽ trả theo giá của người chiến thắng với mức thấp nhất.
Đấu giá nhì – Second price Auction: Là đấu giá kín trong đó người thắng sẽ chỉ phải thanh toán số
tiền bằng mức đặt giá cao thứ hai.
Hạn chế giá – Reserve Auction: giới hạn mức khởi đầu hay bước giá.
3. Vấn đề an toàn đấu giá trực tuyến ngày nay
Tất cả những trang đấu giá trực tuyến hiện nay gần như hoạt động theo một nguyên lý cơ bản. Họ
sử dụng đấu giá mở với sự tin tưởng tất cả vào sự công bằng từ những người làm đấu giá. Những
lỗ hổng có thể lợi dụng trong đấu giá trực tuyến bao gồm:
Bid shielding huỷ mức đặt giá cao ở những phút cuối để mức thấp giành chiến thắng. eBay cũng cho
rằng việc cho phép rút lại việc đặt giá là cần thiết nhưng cũng có cách để phát hiện và ngăn chặn
việc lợi dụng nó.
Bid siphoning người bán hàng theo dõi cuộc đấu giá rồi liên hệ trực tiếp với người đặt giá để mời
với sản phẩm tương tự. Khi đó người bán hàng có được khách hàng mà không phải trả tiền cho
trang đấu giá.
Shilling dùng đặt giả mạo để đẩy giá lên. Trường hợp cò mồi(của phía ng bán) thắng thì mặt hàng
lại được đem đấu giá ở trang khác. Việc sử dụng cò mồi thổi giá có thể phát hiện và ngăn chặn

trong đấu giá ngoài thực tế nhưng rất khó đối với đấu giá trực tuyến.
Sniping bằng cách thủ công hoặc dùng phần mềm để đặt giá vào thời điểm muộn nhất khi thời
gian đấu giá sắp kết thúc và ngăn chặn người khác đặt giá cao hơn.
Misrepresent or Non-existent items: đây là phiền toái rất phổ biến cho người mua. Nguyên
nhân chủ yếu do người mua không sử dụng thẻ tín dụng cho việc thanh toán.
Các trang đấu giá trực tuyến cũng có một số biên pháp chống lại gian lận:
Feeback: cho người mua và người bán. Biện pháp này có tính tích cực nhưng cũng chứa đựng những
nhược điểm. Ví dụ như người bán từ chối lượt đặt giá của người mua mà không có lý do cụ thể… Hơn
nữa là việc gian lận khi feedback.
Credit card registration: một số trang sử dụng cách này như một hình thức xác thực. Cách này nhằm
ngăn chặn việc sử dụng nhiều tài khoản đối với một cá nhân và giúp việc tìm ra người vi phạm dễ hơn.
Nhưng việc này cũng gây ra phiền toái cho những người không có nhu cầu mua bán.
Insurance services (bảo hiểm): hiện nay nhiều trang sử dụng dịch vụ này.
Escrow services(bên trung gian): với cách này người mua có thể thanh toán sau khi nhận được hàng.
Dịch vụ này cũng cho phép người mua sử dụng thẻ tín dụng của họ để thanh toán.
Tất cả những loại hình gian lận trong đấu giá trực tuyến thực chất có nguyên nhân cốt lõi nằm ở việc
khai thác điểm yếu bảo mật trên đường truyền gói tin trong khi giao dịch đấu giá xảy ra.
Quá trình đảm bảo an toàn cần đảm bảo ở cả ba giai đoạn: đăng ký, đặt giá và mở thầu. Tài liệu này đề
cập bài toán đảm bảo an toàn ở giai đoạn đặt giá trong đấu giá kín lấy giá cao nhất.
Bài toán 1: Đăng ký đấu giá (xác thực)
Yêu cầu:
1. Xác thực thông tin hợp lệ của người đăng ký, chống đăng ký nhiều lần
2. Thông tin của người đăng ký được giữ kín cho đến khi phiên đấu giá kết thúc
Công việc:
• Người đấu giá:
- Người đấu giá chọn bí mật số định danh x, giấy chứng minh thư điện tử (CMT), thông tin nhận dạng (ví
dụ như vân tay). Người đấu giá "làm mù" x thành y = Blind(x).
- Người đấu giá gửi tới ban đăng ký thông tin nhận dạng của mình CMT, số y (định danh x được người
đấu giá làm mù thành y).
• Ban đăng ký:

- Ban đăng ký nhận dạng người đấu giá, kiểm tra CMT của người đấu giá.
- Nếu hồ sơ của người đấu giá hợp lệ, khớp với danh sách người đấu giá của Ban điều hành, người đấu
giá chưa xin cấp chữ ký lần nào, thì ra lệnh cho Hệ thống "ký" lên y. Đó là chữ ký z=sign(y).
- Ban đăng ký ghi số CMT của người đấu giá vào danh sách người đấu giá đã được cấp chữ ký (để tránh
việc người đấu giá xin cấp chữ ký nhiều lần).
- Ban đăng ký gửi chữ ký z về cho người đấu giá.
• Người đấu giá:
- Khi nhận được chữ ký này, người đấu giá "xoá mù" trên z, họ sẽ nhận được chữ ký sign(x) trên định
danh thật x. Phiếu đặt giá có gắn chữ ký sig(x) được xem như đã có chữ ký của Ban đăng ký. Đó là phiếu
đặt giá hợp lệ để người đấu giá ghi giá của mình.
- Người đấu giá có thể kiểm tra chữ ký của Ban đăng ký trên phiếu đặt giá của mình có hợp lệ hay không
bằng cách dùng hàm kiểm tra chữ ký và khoá công khai của Ban đăng ký. (Chú ý: khoá ký trên định danh
của người đấu giá được chia sẻ cho mọi thành viên của Ban đăng ký và Ban kiểm tra, nhờ đó sau này Ban
kiểm tra có thể phát hiện ra những người đấu giá giả mạo chữ ký của Ban đăng ký.)
b. Kỹ thuật sử dụng:
• Kỹ thuật "chia sẻ khoá bí mật" :
- Hệ thống phân phối khoá tin cậy đã chia sẻ khoá ký cho các
thành viên Ban đăng ký và ban kiểm tra trước đó. Sau khi xét duyệt
hồ sơ xin chữ ký của người đấu giá, nếu mọi thành viên của Ban đăng ký đều nhất trí cho ký thì họ sẽ
khớp các mảnh khoá riêng để nhận được khoá ký.
- Mục đích của kỹ thuật: từng thành viên của Ban đăng ký không thể tuỳ tiện cấp chữ ký.
• Kỹ thuật "chữ ký mù":
- Ban đăng ký sử dụng kỹ thuật ký "mù" để ký tên lên định danh"mù" của người đấu giá.
- Mục đích của kỹ thuật: Ban đăng ký không thể biết được ai đã ghi
thông tin về giá vào phiếu đặt giá tức là bảo đảm không lộ danh tính người đấu giá.
c. Sơ đồ giai đoạn đăng ký:
Để được quyền đấu giá, người đấu giá phải có chữ ký của Ban đăng ký, qui trình diễn ra như sau:
Người tham gia
Ban đăng ký
Chọn bí mật bí danh X

X đã làm mù, số CMT, hộ khẩu
Chữ ký trên X đã làm mù
Xóa mù để thu được chữ ký trên X
- Kiểm tra các giấy tờ của người tham gia
Nếu hợp lệ thì ký trên X đã làm mù do người tham gia gửi về.
- Ghi lại số CMT, tránh người tham gia đăng ký lần 2


Bài toán 2: Đăng ký đấu giá (xác thực)
Giả sử A, B, C là những người tham gia đấu giá
A, B, C dự định sẽ đặt các mức giá tương ứng là pA, pB, pC
Yêu cầu:
1. Mức giá của người đặt được giữ bí mật và không bị thay đổi trên đường truyền
2. Mức giá đã đặt không thể thay đổi sau khi gửi đi
Giải pháp: sử dụng hàm băm và mã hoá. A, B, C sẽ gửi đi các giá trị băm (hashes) h(pA), h(pB), h(pC) và
chữ ký tương ứng thay vì pA, pB, pC
i. Hàm băm mật mã học (crypo hash function)
Tổng quan
Nói rộng, một hàm băm mật mã học phải hoạt động càng giống với một hàm ngẫu nhiên càng tốt,
trong khi vẫn có tính chất đơn định và tính toán có hiệu quả.
Một hàm băm mật mã học được coi là không an toàn nếu một trong các việc sau là khả thi về mặt tính
toán:
* cho một tóm tắt (digest), tìm một thông điệp (chưa biết) khớp với tóm tắt đó
* tìm các "xung đột băm" (hash collision), trong đó hai thông điệp khác nhau có tóm tắt trùng nhau.
Nếu có thể thực hiện một trong hai việc trên, một người có thể tấn công bằng cách dùng các cách trên
để thay một thông điệp không được xác nhận (unauthorized message) vào chỗ của một thông điệp
được xác nhận.
Về lý tưởng, việc tìm hai thông điệp có tóm tắt rất giống nhau cũng nên không khả thi; người ta không
muốn một kẻ tấn công có thể tìm hiểu được điều gì đó hữu ích về một thông điệp nếu biết tóm tắt.
Các thuật toán có liên quan

Các giá trị tổng kiểm và kiểm tra dư vòng (cyclic redundancy check - CRC) rất khác với các hàm băm mật
mã học, và được dùng cho các ứng dụng khác. Nếu dùng cho bảo mật, các loại kiểm tra đó rất dễ bị tấn
công.
Một mã xác thực thông điệp (message authentication code - MAC) lấy một thông điệp và một khóa bí
mật, và tạo ra một "thẻ MAC" (MAC tag), sao cho kẻ tấn công khó có thể tạo một cặp (thông điệp, thẻ)
hiệu lực khớp với thẻ được biết; ngoài các ứng dụng khác, loại mã hóa này dùng để ngăn chặn những kẻ
tấn công tạo các thông điệp giả. Tuy đôi khi được gọi là "hàm băm có khóa" (keyed hash function), MAC
phục vụ một mục đích rất khác và có các tính chất rất khác với một hàm băm mật mã học; ví dụ, nếu
một người biết khóa MAC có thể dễ dàng tạo 2 thông
điệp có cùng MAC, thì đây không phải một lỗi. Có thể dùng các hàm băm để tạo các hàm MAC; ví dụ,
xem HMAC.
Các tính chất mật mã học
Không có một định nghĩa hình thức bao trùm tất cả các tính chất mong muốn của một hàm băm mật
mã học. Các tính chất dưới đây được coi là yêu cầu tiên quyết:
* Preimage resistant (Về một tính chất có liên quan nhưng hơi khác, xem bài hàm một chiều): cho
trước h việc tìm m sao cho h = hash(m) là rất khó.
* Second preimage resistant: cho thông điệp m1, việc tìm một thông điệp m2 (khác m1) sao cho hash(m1)
= hash(m2) là rất khó.
* Collision-resistant: việc tìm 2 thông điệp khác nhau m1 và m2 sao cho hash(m1) = hash(m2) là rất khó.
Do khả năng tấn công ngày sinh nhật (birthday attack), điều đó có nghĩa là kết quả của hàm băm phải
dài ít nhất là gấp đôi so với yêu cầu của preimage-resistance.
Một hàm băm thỏa mãn các tiêu chí trên có thể vẫn có các tính chất không mong muốn. Ví dụ, các hàm
băm phổ biến nhất dễ bị tổn thương bởi các tấn công length-extension: Cho trước h(m) và len(m) nhưng
không cho trước m, bằng cách chọn m' thích hợp, một kẻ tấn công có thể tính h (m || m'), trong đó ||
ký hiệu phép nối xâu (concatenation). Tính chất này có thể được dùng để phá các phương pháp xác thực
đơn giản dựa vào các hàm băm. Việc xây dựng HMAC đã tránh được các vấn đề này.
Nhiều người có một khái niệm sai rằng "tính chất một chiều" của một hàm băm mật mã hóa có nghĩa rằng
việc xử lý trạng thái băm là không thể lần ngược được, và rằng nó mâu thuẫn với các nguyên tắc dùng để xây
dựng các mã hóa khối (block cipher). Thực ra, "tính chất không thể đảo ngược" đó có nghĩa rằng có các xung
đột địa phương tạo điều kiện cho các tấn công. Để có tính chất an toàn mật mã học, hàm băm phải là một

quá trình xử lý hoán vị trạng thái của nó theo kiểu song ánh (bijective) Tính chất không thể đảo ngược đó
thực ra có nghĩa rằng: không thể tìm
khóa dùng cho việc mã hóa một khối A thành một khối B bằng một phương pháp nào nhanh hơn
là vét cạn.
Ứng dụng của các hàm băm mật mã học
Một ứng dụng điển hình của một hàm băm mật mã học như sau: Alice đưa cho Bob một câu đố
khó và tuyên bố rằng cô ấy đã giải được rồi. Bob muốn tự giải, nhưng cũng muốn chắc chắn là
Alice đúng là đã giải được. Do đó, Alice viết đáp án, gắn thêm một nonce ngẫu nhiên, tính giá trị
băm của nó, và đưa kết quả băm cho Bob (trong khi vẫn giữ bí mật đáp án và nonce). Bằng cách
này, khi Bob tự giải xong, Alice có thể chứng minh rằng cô đã có đáp án từ trước bằng cách đưa
nonce cho Bob.
Trong thực tiễn, Alice và Bob thường là các chương trình máy tính, và bí mật thường là cái gì đó
không dễ lừa bằng một lời giải cho câu đó. Ứng dụng trên được gọi là một hệ thống tin cậy
(commitment scheme). Một ứng dụng quan trọng khác của các hàm băm bảo mật là sự kiểm tra
tính toàn vẹn của thông điệp. Ví dụ, việc xác định xem một file hay một thông điệp có bị sửa đổi
hay không có thể thực hiện bằng cách so sánh tóm tắt được tính trước và sau khi gửi (hoặc một
sự kiện bất kỳ nào đó). Còn có thể dùng tóm tắt thông điệp làm một phương tiện đáng tin cậy
cho việc nhận dạng file. Một ứng dụng có liên quan là kiểm tra mật khẩu. Mật khẩu thường
không được lưu dưới dạng văn bản rõ (clear text), mà ở dạng tóm tắt. Để xác thực một người
dùng, mật khẩu do người đó nhập vào được băm và so sánh với kết quả băm được lưu trữ.
Do các lý do cả về bảo mật và hiệu năng chương trình, đa số các thuật toán chữ ký số nói rằng
chỉ có tóm lược của thông điệp, chứ không phải toàn văn thông điệp, được "ký". Các hàm
băm còn có thể được dùng để tạo các bit giả ngẫu nhiên (pseudorandom).
SHA-1, MD5, và RIPEMD-160 nằm trong số các thuật toán tóm tắt thông điệp được dùng rộng rãi
nhất của năm 2005. Tháng 8 năm 2004, các nhà nghiên cứu đã tìm được các điểm yếu của một
loạt hàm băm, trong đó có MD5, SHA-0 và RIPEMD. Tháng 2 năm 2005, người ta ghi nhận một
tấn công đối với SHA-1. Tháng 8 năm 2005, người ta lại ghi nhận một tấn công khác đối với SHA-
1.
Các hàm băm được dùng để nhận dạng các file trong các mạng chia sẻ tệp đồng đẳng. Ví dụ,
trong một ed2k link, một biến thể của MD4 được kết hợp với kích thước file để cung cấp thông

tin cho việc xác định nguồn file, tải xuống và kiểm tra nội dung.
ii. Chữ ký số (Digital signature):
Ngày nay, với sự phát triển bùng nổ của công nghệ thông tin nói chung và Internet nói riêng,
công việc kinh doanh của các doanh nghiệp trở nên thuận lợi hơn, tiết kiệm được rất nhiều thời
gian cũng như các thủ tục hành chính. Tuy nhiên, Internet cũng mang lại nhiều rủi ro cho doanh
nghiệp, mà một trong những vấn đề lớn nhất và vấn đề gian lận.
Làm cách nào để tin rằng email mà công ty vừa nhận được đã được gửi từ chính khách hàng, mà không
phải là một ai đó mạo danh?
Làm cách nào để tin rằng bản hợp đồng, hay báo cáo mà đối tác vừa gửi là file gốc, chưa bị chỉnh sửa bởi
ai đó?
Làm cách nào để hai công ty cách xa nhau có thể ký hợp đồng trong vòng vài phút mà không cần phải
gửi qua đường bưu điện?
Việc sử dụng chữ ký số mang lại một số lợi điểm sau:
Khả năng xác định nguồn gốc
Các hệ thống mật mã hóa khóa công khai cho phép mật mã hóa văn bản với khóa bí mật mà chỉ có người
chủ của khóa biết. Để sử dụng chữ ký số thì văn bản cần phải được mã hóa bằng hàm băm (văn bản được
"băm" ra thành chuỗi, thường có độ dài cố định và ngắn hơn văn bản) sau đó dùng khóa bí mật của người
chủ khóa để mã hóa, khi đó ta được chữ ký số. Khi cần kiểm tra, bên nhận giải mã (với khóa công khai) để
lấy lại chuỗi gốc (được sinh ra qua hàm băm ban đầu) và kiểm tra với hàm băm của văn bản nhận được. Nếu
2 giá trị (chuỗi) này khớp nhau thì bên nhận có thể tin tưởng rằng văn bản xuất phát từ người sở hữu khóa
bí mật. Tất nhiên là chúng ta không thể đảm bảo 100% là văn bản không bị giả mạo vì hệ thống vẫn có thể bị
phá vỡ.
Vấn đề nhận thực đặc biệt quan trọng đối với các giao dịch tài chính. Chẳng hạn một chi nhánh ngân
hàng gửi một gói tin về trung tâm dưới dạng (a,b), trong đó a là số tài khoản và b là số tiền chuyển vào
tài khoản đó. Một kẻ lừa đảo có thể gửi một số tiền nào đó để lấy nội dung gói tin và truyền lại gói tin
thu được nhiều lần để thu lợi (tấn công truyền lại gói tin).
Tính toàn vẹn
Cả hai bên tham gia vào quá trình thông tin đều có thể tin tưởng là văn bản không bị sửa đổi trong khi
truyền vì nếu văn bản bị thay đổi thì hàm băm cũng sẽ thay đổi và lập tức bị phát hiện. Quá trình mã
hóa sẽ ẩn nội dung của gói tin đối với bên thứ 3 nhưng không ngăn cản được việc thay đổi nội dung của

nó. Một ví dụ cho trường hợp này là tấn công đồng hình (homomorphism attack): tiếp tục ví dụ như ở
trên, một kẻ lừa đảo gửi 1.000.000 đồng vào tài khoản của a, chặn gói tin (a,b) mà chi nhánh gửi về
trung tâm rồi gửi gói tin (a,b3) thay thế để lập tức trở thành triệu phú!Nhưng đó là vấn đề bảo mật của
chi nhánh đối với trung tâm ngân hàng không hẳn liên quan đến tính toàn vẹn của thông tin gửi từ
người gửi tới chi nhánh, bởi thông tin đã được băm và mã hóa để gửi đến đúng đích của nó tức chi
nhánh, vấn đề còn lại vấn đề bảo mật của chi nhánh tới trung tâm của nó
Tính không thể phủ nhận
Trong giao dịch, một bên có thể từ chối nhận một văn bản nào đó là do mình gửi. Để ngăn ngừa
khả năng này, bên nhận có thể yêu cầu bên gửi phải gửi kèm chữ ký số với văn bản. Khi có tranh
chấp, bên nhận sẽ dùng chữ ký này như một chứng cứ để bên thứ ba giải quyết. Tuy nhiên, khóa
bí mật vẫn có thể bị lộ và tính không thể phủ nhận cũng không thể đạt được hoàn toàn.
Giải pháp sử dụng kết hợp hàm băm mã hoá và chữ ký số trong đấu giá trực tuyến:
 Đảm bảo giữ bí mật mức giá của người đặt
 Có giá trị băm ta không thể biết được mức giá thật
 Không thể lợi dụng giá trị băm để tạo ra giá trị băm khác mà mức giá cao hơn
 Đảm bảo mức giá không bị thay đổi trên đường truyền, xác thực nó toàn vẹn
đúng như ban đầu.
 Người đấu giá A sẽ gửi đi h(pA) và ký h(pA) bằng khoá riêng PK
 Máy chủ sẽ giải mã bằng khoá công khai của A để kiểm tra h(pA) có bị thay đổi
không
M, [h(M)]
Alice
Alice
Bob

4. Kết luận :
Đấu giá trực tuyến nói riêng và giao dịch thương mại điện tử nói chung đều rất cần đảm bảo an
toàn thông tin khi giao dịch được thực hiện. Với công nghệ sử dụng hàm băm kết hợp chữ ký số
trình bày trong tài liệu sẽ đảm bảo thông tin được giữ bí mật và không bị thay đổi trên đường
truyền, đảm bảo tính tin cậy, công bằng trong giao dịch đấu giá trực tuyến, một loại hình dịch vụ

đang rất phát triển hiện nay.

×