java中安全服务都是从java.security.Provider类中的类似MessageDigestSpi 的子类提供的.
XXXSpi是抽象父类:
比如如下代码:
MessageDigest md = MessageDigest.getInstance("MD5"); // JCA的算法名是大小写不敏感的。 |
java运行的时候会按照如下图的模型去找ProviderA,中的MD5实现,
provierA 找不到再去找providerB中的实现。
而ProviderA 还是ProviderC 是Java\jre1.5.0_16\lib\security文件中定义的:(可以到JDK目录下面去搜索出来,JAVA按照此文件中定义的provider顺序进行查找)
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=com.sun.net.ssl.internal.ssl.Provider
security.provider.4=com.sun.crypto.provider.SunJCE
security.provider.5=sun.security.jgss.SunProvider
security.provider.6=com.sun.security.sasl.Provider
当然我们也可以实现自己的Provider。或者用不是SUN提供的第三方的Provider。
MessageDigest md = MessageDigest.getInstance("MD5", "ProviderC"); |
类图如下:
SUN提供的每个provider里面的已经实现了的算法实现 见:
http://java.sun.com/javase/6/docs/technotes/guides/security/SunProviders.html#SUNProvider
============================== 大致类描述表 ===============================
Table 1 Key Java security packages and classes
Package
|
Class/Interface Name
|
Usage
|
com.sun.security.auth.module
|
JndiLoginModule
|
Performs username/password authentication using LDAP or NIS database
|
KeyStoreLoginModule
|
Performs authentication based on key store login
|
Krb5LoginModule
|
Performs authentication using Kerberos protocols
|
java.lang
|
SecurityException
|
Indicates a security violation
|
SecurityManager
|
Mediates all access control decisions
|
System
|
Installs the SecurityManager
|
java.security
|
AccessController
|
Called by default implementation of SecurityManager to make access control decisions
|
Key
|
Represents a cryptographic key
|
KeyStore
|
Represents a repository of keys and trusted certificates
|
MessageDigest
|
Represents a message digest
|
Permission
|
Represents access to a particular resource
|
Policy
|
Encapsulates the security policy
|
Provider
|
Encapsulates security service implementations
|
Security
|
Manages security providers and security properties
|
Signature
|
Creates and verifies digital signatures
|
java.security.cert
|
Certificate
|
Represents a public key certificate
|
CertStore
|
Represents a repository of unrelated and typically untrusted certificates
|
javax.crypto
|
Cipher
|
Performs encryption and decryption
|
KeyAgreement
|
Performs a key exchange
|
javax.net.ssl
|
KeyManager
|
Manages keys used to perform SSL/TLS authentication
|
SSLEngine
|
Produces/consumes SSL/TLS packets, allowing the application freedom to choose a transport mechanism
|
SSLSocket
|
Represents a network socket that encapsulates SSL/TLS support on top of a normal stream socket
|
TrustManager
|
Makes decisions about who to trust in SSL/TLS interactions (for example, based on trusted certificates in key stores)
|
javax.security.auth
|
Subject
|
Represents a user
|
javax.security.auth.kerberos
|
KerberosPrincipal
|
Represents a Kerberos principal
|
KerberosTicket
|
Represents a Kerberos ticket
|
javax.security.auth.login
|
LoginContext
|
Supports pluggable authentication
|
javax.security.auth.spi
|
LoginModule
|
Implements a specific authentication mechanism
|
javax.security.sasl
|
Sasl
|
Creates SaslClient and SaslServer objects
|
SaslClient
|
Performs SASL authentication as a client
|
SaslServer
|
Performs SASL authentication as a server
|
org.ietf.jgss
|
GSSContext
|
Encapsulates a GSS-API security context and provides the security services available via the context
|
- 大小: 62.3 KB
- 大小: 326.4 KB
- 大小: 76.7 KB
分享到:
相关推荐
websphere 内存溢出 javacore分析工具jca456 分析javacore的好工具 分析javacore的好工具
javacore分析工具,很好的一款图形界面分析工具
websphere javacore 分析工具 jca412
websphere 内存溢出 javacore分析工具jca401 分析javacore的好工具 分析javacore的好工具
帮忙分析javacore和dump文件,查看内存泄漏,线程阻塞,个人觉得很实用,希望可以帮忙到需要的人
jca工具分析死锁及内存情况
不懂jca的朋友可以来这看看,一个jca的演示程序,程序逻辑清晰
IBM Thread and Monitor Dump Analyzer for Java(简称 jca)。它可以识别Java线程中的挂起,死锁,资源竞争,和瓶颈。 使用方法: java -Xmx1000m -jar jca456.jar
ibm websphere 服务器内存溢出或其他故障,生成javacore,分析工具
IBM Thread and Monitor Dump Analyzer for Java(简称 jca)。它可以识别Java线程中的挂起,死锁,资源竞争,和瓶颈。 使用方法: java -Xmx1000m -jar jca456.jar
java线程堆栈分析工具jca466.jar;堆内存分析工具Memory Analyzer;分析内存泄露产生的javacore文件,以便于定位blocked线程
JCA练习 JCA练习 JCA练习 JCA练习 JCA练习
javacore分析工具 jca37.zip IBM javacore分析工具 jca37.zip heapdump分析工具HeapAnalyzer heapdump分析工具------HeapAnalyzer: 2014年1月最新发布 用法: 在命令行执行 java -Xmx500m -jar ha453.jar
jca java dump分析工具,检测java 内存溢出,检测java 堆栈资源分析
最新IBM javacore分析工具。它提供了广泛的详细 GC 数据值的图形显示,并处理 optthruput、optavgpause 和 gencon GC 模式。它具有原始日志、表格式数据和图表视图,并且可以将数据保存到 jpeg 或 .csv 文件(用于...
内存分析工具 jca455.jar 和 ha455.jar 需要用java7运行 java -jar jca455.jar or java -jar ha455.jar
IBM Thread and Monitor Dump Analyzer for Java 2014年1月最新发布 可以分析weblogic或was当机生成的javacore和dump文件 使用方法在命令行输入 java -Xmx500m -jar jca452.jar
利用Jca工具分析JavaCore文件/Thread dump文件。Jca工具分析JavaCore文件/Thread dump文件。很实用。
该资源包含了两部分内容,jca和ha。jca是java线程堆栈分析工具,此压缩包包含的版本是jca396.jar,ha是java内存使用情况分析工具,此压缩包包含的版本是ha405.jar
jca15.zip-分析javacore日志的工具。在java内存溢出的时候可以用此工具帮助分析。