У меня есть сервер на моей малине Pi с раскинским на нем. Чтобы управлять им, я создал клиент/сервер Java TCP/IP. Серверная сторона java работает весь день, и я могу подключиться к ней программой клиента. В принципе, сервер ждет некоторого кода и выполняет привязку команды к этому коду. Все работает отлично, на моем компьютере и на моем Android-смартфоне. Итак, я добавляю функцию аутентификации. У меня был белый список, и сервер проверял, разрешено ли IP-адрес клиента (полученному socket.getRemoteSocketAddress()
) подключиться и отправить команду на мой сервер. Я добавил свой компьютер IP (локальный IP-адрес, потому что мой компьютер находится в той же сети, что и моя малина), и я добавил свой IP-адрес для смартфонов.Уникальный ключ от Android
Моя проблема: здесь, вместо моего ПК, у моего смартфона есть динамический IP-адрес. Поэтому, когда я добавляю свой IP-адрес в свой белый список, он работает хорошо. Но через несколько минут мой IP-смартфон изменился, потому что он динамический, поэтому мой смартфон больше не разрешен.
Так что я ищу уникальный ключ на своем смартфоне, который мог бы использовать для идентификации моего смартфона и только моего.
Также мне нужен аналогичный ключ на моем компьютере для идентификации моего компьютера таким же образом.
Знаете ли вы такой ключ?
Это имеет дополнительное преимущество и для шифрования ваших соединений. –
Я не очень хорошо знаком с TLS, вы имеете в виду просто простой .txt-файл на моем смартфоне и моем компьютере? С ручным сгенерированным ключом? –
Простой ручной ключ будет работать. Однако любое соединение, которое вы публикуете в Интернете, также должно быть зашифровано. Вы можете посмотреть в TLS/SSL. –