ebook13-4

Similar documents
Acrobat Distiller, Job 3

epub 61-2

ebook37-4

ebook60-13

Basic System Administration

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

中華電信憑證總管理中心憑證實務作業基準


ebook37-11

附录J:Eclipse教程

ebook140-8

SCRATCH 速成法

範本檔

版 本 # 日 期 ThingWorx 版 本 改 变 所 有 者 DeAnna Robear Veronica MIHAI 使 用 you 而 不 是 we, 添 加 版 权 和 封 面 页, Veronica

2 第 章 绪 论 Internet 2.0 使 得 消 费 型 电 子 产 品 用 户 可 以 通 过 多 种 不 同 的 数 据 网 络 访 问 互 联 网 内 容 用 户 可 以 使 用 便 携 式 消 费 型 电 子 设 备, 如 智 能 手 机 触 屏 平 板 电 脑 电 子 书, 甚 至

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

Sun Fire V440 Server Administration Guide - zh_TW

Microsoft PowerPoint - 第一讲 概论.ppt

電機工程系認可證照清單 /7/1

ebook62-1

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

藍牙網路在資訊家電的應用

ebook35-2

目 錄 壹 青 輔 會 結 案 附 件 貳 活 動 計 劃 書 參 執 行 內 容 一 教 學 內 容 二 與 當 地 教 師 教 學 交 流 三 服 務 執 行 進 度 肆 執 行 成 效 一 教 學 課 程 二 與 當 地 教 師 教 學 交 流 三 服 務 滿 意 度 調 查 伍 服 務 檢

ebook204-2

ebook 178-3

标题

物業管理示範手冊_出版稿_.doc


第1章 QBASIC语言概述

, 即 使 是 在 昏 暗 的 灯 光 下, 她 仍 然 可 以 那 么 耀 眼 我 没 有 地 方 去, 你 会 带 着 我 么 杜 晗 像 是 在 嘲 笑 一 般, 嘴 角 的 一 抹 冷 笑 有 着 不 适 合 这 个 年 龄 的 冷 酷 和 无 情, 看 着 江 华 的 眼 神 毫 无 温

CH01.indd

Microsoft Word - OPIGIMAC 譯本.doc

子 衛 生 局 沒 錯, 這 部 分 的 範 圍 很 大, 難 免 有 些 漏 洞, 我 們 已 盡 最 大 的 努 力 在 做 我 前 面 擺 了 這 麼 多 東 西, 局 長 一 看 應 該 也 就 知 道 我 要 問 食 品 衛 生 的 問 題 依 食 品 衛 生 的 相 關 法 令, 食 品

记 忆 155 期 北 京 大 学 文 革 专 辑 (9) 目 录 专 稿 章 铎 从 高 云 鹏 的 遭 遇, 看 迟 群 之 流 的 专 制 附 : 高 云 鹏 给 胡 宗 式 章 铎 的 信 (2015 年 11 月 19 日 ) 评 论 马 云 龙 王 复 兴 抢 救 记 忆 : 一 个 北


标题

Microsoft Word - media-tips-zh.doc

A 单 位 负 责 人 B 会 计 机 构 负 责 人 C 会 计 主 管 人 员 D 会 计 人 员 多 选 题 : 1. 单 位 伪 造 变 造 会 计 凭 证 会 计 账 簿, 编 制 虚 假 财 务 会 计 报 告 的, 县 级 以 上 人 民 政 府 财 政 部 可 以 依 法 行 使 的

第一章

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

Microsoft Word - Functional_Notes_3.90_CN.doc

f2.eps

Microsoft Word - Front cover_white.doc

Microsoft Word doc

ebook62-8

2014年大学生村官考试公共基础知识:社会革命和社会改革

1. 访 问 最 新 发 行 公 告 信 息 jconnect for JDBC 访 问 最 新 发 行 公 告 信 息 最 新 版 本 的 发 行 公 告 可 以 从 网 上 获 得 若 要 查 找 在 本 产 品 发 布 后 增 加 的 重 要 产 品 或 文 档 信 息, 请 访

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

AXIS P7224 Video Encoder Blade – Installation Guide

