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:
init(): From Alice's Private Key to Key Agreement (DH)
doPhase(): From Bob's Public Key to Key Agreement (DH)
generateSecret(): From Key Agreement (DH) to Bytes
init(): From Bob's Private Key to Key Agreement (DH)
doPhase(): From Alice's Public Key to Key Agreement (DH)
generateSecret(): From Key Agreement (DH) to Bytes
A double-headed arrow joins the Bytes boxes in Alice's and Bob's halves. This arrow is labeled "Should be the same."
init(): From key length to Key Generator (AES)
init(): From AlgorithmParameterSpec to Key Generator (AES)
generateKey(): From Key Generator (AES) to Secret Pair