2013-05-22 1 views
4

Я создал простое приложение для Mac, которое дает вам статистику вашего рабочего поведения с течением времени. Например, ваши средние слова в минуту, какой язык вы вводите, использование ключа удаления и т. Д. Интересные вещи! Однако некоторые тестирующие пользователи заявили, что не будут использовать приложение, если они не знают меня лично, поскольку он собирает нажатия клавиш, например, кейлоггер.Как я могу показать, что мое приложение не является кейлоггером?

Есть ли какая-то сертификация, которую я могу показать, что я не делаю ничего гнусного? (Я никогда не оставляю больше одного слова в памяти!) Или будет достаточно, чтобы мое приложение подписалось? Или с открытым исходным кодом, что часть кода? (Другие части, которые я знаю, я не могу открывать с открытым исходным кодом.)

+0

Подписание просто говорит, что сторонняя сторона получила деньги, чтобы сказать, что исполняемый файл прошел через ваши руки (т.сущность «Стэн Джеймс» была выставлена ​​счет, а компания «Stan James», подписавшая программное обеспечение, вероятно, является одним и тем же лицом, по модулю вы теряете свой секретный ключ). Говорить, что программное обеспечение приходит от вас, на самом деле не помогает, если люди не доверяют вам. –

ответ

2

Я думаю, что гейткипер будет адекватен большинству пользователей. Если окажется, что приложение плохо работает, то Apple может вытащить вилку на разработчика вредоносных программ. Чтобы это и, возможно, какое-то время вживую, вы должны установить свою программу как «безопасную» для тех, кто технически не склонен (например, не может понять ваш источник).

Простое распространение его в вашей или вашей компании может сделать многое, чтобы создать доверие к приложению (если, конечно, ваши другие продукты/программы не нарушили доверие пользователей).

3

Распространение через Mac App Store поможет, так как пользователи могут видеть, что Apple пробовала ваше приложение и не обнаружила в нем ничего гнусного. [Добавлено:] Кроме того, песочница вашего приложения означает, что ваше приложение ограничено явным набором способностей, которые могут быть проверены технически квалифицированными пользователями. Все, что не указано в списке, вы не можете сделать, поэтому это будет простой способ доказать, что вы ничего не отправляете через Интернет.

Еще одна вещь - сохранить все данные в файлах, читаемых пользователем. Нет бинарных дисков, нет хранилищ Core Data и т. Д. (Являются ли варианты XML любого из них считающимися читаемыми для пользователя более спорными, но для этой цели я думаю, что хотя бы XML-слой будет достаточно читабельным. о Core Data.)

Если пользователь может считывать все необработанные данные, хранящиеся с помощью приложений, которым они доверяют (например, TextEdit), а не только ваше обычное представление о приложении в приложении, то они могут проверять сами, и в конечном итоге доверяете, что вы не храните ничего, что им не хотелось бы.

Если кто-либо обеспокоен потенциальными пользователями, сообщите об этом, сообщите ли вы свои нажатия клавиш на свой собственный сервер через Интернет и предположите, что вы вообще не подключаетесь к Интернету (даже не проверяете обновление), вы можете рекомендовать они должны установить Little Snitch, который выдает предупреждение о подтверждении в любое время, когда какое-либо приложение пытается подключиться к чему-то. Когда они не видят такого предупреждения о вашем приложении, они знают, что вы не звоните домой.

Вы также можете на странице своего продукта включить ссылку на технический профиль. Here's Jesper's article proposing them и here's one example of such a document, for one of his products.

+0

+1 за предложение не разговаривать с Интернетом. На Android можно будет продемонстрировать отсутствие подключения к Интернету, не запрашивая разрешения на установку. Жаль, что на iOS нет ничего подобного. – Steve

+0

@Steve: Вопрос об OS X, на котором можно было бы (достаточно технически квалифицированному) пользователю проверить список привилегий изолированного приложения и найти, что он не дает себе права быть сетевым сервером или клиентом. Здесь может быть возможность для продукта, который представляет более удобный интерфейс для этой информации. –

+1

Документация Apple не затрагивает проблему напрямую, но я не думаю, что изолированное приложение может захватывать события нажатия клавиш из других приложений. Документы понятны, что вы можете * отправлять * события в другие приложения, поэтому я уверен, что вы не сможете их захватить. Мне нравится идея направления заинтересованных пользователей Little Snitch. –

0

Если вы можете получить приложение в Apple App Store, значит, они проверили его на наличие таких проблем. Нет никакого способа, чтобы они сознательно разрешили приложение для регистрации ключей. Кроме того, подписка на приложение с сертификатом Apple гарантирует, что если он был загружен из App Store, а позже окажется нечестным, они могут черным перечислить его.

Код с открытым исходным кодом также будет хорошей идеей. Я предполагаю, что вы не можете полностью открыть исходный код, потому что он не принадлежит вам? Если да, то дайте понять, какие технологии он использует и как открыто и честно оценивают, что делает приложение, и как это делается.

 Смежные вопросы

  • Нет связанных вопросов^_^