國際認證介紹.PPT

Data Server_new_.doc

Microsoft Word - linux命令及建议.doc

Microsoft Word - 連啟元.doc

教 务 信 息 教 学 日 常 运 行 工 作 4 月 6 日, 教 务 部 高 丽 琴 老 师 参 加 南 昌 市 教 育 局 2016 年 中 小 学 教 师 资 格 认 定 工 作 培 训 会 2016 年 教 师 资 格 认 定 工 作 是 从 省 考 向 国 考 过 渡 后 的 第 一 次

计算机网络与经济(二).doc

Microsoft PowerPoint ?????????3 [Compatibility Mode]

ext-web-auth-wlc.pdf

自动化接口

ebook

Microsoft Word - RAP CHI.doc

目 錄 版 次 變 更 記 錄... 2 原 始 程 式 碼 類 型 之 使 用 手 冊... 3 一 安 裝 軟 體 套 件 事 前 準 備... 3 二 編 譯 流 程 說 明

文 档 修 改 记 录 文 档 编 号 版 本 号 拟 制 人 / 修 改 人 拟 制 / 修 改 日 期 郁 勇 嘉 2012/12/25 初 稿 更 改 理 由 主 要 更 改 内 容 ( 写 要 点 即 可 ) 版 权 所 有, 侵 权 必 究 本 资 料 版 权 属 烽 火 通

硕士论文正文

Transcription:

4 J D K 1. 2 J a v a, I n t e r n e t J D K 1. 2 J V M 1. 2, J D K Java applet Java IE Navigator JVM Java 4.1 JDK1.2 Wi n 32 ( M S - Wi n d o w s Windows NT) Sun Solaris J D K 1. 2 h t t p :// j a v a. s u n. c o m / p r o d u c t s / j d k / 1. 2 /. Sun Microsystem J a v a, S o l a r i s Sun Sparc (1) We b S o l a r i s J D K 1. 2, j d k 12 - s o l a r i s 2 - s p a r c. s h (2), %chmod a+x jdk12-solaris2-sparc.sh %. / j d k 1 2 - s o l a r i s 2 - s p a r c. s h./ j d k 1. 2 / b i n (3)./ j d k 1. 2 / b i n %set path=($path./jdk1.2/bin) (4) UNIX J D K, : %set path=(./jdk1.2/bin $path) : %which java. / j d k 1. 2 / b i n / j a v a % (5), a p p l e t v i e w e r a p p l e t : %appletviewer http://java.sun.com/applets/other/tumblingduke/index.html 2 : %java Test Hello a p p l e t v i e w e r, J D K 1. 1 x p o l i c y t o o l ( ) J D K 1. 2, k e y t o o l, S o l a r i s M S - Wi n d o w s

4 71 J D K 1. 2, J D K 1. 2, J A R, A c c e s s C o n t r o l l e r, d o P r i v i l e g e 4.2, a p p l e t, J V M J D K 1. 2, a p p l e t a p p l e t, J a v a J D K 1. 2 A P I J a v a A P I, J D K J D K 4.2.1 P o l i c y P o l i c J D K 1. 2 p o l i c y t o o l p o l i c y t o o l < j a v a. h o m e > / l i b / s e c u r i t y / j a v a. p o l i c y j a v a. h o m e J D K : < u s e r. h o m e > /. j a v a. p o l i c y < u s e r. h o m e > P o l i c y g e t P e r m i s s i o n r e f r e s h P o l i c y P o l i c y < j a v a. h o m e > / l i b / s e c u r i t y / j a v a. s e c u r i t y p o l i c y. u r l. n p o l i c y. u r l. 1 = $ { j a v a. h o m e } / l i b / s e c u r i t y / j a v a. p o l i c y p o l i c y. u r l. 2 = $ { u s e r. h o m e } /. j a v a. p o l i c y $ { j a v a. h o m e }, U R L

72 Java 2 API P o l i c y u r l. n n n 1 p o l i c y p o l i c y. u r l. 1 p o l i c y. u r l. 2 p o l i c y. u r l. 1 p o l i c y. u r l. 3 p o l i c y. u r l. 2 p o l i c y. u r l. 3 4.2.2 a p p l e t - D j a v a. s e c u r i t y. p o l i c y j a v a. s e c u r i t y. p o l i c y : java-djava.security.manager-djava.security.policy=someurl someapp S o m e U R L U R, - D j a v a. s e c u r i t y. m a n a g e r, S o m e A p p, ( = = ) java -Djava.security.manager -Djava.security.policy==someURL someapp s o m e U R L : a p p l e t v i e w e r a p p l e t - D j a v a. s e c u r i t y. p o l i c y appletviewer -Djava.security.policy=someURL someapplet p o l i c y. a l l o w S y s t e m P r o p e r t y f a l s e, D j a v a. s e c u r i t y. p o l i c y j a v a a p p l e t v i e w e r, t r u e 4.2.3 Policy P o l i c y g e t P e r m i s s i o n ( ) J D K P o l i c y p o l i c y. p r o v i d e r j a v a. s e c u r i t y, : p o l i c y. p r o v i d e r = P o l i c y C l a s s N a m e : p o l i c y. p r o v i d e r = s u n. s e c u r i t y. p r o v i d e r. P o l i c y F i l e P o l i c y p o l i c y. p r o v i d e = c o m. m y c o m. M y P o l i c y P o l i c y,, Policy File P o l i c y P o l i c y com. sun. security. M y P o l i c y C l a s s 4.2.4 J D K (

4 73 ) a p p l e t ( ) P o l i c y g r a n t k e y s t o r e ( k e y s t o r e ) X. 509 J D K 1. 2 X. 509 4. 4 k e y t o o l keystore "some-keystore-url" " k e y s t o r e - t y p e " " s o m e - k e y s t o r e - u r l " U R L " k e y s t o r e - t y p e " p o l i c y. u r l. 1 = h t t p : / / f o o. b a r. c o m / f u m / s o m e. p o l i c y " k e y s t o r e " h t t p / / f o o. b a r. c o m / f u m /. k e y s t o r e U R L, keystore //http://foo.bar.com/fum/.keystore". J D K 1. 2 J K S ( C o d e S o u r e ) a p p l e t U R L C o d e S o u r e C o d e S o u r e g r a n t g r a n grant signedby"signer-name" codebase "URL"{ permission permission-class-name "target-name" " a c t i o n "... signedby "signer-names" permission permission-class-name "target-name"," action", } signedby "signer-names" g r a n t s i g n e d B y c o d e B a s e / C o d e S o u r c e C o d e S o u r c e

74 Java 2 API s i g n e d B y, ( ), " A d a m, E v e, C h a r l e s " A d a m E v e C h a r l e s c o d e B a s e B N F c o d e B a s e U R L / ( \ ) M S - Wi n d o w s M S - Wi n d o w s C :" s o m e p a t h " a p p " c o d e B a s e grant codebase "file:/c:/somepath/api/"{... } P e r m i s s i o n P e r m i s s i o n - c l a s s - n a m e j a v a. i o. F i l e P e r m i s s i o n java.lang.runtime Permission r e a d, w r i t e, a c c e s s, java. io. F i l e P e r m i s s i o n ( ), j a v a. l a n g. R u n t i m e P e r m i s s i o n p e r m i s s i o n - c l a s s - n a m e " t a rg e - n a m e " s i g n e d B y / P e r m i s s i o n g r a n t { } permission Foo"foobar",signedBy"FooSoft" F o o. c l a s s F o o S o f t F o o. c l a s s F o o j a v a c o m. a b c. T V P e r m i s s i o n J A R

4 75 c o m. a b c. T V P e r m i s s i o n We b P e r m i s s i o n ( p e r m i s s i o n p e r m i s s i o n - c l a s s - n a m e " t a r g e t - n a m e " " a c t i o n ", s i g n e d B y " s i g n e r - n a m e s " ) ( p e r m i s s i o n, s i g n e d B y, c o d e B a s e ) p e r m i s s i o n - c l a s s - n a m e j a v a. i o. F i l e P e r m i s s i o n " t a rg e - n a m e " M S - Wi n d o w s ( c o d e B a s e U R L ) \ \ g r a n t { permission java.io.filepermission " C : \ \ u s e r s \ \ c a t h y \ \ f o o. b a t ", " r e a d " ; } ; tokenizer(java. io. StreamTo k e n i z e r ) \ \ n t o k e n i z e r, " C : \ u s e r s \ c a t h y \ f o o. b a t " 4.2.5 J a v a //

