> 唯美句子 > ios的开发和发布签名证书有何异同

ios的开发和发布签名证书有何异同

ios的开发和发布签名证书有何异同

开发证书是用来测试的,需要将设备绑定到账号,才可以识别,在真机调试的时候可以看程序打印;发布证书主要用来打包发布APP用的,也可用于真机调试,但是看不到程序打印。

ios企业签名是什么意思

企业账号证书签名区别于个人账号和公司账号,企业签名后的app可以直接用来内部下载安装测试使用,不用审核,但是不上架appstore,可以是直接用链接或二维码进行下载。

ios9 识别自签名证书能用吗

公司的服务器被人DDOS攻击了,后台改用自签证的证书,全部请求改用HTTPS. iOS的网络请求也需要全部改. 坑爹的是项目中有两套请求方案. 1,使用原始苹果自带的NSURLConnection 2, 是我接手以后改用的afnetworking. 要全部改的话一下子没那么多时间改的过来. 就只好两个方案都实现下HTTPS

* afnetworking 使用字签证证书访问HTTPS

* 把服务器给你的自签证的证书放入bundle一般是.cer文件

* 创建afnnetworking 安全策略对象,并设置发起请求manager的安全策略属性.设置了安全策略属性,afnnetworking会自动扫描bundl里的证书.

* 最坑的是 iOS9新出的App Transport Security 也就是要我们把所有请求从 HTTP改成HTTPS的家伙, 它竟然不认自签证的证书. 苹果大爷难道真是土豪惯了,以为我们开发者都会买ca的证书吗. 解决办法就是那里还是要设置在Info.plist中添加NSAppTransportSecurity类型Dictionary在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型 Boolean,值设为YES

//创建安全策略对象

AFSecurityPolicy * security = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate]; //设置证书

security.allowInvalidCertificates = YES;  // 由于是自签证证书 afnnetworking 会认为是无效的 设置为允许

security.validatesDomainName = NO; //验证证书绑定的域

[[AFHTTPRequestOperationManager manager]setSecurityPolicy:security]; //

//普通一样发起请求就可以

[[AFHTTPRequestOperationManager manager] POST:@"/test" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {

}];

* NSURLConnection 使用自签证证书支持HTTPS,只需要在实现NSURLConnection的代理方法即可. 这个解决方法转自GitHub JacksonTian 他原文中有多了行释放代码 CFRelease(trust); ,多了这行代码在短时间重复请求,一个URL的时候trust 会提前释放导致crash,没有细究原因,直接注释掉了.

#pragma Support NSURLCONNECTION HTTPS

- (BOOL)connection:(NSURLConnection *)connection canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace{

return [protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust];

}

- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge

{

static CFArrayRef certs;

if (!certs) {

//创建证书data

NSData*certData =[NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"HTTPS" ofType:@"cer"]];

SecCertificateRef rootcert = SecCertificateCreateWithData(kCFAllocatorDefault,CFBridgingRetain(certData));

const void *array[1] = { rootcert };

certs = CFArrayCreate(NULL, array, 1, &kCFTypeArrayCallBacks);

//        CFRelease(rootcert);    // for completeness, really does not matter

}

SecTrustRef trust = [[challenge protectionSpace] serverTrust];

int err;

SecTrustResultType trustResult = 0;

err = SecTrustSetAnchorCertificates(trust, certs);

if (err == noErr) {

err = SecTrustEvaluate(trust,&trustResult);

}

//    BOOL trusted = (err == noErr) && ((trustResult == kSecTrustResultProceed)||(trustResult == kSecTrustResultConfirm) || (trustResult == kSecTrustResultUnspecified));

BOOL trusted = (err == noErr) && ((trustResult == kSecTrustResultProceed) || (trustResult == kSecTrustResultUnspecified));

if (trusted) {

[challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge];

}

else{

[challenge.sender cancelAuthenticationChallenge:challenge];

}

//    CFRelease(trust);

}

**后面通过测试, 不实现上面的委托, NSURLConnection 也可以直接连接HTTPS服务器, 这种是绕过了证书的. afnetworking 不设置安全策略就无法访问HTTPS服务器.注:afnnetworking版本使用的是2.5.4 ,之前的版本关于安全策略的API有bug 在afn的issue中看到**

苹果ios帐号证书签名 多少钱

有账号就可以制作证书,证书可以用于给代码/app签名,签名后的app可以发布。

账号的开发权限是要买的,个人版/公司版每年费用为99$,企业版299$。企业版面向500人以上企业,开发的app只能发布在自己的服务器上,而不能上传苹果商店。

个人版/公司版可以发布app到苹果商店。他们的区别在于签名性质,前者是个人所有,后者是公司所有。

每个账号在使用期内都可以免费制作任意个开发、发布证书,不受限制。

ios个人开发者证书怎么重签名

iOS证书学习推荐博客代码签名探析,本文重点在于介绍ios8.1.3系统ipa包重签名(如企业证书)无法安装的问题。苹果在iOS8.1.3系统以后加强了对ipa安装包签名的验证,主要区别在于ipa唯一标识在原有Bundle Identifier的基础上增加了证书ID,也就说安装包和手机上已安装APP的Bundle Identifier即使一致,如果两者签名的证书ID不相同,那么安装包也无法正常安装。证书ID是什么?

图中方框里字符串就是证书ID,升级后的ipa标识就是证书ID+BundleID,只有两者完全匹配,安装包才能覆盖安装,否则就会提示安装失败。解决办法就是卸载安装包,重新安装!

用个人证书签名的苹果app,怎么实现别人都可以下载!

