公司第一次尝试开发MFI设备,但是需要经过苹果认证后获取token才能进行开发,多个工程师一起研究他们的英文文档,折腾了半个多月才搞定,主要是网上没什么资料教,所以一直再死胡同里面测试。
前提:已经有MFI账号了。
系统环境:win
工具:keytool 、postman
第一步:安装生成证书工具(keytool),安装JDK,如果没有的请自行下载安装
第二步:生成证书
在cmd上执行, CMD一定要管理员模式运行,同时输入两次6位数以上的密码,密码一定要记住,很重要
keytool -genkeypair -keystore name.jks -alias <你的别名,随便填> -keyalg RSA -keysize 2048 -dname "CN=MFi-xxxxxx, O=Shenzhen XX Technology Ltd."
第三步:复制生成的内容,必须从开头和结尾的标签符开始复制,否者不通过
--------begin cert--------
*******************
--------end cert-----------
第四步:进入苹果MFI页面提交证书信息,一共可以提交2次,请注意别弄丢了
第五步:生成jks文件
keytool -certreq -keystore mfi.jks -alias <你的别名,随便填> -sigalg SHA256withRSA
此时步骤已经完成,JKS文件已生成,在哪个目录自己看CMD的路径。
第六步提取私钥key
1、先把jks证书转换成pfx格式,证书名称和证书秘钥填你们自己的,那个abc是你们自己的秘钥密码
keytool -v -importkeystore -srckeystore abc.jks -srcstoretype jks -srcstorepass abc -destkeystore abc.pfx -deststoretype pkcs12 -deststorepass abc -destkeypass
2、输出key文件,abc.pfx是上一个步骤生成的文件,如果你没改名的情况下
openssl pkcs12 -in abc.pfx -nocerts -nodes -out abc.key
已经有pem文件和key文件了,下一步准备安装postman工具
工具下载地址:Download Postman | Get Started for Free
使用postman进行获取相关参数。
我们看到的相关信息,request参数如下(PPID+数量100):
{ "ppid" : "XXXXXX-XXXXXX", "requested_auth_entity_count": 100}
curl -H "Accept: application/json" -H "Content-Type: application/json" -d "{\"ppid\" : \"xxxxxx-xxxxxx\",\"requested_auth_entity_count\" : 1}" "https://swa.apple.com:443/api/v1.0/external/authEntityRequests"
在postman软件里面导入如下命令,PPID改成你们的,数量也是改成你们的:
添加证书和私钥信息
然后get获取csv文件,完成!