This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Цель: обе стороны должны иметь одно и то же значение - секрет. Это может быть что угодно (обычно массив байтов) | |
Условие: | |
Существует способ асимметрической криптографии (публичный ключ используется для зашифровки, секретный ключ используется для расшифровки). Используя этот способ никто не может узнать второй ключ, зная один из пары. | |
Решение: | |
1. Сервер создает случайную пару ключей. | |
2. Сервер передает публичный ключ клиенту (третья сторона имеет доступ к публичному ключу) | |
3. Клиент получает публичный ключ. | |
4. Клиент создает секрет. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package dany.test3; | |
import java.io.File; | |
import java.io.IOException; | |
import java.io.PrintWriter; | |
import java.net.URI; | |
import java.net.URISyntaxException; | |
import sun.awt.OSInfo; | |
import sun.awt.OSInfo.OSType; |