Ngăn chặn việc dùng sai của người chủ không được ủy quyền, những thương gia không trung thực Dù PI và OI phải làm cho các bên thứ ba không thể đọc được nhưng vẫn cần có sự liên kết Dữ
Trang 2NỘI DUNG CHÍNH
I. Giới thiệu về bảo mật trong thanh toán điện tử
II. Mã hóa đối xứng và thuật toán DES
III. Giao thức SSL và giao thức SET
IV. Mã hóa bất đối xứng và thuật toán RSA
V. Chữ ký điện tử và chữ ký số
VI. Chống chối bỏ trong thanh toán điện tử
www.themegallery.com
Trang 3Thanh toán điện tử
Thanh toán điện tử là hình thức thanh toán các chi phí mua bán sản phẩm, dịch vụ bởi hệ thống thẻ thanh toán qua môi trường internet thay vì giao dịch trực tiếp bằng tiền mặt
Bốn yêu cầu về bảo mật cho việc thanh toán điện tử :
Trang 4Tính bí mật và toàn vẹn
Sử dụng kỹ thuật mật mã
Mã hóa bất đối xứng (RSA)
Mã hóa đối xứng (DES)
Trang 5Mã hóa đối xứng
khóa để mã hóa và giải mã.
chung cho cả hai bên.
Người gửi sẽ mã hóa thông tin bằng khóa chung và gửi thông tin đến người nhận
Trong quá trình nhận thông tin, người nhận sử dụng khóa chung để giải mã
thông điệp
Trang 6Thuật toán DES
DES được phát triển bởi IBM năm 1974, là một phương pháp mã hóa khối dùng mã hóa bí mật được chia sẻ.
Đầu vào :
T: văn bản được chia thanh các khối dữ liệu kích thước 64 bit, tức 8 kí tự
k1, k2, …., k16 : 16 khóa vòng
IP: Initial permutation – hoán vị ban đầu
FP: Final permutation – hoán vị cuối cùng
f(): hàm vòng
Đầu ra : C: bản tin đã được mã hóa chia thành các khối kích thước 64 bit
Trang 7Thuật toán DES
Trang 8Secure Socket Layer (SSL)
o SSL được giới thiệu bởi Netscape
o Là đối thủ cạnh tranh của SET
o SSL được thiết kế để sử dụng TCP cung cấp một dịch vụ bảo mật đầu cuối, dịch vụ truyền tin cậy
Trang 9HMAC
Kết quả đạt được cho sự phát triển một thuật toán tạo mã chứng thực MAC từ một hàm băm mã hóa
Thực thi nhanh hơn trong phần mềm
Không hạn chế truy xuất
Dựa vào một khóa bí mật
Trang 10Transport Layer Security (TLS)
TLS (Transport Layer Security) là một giao thức đưa ra để tạo 1 chuẩn chung trên Internet cho SSL Nó tương tự như SSL v3.1
TLS là một chuẩn giao thức trên Internet dùng để thay thế SSL v3
Được định nghĩa trong RFC 2246
Định dạng bản ghi giống của SSL
TLS sử dụng HMAC
Trang 11Hàm Pseudorandom
Hàm Pseudorandom (pseudorandom funtion – PRF)
TLS sử dụng PRF để mở rộng các bí mật trong các khối dữ liệu với mục đích phê chuẩn hay sinh ra khóa
PRF mở rộng các bí mật nhỏ được chia sẻ bên trong các khối dữ liệu dài hơn Nó
sử dụng hai hàm băm (MD5 và SHA -1) để tăng cường sự bảo mật
Trang 12Tính bí mật của dữ liệu giao dịch thanh toán
www.themegallery.c
Dương Vân Anh – D08 CNTT3
Tại sao phải bảo vệ tính bí mật?
Ngăn chặn việc dùng sai của người chủ không được ủy quyền, những thương gia không trung thực
Dù PI và OI phải làm cho các bên thứ ba không thể đọc được nhưng vẫn cần có sự liên kết
Dữ liệu giao dịch thanh toán
Thông tin đặt hàng (Order Information –OI) Chỉ thị thanh toán (Payment Instruction - PI)
Trang 13Giao thức thanh toán điện tử iKP
IBM Research, hỗ trợ các giao dịch dựa trên thẻ tín dụng giữa người mua và
(i = 1,2, or 3) Sự bảo mật tăng khi có các cặp khóa thêm vào được dùng bởi mỗi thành viên tham gia
www.themegallery.c
Trang 14 1KP là giao thức đơn giản nhất, sử dụng một cặp khóa công khai duy nhất bởi cổng acquirer.
- Tất cả những yêu cầu thực hiện vởi người mua và người bán là khóa công khai đã được chứng thực của acquirer.
( hay các acquirer) cũng như tính bí mật của chỉ thị thanh toán đối với người bán
www.themegallery.c
Trang 15Giao thức bảo mật thanh toán điện tử dựa trên 3KP – SEPP là một trong các thế hệ trước quan trọng của SET
3KP cung cấp chống chối bỏ giữa tất cả các thành phần bằng cách thêm một cặp khóa bí mật – khóa công khai thứ 3 và chữ ký số từ người mua Việc chứng thực được thực hiện tốt hơn bằng cách sử dụng chữ ký số
Trang 16Bí mật dữ liệu giao dịch thanh toán
Khi khởi tạo giao dịch thanh toán khách hàng chọn ngẫu nhiên RC và tạo bút danh IDC : IDC = hk (RC , BAN)
BAN là tài khoản ngân hàng của khách hàng
Một tấn công khả thi sẽ liên quan đến tính toán các giải thuật băm của tất cả các kết hợp có thể của một số ngẫu nhiên
www.themegallery.c
Trang 17Tính bí mật cần phải có đối với cổng acquirer Lần này, khách hàng chọn một số ngẫu nhiên duy nhất, SALTC gửi tới người bán Người bán chuẩn bị một bản mô tả đơn đặt hàng (DESC) cho acquirer:
Hk (SALTC , DESC)
www.themegallery.c
Trang 18Để truyền chỉ thị thanh toán tới acquirer bằng cách mà người bán không thể đọc được thì iKP sử dụng mã hóa khóa công khai
www.themegallery.c
Trang 19SET - Secure Electronic Transaction
1.Khái quát chung:
Nhằm khắc phục những hạn chế của giao thức SSL, Visa và Master Card đã xây dựng và triển khai giao thức SET vào tháng 2/1996.
SET - được xây dựng nhằm mục đích bảo vệ các giao dịch sử dụng thẻ tín dụng.
Là một giao thức được đánh giá là khá hoàn hảo vì thỏa mãn được 4 yếu tố bảo mật cần thiết trong thanh toán điện tử (xác thực, mã hóa, toàn vẹn, chống chối bỏ).
Tuy nhiên, SET không phổ biến do tính phức tạp, thời gian phản hồi chậm và cần phải cài đặt ví
số - Digital Wallet trên máy tính của khách hàng
Trang 20SET - Secure Electronic Transaction
Mô hình tương tác của các thực thể trong giao thức SET.
Trang 21SET - Secure Electronic Transaction
2 Dual Signature (DS) – Chữ ký kép:
Được đưa ra để thực hiện việc bảo mật thông tin giao dịch: mã thẻ tín dụng, hóa đơn giao dịch….
DS sử dụng khi cần kết hợp 2 thông báo thành 1 nhưng chỉ cho phép mỗi đối tượng chỉ được đọc 1 phần
Ở đây, người mua sẽ tạo ra 2 thông báo có nội dung sau:
Order Information (OI): thông tin đặt hàng gửi đến người bán.
Payment Information (PI): thông tin thanh toán gửi đến ngân hàng.
Mục đích: hạn chế thông tin nhạy cảm đối với những đối tượng không cho phép.
Trang 22SET - Secure Electronic Transaction
Gắn kết các giá trị digest với nhau
Băm với SHA để tạo ra giá trị digest mới
Mã hóa giá trị digest mới với khóa bí mật của người ký
Trang 23SET - Secure Electronic Transaction
Các bước tạo chữ ký kép:
OI: thông tin đặt hàng E (Encryption): mã hóa (RSA).
PI: thông tin thanh toán KRc: khóa riêng của người mua H: Hash (SHA-1).
OIMD (OI message digest): bản tin OI đã rút ngắn.
PIMD (PI message digest): bản tin PI đã rút ngắn.
POMD: bản tin kết hợp OI+Pi đã rút ngắn.
II : kết nối
Trang 24SET - Secure Electronic Transaction
Để kiểm tra đơn đặt hàng, người bán thực hiện những bước sau:
- Bước 1:
www.themegallery.com
Trang 25SET - Secure Electronic Transaction
- Bước 2:
- Bước 3:
Trang 26SET - Secure Electronic Transaction
3.Đánh giá về SET:
a.Ưu điểm của SET:
- Đảm bảo tính chính xác của thông tin cho bên gửi và bên nhận.
- Đảm bảo tính toàn vẹn của thông tin
- Thông tin khách hàng được bảo mật tốt.
- Hạn chế tình trạng từ chối dịch vụ và lừa đảo qua mạng do có cơ chế xác thực cả hai phía
b.Hạn chế của SET:
- Có độ trễ khi giao dịch Do tính phức tạp của các thuật toạn mã hóa công khai và thường xuyên tiến hành giao dịch với các ngân hàng trung gian
- Hệ thống công kềnh và quá trình giao dịch chậm
- Thường xuyên Backup các dữ liệu
- SET yêu cầu các thiết bị phần cứng chuyên dụng.
- Yêu cầu cài đặt phần mềm Ví điện tử trên các máy khách hàng
Trang 27SET - Secure Electronic Transaction
4 Một số công nghệ được sử dụng trong SET:
- Chữ ký số (Digital Signature).
- Tóm tắt thông điệp (Message Digest).
- Chứng thực (Certificates).
- Phong bì số (Digital Envelope).
- Ví điện tử (Digital Wallet).
Trang 28Mã hóa bất đối xứng
Khóa chung được phân phối tự do và được dùng để mã hóa Khóa riêng được giữ
bí mật và dùng để giải mã
Người dùng tạo ra một cặp khóa
Công bố khóa công khai PU(public)
Giữ bí mật khóa PR (Private)
Dữ liệu truyền từ AB nghĩa là A dùng khóa PU để mã hóa dữ liệu và gửi đi, khi B nhận được dữ liệu sẽ sử dụng khóa PR để giải mã
Trang 29
Mã hóa bất đối xứng
Thuật toán được đề xuất năm 1977 do 3 tác giả Rivest, Sharmir và Adleman
Thuật toán được dựa trên cơ sở tính các lũy thừa trong số học
Độ an toàn của thuật toán dựa trên độ khó của việc phân tích thành thừa số nguyên
tố của các số nguyên lớn
Trang 30Thuật toán tạo khóa
Bước 1: Người nhận(B) chọn 2 số nguyên tố ngẫu nhiên p và q (2 số này phải lớn)
Bước 2: B tính n=p*q và Φ(n) = (p-1)(q-1)
Bước 3: B chọn một số ngẫu nhiên e (0<e<Φ(n)) sao cho UCLN(b,Φ(n)) = 1
Bước 4: B tính d=e-1 modΦ(n) bằng cách dùng thuật toán Euclide
Bước 5: B công bố khóa công khai PU= {e, n}
khóa bí mật chỉ người tạo mới biết PR ={d, n}
Trang 31Thuật toán mã hóa và giải mã
Bước 1: A nhận khóa công khai của B
Bước 2: A biểu diễn thông tin cần gửi thành số m
sao cho (0<= m <= n-1)
Bước 3: tính c = me mod n
Bước 4: Gửi c cho B
Trang 33Vấn đề xác thực
Tại sao phải xác thực
Xác minh nguồn gốc thông
Trang 34Mục đích của xác thực: nhằm chống lại các hình thức tấn công chủ động (xuyên tạc
dữ liệu và giả mạo)
Các phương pháp xác thực:
- Sử dụng mã hóa
- Sử dụng mã xác thực thông báo
Trang 35Vấn đề xác thực
Trong thương mại điện tử, xác thực là một yêu cầu đặc biệt quan trọng:
Tránh việc giả mạo các bên giao dịch
Tránh bị thay đổi các thông tin giao dịch trong quá trình truyền dữ liệu
Trang 36Các phương pháp xác thực
Xác thực bằng mã hóa
Sử dụng mã hóa đối xứng
• Đảm bảo thông báo được gửi đúng nguồn do chỉ bên gửi biết khóa bí mật
• Không thể bị thay đổi bởi bên thứ ba do không biết khóa bí mật
Sử dụng mã hóa khóa công khai
• Không những xác thực mà còn tạo ra được chữ ký số
• Tuy nhiên, phức tạp và tốn thời gian hơn mã đối xứng
Trang 37• Đính kèm vào thông báo
Mã xác thực thông báo thực chất là kết hợp giữa các tính chất của mã hóa và hàm băm
Có kích thước nhỏ, đặc trưng cho thông báo (Tính chất của hàm băm)
Tạo ra bằng khóa bí mật (Tính chất của mã hóa)
Trang 38Xác thực thông báo không có tác dụng khi bên gửi và bên nhận muốn gây hại cho nhau
Bên nhận giả mạo thông báo của bên gửi
Bên gửi từ chối thông báo đã gửi cho bên nhận
cần chữ ký điện tử
Trang 40Chức năng của chữ ký điện tử
Xác minh tác giả và thời điểm ký thông báo
Xác thực nội dung thông báo
Là căn cứ để giải quyết tranh chấp
Ngoài ra chữ ký điện tử không những giúp xác thực thông báo mà còn bảo vệ mỗi bên khỏi sự gây hai từ bên kia
Trang 41Yêu cầu của chữ ký điện tử:
• Phụ thuộc vào thông báo được ký (đảm bảo kiểm tra tính xác thực của thông báo)
• Sử dụng thông tin riêng của người gửi (tránh giả mạo và chối bỏ)
• Tương đối dễ tạo và kiểm chứng
• Rất khó giả mạo
• Thuận tiện trong việc lưu trữ
Trang 42
Chữ ký điện tử
Thuật toán băm Thuật toán RSA
Trang 43Cách tạo chữ ký điện tử
• Sử dụng hàm băm để tạo ra một chuỗi băm từ thông điệp ban đầu
• Dùng khóa bí mật của mình để mã hóa chuỗi băm này, kết quả đạt được chính là chữ ký điện tử của đoạn thông báo:
Thông điệp cần trao đổi
Trang 44Hàm băm
thiên và sinh ra kết quả là một chuỗi có độ dài cố định Chuỗi này thường
được gọi là cốt(cốt yếu) của thông tin X Khi đó h(X) thường có kích thước nhỏ hơn rất nhiều so với X.
bít
Trang 45Tính chất hàm băm
H(x) có thể được áp dụng cho một khối dữ liệu có kích thước bất kỳ
H(x) tạo ra một đầu ra có độ dài cố định Hay giá trị băm có độ dài cố định
H(x) thì tương đối dễ dàng để tính toán cho giá trị bất kỳ của x
Với bất kỳ bản mã h, gần như không thể tìm x sao cho H (x) = h
Với bất kỳ khối cho x, gần như không thể tìm y ≠ x sao cho H (y) = H (x)
Gần như không thể tìm thấy bất kỳ cặp(x,y)
sao cho H (x) = H (y)
Trang 46Chữ ký số
Chữ ký số là một lược đồ toán học để chứng thực bản tin hay văn bản đã số hóa
Chữ ký số dùng để cài đặt chữ ký điện tử nhưng không phải chữ ký điện tử nào cũng dùng chữ ký số
www.themegallery.com
Trang 47Chữ ký số
Sử dụng khóa riêng để mã hóa bản tin gốc
Toàn bộ bản tin được mã hóa được xem như chữ ký số
Chữ ký số (chữ ký điện tử chuẩn) dựa trên cơ sở khái niệm về chữ ký trên giấy truyền thống và chuyển chữ ký đó thành “dấu vân tay” điện tử
www.themegallery.c
Trang 49www.themegallery.c
Trang 50CHỐNG CHỐI BỎ TRONG THANH TOÁN ĐIỆN TỬ
Chống chối bỏ (Nonrepudiation): bảo vệ chống lại sự từ chối của khách hàng đối với những đơn hàng đã đặt và sự từ chối của người bán hàng đối với những khoản thanh toán đã được trả
Chống chối bỏ thu được thông qua viêc sử dụng chữ ký số và các dịch vụ chứng thực do bên thứ ba cậy cung cấp
Trang 51Chứng thực điện tử
Sơ đồ cấp chứng thực điện tử:
Trang 52Chứng thực điện tử
Trước khi trao đổi thông tin, bên gửi phải cho bên nhận chứng thực điện tử của mình
Bên nhận sẽ kiểm tra chứng thực, lấy ra khóa công khai của bên gửi
Nhờ đó, khóa công khai mới không bị giả mạo
Trang 53SÉC ĐIỆN TỬ
• Séc điện tử là tài liệu điện tử bao gồm các dữ liệu giống như séc giấy.ví dụ:
Số tài khoản của người mua
Mã số để phân biệt ngân hàng
Loại tài khoản (cá nhân hoặc doanh nghiệp)
Tên chủ tài khoản
Số tiền thanh toán
• Áp dụng nhiều cơ chế bảo mật trong đó được sử dụng phổ biến nhất chuyển giao
ủy quyền thanh toán
www.themegallery.com
Trang 54CHUYỂN GIAO ỦY QUYỀN THANH TOÁN
Sự ủy quyền thanh toán được chuyển từ người trả sang người nhận kèm theo 1 số hạn chế nhất định
Cơ chế chữ ký điện tử lên séc điện tử dựa trên những proxies hạn chế được sử dụng để cài đặt cho hệ thống NetCheque
Trang 55 Số tài khoản của người trả và tên ngân hàng.
Tên người nhận tiền
Khoản tiền được trả
Đơn vị tiền tệ hiện tại
Ngày nhận tiền
Chữ ký điện tử của người trả tiền
Chứng thực của người nhận tiền
Trang 56Hệ thống dịch vụ xác thực phát triển bởi học viện kỹ thuật MIT vào năm 1986
Là tên gọi của giao thức mật mã có nhiệm vụ xác thực các đối tượng sử dụng
mạng và cấp quyền truy nhập
Xác thực qua một bên thứ ba được tin tưởng, còn gọi là "trung tâm phân phối khóa"
Máy chủ xác thực (authentication server - AS)
Máy chủ cung cấp thẻ (ticket granting server - TGS)
Trang 57Mỗi phiên người dùng một lần
Mỗi phiên dịch vụ một lần
Client
Server dịch vụ
AS
TGS
Trang 58Client có "mong muốn" sử dụng dịch vụ S trong hệ thống phân tán, nhận service ticket từ TGS
t1 , t2 là mốc bắt đầu và kết thúc của giai đoạn xác thực ticket
n1 , n2 là các giá trị nonces (xâu ngẫu nhiên)
KTGS là khóa bí mật của TGS, KC là khóa bí mật của client
} {C , TGS , t 1 , t 2 , K C − TGS K TGS ,{K C − TGS , n 1}K C
Trang 59} { C , S , t 1 , t 2 , K C − S K UC , { K C − S , n 2 } K C − TGS
vụ.
Trang 60RESTRICTED PROXY
Thẻ TGS kerberos trên thực tế chính là một proxy hạn chế(restricted proxy)
Khoảng bị giới hạn là khoảng (t1,t2).trong khoảng đó thì thẻ có hiệu lực
Dạng tổng quan của restricted proxy:
{Restriction,K proxy}Kgrantor ,{ K proxy,nonce} Kgrantee
Trong trường hợp séc điện tử, hạn chế được biểu biễn bởi dữ liệu séc:
{<check>, K proxy}K payer , { K proxy , nonce}K payee
Trang 63Proxy 3: {deposit <check> to AS2, K proxy3} Kproxy2 ,{K proxy3 , n3}KAS2
Cả 3 cascaded proxies được gửi tới Accounting server của khách hàng AS2
Trang 64Thank You !