上传的app store

在iOS中创建及使用自签名SSL证书应该注意什么

自签名SSL证书创建快速且不用支付任何费用,无需购买证书授权,无需遵守任何审计要求。

不过,使用自签名证书,浏览器并不会自动信任使用它们的网站。因此在移动Safari浏览器上使用HttpWatch app时,你常常会看到类似下面的警告:

使用自签名证书时浏览器发出的警告

使用HttpWatch iOS app 则提示更多警告信息:

使用自签名证书时浏览器发出的警告

那么,如何设置iOS才能避免接收此类警告呢?使用自签名证书应该注意些什么呢?我们先来看两点:

一、不要在移动Safari中接受自签名证书

当你在Safari中首次尝试使用自签名证书时你可能自然而然就选择了Continue或者Details->Accept。

不要在移动Safari中接受自签名证书

虽说这样也可以在Safari中打开站点,不过值得注意的是:

1. 在Safari中选择Continue或者Details->Accept接受此证书后,只是添加了一个SSL连接异常,可阻止Safari继续向你警告相关站点。但它不会安装该证书作为iOS上的可信任证书。该设备上的其他应用程序(如Chrome、HttpWatch等)仍然无法连接到该网站。

2. 一旦添加了SSL异常,在iOS7系统中再想移除它是很困难的。在以前的版本中,通过Settings->Safari and selecting ‘Clear Cookies and Data’ 可以将其移除。但在iOS7中似乎不太容易实现。

二、安装自签名证书作为iOS的配置参数文件

你可以简单地通过将该文件发送给自己作为附件的方式在iOS中添加SSL证书到受信任列表中:

安装自签名证书作为iOS的配置参数文件

然后选择Install添加证书。这样一来,当你在Safari中使用证书时就不会再收到相关警告,其他iOS应用程序在该设备中使用也不会再收到类似警告。

与上面按Safari SSL异常处理不同的是,用这种方法安装你可以通过Settings->General->Profiles随时访问证书,需要的时候也可以删除它:

删除证书

Apple为Mac和PC提供了安装证书的iPhone配置实用工具。当电子邮件不可用或需要管理的iOS设备数量较多时,这是一个好方法。

如何让淘宝卖ios企业证书签名的立马被苹果封号

苹果的企业证书 in house发布,只能发布给企业内部员工使用。

如果被查出用来发放给普通消费者是会封的。

貌似封的期限是一年,一年后对应的企业邓白氏码貌似又可以注册。

至于想等到被封给苹果发邮件,基本没用。

哪怕你打到苹果中国开发者服务热线,他们的权限也不够处理这事。

苹果中国开发者服务热线,貌似只能停留在购买证书支付上。

苹果ios帐号证书签名怎么修改密码

方法/步骤

1. 准备CSR文件

和苹果打交道,最好是准备一台Mac机。这里需要用到一个苹果自带的KeyAccess的软件,用来生成证书的申请文件。

点击“从证书颁发机构请求证书”后,会出现下图:

这里就是输入邮箱,名字,需要提醒一下的是,我们一般选择“存储到磁盘”,把申请文件存在硬盘上,后面需要上传这个文件到苹果后台。

2. 申请证书

准备好证书的申请文件后,就应该是申请证书了。

证书分成开发证书和发布证书,其中有没有推送功能又是不同的,根据实际应用的功能选择证书的种类:

然后上传刚刚生成的CSR文件

按下Generate后,稍等一会,证书就生成了,你可以下载然后安装到本机。

3. AppID

需要强调一下的是,这里的AppID和常说的AppleID不是一个概念。AppleID是用户在苹果的账号,在AppStore上下载应用时,需要使用的就是这个账号。而AppID则是应用的身份证,用来表明应用的ID。

在证书生成后,下一步就是生成AppID,相当于帮你想开发的应用生成一张身份证。

AppID需要你起一个名字以方便描述。这里不能输入特殊字符。

AppID还分成带通配符和不带通配符两种。在AppStore上正式发布应用时,应用必须有唯一的名字,所以需要使用不带通配符的AppID;而在其他时候,为了方便多个应用共用,我们往往使用带通配符的AppID。

最后一步是选择应用的服务,这个需要根据应用的实际情况选择,如果你还不清楚应用具体的情况,那么这些选项后面是可以更改的,选默认即可。

4. 注册设备

因为在开发过程中的苹果应用不可能在AppStore上发布,这样半吊子的应用是无法装在设备上的。那么调试和测试怎么办呢?苹果推出了Adhoc版本,这是属于在发布前的测试版,只有在后台注册过并被签名文件引入的设备才能安装运行。

这里需要输入设备的UDID,根据账号的类型,可以注册100台或者更多的设备。

5. 生成签名文件

签名文件是应用签名的核心文件。签名文件同样也有开发和发布的区分,当然,Adhoc发布和AppStore发布的签名文件也是不同的。

5.1

签名文件需要和一个AppID捆绑,这个根据实际情况选择,一般开发用的签名文件,会捆绑一个带通配符的AppID,这样可以在一系列的应用中通用;而发布AppStore的签名文件,必须捆绑一个不带通配符的AppID。

5.2

然后是选择证书:

5.3 下一步是选择设备,只有选中的设备才能安装应用。当然,如果是AppStore的签名文件则没有这步

5.4 最后,输入签名文件的名字,按下Generate按钮,签名文件就生成了。

这样,在生成一系列相关内容后,签名文件生成了,你可以下载这个文件,然后给应用签名了!

ios的开发和发布签名证书有何异同:等您坐沙发呢!

发表评论

表情
还能输入210个字