Mục Lục trang 1
Chương 0: MỞ ĐẦU trang 3
I – Lời Mở Đầu trang 3
II – Lý Do Chọn Đề Tài trang 3
III – Các Công Cụ Sử Dụng trang 5
Phần I: CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI
Chương 1: Khảo Sát Hiện Trạng trang 6
1. Yêu Cầu Chức Năng Đối Với Khách Hàng trang 6
2. Yêu Cầu Chức Năng Đối Với Nhà Sách trang 7
2.1. Bán Hàng trang 9
2.2. Liên Lạc Với Khách Hàng trang 10
3. Các Yêu Cầu Phi Chức Năng trang 10
Chương 2 : Đặc Tả Tính Năng Và Yêu Cầu trang 12
I. Đặc Tả Tính Năng trang 12
1. Khách Hàng trang 12
2. Người Quản Trị Hệ Thống trang 12
3. Nhân Viên trang 14
4. Nhà Cung Cấp trang 15
5. Nhà Bank trang 15
II. Yêu Cầu Của Đề Tài trang 16
1. Về Mặt Ứng Dụng trang 16
2. Về Mặt Kỷ Thuật trang 16
3. Một Số Yêu Cầu Khác trang 16
Chương 3: Giải Pháp Lựa Chọn trang 17
I. Khảo Sát Mô Hình trang 17
II. Lựa Chọn Công Nghệ trang 18
III. Khảo Sát Chi Tiết Về Công Nghệ trang 20
23 trang |
Chia sẻ: NguyễnHương | Lượt xem: 922 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng website mua bán sách tin học qua mạng với servlet/jsp và j2ee, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
II-HOAÏT ÑOÄNG CUÛA CHÖÔNG TRÌNH:
Ñaây laø maøn hình chính cuûa chöông trình. Taïi ñaây, ngöôøi duøng coù theå tìm kieám saùch baèng caùch goõ vaøo teân saùch vaø choïn theå loaïi. Ngöôøi duøng coøn coù theå tìm kieám chi tieát hôn veà saùch nhö giaù caû, nhaø xuaát baûn, taùc giaû . . . baèng caùch choïn “Advanced Search”. Ngöôøi duøng coù theå theâm caùc saùch treân maøn hình vaøo gioû haøng cuûa mình . . .Taïi ñaây, ngöôøi söû duïng coù theå ñaêng kyù account môùi hoaëc ñaêng nhaäp vaøo heä thoáng neáu ñaõ coù account roài. . .
Hình 5.2: Trang indexMain.jsp
1-Veà Phía Khaùch Haøng, Ngöôøi Söû Duïng:
Khi ngöôøi söû duïng choïn theå loaïi vaø goõ vaøo teân saùch vaø nhaán nuùt go thì keát quaû caùc saùch tìm thaáy seõ hieãn thò ra.
Tìm Kieám.jsp:
Döõ lieäu vaøo: teân saùch, theå loaïi.
Xöû lyù: laáy caùc tham soá ngöôøi duøng nhaäp vaøo, sau ñoù tìm trong cô sôû döõ lieäu xem coù saùch thoaû maõn khoâng. Neáu coù, xuaát ra danh saùch caùc saùch thoûa maõn. Neáu khoâng coù, thoâng baùo ra maøn hình cho khaùch haøng bieát.
Döõ lieäu ra: caùc saùch tìm thaáy goàm: teân saùch, hình aûnh, ñôn giaù, toùm taét noäi dung, taùc giaû
Hình 5.3: Trang TìmKieám.jsp
Khi ngöôøi söû duïng choïn “Advanced Search” thì seõ hieãn thò trang:
Hình 5.4: Trang TimTheoGia.jsp
Taïi ñaây ngöôøi söû duïng coù theå nhaäp teân saùch caàn tìm, nhaäp teân taùc giaû, choïn theå loaïi, ngoân ngöõ, nhaø xuaát baûn, giaù thaáp nhaát, giaù cao nhaát vaø nhaán nuùt “Search”. Sau ñoù chöông trình seõ tìm kieám trong database xem coù quyeån saùch ñoù hay khoâng. Neáu khoâng coù thì seõ thoâng baùo cho ngöôøi söû duïng bieát, coøn neáu coù thì seõ hieän thoâng tin veà caùc saùch tìm thaáy.
Sau ñoù ngöôøi duøng coù theå click vaøo quyeån saùch hoaëc teân saùch ñeå xem chi tieát veà töøng quyeån saùch:
Hình 5.5: Trang ChiTietSach.jsp
Ngöôøi söû duïng coù theå xem chi tieát noäi dung saùch hoaëc boû saùch vaøo gioû haøng.
Gioû Haøng.jsp
Döõ lieäu vaøo: maõ saùch, soá löôïng.
Xöû lyù:+ theâm saùch vaøo gioû haøng.
+ khi ngöôøi duøng nhaäp soá löôïng môùi vaø nhaán update thì kieåm tra:
Neáu soá löôïng aâm, hoaëc soá löôïng laø chöõ, hoaëc soá löôïng vöôït quaù soá löôïng hieän coù cuûa nhaø saùch thì: Thoâng baùo.
Neáu soá löôïng < = soá löôïng hieän coù thì: caäp nhaät soá löôïng môùi vaøo gioû haøng.
+ khi ngöôøi duøng choïn chöùc naêng xoùa gioû haøng thì:
- Xoùa taát caû caùc saùch hieän coù trong gioû haøng. Keå caû soá löôïng, ñôn giaù.
+ khi ngöôøi duøng choïn kieåm tra gioû haøng, thì hieän trang kieåmtragioûhaøng.jsp cho bieát toång soá tieàn phaûi traû cuûa caû gioû haøng.
+ khi ngöôøi duøng choïn mua tieáp thì: quay veà trang indexMain.jsp.
Döõ lieäu ra: gioû haøng chöùa caùc saùch ngöôøi duøng choïn boû vaøo gioû.
Hình 5.6: GioHang.jsp
Khi hoï choïn muïc kieåm tra gioû haøng thì trang sau seõ hieän ra:
Hình 5.7: KiemTraGioHang.jsp
Neáu ngöôøi söû duïng ñoàng yù mua thì hoï seõ choïn löu ñôn ñaët haøng, vaø luùc naøy neáu hoï chöa Login vaøo heä thoáng thì trang Login seõ hieän ra ñeå ngöôøi duøng ñaêng nhaäp:
Login.jsp
Döõ lieäu vaøo: username, password cuûa khaùch haøng ñaêng nhaäp
Xöû lyù: kieåm tra username vaø password coù trong database hay khoâng
neáu chöa coù thì yeâu caàu nhaäp laïi.
Neáu coù roài thì cho pheùp taïo ñôn ñaët haøng.
Döõ lieäu ra: khaùch haøng ñaêng nhaäp thaønh coâng vaøo heä thoáng, löu session (MaKH), session(QuyeànÑaêngNhaäp) cuûa khaùch haøng.
Hình 5.8: Trang Login.jsp
Neáu nhö laø ngöôøi duøng môùi thì phaûi ñaêng kyù vaøo heä thoáng baèng caùch choïn muïc ñaêng kyù ôû thanh tieâu ñeà.
ÑaêngKyù.jsp:
Döõ lieäu vaøo: username, password, hoï teân, ñòa chæ, ñieän thoaïi, email..
Xöû lyù: neáu nhö username, password chöa toàn taïi trong database vaø caùc thoâng tin nhö: hoï teân, ñiaï chæ, email hôïp leä thì caäp nhaät vaøo database.
Neáu username vaø password ñaõ toàn taïi roài thì yeâu caàu choïn username khaùc.
Döõ lieäu ra: khaùch haøng ñaêng kyù ñöôïc account.
Hình 5.9: Trang DangKy.jsp
Khi ngöôøi duøng ñaêng nhaäp thaønh coâng thì seõ kieåm tra hoï coù laø khaùch quen hay khoâng (khaùch quen coù nghóa laø ñaõ mua 3 laàn trôõ leân), neáu hoï laø khaùch quen thì seõ hieãn thò taát caû 3 laàn mua gaàn nhaát ñeå hoï coù theå mua laïi nhöõng saùch ôû nhöõng laàn mua tröôùc maø khoâng caàn phaûi maát nhieàu thôøi gian.
Hình 5.10: KhachQuen.jsp
Sau khi khaùch haøng taïo ñôn ñaët haøng thì seõ hieãn thò form sau, taïi ñaây khaùch haøng coù theå choïn hình thöùc thanh toaùn laø chuyeån khoaûn hay tieàn maët.
Hình 5.11: Trang TaïoDDH.jsp
KieåmTraTaøiKhoaûn.jsp
Döõ lieäu vaøo: Hình thöùc thanh toaùn maø khaùch haøng choïn, ngaøy thanh toaùn.
Xöû lyù: + kieåm tra xem neáu hình thöùc thanh toaùn laø tieàn maët:
thì seõ löu ñôn ñaët haøng naøy vaøo database vaø heïn ngaøy giao haøng cho khaùch haøng.
+ neáu hình thöùc thanh toaùn laø chuyeån khoaûn:
yeâu caàu khaùch haøng choïn loaïi card, soá card, ngaøy heát haïn, sau ñoù gôûi ñeán ngaân haøng ñeå kieåm tra:
neáu caùc thoâng tin veà card hôïp leä: caäp nhaät ñôn ñaët haøng.
Neáu thoâng tin khoâng hôïp leä: thoâng baùo loãi.
Döõ lieäu ra: ñôn ñaët haøng cuûa khaùch haøng.
Neáu khaùch haøng choïn hình thöùc thanh toaùn laø chuyeån khoaûn thì seõ hieän form yeâu caàu khaùch haøng nhaäp vaøo maõ taøi khoaûn, loaïi taøi khoaûn, ngaøy heát haïn . . . Taïi trang naøy chuùng ta phaûi baûo maät sao cho thoâng tin khaùch haøng nhaäp vaøo seõ khoâng bò loä nhaèm baûo ñaûm an toaøn cho taøi khoaûn cuûa khaùch haøng. Sau khi khaùch haøng nhaäp ñaày ñuû moïi thoâng tin, thoâng tin khaùch haøng nhaäp vaøo seõ ñöôïc gôûi ñeán ngaân haøng ñeå xaùc nhaän. Moïi thoâng tin khaùch haøng nhaäp vaøo seõ ñöôïc maõ hoaù treân ñöôøng truyeàn sao cho hacker khoâng theå taán coâng ñöôïc.
Hình 5.12: Trang KiemTraTaiKhoan.jsp
Neáu maõ taøi khoaûn vaø loaïi taøi khoaûn hôïp leä thì moïi thoâng tin seõ ñöôïc löu vaøo database.
2-Veà Phía Ngöôøi Quaûn Trò:
Khi ngöôøi quaûn trò muoán vaøo heä thoáng ñeå quaûn trò thì hoï phaûi ñaêng nhaäp baèng username vaø password. Neáu quùa trình ñaêng nhaäp thaønh coâng thì seõ vaøo tôùi trang quaûn trò.
ÔÛ ñaây ta cuõng phaûi baûo maät sao cho thoâng tin cuûa ngöôøi quaûn trò ñaêng nhaäp nhö: username, password seõ khoâng bò loä. Chuùng ta seõ maõ hoaù moïi thoâng tin cuûa quaûn trò treân ñöôøng truyeàn.
Vaø moïi trang cuûa ngöôøi quaûn trò cuõng seõ ñöôïc baûo maät baèng session ñeå nhöõng ngöôøi khaùc khoâng theå vaøo ñöôïc khi maø hoï chöa ñaêng nhaäp ñöôïc vaøo heä thoáng.
Khi ngöôøi quaûn trò ñaõ ñaêng nhaäp thaønh coâng vaøo heä thoáng, hoï coù theå choïn caùc taùc vuï caàn quaûn lyù nhö: saùch, taùc giaû, nhaân vieân, caùc ñôn ñaët haøng, phieáu xuaát nhaäp,
Ø Ngöôøi quaûn trò coù theå choïn quaûn trò Saùch:
ViewSach.jsp:
Döõ lieäu vaøo: choïn viewSaùch.
Xöû lyù: Kieåm tra xem coù saùch naøo löu tröõ trong cô sôû döõ lieäu hay khoâng.
+ neáu khoâng coù saùch naøo: thoâng baùo.
+ neáu coù saùch: hieãn thò caùc saùch ra.
Döõ lieäu ra: baõng danh saùch caùc saùch hoaëc thoâng baùo loãi.
Hình 5.13: Trang ViewSach.jsp
Theâm Saùch, taïi ñaây ngöôøi söû duïng seõ choïn saùch caàn theâm vaø choïn hình aûnh veà saùch, sau ñoù upload:
TheâmSaùch.jsp:
Döõ lieäu vaøo: caùc thoâng tin nhö maõ saùch, teân saùch, theå loaïi, ngoân ngöõ, nhaø xuaát baûn, giaù saùch, hình aûnh.
Xöû lyù: kieåm tra xem maõ saùch naøy ñaõ toàn taïi trong cô sôû döõ lieäu hay chöa
+ neáu chöa coù:
upload saùch leân server.
Theâm saùch vaø caùc thoâng tin veà saùch vaøo cô sôû döõ lieäu.
+ neáu maõ saùch ñaõ coù trong cô sôû döõ lieäu: thoâng baùo loãi
Döõ lieäu ra: Baõng viewSaùch chöùa taát caû caùc saùch keå caû saùch môùi theâm vaøo.
Hình 5.14: Trang ThemSach.jsp
Söûa saùch: ngöôøi quaûn trò choïn saùch caàn söõa vaø nhaán söõa saùch.
Söûa Saùch.jsp:
Döõ lieäu vaøo: maõ saùch
Xöû lyù: kieåm tra caùc thoâng tin chænh söûa veà saùch coù hôïp leä hay khoâng.
- neáu coù chænh söûa hình thì upload hình leân server.
- neáu khoâng thì laáy hình cuû.
- sau ñoù caäp nhaät thoâng tin vöøa chænh söûa vaøo cô sôû döõ lieäu .
Döõ lieäu ra: Hieån thò caùc saùch, keå caû saùch vöøa theâm vaøo.
Hình 5.15: SöûaSach.jsp
Ø Ngöôøi quaûn trò coù theå choïn quaûn trò khaùch haøng:
ViewKhachHang.jsp:
Döõ lieäu vaøo: choïn viewkhachhang.
Xöû lyù: Kieåm tra xem coù saùch naøo löu tröõ trong cô sôû döõ lieäu hay khoâng.
+ neáu khoâng coù khaùch naøo: thoâng baùo.
+ neáu coù khaùch: hieãn thò caùc khaùch haøng ra.
Döõ lieäu ra: baõng danh saùch caùc khaùch haøng hoaëc thoâng baùo loãi.
Hình 5.16: Trang ViewKhachHang.jsp
TheâmKhaùchHaøng.jsp:
Döõ lieäu vaøo: caùc thoâng tin nhö maõ khaùch haøng, teân khaùch haøng, ñòa chæ,..
Xöû lyù: kieåm tra xem maõ khaùch haøng naøy ñaõ toàn taïi trong cô sôû döõ lieäu hay chöa
+ neáu chöa coù:
Theâm khaùch haøng vaø caùc thoâng tin veà khaùch haøng vaøo cô sôû döõ lieäu.
+ neáu maõ khaùch haøng ñaõ coù trong cô sôû döõ lieäu: thoâng baùo loãi
Döõ lieäu ra: Baõng viewkhaùchhaøng chöùa taát caû caùc khaùch keå caû khaùch môùi theâm vaøo.
Hình 5.17: Trang ThemKhachHang.jsp
Söûa KhaùchHaøng.jsp:
Döõ lieäu vaøo: maõ khaùch haøng
Xöû lyù: kieåm tra caùc thoâng tin chænh söûa veà khaùch haøng coù hôïp leä hay khoâng. neáu hôïp leä thì caäp nhaät vaøo cô sôû döõ lieäu .
Döõ lieäu ra: Hieån thò caùc khaùch haøng, keå caû khaùch haøng vöøa theâm vaøo.
Hình 5.18:Trang SuaKhachHang.jsp
Ø Ngöôøi quaûn trò coù theå choïn quaûn trò ñôn ñaët haøng cuûa khaùch haøng:
ViewDDH.jsp:
Döõ lieäu vaøo: choïn viewDDH.
Xöû lyù: Kieåm tra xem coù ñôn ñaët haøng naøo löu tröõ trong cô sôû döõ lieäu hay khoâng.
+ neáu khoâng coù ñôn naøo: thoâng baùo.
+ neáu coù ñôn: hieãn thò caùc ñôn ñaët haøng ra.
Döõ lieäu ra: baõng danh saùch caùc khaùch haøng hoaëc thoâng baùo loãi.
Hình 5.19: ViewDDH.jsp
Ø Ngöôøi quaûn trò coù theå choïn quaûn trò nhaân vieân, theå loaïi, ngoân ngöõ, taùc giaû, nhaø xuaát baûn,
3- Chöùc Naêng Ñoái Vôùi Nhaân Vieân Vaø Ngöôøi Quaûn Trò:
Sau khi ñaêng nhaäp thaønh coâng vôùi username vaø password thì caû NhaânVieân vaø ngöôøi quaûn trò coù theå quaûn lyù caùc chöùc naêng sau:
Ø Coù theå choïn quaûn trò phieáu thu ( laø phieáu thu tieàn cuûa caùc ñôn ñaët haøng cuûa khaùch haøng):
Theâm phieáu thu:
TheâmPhieáuThu.jsp:
Döõ lieäu vaøo: caùc thoâng tin nhö maõ phieáu thu, maõ khaùch haøng,..
Xöû lyù: kieåm tra xem maõ phieáu thu, maõ khaùch haøng naøy ñaõ toàn taïi trong cô sôû döõ lieäu hay chöa
+ neáu chöa coù:
Theâm phieáu thu vaø caùc thoâng tin veà phieáu thu vaøo cô sôû döõ lieäu.
+ neáu maõ phieáu thu ñaõ coù trong cô sôû döõ lieäu: thoâng baùo loãi
Döõ lieäu ra: Baõng viewphieáu thu chöùa taát caû caùc phieáu thu keå caû phieáu thu môùi theâm vaøo.
Hình 5.20: Trang ThemPhieuThu.jsp
Söûa Phieáu thu:
Söûa PhieáuThu.jsp:
Döõ lieäu vaøo: maõ phieáu thu
Xöû lyù: kieåm tra caùc thoâng tin chænh söûa veà phieáu thu coù hôïp leä hay khoâng. neáu hôïp leä thì caäp nhaät vaøo cô sôû döõ lieäu .
Döõ lieäu ra: Hieån thò caùc phieáu thu, keå caû phieáu thu vöøa theâm vaøo.
Hình 5.21: Trang SuaPhieuThu.jsp
Ø Coù theå choïn quaûn trò phieu xuaát (xuaát haøng töø kho):
Hình 5.22: Trang ViewPhieuXuat.jsp
Hình 5.23: Trang ThemPhieuXuat.jsp
Hình 5.24: Trang SuaPhieuXuat.jsp
Ø Coù theå choïn quaûn trò chi tieát phieáu xuaát:
Hình 5.25: Trang ViewCT_PhieuXuat.jsp
Hình 5.26: Trang ThemCT_PhieuXuat.jsp
Hình 5.27: Trang SuaCT_PhieuXuat.jsp
Ø Töông töï, coù theå choïn quaûn trò phieáu nhaäp, chi tieát phieáu nhaäp, phieáu giao, chi tieát phieáu giao, phieáu chi.
CHÖÔNG 6: BAÛO MAÄT TREÂN HEÄ THOÁNG
1- Giaûi Phaùp Veà Baûo Maät :
- Moät trong nhöõng caùch thoâng thöôøng ñeå baûo veä söï xaâm nhaäp baát hôïp phaùp töø maùy khaùch vaøo maùy chuû laø yeâu caàu phía maùy khaùch chöùng thöïc quyeàn ñaêng nhaäp cho pheùp.
- Thoâng thöôøng khi trình khaùch yeâu caàu moät taøi nguyeân naøo ñoù ñöôïc baûo veä bôûi trình chuû, trình chuû seõ traû veà yeâu caàu phía maùy khaùch hieån thò hoäp thoaïi yeâu caàu ngöôøi duøng nhaäp vaøo username vaø password. Neáu maùy khaùch nhaäp ñuùng thì trình chuû seõ cho pheùp taøi nguyeân ñöôïc söû duïng. Ngöôïc laïi, neáu nhaäp sai thì maùy khaùch seõ bò töø choái truy caäp.
- Vôùi giao thöùc HTTP vieäc göûi vaø nhaän döõ lieäu ñeå chöùng thöïc quyeàn truy caäp baèng maät maõ (ñieàu khieån bôûi trình chuû) thöôøng ñöôïc thöïc hieän theo hai caùch : caùch gôûi maät maõ giaûn ñôn (basic authentication) vaø caùch göûi maät maõ baêm (digest authentication).
+ Caùch gôûi maät maõ giaûn ñôn : ñöôïc söû duïng khaù phoå bieán treân haàu heát caùc trình chuû Web. Khi maùy khaùch yeâu caàu moät taøi nguyeân ñöôïc baûo veä, maùy chuû seõ gôûi yeâu caàu veà maùy khaùch yeâu caàu nhaäp vaøo username vaø password. Thoâng tin naøy seõ ñöôïc maõ hoùa vaø chuyeån veà maùy chuû ñoái chieáu. Neáu hôïp leä, maùy chuû seõ cho pheùp maùy khaùch ñaêng nhaäp vaøo taøi nguyeân. Vieäc maõ hoùa thoâng tin veà maät khaåu taïi maùy khaùch do browser ñaûm nhaän vaø söû duïng thuaät toaùn maõ hoùa Base64.
+ Caùch gôûi maät maõ baêm : ñöôïc phaùt trieån ñeå khaùc phuïc ñieåm yeáu cuûa caùch gôûi maät maõ giaûn ñôn. Vôùi caùch naøy, maät maõ do ngöôøi duøng nhaäp vaøo khoâng caàn phaûi chuyeån ñi treân maïng (do ñoù haïn cheá ñöôïc khaû naêng maät khaåu bò ñaùnh caép). Khi maùy khaùch yeâu caàu taøi nguyeân ñöôïc baûo veä baèng maùy chuû, maùy chuû seõ tính toaùn moät maõ soá ñaëc bieät vaø traû veà maùy khaùch, yeâu caàu ngöôøi duøng nhaäp vaøo username vaø password. Maät khaåu nhaäp vaøo seõ ñöôïc trình khaùch (thöôøng laø browser) tính toaùn keát hôïp vôùi maõ soá cuûa trình chuû theo moät thuaät toaùn ñaëc bieät ñeå sinh ra moät maõ soá khaùc. Maõ soá do maùy khaùch sinh ra ñöôïc gôûi ngöôïc veà trình chuû. Maùy chuû tính toaùn maõ soá do trình khaùch gôûi traû theo thuaät toaùn baêm ñeán ñuùng vò trí chöùa password do maùy chuû löu giöõ. Cô cheá naøy khoâng baûo ñaûm 100% an toaøn trong quaù trình trao ñoåi veà thoâng tin chöùng thöïc quyeàn truy caäp giöõa client/server. Tuy nhieân noù toát hôn caùch gôûi maät maõ giaûn ñôn.
- Tuy nhieân, ñieàu ñaùng quan taâm ñoù laø döõ lieäu truyeàn theo thöùc HTTP khoâng ñöôïc baûo veä trong quaù trình chuyeån töø maùy khaùch leân maùy chuû. Hai kyõ thuaät treân chæ ñeà caäp maõ hoùa password vaø giaûi maõ password ôû ñaàu gôûi vaø ñaàu nhaän, coøn giao thöùc truyeàn vaãn laø HTTP. Coù moät giaûi phaùp khaùc ñoù laø thay giao thöùc truyeàn HTTP baèng moät giao thöùc truyeàn baûo maät hôn, ñoù laø giao thöùc môû roäng HTTPS (HTTP Security). Giao thöùc HTTPS cuõng döïa treân HTTP nhöng söû duïng kyõ thuaät maõ hoùa döõ lieäu ôû taàng Socket tröôùc khi gôûi ñi (taàng naøy coøn ñöôïc goïi laø Security Socket Layer hay SSL). Döõ lieäu treân ñöôøng truyeàn cho duø coù bò ñoïc ñöôïc nhöng cuõng khoù coù theå giaûi maõ. Treân maùy chuû baïn phaûi chaïy theâm dòch vuï HTTPS duøng ñeå tieáp nhaän vaø giaûi maõ. Döõ lieäu chuyeån töø maùy chuû veà maùy khaùch theo giao thöùc HTTPS cuõng seõ ñöôïc maõ hoùa.
- J2EE 1.3.1 hoã trôï dòch vuï HTTPS chaïy treân coång 7000.
2- Giôùi Thieäu Veà SSL (Secure Sockets Layer protocol) :
- SSL ñöôïc phaùt trieån töø Haõng Netscape vaø ñöôïc chaáp nhaän khaép theá giôùi trong vieäc xaùc nhaän vaø maõ hoùa truyeàn thoâng giöõa client vaø server.
- The Transmission Control Protocol/Internet Protocol (TCP/IP) chi phoái vieäc chuyeån taûi vaø ñònh höôùng döõ lieäu treân Internet. Caùc giao thöùc khaùc nhö : HTTP, LDAP, IMAP chaïy ôû taàng treân TCP/IP coù caûm giaùc nhö laø taát caû caùc giao thöùc naøy söû duïng TCP/IP ñeå hoå trôï nhöõng taùc vuï öùng duïng nhö : hieån thò trang Web, chaïy caùc mail server
Hình 6.1 : Moâ hình caùc lôùp
- Giao thöùc SSL chaïy ôû treân TCP/IP vaø döôùi caùc giao thöùc ôû möùc cao hôn nhö HTTP IMAP SSL söû duïng TCP/IP thay cho caùc giao thöùc ôû möùc cao hôn, vaø trong quaù trình xöû lí cho pheùp server coù theå chöùng thöïc client (caû client vaø server ñeàu coù hoå trôï SSL), cho pheùp client chöùng thöïc vôùi server, vaø cho pheùp caû nhöõng maùy ñeå thieát laäp moät keát noái ñaõ ñöôïc maõ hoùa.
- Giao thöùc SSL bao goàm hai giao thöùc con : SSL record protocol vaø SSL handshake protocol. Giao thöùc SSL record ñònh nghóa caùc ñònh daïng ñöôïc söû duïng ñeå truyeàn döõ lieäu. Coøn giao thöùc SSL handshake bao goàm vieäc söû duïng giao thöùc SSL record ñeå thay ñoåi moät loaït caùc thoâng ñieäp giöõa server vaø client khi chuùng thieát laäp keát noái SSL laàn ñaàu tieân.
- Vieäc thay ñoåi caùc thoâng ñieäp naøy ñöôïc thieát keá thuaän tieän cho caùc coâng vieäc sau :
+ Chöùng thöïc server ñoái vôùi client.
+ Cho pheùp client vaø server choïn nhöõng thuaät toaùn maõ hoùa.
+ Chöùng thöïc coù choïn löïa cuûa client ñoái vôùi server.
+ Söû duïng nhöõng kyõ thuaät maõ hoùa khoùa coâng coäng ñeå taïo nhöõng ñieàu bí maät ñöôïc chia seõ.
+ Thieát laäp moät keát noái SSL ñöôïc maõ hoùa.
3- Keytool :
- Keytool laø moät coâng cuï khoùa baûo maät cuûa Java. Noù taïo ra vaø quaûn lí caùc khoùa coâng coäng, rieâng tö vaø xaùc nhaän quyeàn baûo maät. Noù coøn laøm caùc coâng vieäc sau :
+ Quaûn lyù caùc caëp khoùa coâng coäng vaø rieâng tö cuûa baïn.
+ Löu tröõ caùc khoùa coâng coäng.
+ Söû duïng chöùng thöïc ñeå xaùc nhaän nhöõng ngöôøi khaùc.
+ Xaùc nhaän döõ lieäu nguoàn.
- Taát caû caùc thoâng tin maø keytool quaûn lyù ñöôïc löu tröõ trong moät cô sôû döõ lieäu ñöôïc goïi laø “keystore”. Sun coù moät keystore maëc ñònh söû duïng moät ñònh daïng môùi ñöôïc goïi laø “JKS” (Java Key Store).
- Taïo moät chöùng nhaän phía Server :
keytool –genkey –alias “server” –keystore “keystore.jks”
- Baïn seõ nhaäp moät loaït caùc thoâng nhö : keystore password, first and last name, your organization unit,
Hình 6.2 :Taïo caëp khoùa phía server.
- Xuaát chöùng nhaän server thaønh moät file chöùng nhaän ñeå nhaäp vaøo realmtool.
keytool –keystore keystore.jks –export –alias “server” –file “keystore.cer”
- Nhaäp chöùng nhaän server môùi thaønh file cacerts.jks coù quyeàn chöùng thöïc bôõi moät toå chöùc naøo ñoù (Certifycate Authority : CA )
keytool – import –alias “serverCA” –keystore “cacerts.jks” – file “keystore.cer “
- Taïo moät chöùng nhaän phía Client : töông töï Server
keytool –genkey –alias “client” –keystore “clientkeystore.jks”
- Baïn seõ nhaäp moät loaït caùc thoâng nhö : keystore password, first and last name, your organization unit,
- Xuaát chöùng thöïc Client môùi töø keystore vaøo moät file chöùng thöïc :
keytool –keystore “clientkeystore.jks” –export –alias client –file “cliencert.cer”.
- Nhaäp chöùng nhaän client môùi thaønh file cacerts.jks coù quyeàn chöùng thöïc bôõi moät toå chöùc naøo ñoù (Certifycate Authority : CA ). Ñieàu naøy cho pheùp server xaùc nhaän ñuùng laø client.
keytool – import –alias “j2eeCA” –keystore “cacerts.jks” – file “clinetkeystore.cer “
- Nhaäp chöùng thöïc client vaøo realm (Nhaäp caùc file chöùng thöïc ) :
realmtool –import “clinetkeystore.cer”
- Ñeå kieåm tra noäi dung chöùng thöïc cuûa server :
keytool –list –keystore keystore.jks –alias sever –v
- Ñeå kieåm tra noäi dung chöùng thöïc cuûa client :
keytool –list –keystore cacerts.jks
- Khi chuùng ta truy xuaát taøi nguyeân theo giao thöùc HTTPS thì chuùng ta seõ ñöôïc phía server traû veà thoâng baùo sau :
Hình 6.3 : Thoâng baùo baûo maät cuûa server traû veø cho client
- Khi chuùng ta choïn View Certificate, thi seõ ra hình sau :
Hình 6.4 : Thoâng tin chöùng thöïc phía server.
- Neáu chuùng ta khoâng muoán hieän thoâng baùo cuûa hình P1.13 khi truy xuaát taøi nguyeân theo giao thöùc HTTPS thì chuùng ta choïn Install Certificate trong hình 4. Laøm theo moät loaït höôùng daãn cho ñeán khi xuaát hieän hình sau :
Hình 6.5 : Löu tröõ chöùng thöïc phía server.
- Choïn Yes ñeå keát thuùc quaù trình Install.
CHÖÔNG 7: KEÁT LUAÄN
1- Caùc Keát Quûa Ñaït Ñöôïc:
Treân cô sôû caùc coâng vieäc ñaõ thöïc hieän ñöôïc, chöông trình ñaõ ñaùp öùng cô baûn caùc chöùc naêng caàn thieát ñoái vôùi khaùch haøng vaø ngöôøi quaûn trò,g nhö nhaân vieân nhö :
v Ñoái vôùi Khaùch haøng :
Heä thoáng coù theå giuùp khaùch haøng tìm kieám saùch nhanh choùng.
Heä thoáng coù khaû naêng thanh toaùn tröïc tuyeán qua maïng.
Heä thoáng coù khaû naêng löu laïi phieân laøm vieäc tröôùc ñoù cuûa khaùch haøng (neáu laø khaùch quen), ñeå laàn sau khi khaùch haøng vaøo mua seõ ñôõ maát coâng choïn löïa laïi nhöõng maët haøng thöôøng mua.
Heä thoáng coù khaû naêng baûo maät thoâng tin veà taøi khaûn cuûa khaùch haøng baèng caùch maõ hoaù caùc thoâng tin naøy treân ñöôøng truyeàn.
v Ñoái vôùi Ngöôøi quaûn trò vaø nhaân vieân:
Heä thoáng coù theå giuùp ngöôøi quaûn trò, nhaân vieân caäp nhaät thoâng tin nhanh choùng.
Heä thoáng coù khaû naêng baûo maät döïa vaøo session, ñeå ngöôøi khaùc khoâng theå vaøo heä thoáng ñeå truy caäp cô sôõ döõ lieäu.
Baûo maät baèng caùch maõ hoaù thoâng tin treân ñöôøng truyeàn, ñeå username vaø password cuûa ngöôøi quaûn trò vaø nhaân vieân khoâng bò loä.
2- Haïn cheá:
Trong quaù trình khaûo saùt vaø löïa choïn giaûi phaùp, chuùng em gaëp moät soá khoù khaên vaø haïn cheá sau:
Vôùi thôøi gian coù haïn, chuùng em khoâng theå khaûo saùt heát nhöõng tính naêng cuï theå cuûa töøng coâng ngheä.
Caùc coâng ngheä maø Java cung caáp tuy maïnh, hieäu quaû nhöng coøn khaù môùi meû. Trong thôøi gian cho pheùp ñeå laøm moät luaän vaên toát nghieäp, chuùng em khoâng theå nghieân cöùu heát caùc coâng ngheä .
Vieäc baûo maät laø moät vaán ñeà quan troïng trong Thöông maïi Ñieän töû . Heä thoáng thöông maïi treân maïng, coù 3 nôi caàn baûo maät : phía khaùch haøng, phía nhaø quaûn trò, vaø treân ñöôøng truyeàn. Tuy nhieân trong heä thoáng vieäc baûo maät chöa phaûi laø tuyeät ñoái.
3- Höôùng phaùt trieån :
Töø nhöõng haïn cheá neâu treân , chuùng em ñeà ra nhöõng höôùng phaùt trieån trong töông lai nhö sau:
Chuùng em seõ coá gaéng xaây döïng heä thoáng baûo maät treân ñöôøng truyeàn toát hôn.
Xaây döïng cho heä thoáng caùc hoã trôï höôùng daãn söû duïng cho ngöôøi duøng cuoái cuõng nhö caùc taøi lieäu kyõ thuaät cho caùc nhaø phaùt trieån.
Phieân baûn tieáp theo seõ hoã trôï nhieàu ngoân ngöõ hôn.
Xaây döïng heä thoáng baûo maät toát hôn treân ñöôøng truyeàn.