Nano Hash - криптовалюты, майнинг, программирование

Нужно ли защищать настольное приложение, если оно распространяется через AppStore?

Я сделал простое настольное приложение, которое хочу продавать через AppStore. Конечно, я хочу быть защищенным от пиратства. Предоставляет ли AppStore какую-либо защиту? Как работает этот процесс?

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

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

Я не совсем уверен, как работает этот процесс. Может ли кто-нибудь пролить свет на это?


Ответы:


1

Mac App Store выдает квитанцию ​​каждый раз, когда он загружается в пакет. Квитанция содержит информацию об используемом компьютере (так называемый GUID) и пользователе, вошедшем в App Store.

Посмотрите здесь, как вы должны подтвердить получение: https://developer.apple.com/library/mac/releasenotes/General/ValidateAppStoreReceipt/Introduction.html#//apple_ref/doc/uid/TP40010573

Если вы реализуете проверку GUID, как описано в документе, приложение не будет работать ни на одном другом компьютере.

Также проверьте подпись своего кода, чтобы убедиться, что она не была подделана: Проверка подписи приложения по коду< /а>

23.04.2014
  • Спасибо, Махал. Очень полезно. 23.04.2014

  • 2

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

    Тем не менее, вам гораздо лучше сосредоточиться на написании приложения, которое люди действительно захотят купить. Люди, которые пиратят ваше приложение, не стали бы отдавать вам деньги, если бы оно не могло быть пиратским. Они обойдутся без него, выберут какое-нибудь бесплатное приложение или другое приложение, которое они могут пиратствовать.

    И я совершенно уверен, что любая защита от копирования, которую вы сами встроите в свое приложение, будет отклонена в App Store.

    23.04.2014
  • Спасибо за ответ. Очень признателен. Что меня интересует, так это то, что один человек покупает мое приложение в AppStore, а затем загружает его через торрент. Если кто-то другой скачает приложение с этого торрента, что мешает ему запустить приложение? 23.04.2014

  • 3

    Несмотря на то, что ответы, которые я получил, были полезными, они не совсем дали ответ, который мне был нужен. Оглядевшись, я нашел программное обеспечение под названием Receigen от Laurent Etiemble и часто задаваемые вопросы на его сайте (http://receigen.etiemble.com/faq.html) дал много ответов на то, что я искал. Например

    Что такое проверка квитанции App Store? Зачем это нужно? По сути, квитанция App Store — это то, что приложение должно проверить, чтобы убедиться, что копия является подлинной и может быть запущена.

    Что произойдет, если я не проверю квитанцию ​​App Store? Что ж, любой, у кого есть копия вашего приложения, может запустить его с надлежащей авторизацией или без нее.

    Легко ли написать подтверждение получения кода? Нет, потому что это требует глубокого понимания криптографии и методов безопасного кодирования.

    Не помешало и то, что Receigen сгенерировал код, который освободил меня от работы с кодом проверки квитанции. Receigen позаботится об этой части, чтобы я мог сосредоточиться на том, что действительно важно для меня: на моем приложении.

    Да, это стоит денег, но лично я более чем рад их платить, потому что нахожу эту часть разработки утомительной, скучной и сложной.

    04.05.2014
  • Запрошенный вами товар в настоящее время недоступен в магазине в США. ???? 15.05.2020

  • 4

    TPInAppReceipt — отличный пакет для этого.

    Я смог легко добавить локальную проверку квитанций после того, как попробовал многие другие менее успешные решения:

    19.09.2020
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..