本文来源于:金融电子化,作者:吴永飞、卢科兵、肖昊关键词:开放银行,算法,数据服务
吴永飞:开放银行的多平台SDK方案
2023-12-25
3426
在数字经济时代下,单一的金融服务越来越难以触达客户,金融机构必须寻找新的突破点,开放银行已成为各大银行数字化转型的重要路径选择。各家银行根据自身优势、定位、需求等差异,从开放银行数据流转的不同阶段采用了多样化的技术方案或管理手段,对开放银行的构建方式,呈现出更加多元化的特征。大多数银行围绕着开放银行概念的核心要素,即平台化和生态化来进行建设。平台化即通过联盟与合作,共建平台并构建综合服务能力,促进不同群体之间的直接连接互动。
运用开放银行理念建设消费生态和产业生态,是银行业未来发展的必然趋势。关于开放平台的系统建设,华夏银行重点关注了传输阶段的数据安全保护,针对在服务端、移动端、浏览器端的开放银行接口实施了支持多种加密算法的加密配置,同时对开放银行SDK的开发、使用、监测等全生命周期执行严格的安全标准,提升其安全性。

华夏银行首席信息官 吴永飞
一、技术实现方案
技术实现方案主要体现了数据传输合规,《个人金融信息保护技术规范》要求金融机构在使用公共网络传输时需对C2、C3类信息进行加密传输。该方案采用在管理台配置的方式,设定各平台数据传输所使用的加解密技术,包括对称加密和非对称加密的国密算法等,并将各平台数据传输的加解密方式进行封装进SDK,统一管控了加解密技术标准,并简化了日常项目开发的周期和成本,是数据传输合规较成熟的落地实践方案。
开放平台多平台SDK方案为接入方提供了封装的认证授权算法、加解密算法、国密算法支持、证书管理、Token管理、服务调用、结果解析等功能。通过提供支持服务器端、移动端、H5端的多平台SDK方案,既实现开放平台的安全接入、数据保护的统一管控的标准化方案,又大大简化了接入方的开发周期和成本,实现了对业务的快速响应和强力支撑。该方案支持多种加密算法包括多种国密算法,都可以通过平台进行配置,以下以常见的算法AES256等为例。
1.Java SDK
Java SDK封装的应用方服务器与服务提供方服务器直接交互的模式下,流程如图1所示。

图1 Java SDK加密通讯机制
应用服务器使用摘要算法对APPID、随机数、设备标识等进行合并,并生成摘要,使用密钥对摘要做签名;然后再对报文内容、签名、随机工作密钥等进行AES256加密,生成数据密文;再使用非对称加密算法对随机密钥进行加密,生成密钥密文;将数据密文和密钥密文通过HTTPS方式发送到服务提供方。
服务提供方使用私钥解密密钥密文,获取随机密钥;然后随机密钥对数据密文进行AES256解密,并对签名字段做验签运算;成功后,生成Token。使用服务方私钥对Token和随机数进行签名运算,生成签名,并使用随机密钥对Token和签名进行加密,将密文返回应用方。
应用方使用随机密钥解密密文,然后使用Token和随机数进行验签,成功后,后续交易在有效期内,基于Token做安全通讯。
2.移动端SDK
移动端主要指分为Android和IOS的场景,使用移动端SDK,封装的相关流程如图2所示。

图2 移动端SDK加密通讯机制
移动端SDK对APPID、随机数、设备标识等进行摘要计算,并使用随机密钥对数据摘要进行AES256加密,生成数据密文;然后对随机密钥进行非对称加密,生成密钥密文;将数据密文和密钥密文以HTTPS方式发送到应用方服务器。
应用方服务器端对密钥密文进行解密,获取随机密钥;然后使用随机密钥对数据密文进行解密,获取数据摘要;然后再对数据摘要进行签名,并对签名进行AES256加密,将签名密文返回给移动端SDK。
移动端SDK对签名密文解密,获取签名;然后使用新的随机密钥对APPID、随机数、设备标识、随机工作密钥、签名等进行加密,生产密文数据;并对随机密钥进行非对称加密,生成密文密钥;将密文数据和密文密钥通过HTTPS的方式发送到服务提供方。
服务提供方对密文密钥进行解密,获取随机密钥;使用随机密钥解密密文数据,获取明文;然后使用APPID、随机数、设备标识进行摘要运算,后对摘要和签名进行验签运算;验签成功后生成Token。将Token和随机数,进行签名,然后用随机密钥对Token和签名进行AES256加密,将密文返回移动端SDK。
移动端SDK使用随机密钥进行解密,并对随机数和Token进行验签;成功后,则获取的Token有效。后续所有交易,在有效期内,基于Token来做安全通讯。
3.JS SDK
JS SDK是基于浏览器客户端请求,H5客户端不具备保存密钥的条件如图3所示。

