Я хочу создать приложение для планшетов Android и / или iPad, которое будет содержать много конфиденциальных данных, которые необходимо зашифровать.
Я думаю о двух возможных способах решения этой проблемы:
- Реализация (или использование реализации) некоторого хорошо известного алгоритма шифрования, но это оставляет проблему передачи закрытого ключа, поскольку, вероятно, будет лучше, если пользователь должен вводить 1024-байтовый ключ с экранной клавиатуры при каждом запуске применение
- Использование устройства аппаратного шифрования (смарт-карта, etoken и т. Д.) - это, вероятно, один из самых безопасных способов сделать это, но здесь проблема в том, как вставить аппаратное устройство в планшет. Я предполагаю, что вы, вероятно, сможете найти несколько устройств Android с USB-портом, но кто-нибудь знает, как эти устройства поддерживаются на Android? Я думаю, что нет смысла думать о подобном решении на iPad, поскольку на нем нет USB. Еще один недостаток всего этого подхода заключается в том, что он немного усложняет жизнь, поскольку вам необходимо постоянно носить с собой криптографическое устройство.
Я, вероятно, должен добавить, что для этого приложения нам не нужно, чтобы оно работало на всех возможных устройствах - мы можем ограничиться одним устройством (Android или iPad), поскольку мы предоставляем как аппаратное, так и программное обеспечение. То же самое касается внешних криптографических устройств.
Безопасность является главной заботой для клиента, и я хотел бы знать, сталкивался ли кто-нибудь с подобными ситуациями и какие решения вы использовали?