Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何向ios应用程序添加产品密钥功能_Ios_Encryption_Product - Fatal编程技术网

如何向ios应用程序添加产品密钥功能

如何向ios应用程序添加产品密钥功能,ios,encryption,product,Ios,Encryption,Product,我已经制作了一个Swift应用程序,我想根据产品密钥或许可证密钥分发该应用程序。我不会将此应用发布到app store,我将在公司设备上构建该应用,并给它们一个产品密钥,因为我想将其分发到许多公司。该应用程序将第一次要求提供产品密钥,以后再也不会要求 我认为有一种方法是使用带有正则表达式的产品密钥模型,但我已经坚持了很长时间。有人知道吗?我不确定这是否是一个完整的问题,因此我建议创建一个简单的登录屏幕,并使用产品密钥和一组独特的公司电子邮件地址进行映射。假设我在Grizzle工作:我的产品密钥是

我已经制作了一个Swift应用程序,我想根据产品密钥或许可证密钥分发该应用程序。我不会将此应用发布到app store,我将在公司设备上构建该应用,并给它们一个产品密钥,因为我想将其分发到许多公司。该应用程序将第一次要求提供产品密钥,以后再也不会要求


我认为有一种方法是使用带有正则表达式的产品密钥模型,但我已经坚持了很长时间。有人知道吗?

我不确定这是否是一个完整的问题,因此我建议创建一个简单的登录屏幕,并使用产品密钥和一组独特的公司电子邮件地址进行映射。假设我在Grizzle工作:我的产品密钥是“12345”,我的电子邮件是samgriz@griz.io然后,您可以编写一个端点来接受这两个参数,并根据已知的产品密钥列表以及后端的电子邮件对它们进行验证


您还可以通过TestFlight分发此应用程序,并让人们通过WWDC今年刚刚发布的公共链接下载。这样,您就不必在每部手机上手动安装,您可以在TestFlight上使用多达10000个用户。

DRM是一个由来已久的问题,实际上无法解决。你的问题有点小题大做。一个很好的经验法则是:如果你的软件在用户的计算机上运行,他们可以用它做任何他们想做的事情——这包括避免你实现的任何DRM

不过,有一些方法可以解决这个问题——不要在用户计算机上运行软件。例如,如果软件的主要目的是将word文档转换为PDF,则将此功能提取到API服务,并将产品密钥解决方案用作使用该服务的授权解决方案


我的一般观点是,您处理这个问题是错误的,当软件在用户的完全控制下运行时,它无法解决。

避免API调用非常容易-本地DNS+本地Web服务器使此检查毫无意义。好的,这可能是一个可能的解决方案