Diffie Hellman (DH) key exchange algorithm is a method for securely exchanging key(s) over a public communications channel. Keys are not actually exchanged – they are jointly derived. It is named after their inventors Whitfield Diffie and Martin Hellman.
The following is a high level overview of relevant files and folders.
Interface/
├── build/
│ |── classes/
│ | └── Interface/
| |── empty/
| └── generated-sources/
│ └── ap-source-output/
├── dist/
├── nbproject/
│ └── private/
└── src/
└── Interface/
PersonOne/
├── build/
│ |── classes/
│ |── PersonOne
| | |── InterfaceImple.class
| | └── PersonOne.class
| |── .netbeans_automatic_build
| └── .netbeans_update_resources
├── nbproject/
│ |── private/
| | |── private.properties/
| | └── private/
| |── build-impl/
| |── genfiles.properties/
| |── project.properties/
| └── project/
├── src/
| └── PersonOne/
| |── InterfaceImpl/
| └── PersonOne/
├── build/
├── Interface/
└── manifest.mf/
PersonTwo/
├── build/
│ |── classes/
│ |── PersonTwo
| | └── PersonTwo.class
| |── .netbeans_automatic_build
| └── .netbeans_update_resources
├── nbproject/
│ |── private/
| | |── private.properties/
| | └── private/
| |── build-impl/
| |── genfiles.properties/
| |── project.properties/
| └── project/
├── src/
| └── PersonTwo/
| └── PersonTwo/
├── build/
├── Interface/
└── manifest.mf/