Descriptions of Images from Java Cryptography Architecture (JCA) Reference Guide

The following are text descriptions of images used in Java Cryptography Architecture (JCA) Reference Guide

Description of Figure 1a: Provider searching and Figure 1b: Specific provider requested

Figure 1a Provider searching

This image consists of five cylinders that represent the following:

An arrow representing a call to MessageDigest.getInstance("SHA-256") starts from the Application cylinder and passes through the following cylinders in the indicated order:

  1. Provider Framework
  2. ProviderA
  3. ProviderB
  4. Provider Framework

The arrow ends at the Application cylinder. The call to MessageDigest.getInstance("SHA-256") has returned a SHA-256 message digest implementation from ProviderB.

Figure 1b Specific provider requested

This image consists of five cylinders that represent the following:

An arrow representing a call to MessageDigest.getInstance("SHA-256", "ProviderC") starts from the Application cylinder and passes through the following cylinders in the indicated order:

  1. Provider Framework
  2. ProviderC
  3. Provider Framework

The arrow ends at the Application cylinder. The call to MessageDigest.getInstance("SHA-256", "ProviderC") has returned a SHA-256 message digest implementation from ProviderC.

Description of Figure 2: Example of How Application Retrieves "AES" Cipher Instance

This figure consists of five boxes:

Arrows connect the boxes as follows:

A dotted line connects CSP3 to the headings Provider.class and com.foo.AESCipher.class

Description of Figure 3: Example of Provider Subclass

This figure consists of a cylinder labeled Provider C and a box. Dotted lines are used to indicate that Provider C contains the contents of the box. The box contains the following headers and Java code:

Description of Figure 4: The SecureRandom Class

This figure consists of three boxes labeled as follows:

Labeled arrows connect these boxes:

Description of Figure 5: The MessageDigest Class

This figure consists of three boxes labeled as follows:

Labeled arrows connect these boxes:

Description of Figure 6: The Signature Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Unlabeled arrows connect these boxes:

Description of Figure 7: The Cipher Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Unlabeled arrows connect these boxes:

Description of Figure 8: The Mac Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Unlabeled arrows connect these boxes:

Description of Figure 9: Differences Between Generators and Factories

This figure consists of two diagrams:

Generators

This diagram contains the following caption: Generators — Generate new objects based on initialization parameters

It consists of boxes labeled as follows:

Unlabeled arrows connect these boxes:

Factories

This diagram contains the following caption: Factories — Transform existing specific objects into other object types

It consists of boxes labeled as follows:

Unlabeled arrows connect these boxes:

Description of Figure 10: The KeyFactory Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Unlabeled arrows connect these boxes:

Description of Figure 11: The SecretKeyFactory Class

This figure consists of boxes labeled as follows:

Unlabeled arrows connect these boxes:

Description of Figure 12: The KeyPairGenerator Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Description of Figure 13: The KeyGenerator Class

This figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

Description of Figure 14: The KeyAgreement Class

This figure is divided into halves by a dashed line. The top half is labeled Alice, and the bottom half is labeled Bob. The figure consists of boxes labeled as follows:

Labeled arrows connect these boxes:

A double-headed arrow joins the Bytes boxes in Alice's and Bob's halves. This arrow is labeled "Should be the same."

Description of Figure 15: The KeyStore Class

This figure consists of a table labeled PKCS12 and a cylinder labeled File.

The table PKCS12 contains the following:

Alias Type Data
Brad Private Key/Certificate ...
Deb Secret Key ...
Milton Trusted Certificate ...
Duke Trusted Certificate ...

An arrow labeled store() points from the JKS table to the File cylinder. An arrow labeled load() points from the File cylinder to the PKCS12 table.

Description of Figure 16: SSL Messages

This figure contains two lists of steps that are next to each other. The list to the left is labeled Client. The list to the right is labeled Server.

The Client list contains the following items:

Five empty lines separate item 1. Client hello and item 7. Certificate. Two empty lines separate item 11. Finished and item 14. Finished.

The Server list contains the following items:

Five empty lines separate item 6. Server hello done and item 12. Change cipher spec.

An arrow points from each item in the Client list to the corresponding empty line in the Server list. Similarly, an arrow points from each item in the Server list to the corresponding empty line in the Client list. For items 14 and 15 in the Client and Server lists, double-headed arrows connect them instead.


Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved.