Кто-нибудь знает алгоритм подписания, который будет работать со всеми этими платформами.
Сервер сгенерирует открытый и закрытый ключ RSA через программу Java.Затем клиентскому приложению (мобильному телефону) необходимо будет декодировать сообщение с сервера, подписанное с помощью закрытого ключа (открытый ключ хранится на устройстве).
Указанные ниже значения работают с Android и JavaОднако я не уверен, как они будут работать с другими платформами.
//For the server signed message
public static final int RSA_KEY_SIZE = 2048;
public static final String SIGNATURE_ALGORITHM = "SHA256withRSA";
public static final String RSA = "RSA";
public static final String PROVIDER = "BC"; //Bouncy Castle
//For hashing sensitive data over the network
public static final String SECURE_RANDOM_ALGORITHM = "SHA1PRNG";