1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng - giáo án: Bài giảng Java Chương 5 bảo mật trong java

20 799 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 279 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tổng quan về bảo mật trong Javachương trình tương tác thông qua World Wide Web thống của người dùng, thay vì chạy trên máy chủ Web Web server tới việc sửa đổi hoặc đọc các dữ liệu nhạy c

Trang 1

LẬP TRÌNH JAVA NÂNG CAO

Bộ môn: Lập trình máy tính

Trang 2

Nội dung chương 05

Trang 3

Tổng quan về bảo mật trong Java

chương trình tương tác thông qua World

Wide Web

thống của người dùng, thay vì chạy trên máy chủ Web (Web server)

tới việc sửa đổi hoặc đọc các dữ liệu nhạy

cảm trên máy người sử dụng Applet

Trang 4

Công cụ JAR

Công dụng: Tạo file lưu trữ jar, chứa nhiều file trong một file

lưu trữ (.jar), cho phép tải về trình duyệt một cách hiệu quả

Cú pháp: jar [options][manifest] jar-file input-file(s)

c Tạo ra một file jar mới

t Liệt kê nội dung của file jar

x Trích dẫn file có tên từ file jar

v Tạo đầu ra chi tiết (verbose output) trên dòng lỗi chuẩn

f Xác định tên file jar

m Bao hàm thông tin chứng thực từ các file chứng thực xác định.

o Chỉ lưu trữ, không nén

M Không tạo các file chứng thực cho các mục (entries).

Trang 5

Gộp file lưu trữ vào Applet

=’tenfileluutru.jar’ vào thẻ applet, như sau:

<applet code=”tenApplet.class”

ARRCHIVE=”tenfileluutru.jar” height=125

width=350></applet>

‘tenfileluutru.jar’ để tìm file

‘tenApplet.class’

Trang 6

Bảo mật Applet

ngữ, không hỗ trợ một số thao tác sau:

– Đọc và ghi file từ hệ thống, nơi applet đang

chạy.

– Lấy thông tin từ file của hệ thống

– Xoá file của hệ thống

 Java 2 có thể thực hiện tất cả các thao tác

trên, với các Applet được cung cấp từ nhà cung cấp applet tin cậy, và có ký chữ ký điện

tử (digitally signed)

Trang 7

Mã hoá sử dụng khoá công khai

Trang 8

Chữ ký điện tử

 Là một file, một đối tượng, hoặc một thông báo được

mã hoá đi cùng với chương trình

 Giúp nhận dạng chính xác nguồn gốc của file

 Một khóa riêng (private key) được sử dụng để mã

hóa, khoá công khai (public keys) được sử dụng để giải mã.

 Người ký dùng thuật toán Message Digest (như MD5) để tính giá trị digest của đối tượng.

 Digest sau đó được mã hoá dùng khóa riêng, để tạo ra chử

ký điện tử của đối tượng

 Khoá công khai được sử dụng để giải mã và kiểm tra.

 Tài liệu mô tả chữ ký được gọi là “Chứng thực”

(Certificate)

Trang 9

Khoá bảo mật Java

 Tạo 3 công cụ là ‘jar’, ‘jarsigner’, và

‘keytool’, trước khi dùng các applet được ký

khoá, chứa các chứng thực số dùng để nhận dạng các giá trị khoá công khai

Trang 10

các chứng thực bảo mật

keystore

– Quản lý cặp khoá public/private.

– Lưu trữ các khoá công khai

– Dùng các chứng thực để xác thực chứng thực khác – Xác thực (Authenticate) dữ liệu nguồn

Trang 11

Keytool (tt)

chưa, thực hiện câu lệnh sau:

keytool –list

JDK tìm keystore trong file ‘try’ của thư mục

‘try’:

keytool –list keystore c:\java\try

khoá public/private:

keytool –genkey –alias “I”

Trang 12

Keytool (tt)

 Nhập mật khẩu (password) cho keystore:

Enter keystore password:

 Nhập các thông tin bổ sung:

What is your first and last name? [unknown]

what is the name of your organization unit? [unknown] What is the name of your organization? [Unknown]

What is the name of your city or Locality? [Unknown] What is the name of your State or Province? [Unknown] What is the two-letter country code for this unit?

[Unknown]

Trang 13

Keytool (tt)

 Nhập mật khẩu cho khoá riêng:

Enter key password for <I>

(RETURN if same as keystore password):

 Mật khẩu sau cùng phần biệt với mật khẩu keystore,

được dùng để truy cập khoá riêng của cặp khoá.

 Chỉ rõ bằng cách sử dụng tuỳ chọn ‘-keypass’, nếu

không, mật khẩu keystore sẽ được sử dụng.

 Tuỳ chọn ‘-keypasswd’ được dùng để thay đổi mật khẩu

 Tuỳ chọn ‘-keyalg’ chỉ rõ thuật toán tạo cặp khoá

 Xoá cặp khoá từ cơ sớ liệu, dùng lệnh sau:

keytool –delete –alias aliasName

Trang 14

 Được sử dụng để ký một file JAR

 Cú pháp:

jarsigner –keystore keyStore –storepass storePassword – keypass keyPassword JARFileNames Alias

Tuỳ chọn Mô tả

keyStore Tên keystore sử dụng

storePassword Mật khẩu keystore

keyPassword Mật khẩu khoá riêng

JARFileName Tên của file JAR được ký danh

Alias Bí danh của bộ ký danh

Trang 16

Xuất chữ ký điện tử

trị các khoá công khai Ví dụ chứng nhận

X.509 của tổ chức International Standards

Organization, được hỗ trợ bởi keytool

keytool –keystore store –alias mykey –certreq – file mykey.txt

keytool –export –keystore store –alias pk –file mykey

Trang 17

Nhập chữ ký điện tử

dụng câu lệnh sau:

keytool -import –keytool keystore –alias alias – file filename

 Ví dụ, câu lệnh sau chỉ tên bí danh là ‘alice’ để nhập chứng nhận trong file ‘mykey’ vào

keystore ‘MyStore’:

keytool –import –keystore MyStore –alias alice – file mykey

Trang 18

Các gói bảo mật của Java

 java.security: Là gói API bảo mật chính, chứa các lớp và giao diện hỗ trợ mã hoá, digest và chữ ký điện tử

 java.security.acl: Chứa các giao diện dùng để cài đặt các chính sách điều khiển truy cập

 java.security.cert: Cung cấp sự hổ trợ cho chứng nhận X.509

 java.security.interfaces: Định nghĩa các giao diện truy cập Digital Signature Algorithm

 java.security.spec: Cung cấp các lớp độc lập và phụ thuộc vào thuật toán mã hoá sử dụng khoá

Trang 19

Các gói bảo mật của Java (tiếp)

hiển thị dữ liệu tĩnh, mà nhu cầu kết nối và thao tác với cơ sở dữ liệu ngày càng cao

Một trong những cách dùng để tổ chức cấu trúc website thường sử dụng nhất là mô

hình MVC, và Zend là một framework hỗ trợ mạnh cho mô hình này

Trang 20

Bài tập

Language)

Ngày đăng: 17/04/2014, 11:50

TỪ KHÓA LIÊN QUAN

w