76 Java 2 API a p p l e t / h o m e / s y a d m i n / J A R ( a p p l e t, s y s a d m i n ) a p p l e t S e c u r i t y c o d e B a s e s i g n e d B y ( ) s y s a d m i n J A R J A R / h o m e / s y s a d m i n / c o d e B a s e s i g n e d B y ( ) 4.2.6 J D K 1. 2 U N I X s o m e. p r o p e r t y permission java.io. FilePermission"$ u s e r. h o m e " " r e a d " " $ u s e r. h o m e " u s e r. h o m e " / h o m e / c a t h y " permission java.io. FilePermission"/home/cathy" " r e a d " J D K 1. 2 " $ / " " $ f i l e. s e p a r a t o r "

4 77 permission java.io.filepermission"$ u s e r. h o m e $ / * " " r e a d " S o l a r i s u s e r. h o m e "/ h o m e / c a t h y " permission java.io.filepermission " / u s e r / c a t h y /*" " r e a d " M S - Wi n d o w s u s e r. h o m e " C :\ h o m e \ c a t h y " permission java.io.filepermission " C :\ u s e r \ c a t h y \*" " r e a d " c o d e B a s e codebase "file: $ {java.home} / l i b / e x t /" U N I X ( ) ( ) "/" MS-Windows grant codebase"file:c:/jdk1.2/lib/ext/" j a v a. h o m e C :\ j d k 1. 2 c o d e B a s e $ {/} " s i g n e r- n a m e s " " U R L "," t a rg e t - n a m e " " a c t i o n " p o l i c y. e x p a n d P r o p e r t i e s f a l s e t r u " $ { u s e r. $ { f o o }}" $ { u s e r. h o m e } f o o " h o m e " $ { } ( $ { u s e r. $ f o o } ),, f o o, : grant codebase "${foo}" { } p e r m i s s i o n... ; p e r m i s s i o n... ; g r a n t { } permission Foo "${foo}" permission Bar permission Foo Permission Bar " $ { f o o }" f o o t o k e n i z e r t o k e n i z e " $ { u s e r. h o m e }\\ f o o. b a t ", " $ { u s e r. h o m e }\ f o o. b a t " u s e r. h o m e "C:\users\cathy", ${user. h o m e } " C :\ u s e r s \ c a t h y \ f o o. b a t " " $ {/}" " $ { u s e r. h o m e } $ f o o. b a t " 4.3 s i g n e d B y s i g n e d B y

78 Java 2 API (public-key certificate) ( ) 4-1 (root certificate) 1 2 3 4-1 ( T T P ) ( C A ) ( C A C A C Ve r i S i g n C A C C I T T X. 509 X.509 v3 We b ( N a v i g a t o r I E ) S S L ( ) S S L We b I E T F ( I n t e r n e t ) ( T L S ) ( PEM S/MIME) (SET) X.509 JAR X. 509 ( v e r s i o n ) X. 509 (serial number) (Certificate Revocation List C R L ) C R L C A (signature algorithm identifier) C A (issuer name) X. 500 C A (validity period) I E T F (PKIX) I n t e r n e t

4 79 ( ) (subject name) X. 500 I n t e r n e t ( D N ) CN=Java Duke OU=Java Software O=Sun Microsystems C = U S ( C N ) ( O U ) ( O ) ( C ) l o c a l i t y N a m e ( ) Palo Alto s t a t e N a m e ( ) C a l i f o r n i a (subject public key information) A S N. 1 / D E R ( A S N. 1 ) ( D E R ) Internet RFC 1421 B a s e 64 ( e - m a i l ) B a s e 64 -----BEGIN CERT I F I C AT E - - - - - -----END CERT I F I C AT E - - - - - X. 509 (1) X.509 v1 1 9 8 8 (2) X.509 v2 ( ) (3) X.509 v3 ( 1 996 ) (a) KeyUsage ( b ) A l t e r n a t i v e N a m e s D N S e - m a i l I P / k e y U s a g e k e y C e r t S i g n S S L S S L k e y t o o l ( ) C A C A ( C S P ) C A k e y t o o l ( C S R ) C A ( k e y t o o l )

80 Java 2 API C A J D K 1. 2 Java API A P I j a v a. s e c u r i t y. c e r t C e r t i f i c a t e F a c t o r y ( C R L ) C e r t i f i c a t e X. 509 Pretty Good Privacy(PGP) ( ) ( CRL: C R L X 509Certificate X. 509 X. X 509Extention X. 509 X.509 v3 X.509 v2 CRL C R L X 509CRL X. 5 0 9 C R L X 509CRLEntry C R L k e y t o o l X. 509 4.4 J D K 1. 2 k e y t o o l p o l i c y t o o l j a r s i g n e r 4.4.1 4. 2. 4 J D K 1. 2, 4-2 4-2

4 81 ( j a r s i g n e r ) J A R J A R ( ) j a r s i g n e r ( J A R ) J A R j a r s i g n e r J D K 1. 2 k e y t o o l j a r s i g n e r ( t r u s t e d c e r t i f i c a t e ) ( ) H u g o h u g o - g e n k e y ( ) - i m p o r t k e y t o o l d u k e / keytool -genkey -alias duke -keypass dukekeypasswd d u k e k e y p a s s w d d u k e d u k e d u k e k e y p a s w d n e w p a s s keytool -keypasswd -alias duke -keypass dukekeypasswd -newnewpass k e y t o o l - k e y s t o r e. k e y s t o r e, u s e r. h o m e S o l a r i s, u s e r. h o m e M S - Wi n d o w s u N a m e u s e r. h o m e C : \ W i n n t \ P r o f i l e s \ u N a m e C : \ W i n d o w s \ P r o f i l e s \ u N a m e C : \ W i n d o w s Windows NT Windows 95 Windows 95 c a t h y u s e r. h o m e C : \ W i n n t \ P r o f i l e s \ c a t h y C : \ W i n d o w s \ P r o f i l e s \ c a t h y Windows NT Windows 95 j a v a. s e c u r i t y K e y S t o r e k e y t o o l j a r s i g n e r J D K 1. 1 j a v a k e y j a v a k e y j a v a k e y K e y t o o l - i d e n t i t y d b

82 Java 2 API K e y S t o r e ( S P I ) ( p r o v i d e r ) J a v a A P I K e y s t o r e S p i j a v a. s e c u r i t y S P I K e y s t o r e S p i 7 K e y S t o r e g e t I n s t a n c e J D K 1. 2 J K S j k s J K S k e y t o o l F i l e I n p u t S t r e a m p k c s 12 k e y s t o r e. t y p e = p k c s 1 2 k e y t o o l k e y s t o r e. t y p e K e y S t o r e g e t D e f a u l t Ty p e keystore.type KeyStore KeyStore=KeyStore.getInstance(KeyStore.getDefault-Type()); 4.4.2 keytool k e y t o o l / k e y t o o l X. 509 v 1 v 2 v 3 v 1 k e y t o o l J a v a ( D S A ) D S A 512 1024 64 102 D S A D S A S H A 1 R S A R S A M D 5 k e y t o o l X. 509 D N "CN=Mark Smith,OU=JavaSoft,O=Sun, L=Palo Alto, S=CA,C=US" D N keytool -genkey -dname "CN=Mark Smith,OU=JavaSoft,O=Sun, L=Palo Alto, S=CA,C=US"alias mark C N C n c N C N O U O L S C D N X.509 v3 k e y t o o l X.509 v1 k e y t o o l v 3

4 83 : CN=Mark Smith,OU=JavaSoft,O=Sun, C=US D N D k e y t o o l / C S R C A C A C A C A C A C A C S R C A C A C A C A P K C S # 7 k e y t o o l C A D N C A / t m p / c e r t - p r i n t c e r t k e y t o o l k e y t o o l keytool --import--alias joe --file jcertfile.cer j c e r t f i l e. c e r j o e B a s e 64 - i m p o r t - p r i n t c e r t C A C C S R k e y t o o l - e x p o r t keytool --export -alias jane --file janecertfile.cer

84 Java 2 API j a n e j a n e c e r t f i l e. c e r t B a s e 64 - l i s t keytool -list -alias joe - l i s t M D 5 - v e r b o s e k e y t o o l - a l i a s " m y k e y " - k e y a l g " D S A " - k e y s i z e 1 0 2 4 - v a l i d i t y 9 0 - k e y s t o r e. k e y s t o r e - f i l e J D K 1. 2 k e y t o o l k e y t o o l keytool -help k e y t o o l / keytool -genkey -dname "cn=mark Smith,ou=JavaSoft,o=Sun, c=us" --alias business --keypass kpi135 --keystore /working/ mykeystore -storepass ab987c --validity 180 w o r k i n g m y k e y s t o r e ( ) ( s t o r e p a s s ) a b 987 c / D N ( d n a m e ) M a r k S m i t h J a v a S o f t S u n U S D S A 1024 ( D S A S H A 1 ) D N 180 b u s i n e s s k p i 135 keytool --genkey my key 90 - g e n k e y - g e n k e y C A C S R keystool --certreq --file MarkJ.csr CSR ( m y k e y ) M a r k J. c s r C A C A ( ) ( )

4 85 C A C A (1) ( C A C ) (2) C A C A J D K 1. 2 5 Ve r i S i g n C A Ve r i S i g n C A C A C A C A C ( C A ) A B C C A A B C C A. c e r A B C C A keytool --import --alias abc --file ABCCA.cer A B C C A. c e r a b c C A C A C S R C A C S R ( C A ) ( C A ) Ve r i S i g n C S R ( V S M a r k J. c e r ) keytool --import -trustcacerts --file VSMarkJ.cer j a r s i g n e r J A R M J. c e r ( m y k e y ) keytool --export --alias mykey --file MJ.cer J A R j a r s i g n e r D N D / SuSan Miller, s M i l l e r D N "cn=susan Miller, ou=finance Department,o=BlueSoft, c=us" / D N (1) keytool --keyclone --alias smiller --dest smillernew s t o r e p a s s (2) D N keytool --selfcert --alias smillernew -dname "cn=susan Miller, ou=accounting Department,o=BlueSoft c=us"

86 Java 2 API (3) C S R keytool --certreq --alias smillernew C A keytool --import --alias smillernew --file VSSMillerNew.cer (4) D N keytool --delete --alias smiller J D K 1. 2 M S - Wi n d o w s k e y t o o l S o l a r i s 4.4.3 p o l i c y t o o l p o l i c y t o o Policy To o l ( 4-3 ) 4-3 policytool P o l i c y To o l U R L c o d e B a s e s i g n e d B y. j a v a. p o l i c y p o l i c y t o o l, P o l i c y To o l ( p o l i c y t o o l ) / t e s t s / m y k e y s t o r e S o l a r i s (1) U R L New KeyStore URL f i l e / t e s t s / m y k e y s t o r e p o l i c y t o o l U R L (2) New KeyStoreTy p e Sun Microsystem JKS keystore p o l i c y t o o l k e y s t o r e. t y p e

4 87 (3) O K U R L (1) Policy To o l Add Policy Entry Policy Entry (2) c o d e B a s e U R L l o c a l / J a v a S o f t / T E S T S / C o d e B a s e f i l e / J a v a S o f t / T E S T S / (a) s i g n e d B y d u k e d u k e s i g n e d B y (b) c o d e B a s e s i g n e d B y ( ) (1) Policy Entry Add Permission P e r m i s s i o n (a) (permission type) P e r m i s s i o n (b) (permission target name) P e r m i s s i o n Ta rget Name ALL FILES File Permissions Ta rg e t N a m e (c) (one or more action) A c t i o n s ( ) F i l e P e r m i s s i o n ( ) (d) signedby (signedby alias) S i g n e d B y s i g n e d B y P e r m i s s i o n (2) O K Policy Entry Policy Entry D o n e Policy To o l c o d e B a s e s i g n e d B y Policy Entry c o d e B a s e < A L L > O K ( )

88 Java 2 API (1) Policy Entry Edit Permission ( ) P e r m i s s i o n (2) (3) O K Policy Entry Policy Entry R e m o v e P e r m i s s i o n p o l i c y t o o l Warning Log E d i t Vi e w Warning Log U R L U R M S - Wi n d o w s p o l i c y t o o l 4.4.4 jarsigner J D K 1. 2 j a r s i g n e r J A R j a r J A R j a r s i g n e r J A R J A R J A R J A J A R J A R J A R j a r s i g n e r J A R j a r s i g n e r J A R U R L, m y s t o r e d u k e J A R M y J A R F i l e. j a r, JAR MyJARFile.jar j a r s i g n e r k e y s t o r e. t y p e k e y s t o r e. t y p e J D K 1. 2 j a r s i g n e r JDK jartool Z I P J A R D S A S H A 1 R S A M D 5 J A R D S A S H A 1 S U N j a r s i g n e r J A R, J A R J A R J A R Z I P M E TA - I N F / M A N I F E S T. M F j a r s i g n e r Z I P

4 89 M E TA - I N F S F D S A ( S F ) J A R S H A S H A S F S F S F D S A D S A j a r s i g n e r J A R J A J A R (1) S F ( D S A ) ( ) D S A S F S F (2) S F S S F S F ( ) S F S F (3) S F j a r t o o l S F J A R j a r s i g n e r J A R j a r s i g n e r jarsigner mybundle.jar susan jarsigner mybundle.jar kevin J A R J A S F D S A S F D S A J A R S U S A N. S F S U S A N. D S A K E V I N. S F K E V I N. D S A J D K 1. 2 j a r s i g n e r jarsigner J D K 1. 1 J D K 1. 1 j a v a k e y J A R J a v e

90 Java 2 API J D K 1. 2 k e y t o o l j a r s i g n e r j a v a k e y k e y s t o r e j a v a k e y J D K 1. 2 J D K 1. 2 k e y t o o l - i d e n t i t y d b J D K 1. 2 jarsigner j a v a k e y J A R j a r s i g n e r j a v a k e y J A R J D K 1. 1 J D K 1. 2 J D K 1. 1 j a v a k e y J D k 1. 2 J V M J A R J V M J A R? 1 J A R 2 3 4? 4-1 J D K 1. 1 x J A R J D K 1. 2 /, 4-1, ( ) J D K 1. 1 J D K 1. 1 J D K 1. 2 k e y s t o r e J D K 1. 2 J A R J A R 4-1 j a v a k e y 1 2 3 4 / / / / + / / / / / / / / +

4 91 4.4.5 J A R J A b u n d l e. j a r w o r k i n g m y s t o r e j a n e m y p a s s j a n e j 638 k l m J A R J A R s b u n d l e. j a r jarsigner -keystore /working/mystore -storepass myspass -keypass j638klm -signedjar sbundle,jar bundle.jar JANE S F D S A J A N E. S F J A N E. D S A jarsigner -verify sbundle.jar "jar verified" - v e r b o s e jarsigner -verify -verbose sbundle.jar 198 Fri Sep 26 16:14:06 PDT 1997 META-INF/MANIFEST.MF 199 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.SF 1013 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.DSA smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class s = signature was verified m = entry is listed in manifest k = at least one certificate was found in keysyore jar verified - c e r t s JAR D N ( X. 509 ) J A R

92 Java 2 API X. 509 D N P G P b o b PGP ( b o b ) J A R J D K 1. 1 j a v a k e y i J A R i k - c e r t s ( d u k e ) M S - Wi n d o w s j a r s i g n e r 4.5 J D K 1. 2 J a v a J D K 1. 2 J a v a I n t e r n e t ( I S P ) I S P I S I n t e r n e t

4 93 J D K 1. 2 J a v a J a v J a v a A O L I n t e r n e t J a v a e - m a i l I n t e r n e t