图3 JS SDK加密通讯机制
JS SDK以HTTPS的方式传送设备标识到应用方服务器。应用方服务器使用对APPID、随机数、设备标识进行签名,然后使用随机密钥将APPID、随机数、设备标识、签名进行AES256加密,生成数据密文;并对随机密钥进行非对称加密,生成密钥密文;将数据密文和密钥密文以HTTPS方式发送到服务提供方。
服务提供方解密密钥密文,获取随机密钥;然后使用随机密钥对数据密文进行AES256解密,获取数据明文;然后对APPID、随机数、设备标识进行验签,成功后,生成Token。然后对Token和随机数进行签名;将签名和Token使用随机密钥进行AES256加密,生成密文;返回给应用方服务器。应用方服务器解密获得对应的Token和随机数,并进行验签,通过后,证明Token安全可用,将Token返回给JS SDK。
JS SDK收到Token后,在有效期内,基于Token做安全通讯。
二、数据保护及合规
该方案主要关注数据传输阶段的数据安全保护,通过上述的算法进行加密传输。
并且针对SDK本身的安全,进行规范化管理。确保SDK自身的安全性,SDK的使用模式导致其自身的安全问题会产生放大效应。需要在SDK的开发、使用、监测等全生命周期期间执行严格的安全标准,减少安全漏洞的产生,及时发现安全漏洞并立即修补,提升SDK的安全性。
1.开发阶段
安全检测。首先需要参考安全基线,对外发SDK展开自动化测评和渗透测试,解决SDK所面临的安全问题,如泄露用户数据、自身存在安全漏洞、业务逻辑不完整、攻击面过多、第三方组件漏洞、不符合等保规范等。
2.发布前
安全保护。外发的SDK可能会包含登录、支付、统计、监测、通讯、推送、验证等众多业务逻辑,可能被外部逆向破解,以分析、调试其中的业务逻辑。
因此需要比对安全检测的结果,对SDK实施安全加固等主动防护操作,保护其核心算法、密钥、后台API接口、业务逻辑等关键内容,增强SDK安全性、降低被攻击的可能。
3.对外发布
安全管理。对需要集成调用的SDK登记应用包名、签名等信息,在SDK调用过程中验证宿主APP的包名、签名等信息,防止被非授权第三方非法集成和调用等问题的发生。同时通过接入管理,对存在重大安全隐患(安全威胁大、应用安全防护措施低、用户投诉多等)的APP进行接入封禁,确保SDK的接入安全。
4.运行过程中
运行监控。SDK的运行环境具有不可控性,因此需要对SDK实施主动安全监控,实现对SDK威胁的感知、对宿主应用所在环境威胁的感知(如SDK的宿主APP运行环境是否真实、安全;是否存在恶意攻击SDK、通过SDK窃取敏感信息、扰乱正常的业务交易等风险问题),在风险发生时或发生前做到预警、阻断,在风险发生后可以进行追溯。
5.面临风险时
安全响应。对SDK运行过程中遇到的各种安全威胁,需要借助SDK威胁态势感知检测、SDK渠道监测结果,分析各种安全威胁,通过业务控制、技术对抗及法律方法等,对安全风险及时进行响应处理。
SDK对个人信息及数据的收集和处理应符合国家法律、标准的规定。SDK在嵌入APP应用使用后,APP以间接方式访问开放银行系统的接口服务,API安全的内容也适用于SDK安全。
三、应用及成果
开放平台根据业务场景所需,对基本的金融服务进行标准化封装,以API、小程序、SDK等多种技术形式提供服务并对外发布,包括线上支付、数字生态圈、小微企业数字贷等零售和普惠领域产品通过开放平台向外输出API接口或H5页面与合作机构对接等。
华夏银行更着眼于“从内向外”开放,强调从核心到外围、再到开放平台、再到合作伙伴系统,是整个技术体系和产品服务体系的开放,而不仅仅是推出几个简单的API接口调用。为数字化转型、向外开放战略奠定技术基础,不仅是全行战略定位的重要体现,也是未来银行能力开放、共享生态金融的重要门户,更是打造具有自主知识产权、全面自主掌控金融科技产品的关键举措。
四、总结与展望
数字经济的产业规模正在快速增长,推进高质量数字化转型、健全适应数字经济发展的现代金融服务体系将是金融行业未来发展的主旋律。开放银行是银行业数字化转型的重要形式。随着国家不断加大对金融敏感数据安全的监管力度,商业银行在推进开放银行进程中面临着越来越艰巨的数据安全挑战。未来,华夏银行将在开放平台安全发展的道路上不断实践,加快推进开放银行建设,落实全行数字化转型战略,营造共享共赢的数字生态。
作者:
华夏银行首席信息官 吴永飞
华夏银行信息科技部 卢科兵 肖昊
本网站案例,除特殊标明来源的,版权归金科创新社所有,未经许可不得转载,否则将视为侵权,对于不遵守此声明或者其他违法使用本文内容者,本网站依法保留追究权。另,本网站部分案例、观点文章来源于网络素材,如有侵权,请邮件联系 fenglei@fintechinchina.com 处理!
特别提示: 本网站免费为广大金融企业提供IT选型咨询服务,详情点击 【 需求提交 】。
推荐阅读
更多
非凸科技:基于Rust生态+AI算法+机器学习技术打造的高并发低延迟高频交易系统
非凸科技基于Rust语言构建了高安全性、稳定性、高并发、低延迟的算法交易系统,通过使用大量的收敛函数和对于价格及波动率的结合预测,打磨出独特的算法策略,满足量化管理人对于高收益、高稳定算法产品的迫切需求。
2024年“鑫智奖”第六届金融数据智能优秀解决方案评选
非凸科技
2023-12-25
烟台银行:开放银行项目
为促进金融业务与场景服务的融通融合,以用户需求为导向,以场景服务为载体,以平台赋能、生态融合为目标,使我行金融产品和服务可以在多渠道、多场景触达客户,实现金融服务与业务场景的紧密结合,从而提升金融服务的宽度、广度和质量,烟台银行开放银行系统已于2023年12月20日正式上线运行,届时可通过组件化、模块化、标准化的方式输出我行金融产品,助力行内零售业务发展。
鑫智奖·2024第五届金融机构数智化转型优秀案例评选
烟台银行
2023-12-25
曹碧辉:建立数据服务级别协议,提升数据服务水平
随着企业数字化转型的不断深入,IT部门向业务部门提供的数据服务越来越多。为更好地维护这些数据,持续稳定地为业务部门提供满意的数据服务,需要供需双方在数据服务开始前达成约定,实现数据服务的有据可依。数据服务级别协议正是基于此产生的一种解决方案。
中国金融电脑
曹碧辉
2023-12-25
吴永飞:开放银行的多平台SDK方案
运用开放银行理念建设消费生态和产业生态,是银行业未来发展的必然趋势。关于开放平台的系统建设,华夏银行重点关注了传输阶段的数据安全保护,针对在服务端、移动端、浏览器端的开放银行接口实施了支持多种加密算法的加密配置,同时对开放银行SDK的开发、使用、监测等全生命周期执行严格的安全标准,提升其安全性。
金融电子化
吴永飞、卢科兵、肖昊
2023-12-25
中信建投证券:知识图谱技术在证券公司员工赋能平台中的应用探索
当前,金融机构在开展财富管理业务时,经常面临庞大的客户群体与综合服务能力不匹配的问题:一线员工学习压力大,客户服务针对性弱;个体经验难以持续产生价值,出现专业人才流失现象等。为解决这些问题,中信建投证券股份有限公司(以下简称“中信建投证券”)积极探索通过科技赋能提升财富管理能力,利用知识图谱和大语言模型技术,有效连接用户、产品和知识等节点数据,开发了具有专业知识生产检索功能的员工赋能平台系统。该系统可提高知识检索的准确率和召回率,提升公司知识和专家资源的利用率,助力企业提升综合服务能力。
中国金融电脑+
潘建东 王赵鹏 马张晖 尹序鑫 刘国杨
2023-12-25
中小商业银行之开放银行发展路径探析
近年来,向开放银行转型已成为中国银行业发展的新趋势。金融科技冲击了传统商业银行经营模式,互联网思维模式下的“互联网+金融”为现代商业银行业务发展注入新的动能。在此背景下,我国形成了“自下而上”、业务驱动的开放银行热潮。
当代金融家
余建强
2023-12-25
观点