Thông tin tài liệu:
Trong phần này, chúng ta sẽ tìm hiểu chi tiết về bảo mật Java applet. Chúng ta cũng thảoluận về mô hình bảo mật JDK 1.2 đáp ứng nhu cầu người dùng và người phát triển phầmmềm.Java là một ngôn ngữ lập trình đầu tiên gởi các chương trình tương tác như văn bản, ảnhvà các thông tin tĩnh thông qua World Wide Web. Các chương trình này, không giống nhưchương trình CGI, nó được chạy trên hệ thống của người dùng, thay vì chạy trên máy chủWeb (Web server). Bảo mật Java Applet là sự quan tâm chính giữa...
Nội dung trích xuất từ tài liệu:
CoreJava 10: CÀI ĐẶT BẢO MẬTChương10 CÀIĐẶTBẢOMẬTMụctiêubàihọc: Cuốichươngnàybạncóthể: MôtảvềcôngcụJAR TạovàxemmộtfileJAR,liệtkêvàtríchrútnộidungcủanó. Sửdụngchữkýđiệntử(DigitalSignatures)đểnhậndạngApplets Tạobộcôngcụkhóabảomật(Securitykey) Làmviệcvớichứngchỉsố(DigitalCertificate) TìmhiểuvềgóiJava.security10.1GiớithiệuTrongphầnnày,chúngtasẽtìmhiểuchitiếtvềbảomậtJavaapplet.ChúngtacũngthảoluậnvềmôhìnhbảomậtJDK1.2đápứngnhucầungườidùngvàngườipháttriểnphầmmềm.Javalàmộtngônngữlậptrìnhđầutiêngởicácchươngtrìnhtươngtácnhưvănbản,ảnhvàcácthôngtintĩnhthôngquaWorldWideWeb.Cácchươngtrìnhnày,khônggiốngnhưchươngtrìnhCGI,nóđượcchạytrênhệthốngcủangườidùng,thayvìchạytrênmáychủWeb(Webserver).BảomậtJavaAppletlàsựquantâmchínhgiữangườidùngvànhàpháttriểnapplet.Thiếutínhbảomậttrongappletcóthểdẫntớiviệcsửađổihoặcđọccácdữliệunhạycảmtrênmáyngườisửdungapplet.MôhìnhbảomậtcủaJava2,hoặcJDK1.2rấthữuíchchongườidùng,cũngnhưchonhàpháttriển.Nógiúpngườidùngduytrìmứcđộbảomậtcao.Trongchươngnay,chúngtasẽhọcmôhìnhbảomậtJDK1.2.10.2CôngcụJARMộtfileJARlàmộtfilelưutrữđượcnéndocôngcụ(jar.exe)củaJavatạora.NótươngtựnhưchươngtrìnhPKZIP.Nóchứanhiềufiletrongmộtfilelưutrữ(.jar).Điềunàychophéptảivềtrìnhduyệthiệuquả.Dùngmộtjarvớiappletcảithiệnđángkểhiệunăngthựchiệncủatrìnhduyệt.Vìtấccảcáctấtcảcácfileđượcbiêndịchvàđểtrongmộtfileduynhất,trìnhduyệtchỉcầnthiếtlậpkếtnốiHTTPvớiwebserver.Nénfilegiảm50%thờigiantảifile.ĐểkhởiđộngcôngcụJAR,dùngcâulệnhsautạidấunhắclệnh: jar[options][manifest]jarfileinputfile(s)Cài đặt bảo mật (Security Implementation) 233 Tuỳchọn Môtả c Tạoramộtfilejarmới t Liệtkênộidungcủafilejar x Tríchdẫnfilecótêntừfilejar v Tạođầurachitiết(verboseoutput)trêndònglỗichuẩn f Xácđịnhtênfilejar m Baohàmthôngtinchứngthựctừcácfilechứngthựcxácđịnh. o Chỉlưutrữ,khôngnén M Khôngtạocácfilechứngthựcchocácmục(entries). Bảng10.1CôngcụjarMộtfilechứngthựcchứathôngvềcácfilelưutrữ.Filenàylàmộttuỳchọn.ThậmchífilekhôngxácđịnhthìJARcũngtựđộngtạora.Filejarđượcdùngnhưcáclưutrữ.Filenàyphảicóphầnmởrộnglà‘.jar’đượcxácđịnhtạidònglệnh.Fileđầuvào(inputfile)làdanhsáchfilephâncáchbởdấuphẩy.NetscapeNavigatorvàInternetExplorerhỗtrợfileJAR.Câulệnhsaulưutrữtấtcảcácfileclassvàfilejavabaogồmtrongmộtthưmụchiệnhànhvàomộtfilejargọilà‘pack’ jarcfpack.jar*.class*.java Lệnhjar Tạomộtlưutrữmới Xác định lưu trữ Cácfileđượclưutrữ Tênfile Hình10.1lệnhjarDùnglệnhsautạidấunhắcliệtkêcácfiletrongfile‘pack.jar’ jartfpack.jar Tuỳ chọn này được sử dụng cho bảng nội dung lưu trữ Tuỳchọnxácđịnhtênfilelưutrữ Hình10.2Liệtkêcácfiletrongfilepack.jarĐểgộpfilelưutrữ‘pack.jarvàotrongmộtapplet,mởtrangHTML,vàthêmthuộctínhARCHIVE=’pack.jar’vàothẻapplet,nhưsau:234 Core JavaThuộctínhsẽchỉchotrìnhduyệtnạplưutrữ‘pack.jar’đểtìmfile‘exr7.class’Câulệnhsautríchrútcácfileđượcnéntrongfilepack.jar: jarxvfpack.jarMụcchọn‘x’chophépbạntríchrútnộidungcủafile.10.3Chữkýđiệntử(DigitalSignature)đểđịnhdanhcácappletTrongjava,bảomậtapplettrênweblàphầnrấtquantrọng.Hackercóthểviếtcácappletnguyhiểmxuyênthủnghàngràobảomật.Vìthế,applethạnchếsựcanthiệpcủacácngônngữ.Appletkhônghỗtrợmộtsốthaotácsau: Đọcvàghifiletừhệthốngnơiappletđangchạy. Lấythôngtintừfilecủahệthống Xoáfilecủahệthống.Java2cóthểthựchiệntấtcảcácthaotáctrên,vớicácappletcungcấptừmộtnhàcungcấpapplettincậy ...