YOMEDIA
ADSENSE
Chương 7 " Bảo mật web"
85
lượt xem 25
download
lượt xem 25
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Web là dịch vụ quan trọng nhất hiện nay trong các dịch vụ Internet, rất nhiều ứng dụng được xây dựng trên nền web đặc biệt là các thương mại điện tử. Tính toàn của dịch vụ này vì thế trở thành yêu cầu bắt buộc.
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 7 " Bảo mật web"
- CHƯƠNG 7 B O M T WEB I- T NG QUAN V B O M T WEB I.1- Gi i thi u Web là d ch v quan tr ng b c nh t hi n nay trong s các d ch v c a m ng Internet. R t nhi u ng dung ư c xây d ng trên n n Web, c bi t là các ng d ng thương m i i n t . Tính an toàn c a d ch v này vì th tr thành yêu c u b t bu c. Tuy nhiên, cũng gi ng như nh ng ng d ng khác trên n n m ng Internet, Web cũng th a hư ng nh ng i m m nh c a cơ s h t ng m ng và b giao th c TCP/IP, nhưng cũng ng th i i di n v i nh ng thách th c v b o m t. Ngoài ra, b n thân công ngh Web cũng t nó Nn ch a m t s nguy cơ c thù. Có th k ra nh ng thách l n i v i d ch v Web như sau: • Web là m t công ngh ph c t p. M c dù vi c s d ng Web browser truy xu t Web là ơn gi n, vi c cài t và c u hình m t Web server là ơn gi n, c vi c xây d ng các ng d ng Web v i s h tr c a các công c m nh hi n nay cũng là ơn gi n, nhưng ki n trúc bên trong c a d ch v Web l i là m t h th ng h t s c ph c t p. S ph c t p này Nn ch a nh ng nguy cơ ti m tàng v b o m t. Trong th c t , nh ng l i b o m t xu t phát t bên trong công ngh là khá nghiêm tr ng, có th d n n nh ng t n công nguy hi m i v i h th ng. • Web server là nơi giao ti p v i th gi i m ng bên ngoài, cũng ng th i là nơi có k t n i g n gũi v i các h qu n tr cơ s d li u bên trong. Nên trong a s các trư ng h p t n công, thì Web server chính là c a ngõ thích h p nh t hacker b t u, t ó ti n sâu vào các cơ si73 d li u quan tr ng bên trong. • Ngư i dùng Internet thu c nhi u thành ph n khác nhau, và a s không có ki n th c và ít quan tâm n v n b o m t, k c nh ng thông báo r t c th c a Web browser trong các tình hu ng nguy hi m. Do ó, các t n công hư ng v phía ngư i dùng cũng là m t trong nh ng sơ h nghiêm tr ng c a Web. I.2- Các nguy cơ t n công b o m t i v i d ch v Web Các nguy cơ t n công an ninh i v i d ch v Web có th phân thành 4 nhóm như sau: • T n công vào thu c tính toàn v n c a thông tin trên Web (integrity): g m các t n công như thay i d li u c a ngư i dùng, thay i d li u trong quá trình trao i gi a web server và web browser, tác ng vào b nh web server thông qua các l i tràn b m, … Các t n công lo i này gây ra m t thông tin, cho phép hacker xâm nh p và h th ng và t ó t o ra nhi u l h ng b o m t khác. ngăn ch n các t n công thu c nhóm này, k thu t mã hóa và xác th c thông tin là gi i pháp h u hi u nh t. • T n công vào thu c tính bí m t c a thông tin trên Web (confidentiality): g m các t n công như c lén trên ư ng truy n, l y c p d li u trên server, l y c p d li u trên máy ngư i dùng, do thám thông tin v c u hình m ng, … Các t n công này gây m t thông tin và ti t l các thông tin cá nhân c a ngư i dùng. Gi i pháp ngăn ch n các t n công lo i này là dùng các k thu t mã hóa và web proxy. 1
- • T n công t ch i d ch v (DoS): g m các t n công như t t các lu ng x lý c a user, chi m tài nguyên c a web server (băng thông, ĩa c ng, b nh ) và t n công vào các cơ s d li u DNS nh m cô l p Web server. H u qu mà các t n công này gây ra thư ng là làm gián o n d ch v , gây khó ch u cho ngư i dùng và th m chí ngăn ch n các truy xu t h p l c a ngư i dùng. Các t n công d ng này hi n nay chưa có gi i pháp c th . • T n công các cơ ch xác th c c a d ch v Web (authentication): bao g m gi danh ngư i dùng và gi m o d li u. Các t n công này cũng ư c gi i quy t b ng các k thu t m t mã i x ng và b t i x ng. Hình 7.1: Các ng d ng b o m t trong mô hình TCP/IP Ngoài cách phân lo i các nguy cơ b o m t như trên, còn có m t cách phân lo i khác là d a vào v trí c a các nguy cơ này trong mô hình ho t ng c a d ch v Web. Theo ó, các nguy cơ t n công b o m t i v i d ch v Web có th xu t hi n 3 v trí như sau: • Các nguy cơ phía web server • Các nguy cơ phía web client • Các nguy cơ trên ư ng truy n d li u. Cho dù có dùng cách phân lo i nào i n a, thì các gi i pháp b o m t cho d ch v WeB thư ng t p trung vào hai nhóm như sau: • Gia c Web server và Web client dùng các công c h tr và các b n c p nh t thư ng xuyên c a nhà s n xu t. • m b o tính toàn v n, bí m t và xác th c c a d li u trao i gi a web browser và web server dùng các công c mã hóa và xác th c. Trong ph m vi tài li u này, các gi i pháp b o m t d ch v web ư c mô t t p trung vào nhóm gi i pháp m t mã h c. ây là nhóm gi i pháp n n t ng và có th áp d ng th ng nh t cho các tình hu ng mà không c n phân bi t các cơ s h t ng mà web ư c tri n khai (như h i u hành, ph n m m web server và các ph n m m ng d ng trên n n web). Nhóm gi i pháp này bao g m: 1. Tri n khai IPSec trên các k t n i gi a Web server và Web client 2. Dùng giao th c b o m t SSL 3. Mô hình giao d ch an toàn SET 4. Các giao th c xác th c an toàn IPSec ã ư c trình bày chương trư c. Ph n còn l i c a chương này t p trung vào giao th c b o m t SSL, mô hình giao d ch an toàn SET và các giao th c xác th c m c ng d ng. 2
- II- GIAO TH C B O M T SSL Secure Sockets layer hay SSL là m t giao th c b o m t ư c Netscape thi t k nh m cung c p các k t n i b o m t cho các ng d ng trên n n giao th c TCP/IP. SSL ã ư c chuNn hóa và s d ng r ng rãi trong nhi u ng d ng trên m ng Internet như web, mail, … Phiên b n hi n t i c a SSL là 3.0. Phiên b n SSL ư c IEEE chuNn hóa là ư c g i là TLS (Transport Layer Security), và ư c xem như là SSL phiên b n 3.1. II.1- C u trúc SSL SSL th c ra bao g m hai l p giao th c n m phía trên TCP. L p th nh t là giao th c truy n d li u SSL (SSL record protocol) và l p th hai g m m t t p các giao th c ph tr (hình 3.13). Ph n này gi i thi u khái quát các thành ph n c a SSL. Giao th c Giao th c Giao th c b t tay thay đ i c nh b o HTTP SSL thông s mã Giao th c truy n d li u TCP IP Hình 3.13: C u trúc SSL Hai khái ni m cơ b n thư ng ư c dùng trong SSL là k t n i (connection) và phiên giao d ch (session). -K t n i là m t k t n i (t m th i) gi a m t u cu i này v i m t u cu i kia cung c p m t l ai d ch v thích h p. M i k t n i liên k t v i m t phiên giao d ch (session). -Phiên giao d ch là m t liên k t gi a m t máy con và m t máy ch , ư c t o ra b i giao th c SSL Handshake protocol. Phiên giao d ch nh nghĩa các tham s b o m t dùng chung cho nhi u k t n i. Tr ng thái c a phiên giao d ch ư c nh nghĩa b i các thông s sau ây: • Nh n d ng phiên (Session identifier): M t chu i byte ng u nhiên ư c server ch n nh n d ng m t tr ng thái c a phiên giao d ch. • Ch ng th c khóa i phương (Peer certificate): Ch ng th c khóa công khai (X509.v3) c a th c th i phương. Thành ph n này có th có ho c không. • Phương pháp nén (Compression method): Gi i thu t nén d li u trư c khi mã hóa. • Thu t tóan mã (Cipher spec): Xác nh thu t toán mã hóa và hàm băm ư c s d ng cho phiên giao d ch. • Khóa (Master secret): Khóa bí m t (48-byte) dùng chung gi a máy con và server. 3
- • Kh năng ph c h i (Is resumable): Cho bi t phiên giao d ch này có th kh i t o m t k t n i m i hay không. Tương t , các thông s nh nghĩa tr ng thái c a m t k t n i bao g m: • S nh n d ng ng u nhiên (Server and client random): Chu i byte ch n ng u nhiên b i server và client, có ch c năng phân bi t các k t n i v i nhau. • Khóa xác th c c a máy ch (Server write MAC secret): Khóa bí m t dùng tính giá tr xác th c MAC trên d li u g i i t server. • Khóa xác th c c a máy con (Client write MAC secret): Khóa bí m t dùng tính giá tr xác th c MAC trên d li u g i i t máy con. • Khóa m t mã c a máy ch (Server write key): Khóa bí m t dùng m t mã hóa d li u g i i t server. • Khóa m t mã c a máy con (Client write key): Khóa bí m t dùng m t mã hóa d li u g i i t client. • Vector kh i t o (Initialization vectors): vec-tơ kh i t o (IV) dùng trong ch mã hóa CBC (Chaining Bock Cipher). Giá tr này ư c kh i t o b i giao th c SSL record. • S th t gói (Sequence numbers): S th t c a các b n tin ư c g i i và nh n v trên k t n i. II.2- Giao th c truy n d li u SSL: D li u g c Phân đo n Nén G n thông tin xác th c (MAC) M t mã hoá G n tiêu đ giao th c SSL record Hình 3.14: Ho t ng c a giao th c truy n d li u SSL Giao th c truy n d li u SSL (SSL record protocol) cung c p 2 d ch v cơ b n cho các k t n i SSL là d ch v b o m t và d ch v tòan v n d li u. Hình 3.14 mô t h at ng c a giao th c truy n d li u SSL. Theo ó, các thao tác mà SSL th c hi n trên d li u bao g m: phân an d li u (fragmentation), nén d li u (compression), xác th c d li u (MAC), mã hóa, thêm các tiêu c n thi t và cu i cùng g i 4
- Ki u d Phiên b n Phiên b n Kích thư c li u chính ph d li u D li u (có th nén ho c không nén) Thông tin đư c mã hoá Mã xác th c (0, 16 ho c 20 byte) Hình 3.15: C u trúc gói SSL record tòan b an thông tin trên trong m t segment TCP. phía nh n, quá trình ư c th c hi n ngư c l i. C u trúc gói d li u SSL record g m các thành ph n sau (hình 3.15): • Ki u d li u (Content Type - 8 bits): Giao th c l p trên. Giao th c này s x lý thông tin trong gói d li u SSL. • Phiên b n chính (Major Version - 8 bits): Phiên b n chính c a SSL. iv i SSL v3, giá tr này là 3. • Phiên b n ph (Minor Version - 8 bits): Phiên b n ph c a SSL. Ví d : iv i SSLv3 thì giá tr trư ng này là 0. • Kích thư c d li u (Compressed Length -16 bits): Chi u dài c a ph n d li u (plaintext), tính theo byte. • D li u (Plaintext): D li u c a l p trên ư c chuy n i trong gói SSL record. D li u này có th ư c nén ho c không. • Mã xác th c (MAC): Mã xác th c, có kích thư c = 0 byte n u không dùng ch c năng xác th c. Hai ch c năng quan tr ng nh t c a SSL record là mã hóa và xác th c thông tin. Các thu t toán mã hóa có th dùng trong SSL bao g m: -Các thu t toán mã kh i: • AES (khóa 128/256 bit) • IDEA (khóa 128 bit) • RC2-40 (khóa 40 bit) • DES-40 (khóa 40 bit) • DES-56 (khóa 56 bit) • 3DES 3 khóa (168 bit) 5
- • Fortezza (khóa 80 bit) -Các thu t toán mã dòng: • RC4-40 (khóa 40 bit) • RC4-128 (khóa 128 bit) Ch c năng xác th c thông tin ư c th c hi n thông qua các hàm băm MD5 ho c SHA_1 v i c u trúc như sau: hash(MAC_write_secret || pad_2 || hash(MAC_write_secret || pad_1 || seq_num || SSLCompressed.type || SSLCompressed.length || SSLCompressed.fragment)) Trong ó: • Ký hi u || bi u di n thao tác n i hai kh i thông tin v i nhau • MAC_write_secret: khóa bí m t th ng nh t gi a client và server, dùng cho m c ích xác th c. • Pad_1: ch a giá tr 0x36 (0011 0110 nh phân), l p l i 48 l n n u s d ng hàm băm MD5 ho c l p l i 40 l n n u s d ng hàm băm SHA_1 • Pad_2: ch a giá tr 0x5C (0101 1100 nh phân) l p l i 48 l n n u s d ng hàm băm MD5 ho c l p l i 40 l n n u s d ng hàm băm SHA_1 • seq_num: s th t c a b n tin • SSLCompressed.type: Giao th c nén • SSLCompressed.length: Kích thư c b n tin sau khi nén • SSLCompressed.fragment: Kích thư c c a phân o n sau khi nén (trong trư ng h p có dùng ch c năng phân o n. II.3- Giao th c thay i thông s mã Giao th c thay i thông s mã (Change cipher spec protocol) là giao th c ơn gi n nh t trong c u trúc SSL, dùng thay i các thông s mã hóa trên k t n i SSL. Giao th c này ch g m có m t b n tin có kích thư c 1 byte, mang giá tr 1. Ch c năng c a b n tin này là yêu c u c p nh t các thông s mã hoá cho k t n i hi n hành. B n tin thay i thông s mã ư c g i i trong c u trúc gói c a SSL Record. II.4- Giao th c c nh báo Giao th c c nh báo (Alert protocol) dùng trao i các b n tin c nh báo gi a hai u c a k t n i SSL. Có hai m c c nh báo: warning (1) và fatal (2). M c warning ch ơn gi n dùng thông báo cho u kia các s ki n b t thư ng ang di n ra. M c fatal yêu c u k t thúc k t n i SSL hi n hành, các k t n i khác trong cùng phiên giao d ch có th v n ư c duy trì nhưng phiên giao d ch không ư c thi t l p thêm k t n i m i. Các b n tin c nh báo c a SSL bao g m: • unexpected_message: Nh n ư c m t b n tin không phù h p. • bad_record_mac: B n tin v a nh n có giá tr MAC không h p l . • decompression_failure: Thao tác gi i nén th c hi n không thành công.. • handshake_failure: Phía g i không thương lư ng các thông s b o m t. 6
- • illegal_parameter: M t trư ng nào ó trong b n tin b t tay (handshake message) không h p l . • close_notify: Thông báo k t thúc k t n i. • no_certificate: Khi nh n ư c yêu c u cung c p ch ng th c khóa (certificate), nhưng n u không có ch ng th c khóa nào thích h p thì g i c nh báo này. • bad_certificate: Ch ng th c khóa không h p l (ch ký sai) • unsupported_certificate: Ki u ch ng th c không ư c h tr . • certificate_revoked: Ch ng th c khóa ã b thu h i. • certificate_expired: Ch ng th c khóa ã h t h n s d ng. • certificate_unknown: Không x lý ư c ch ng th c khóa vì các lý do khác v i các lý do trên. II.5- Giao th c b t tay Giao th c b t tay (handshake protocol) là giao th c quan tr ng nh t c a SSL, ư c hai phía s d ng xác th c l n nhau và thương lư ng th ng nh t các thu t toán xác th c MAC và mã hóa. Th t c này cũng ư c trao i các khóa bí m t dùng cho mã hóa và MAC. Th t c ph i ư c th c hi n trư c khi d li u ư c truy n. Th t c b t tay g m 4 giai an như sau: -Giai o n 1: Thi t l p các thông s b o m t như phiên b n c a giao th c, nh n d ng phiên giao d ch, thu t toán m t mã, phương pháp nén và s ng u nhiên ban u. Các thành ph n c a b n tin client_hello và server_hello bao g m: • Version: phiên b n SSL • Random: s ng u nhiên dùng cho m c ích xác th c • Session id: nh n d ng c a phiên làm vi c • Cipher suite: t p các thu t toán m t mã mà h th ng có kh năng h tr • Compression method: Thu t toán nén mà h th ng có kh năng h tr -Giai o n 2: Server có th g i ch ng th c khóa công khai, trao i khoá và yêu c u client cung c p ch ng th c khóa. -Giai o n 3: Client g i ch ng th c khóa khi ư c yêu c u t phía server, trao i khóa v i server. Client cũng có th g i xác minh ch ng th c khóa công khai cho server (certificate_verify). Client Server client_hello server_hello Hình: Giao th c b t tay SSL: Giai o n 1 7
- -Giai o n 4: Thay i các thông s c a thu t toán m t mã và k t thúc giao th c b t tay. Client Server Ch ng th c khóa server Khóa bí m t c a server Yêu c u cung c p ch ng th c K t thúc server_hello Hình: Giao th c b t tay SSL: Giai o n 2 Client Server Ch ng th c khóa client Khóa bí m t c a client Xác minh ch ng th c khóa Hình: Giao th c b t tay SSL: Giai o n 3 Client Server Thay đ i thông s mã K t thúc Thay đ i thông s mã K t thúc Hình: Giao th c b t tay SSL: Giai o n 4 8
- II.6- So sánh SSL và IPSec SSL và IPSec là hai giao th c tương ng v i nhau v ch c năng. C hai u ư c thi t k b o v d li u truy n trên các k t n i b ng các cơ ch xác th c và mã hóa. Tuy nhiên, hai k thu t này có nh ng i m khác bi t nhau như sau: • SSL h at ng l p socket (hình 3.13), do ó nó ư c g n k t ph n ngư i s d ng (user space) trong các h th ng u cu i. IPSec h at ng l p m ng (network layer), nên ư c tích h p vào trong ch c năng c a h i u hành. ây chính là s khác nhau cơ b n nh t gi a SSL và IPSec. • C SSL và IPSec u cung c p ch c năng mã hóa (Encryption), b o v d li u (Integrity) và xác th c thông tin (Authentication), tuy nhiên SSL ơn gi n hóa các k thu t này áp d ng trong mô hình c a nó, trong khi IPSec bao g m m t cách y các chi ti t thi t k c a t t c các k thu t t o thành, và do ó, khi t h p l i s xu t hi n nhi u l i tương thích trong n i b IPSec. • IPSec là thành ph n c a h i u hành, do ó, tri n khai IPSec thì ph i thay i c u hình h i u hành mà không c n thay i c u hình chương trình ng d ng. Ngư c l i, SSL n m m c ngư i dùng nên ph i cài t v i t ng ng d ng c th (ví d mail, web, …) mà không c n khai báo v i h i u hành, Vì nh ng khác bi t trên ây, SSL thư ng ư c s d ng b o v k t n i cho t ng ng d ng c th , c bi t là Web, E-mail. Trong khi ó, IPSec thư ng ư c dùng xây d ng các m ng riêng o (VPN) r i trên cơ s ó m i tri n khai các d ch v ng d ng. III- MÔ HÌNH GIAO DNCH I N T AN TOÀN SET III.1- T ng quan v SET Secure Electronic Transaction hay SET là m t k thu t ư c thi t k b o v các thông tin quan tr ng trao i trên m ng (ví d s th tín d ng) dùng trong các giao d ch thanh tóan qua m ng Internet. SET phiên b n 1 ư c xu t năm 1996 (MasterCard và Visa ch trì), sau ó ư c nhi u nhà s n xu t khác tham gia phát tri n (như Microsoft, IBM, Netscape, RSA, Terisa và Verisign). SET không ph i là m t h th ng thanh tóan, mà ch là m t giao th c an tòan cho phép các u cu i trao i các thông tin bí m t, c bi t là các thông tin v tài kh an ngân hàng, thông qua các môi trư ng công c ng ví d như Internet. III.2- Các tính năng c a SET • B o m t thông tin: c bi t là thông tin v tài kh an ngân hàng khi nh ng thông tin này ư c trao i qua m ng. SET còn có ch c năng ngăn ch n ngư i bán hàng bi t s th tín d ng (credit card) c a ngư i mua hàng. K thu t mã hóa quy ư c v i thu t tóan DES ư c dùng cung c p ch c năng này. • B o tòan d li u: các thông tin v vi c t hàng, thanh tóan, thông tin cá nhân khi g i t m t ngư i mua hàng n ngư i bán hàng ư c m b o tòan v n, không b thay i. K thu t ch ký s DSA v i hàm băm SHA-1 ư c dùng b o m tính năng này (trong m t s b n tin c a SET, HMAC ư c dùng thay cho DSA). 9
- • Xác th c tài kh an c a ngư i s d ng th : cho phép ngư i bán hàng xác minh ngư i dùng th là ch nhân h p l c a tài kho n ang c p. th c hi n ch c năng này, SET dùng chuNn xác th c X.509 version 3. • Xác th c ngư i bán hàng: SET cho phép ngư i s d ng th xác th c r ng ngư i bán hàng có quan h v i m t t ch c tài chính có ch p nh n thanh toán qua th . Ch c năng này cũng ư c th c hi n dùng X.509 version 3. M t i u c n chú ý là SET h at ng b ng cách truy xu t tr c ti p n l p TCP/IP mà không dùng các giao th c l p ng d ng khác. Tuy v y h at ng c a SET cũng không nh hư ng n các cơ ch b o m t khác như IPSec ho c SSL. III.3- Các thành ph n c a SET • Ngư i dùng th (Cardholder): Ngư i dùng th tín d ng th c hi n các giao d ch thanh tóan trên Internet (ngư i mua hàng). • Ngư i bán hàng (Merchant): M t cá nhân hay t ch c bán hàng ho c d ch v trên m ng (thông qua web ho c email). Ngư i bán hàng ph i có kh năng ch p nh n thanh tóan b ng th , và ph i có quan h v i m t t ch c tài chính nào ó (Accquirer). • T ch c phát hành th (Issuer): ây là t ch c tài chính (thư ng là ngân hàng) phát hành th tín d ng. T ch c này có trách nhi m thanh tóan theo yêu c u c a ngư i s d ng th . • Tr ng tài (Acquirer): M t t ch c tài chính khác có quan h v i ngư i bán hàng, th c hi n vi c xác th c tài kh an c a ngư i mua hàng và thanh tóan. Tr ng tài s ki m tra tài kh an c a ngư i mua hàng thông báo cho ngư i bán hàng bi t s dư trong tài kh an c a ngư i mua có th c hi n giao d ch hay không. Sau khi giao d ch mua hàng ư c th c hi n, tr ng tài th c hi n vi c chuy n ti n t tài kh an c a ngư i mua hàng sang tài tòan kh an c a ngư i bán hàng, ng th i ra yêu c u thanh tóan i v i ngân hàng phát hành th (Issuer). • C a thanh tóan (Payment gateway): ây là thành ph n ch u trách nhi m x lý các b n tin thanh tóan (payment message) ư c i u hành b i tr ng tài ho c m t t ch c th 3 ư c ch nh. Payment gateway giao ti p gi a SET và h th ng thanh tóan c a ngân hàng th c hi n các thao tác xác th c và thanh tóan. Như v y, ngư i bán hàng th t ra trao i các thông báo v i c a ngõ thanh tóan thông qua m ng Internet, sau ó, Payment gateway m i liên k t n h th ng x lý tài chính c a Acquirer.-T ch c ch ng th c (Certification authority _ CA): Là thành ph n có ch c năng t o ra các ch ng th c (certificate) theo chuNn X.509v3 và phân ph i cho Cardholder, Merchant và Payment Gateway. S thành công c a SET ph thu c vào s t n t i c a CA. Thông thư ng, CA ư c t ch c theo m t mô hình phân c p v i nhi u CA liên h v i nhau. III.4- Th c hi n giao d ch v i SET M t giao d ch SET i n hình g m các bư c sau ây: 1. Khách hàng m tài kh an t i m t ngân hàng có d ch v thanh tóan qua m ng (ví d MasterCard, Visa card, …) và tr thành Cardholder. 10
- 2. Khách hàng nh n ư c m t ch ng th c X.509v3, ư c ký b i ngân hàng b ng ch ký s (digital signature), trong ó ch a khóa công khai RSA c a khách hàng và ngày h t h n. 3. Ngư i bán hàng nh n ch ng th c: Ngư i bán hàng ph i có 2 ch ng th c khác nhau ch a khóa công khai cho hai m c ích: ký nh n các thông báo (message signing) và trao i khóa (key exchange). Ngòai ra, ngư i bán hàng cũng có m t b n sao ch ng th c c a Payment gateway. Ngư i bán hàng (Merchant) Ngư i dùng th Intenet (Cardholder) T ch c ch ng th c (CA) T ch c phát hành th (Issuer) M ng thanh tóan Tr ng tài C a thanh tóan (Acquirer) (Payment gateway) Hình 3.17: Các thành ph n c a SET 4. Khách hàng t hàng: thao tác này ư c th c hi n thông qua website c a ngư i bán hàng ho c qua email. 5. Xác nh n ngư i bán hàng: ngư i bán hàng g i ch ng th c c a mình cho ngư i mua hàng ch ng minh tính s h u c a mình i v i m t kho hàng nào ó. 6. L nh t hàng và thanh toán ư c th c hi n: ngư i mua hàng g i l nh t hàng và l nh thanh tóan cho ngư i bán hàng cùng v i ch ng th c c a mình. Thông tin thanh toán (s th tín d ng) ư c mã hoá sao cho ngư i bán hàng không th th y ư c nhưng có th ki m tra tính h p l c a nó. 7. Ngư i bán hàng yêu c u xác th c vi c thanh tóan thông qua Payment gateway. 8. Ngư i bán hàng xác nh n ơn t hàng b ng cách g i thông báo cho ngư i mua hàng. 9. Ngư i bán hàng giao hàng (ho c b t u cung c p d ch v ) cho ngư i mua hàng. 10. Ngư i bán hàng yêu c u thanh tóan thông qua Payment gateway. III.5- Ch ký song song 11
- Ch ký song song (dual signature) là m t thu t ng ư c dùng trong SET di n t m t liên k t gi a hai b n tin ư c g i i b i cùng m t ngư i g i nhưng cho hai ngư i nh n khác nhau. Khi mua hàng qua m ng, khách hàng g i thông tin t hàng OI (Order information) v i ch ký c a mình cho ngư i bán hàng, ng th i g i thông tin thanh tóan PI (Payment information) cho ngân hàng cũng v i ch ký c a mình. V nguyên t c, ngân hàng không c n bi t các chi ti t v t hàng, và ngư i bán hàng cũng không c n bi t các chi ti t v thanh tóan. Ch ký song song ư c s d ng trong trư ng h p này tránh các tranh ch p x y ra khi thông tin t hàng và thông tin thanh tóan không kh p nhau. Hình 3.18 mô t h at ng c a ch ký song song. -Ngư i mua hàng áp d ng hàm băm lên PI và OI (dùng SHA-1), sau ó hai giá tr băm ư c n i v i nhau và áp d ng hàm băm m t l n n a v i khóa riêng c a chính ngư i mua hàng t o thành ch ký song song: DS = E([H(H(PI) + H(OI)], PRc) Trong ó PRc là khóa riêng c a ngư i mua hàng. -Ngư i bán hàng xác nh n ch ký c a ngư i mua hàng b ng cách tính hai giá tr : H(PIMS + H[OI]) và D(DS, PUc) Trong ó PIMD là mã băm c a PI, PUc là khóa công khai c a khách hàng, DS là ch ký song song nh n ư c trên ơn t hàng. N u hai giá tr trên b ng nhau, thì ch ký xem như chính xác và ơn t hàng ư c ch p nh n. -Song song ó, ngân hàng cũng xác th c ch ký song song b ng cách so sánh hai giá tr sau ây: H(H[OI] + OIMD) và D(DS, PUc) Trong ó OIDM là message digest c a OI. N u hai giá tr v a tính ư c là b ng nhau thì xem như ch ký là chính xác và l nh thanh tóan ư c ch p nh n. 12
- PI PIMD PRc H Ch ký POMD song song H E OI OIMD H PI: Payment Information PIMD: PI message digest OI: Order Information OIMD: OI message digest H: Hash function (SHA-1) POMD: Payment Order message digest | | : N i hai kh i thông tin E: Thu t tóan m t mã (RSA) PRc: Khoá riêng c a ngư i mua hàng Hình 3.18: Ch ký song song (dual signature) III.6- Th c hi n thanh toán trong SET X lý thanh toán (Payment processing) là công o n quan tr ng nh t trong giao d ch SET. Quá trình x lý thanh toán g m 3 công vi c như sau: • Yêu c u mua hàng (Purchase Request). • Xác th c thanh toán (Payment Authorization). • Th c hi n thanh toán (Payment Capture). B ng 3.1: Các giao tác c a SET Tên giao tác Ý nghĩa Cardholder Ngư i mua hàng ăng ký v i CA trư c khi th c hi n các giao d ch registration SET khác v i ngư i bán hàng. Merchant Ngư i bán hàng ăng ký v i CA trư c khi g i các thông báo SET v i registration khác hàng và v i Payment gateway. Purchase request Thông báo ư c ngư i mua hàng g i i, trong ó ch a l nh t hàng (OI) cho ngư i bán hàng và l nh thanh tóan (PI) cho ngân hàng. Payment Trao i gi a ngư i bán hàng và Payment gateway ki m tra s dư authorization trong tài kh an c a ngư i mua hàng. Payment capture Ngư i bán hàng g i yêu c u thanh tóan n Payment gateway. Certificate inquiry Trong trư ng h p CA không x lý ư c yêu c u cung c p ch ng th c and status t c th i, nó s tr l i cho ngư i mua hàng và ngư i bán hàng v vi c trì hõan này. Sau ó, ngư i mua hàng ho c ngư i bán hàng có th dùng giao d ch này ki m tra tr ng thái c a ch ng th c. N u ch ng th c ã ư c x lý xong thì khách hàng ho c ngư i bán hàng s ư c nh n. 13
- Purchase inquiry Ngư i mua hàng ki m tra tr ng thái c a ơn t hàng sau khi ã xác nh n ơn t hàng v i ngư i bán hàng. Authorization Ngư i bán hàng hi u ch nh yêu c u xác th c trư c ó. N u ơn t reversal hàng không th c hi n ư c thì tòan b vi c xác th c trư c ó ư c h i l i (reverse). N u ơn t hàng ch ư c th c hi n m t ph n (ngư i mua hàng h i l i m t ph n) thì ngư i bán hàng ch h i l i ph n ã xác th c tương ng. Capture reversal Ngư i bán hàng hi u ch nh các thông tin yêu c u thanh tóan ã g i cho Payment gateway. Credit Ngư i bán hàng tr l i ti n vào tài kh an c a ngư i mua hàng khi hàng ư c tr l i vì lý do nào ó (hư h ng, sai quy cách, …). Credit reversal Ngư i bán hàng hi u ch nh l i yêu c u tr l i ti n vào tài kh an c a ngư i mua hàng (giao tác Credit) v a r i. Payment gateway Ngư i bán hàng yêu c u b n sao ch ng th c c a Payment gateway. certificate request Batch Ngư i bán hàng thông báo cho Payment gateway v các t giao hàng. administration Error message Thông báo l i x y ra trong giao d ch. -Yêu c u mua hàng: Sau khi ngư i mua hàng hoàn t t các công vi c ch n hàng và t mua trên m ng, th t c yêu c u mua hàng m i ư c b t u. Chú ý r ng thao tác ch n hàng và t mua ư c th c hi n trên các k t n i bình thư ng (như e-mail hay web) mà không c n có s tham gia c a SET. Quá trình yêu c u mua hàng bao g m 4 giao tác: Initiate Request, Initiate Response, Purchase Request, và Purchase Response. g i ư c các b n tin SET n ngư i bán hàng, ngư i mua hàng c n có m t b n sao các ch ng th c c a Merchant và Payment gateway. B n tin Initiate Request ư c s d ng yêu c u ngư i bán hàng cung c p các ch ng th c c n thi t cho ngư i mua hàng. Ngư i bán hàng s tr l i b n tin Initiate Request b ng m t b n tin h i áp Initiate Response trong ó có ch a giá tr ng u nhiên (nonce) ã ư c t o ra trư c ó b i ngư i mua hàng, m t giá tr ng u nhiên khác do ngư i bán hàng t o ra, nh n di n c a giao tác hi n hành, cùng v i các ch ng th c c a chính ngư i bán hàng và Payment gateway. T t c các thông tin này ư c xác th c b i ch ký c a ngư i bán hàng. Ngư i mua hàng xác minh các ch ng th c nh n ư c, sau ó t o ra thông tin t hàng (OI) và thông tin thanh tóan (PI), trong ó có ch a nh n di n giao tác mà ngư i bán hàng v a t o ra trư c ó. Ngư i mua hàng chuNn b b n tin Purchase Request. B n tin này ch a các thông tin sau ây: • Các thông tin liên quan n vi c thanh toán bao g m: PI, ch ký song song, OIMD và m t phong bì s (digital envelope). Các thông tin này ư c mã hoá b ng khoá bí m t Ks do ngư i mua hàng t o ra cho t ng phiên giao d ch. • Các thông tin liên quan n ơn t hàng bao g m OI, ch ký song song, PIMD. Chú ý r ng OI ư c g i i tr c ti p mà không c n mã hoá. • Ch ng th c c a ngư i mua hàng. 14
- Khi ngư i bán hàng nh n ư c Purchase Request, h s th c hi n các thao tác sau ây: • Xác minh ch ng th c c a ngư i mua hàng. • Ki m ch ng ch ký song song c a ngư i mua hàng. • X lý ơn t hàng và chuy n thông tin thanh toán cho Payment Gateway ki m tra. • G i b n tin Purchase Response cho ngư i mua hàng. B n tin Purchase Response ch a các thông tin ch p nh n ơn t hàng và các tham chi u n s nh n di n giao tác tương ng. Thông tin này ư c ký b i ngư i bán hàng và g i cho ngư i mua hàng cùng v i ch ng th c c a ngư i bán. Ngư i mua hàng khi nh n ư c b n tin Purchase Response s ti n hành ki m tra ch ký và ch ng th c c a ngư i bán hàng. B n tin Purchase Request PI Ph n thông tin đư c ngư i bán hàng chuy n cho Payment Dual Signature Ks Gateway Digital envelope OIMD PIMD Ph n thông tin nh n đư c b i ngư i bán hàng OI PUb Dual Signature Cardholder cerificate Hình 3.19: Quá trình t o b n tin Purchase request c a ngư i mua hàng -Xác th c thanh toán: ây là th t c mà ngư i bán hàng xác th c tính h p l c a ngư i mua hàng thông qua Payment Gateway. Quá trình xác th c nh m b o m r ng giao d ch này ư c ch p thu n b i ngân hàng phát hành th (Issuer), và do ó ngư i bán hàng s ư c m b o thanh toán. Quá trình này ư c th c hi n thông qua hai b n tin: Authorization Request và Authorization response. 15
- B n tin Purchase Request Thông tin đư c Merchant chuy n cho Payment Gateway Digital envelope PIMD POMD H OI H So sánh OIMD Dual signature D POMD Cardholder certificate PUc Hình 3.18: Quá trình xác minh yêu c u mua hàng (Purchase Request) t i Merchant B n tin Authorization Request ư c ngư i bán hàng g i n Payment Gateway bao g m các thông tin sau: • Thông tin liên quan n vi c mua hàng, bao g m: PI, ch ký song song, OIMD và phong bì s (digital envelope). • Thông tin liên quan n xác th c bao g m: nh n di n giao tác, ư c mã hoá b ng khoá bí m t do ngư i bán hàng t o ra và phong bì s , ư c mã hoá b ng khoá công khai c a Payment gateway. • Các ch ng th c c a ngư i mua hàng và ngư i bán hàng. Khi nh n ư c Authorization Request, Payment Gateway th c hi n các thao tác sau: • Xác minh t t c các ch ng th c. • Gi i mã phong bì s c a kh i thông tin mua hàng. 16
- • Xác minh ch ký c a ngư i bán hàng. • Gi i mã phong bì s c a kh i thông tin xác th c. • Xác minh ch ký song song. • Xác minh nh n di n giao tác (transaction ID). • Yêu c u xác th c t ngân hàng phát hành th . N u nh n ư c thông tin xác th c thành công t ngân hàng phát hành th , Payment Gateway s h i áp b ng b n tin Authorization Response trong ó ch a các thông tin sau: • Thông tin liên quan n xác th c bao g m: kh i thông tin xác th c ư c ký b i Payment Gateway và mã hoá b ng khoá bí m t do Payment Gateway t o ra, ngoài ra còn có phong bì s . • Thông tin liên quan n th c hi n thanh toán. • Ch ng th c c a Payment gateway. V i thông tin xác th c này, ngư i bán hàng ã có th b t u giao hàng ho c cung c p d ch v cho ngư i mua hàng. -Th c hi n thanh toán: th c hi n thanh toán, ngư i bán hàng th c hi n m t giao tác v i Payment Gateway g i là Capture transaction, giao tác này ư c th c hi n qua hai b n tin: Capture Request và Capture Response. Trong b n tin Capture Request, ngư i bán hàng t o ra thông tin yêu c u thanh toán, trong ó có kh i lư ng thanh toán và nh n di n giao tác (transaction ID), cùng v i thông tin xác th c nh n ư c trư c ó t Payment Gateway, ch ký và ch ng th c c a ngư i bán hàng. Payment Gateway nh n ư c b n tin này, gi i mã và th c hi n các bư c ki m tra c n thi t trư c khi yêu c u ngân hàng phát hành th chuy n ti n cho ngư i bán hàng. Cu i cùng, Payment Gateway s thông báo cho ngư i bán hàng b ng b n tin Capture Response. 17
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn