57 |
* This class centralizes all security properties and common security methods. |
* This class centralizes all security properties and common security methods. |
58 |
* One of its primary uses is to manage providers. |
* One of its primary uses is to manage providers. |
59 |
* |
* |
60 |
* @author Mark Benvenuto <ivymccough@worldnet.att.net> |
* @author Mark Benvenuto (ivymccough@worldnet.att.net) |
61 |
*/ |
*/ |
62 |
public final class Security |
public final class Security |
63 |
{ |
{ |
411 |
* MessageDigest, Cipher, Mac, KeyStore). Returns an empty Set if there is no |
* MessageDigest, Cipher, Mac, KeyStore). Returns an empty Set if there is no |
412 |
* provider that supports the specified service. For a complete list of Java |
* provider that supports the specified service. For a complete list of Java |
413 |
* cryptographic services, please see the Java Cryptography Architecture API |
* cryptographic services, please see the Java Cryptography Architecture API |
414 |
* Specification & Reference. Note: the returned set is immutable. |
* Specification & Reference. Note: the returned set is immutable. |
415 |
* |
* |
416 |
* @param serviceName the name of the Java cryptographic service (e.g., |
* @param serviceName the name of the Java cryptographic service (e.g., |
417 |
* Signature, MessageDigest, Cipher, Mac, KeyStore). Note: this parameter is |
* Signature, MessageDigest, Cipher, Mac, KeyStore). Note: this parameter is |
466 |
* formats:</p> |
* formats:</p> |
467 |
* |
* |
468 |
* <ul> |
* <ul> |
469 |
* <li><p><crypto_service>.<algorithm_or_type></p> |
* <li><p><crypto_service>.<algorithm_or_type></p> |
470 |
* <p>The cryptographic service name must not contain any dots.</p> |
* <p>The cryptographic service name must not contain any dots.</p> |
471 |
* <p>A provider satisfies the specified selection criterion iff the |
* <p>A provider satisfies the specified selection criterion iff the |
472 |
* provider implements the specified algorithm or type for the specified |
* provider implements the specified algorithm or type for the specified |
475 |
* provider that supplied a CertificateFactory implementation for X.509 |
* provider that supplied a CertificateFactory implementation for X.509 |
476 |
* certificates.</p></li> |
* certificates.</p></li> |
477 |
* |
* |
478 |
* <li><p><crypto_service>.<algorithm_or_type> <attribute_name>:<attribute_value></p> |
* <li><p><crypto_service>.<algorithm_or_type> <attribute_name>:<attribute_value></p> |
479 |
* <p>The cryptographic service name must not contain any dots. There must |
* <p>The cryptographic service name must not contain any dots. There must |
480 |
* be one or more space charaters between the the <algorithm_or_type> |
* be one or more space charaters between the the <algorithm_or_type> |
481 |
* and the <attribute_name>.</p> |
* and the <attribute_name>.</p> |
482 |
* <p>A provider satisfies this selection criterion iff the provider |
* <p>A provider satisfies this selection criterion iff the provider |
483 |
* implements the specified algorithm or type for the specified |
* implements the specified algorithm or type for the specified |
484 |
* cryptographic service and its implementation meets the constraint |
* cryptographic service and its implementation meets the constraint |
530 |
* of the following two formats:</p> |
* of the following two formats:</p> |
531 |
* |
* |
532 |
* <ul> |
* <ul> |
533 |
* <li><p><crypto_service>.<algorithm_or_type></p> |
* <li><p><crypto_service>.<algorithm_or_type></p> |
534 |
* <p>The cryptographic service name must not contain any dots.</p> |
* <p>The cryptographic service name must not contain any dots.</p> |
535 |
* <p>The value associated with the key must be an empty string.</p> |
* <p>The value associated with the key must be an empty string.</p> |
536 |
* <p>A provider satisfies this selection criterion iff the provider |
* <p>A provider satisfies this selection criterion iff the provider |
537 |
* implements the specified algorithm or type for the specified |
* implements the specified algorithm or type for the specified |
538 |
* cryptographic service.</p></li> |
* cryptographic service.</p></li> |
539 |
* |
* |
540 |
* <li><p><crypto_service>.<algorithm_or_type> <attribute_name></p> |
* <li><p><crypto_service>.<algorithm_or_type> <attribute_name></p> |
541 |
* <p>The cryptographic service name must not contain any dots. There must |
* <p>The cryptographic service name must not contain any dots. There must |
542 |
* be one or more space charaters between the <algorithm_or_type> and |
* be one or more space charaters between the <algorithm_or_type> and |
543 |
* the <attribute_name>.</p> |
* the <attribute_name>.</p> |
544 |
* <p>The value associated with the key must be a non-empty string. A |
* <p>The value associated with the key must be a non-empty string. A |
545 |
* provider satisfies this selection criterion iff the provider implements |
* provider satisfies this selection criterion iff the provider implements |
546 |
* the specified algorithm or type for the specified cryptographic service |
* the specified algorithm or type for the specified cryptographic service |