金融行业标准网
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210916893.9 (22)申请日 2022.08.01 (71)申请人 银盛支付 服务股份有限公司 地址 518000 广东省深圳市龙华区民治街 道新区大道 997号远景家园五楼5 01 (72)发明人 潘信璋  (74)专利代理 机构 深圳市深可信专利代理有限 公司 44599 专利代理师 彭光荣 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/06(2006.01) (54)发明名称 一种iOS移动端和服务器后端的数据交互方 法 (57)摘要 本发明揭示了一种IOS移动端和服务器后端 的数据交互方法, 涉及互联网技术领域; 该方法 包括以下的步骤: S10、 通过生成证书文件; S20、 将RSA公钥放到服务端, APP启动时先检查RSA公 钥的更新状态; S30、 通过步骤S20得到非对称加 密RSA的公钥文件, 使用RSA公钥对该AES秘钥进 行加密; S40、 服务器后端获取到IOS移动端 的请 求数据, 把加密后的数据返回给I OS移动端; S50、 通过调用服务器后端提供的业务交互接口进行 IOS移动端和服务器后端的数据交互; S60、 通过 对步骤S50中获得各个业务接口的响应数据进行 解析, 从而将数据应用到IOS移动端对应的场景 中; 本发明的有益效果是: 通过对传输的数据、 秘 钥进行加密, 避免在和服务器后端进行数据交互 是的明文传输, 确保数据安全。 权利要求书3页 说明书7页 附图1页 CN 115442074 A 2022.12.06 CN 115442074 A 1.一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 该方法包括以下的步 骤: S10、 通过生成证书 文件, 并开启IOS移动端设置证书验证模式, 防止被抓包; S20、 将RSA公钥放到服务端, APP启动时先检查RSA公钥的更新状态, 有更新则下载并更 新, 无更新则正常调用和服 务端进行数据交互的接口; S30、 通过步骤S20得到非对称加密RSA的公钥 文件, 生成固定长度随机数作 为对称加密 AES的加解密秘钥, 使用对称加密AES方式对请求体content进行加密, 通过得到的RSA的公 钥文件, 使用非对称加密RSA公钥对AES秘钥进行加密; S40、 通过步骤S30, 服务器后端获取到IOS移动端的请求数据, 服务器后端通过校验、 解 析, 最终将需要返回的数据镜像加密, 并把加密后的数据返回给IOS移动端; S50、 通过调用服务器后端提供的业务交互接口进行IOS移动端和服务器后端的数据交 互, 通过步骤S3 0进行移动端的参数加密, 通过步骤S40实现服 务器后端对数据的响应; S60、 通过对步骤S50中获得各个业务接口的响应数据进行解析, 从而将数据应用到IOS 移动端对应的场景中。 2.根据权利要求1所述的一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 步骤S10中, 包括以下的步骤: S101、 通过证书机构颁发的证书文件, 生成超文本传输安全协议https的公钥证书格式 文件cer, 命名为certificate.cer, 并将该文件放到iOS移动端开发项目xcdoe工程的根目 上; S102、 通过二进制数据NSData的实例化方法dataWithContent sOfFile将公钥证书文件 certificate.cer文件转换为 二进制的NS Data格式数据data; S103、 若有多个公钥证书则通过步骤S101和S102生成多个二进制数据格式的data; S104、 通过证书验证方式AFSecurityPolicy初始化证书模式, 并将得到的该初始化对 象定义为securityPo licy; S105、 设置证书实 例对象securityPolicy的是否开 启证书检验属性 allowInvalidCertificates的值 为true, 表明 需要验证自建证书; S106、 设置证书实 例对象securityPolicy的是否验证域 名属性属性 validatesDomai nName的值 为false, 表明不用在证书域字段中验证域名; S107、 设置证书实例 对象securityPolicy的证书数据参数pinnedCertificates的值, 将步骤S101 ‑S103生成的二进制数据NS Data数据赋值给 上去; S108、 将上述得到的证书实例对象securityPolicy赋值给网络请求单例 AFHTTPSessionManager, 从而实现在iOS移动端调用服务端接口时, 进行证书 的安全性校 验。 3.根据权利要求2所述的一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 步骤S20中, 包括以下的步骤: S201、 约定好必要条件, 该必要条件包括对称加密AES的加密密钥、 加密长度sizes、 位 移padding、 模式model; S202、 生成非对称加密RSA的公钥文件, 并通过步骤S201中的AES加密后存储到服务器 上;权 利 要 求 书 1/3 页 2 CN 115442074 A 2S203、 APP启动的时候检查是否需要下载RSA公钥文件的标识, 如果需要则调用服务端 下载RSA公钥接口, 进行 下载步骤S202中输出的公钥; S204、 约定好需要更新公钥的标识, 当公钥有更新时, 在当前调用服务端的接口中把需 要更新公钥的标识返回给IOS移动端, IOS移动端在 统一接口封装拦截和解析该状态, 若检 测到则更新需要 下载RSA公钥的标识, 再下次调用服务端接口进 行网络请求时, 则需要 先下 载步骤S202中输出的公钥, 再往后执 行; S205、 当APP通过步骤S202下载得到公钥时, 则通过步骤S201约定的秘钥, 解密得到RSA 公钥。 4.根据权利要求3所述的一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 步骤S30中, 请求体对象content包含的业务参数包括请求来源src、 当前应用版本号 version、 当前设备唯一标识deviceId。 5.根据权利要求3所述的一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 步骤S30中, 包括以下的步骤: S301、 定义生成随机字符串方法为 ‑(NSString*)getRandomStringWithLength: (NSInteger)length; S302、 通过循环方法for循环, 以步骤S301的长度length作为最大循环次数, 在循环里 通过随机数方法arc4random获取随机数的值定义为a, 然后通过对a取余得到每次循环的随 机值, 再通过字符串拼接方法stringByAppendingString将这些随机值拼接起来, 最终输出 一个随机 字符串; S303、 IOS移动端在调用服务端接口获取数据时, 先通过步骤S301中获取随机数方法 getRandomStringWithLength生成随机的一定长度的随机字符串, 做为对称加密AES秘钥 AESKey用于对请求的参数进行对称加密; S304、 网络请求时, 将请求的参数转换成数据交换格式JS ON字符串, 通过获取到的随机 秘钥, 使用对称加密方式AES对该请求体字符串 进行加密得到加密后的请求体co ntent; S305、 通过得到的非对称加密RSA的公钥, 通过该公钥对获得的随机秘钥AESKey进行非 对称加密, 输出值 为checkKey; S306、 对请求的参数进行sha256的签名输出签名值sign, 用于服务端验证该请求的合 法行; S307、 将得到的由请求参数生成的请求体content、 经过非对称加密后得到的 checkKey、 以及经过sha256签名的签名值sign, 做为最终 的请求参数通过网络请求上送给 服务器后台。 6.根据权利要求3所述的一种IOS移动端和服务器后端的数据交互方法, 其特征在于, 所述的步骤S40, 包括以下步骤: S401、 服务器后端通过获取IOS移动端的请求参数, 解析获得IOS移动端通过网络请求 上送的sign、 c heckKey、 content; S402、 通过获得的签名值sign验该网络请求的合法性, 不合法则直接将错误信息返回 给IOS移动端; S403、 若签名合法, 则通过非对称加密的RSA私钥, 将随机生成的AES对称加密的秘钥 checkKey解析出来, 获取到实际的AES秘钥;权 利 要 求 书 2/3 页 3 CN 115442074 A 3

PDF文档 专利 一种iOS移动端和服务器后端的数据交互方法

文档预览
中文文档 12 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种iOS移动端和服务器后端的数据交互方法 第 1 页 专利 一种iOS移动端和服务器后端的数据交互方法 第 2 页 专利 一种iOS移动端和服务器后端的数据交互方法 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-18 22:27:53上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。