随着开源技术的深入发展, 各行各业都开始采用开源技术, 金融行业也不例外, 尽管金融行业有着一贯保守、非常重视信息安全、隐私保护非常敏感、强监管等行业特点。
金融行业也采用开源技术?在我们普通人的思维中, 金融行业的开发人员, 应该是正襟危坐, 穿着一水的西服衬衫, 在城市中心的热点区域办公楼里, 本着安全第一、测试完备的原则,有条不紊、按部就班的做着开发任务, 一年发布几个大的版本发布。服务器用着大型机、小型机,操作系统还在使用UNIX; 而在开发工具、开发框架方面, 都是使用神秘的内部开发框架,或者购买一些大公司的开发语言和开发框架, 绝不采用互联网公司的那一套通用的开发框架, 开源技术更是不可能。
但是, 现实可能相反, 金融机构也采用开源技术?
答案是: 是的, 没错!
为什么会这样呢?套用一句比较官方的话语,就是:
数字经济的浪潮下,开源技术已成为全球软件技术和产业创新的主导模式,是新一代信息技术发展的基础和动力,广泛应用于各行各业,在企业科技创新和数字化转型方面发挥着积极的作用。
金融行业就是其中的典型代表之一。开源技术的出现和应用,催生了金融行业的剧烈变革,单一式的银行系统正在转向模块化的开源生态,为金融科技的发展和创新注入了巨大的活力,也让金融行业具备更高的灵活性。
用一些正常人能理解的话语,就是, 金融行业的利润也不比之前了, 采用专用架构、内部框架的时代已经过去了, 采用开源技术更能增加生产力, 只要做好开源的监管就好!
为什么会这样呢?
相比于飞速发展的互联网技术而言,如果金融行业还继续采用那些封闭的、仅内部使用的技术,很容易失去生命力:而对于金融公司内部,如果资助某个技术的一些业务项目如果被砍掉,这个技术很可能也完蛋;市场不好,这类技术遭裁切也是首当其冲。
受众太少、应用场景太窄,会让这些内部技术很快丧失先发优势!这里的例子是雅虎。
雅虎里面什么技术都自成体系,对象存储、消息中间件、内部的 wiki、JavaScript 的开发框架、移动端开发工具、Web 服务器、甚至类似 Linux 里的包管理与分发工具…这些技术可能在早期是很先进的,因为互联网上找不到等价物。可是随着网上开源运动的发展,这些封闭的技术越来越变得非主流,新加入的人往往抓狂。
而且,长期呆在封闭技术环境里的人,也很容易被工具洗脑,不知道外面的世界,离开了这个环境出去找工作,面试一问三不知。而这些技术最终也被内部的人摒弃、走向消亡,大家更愿意融入到开源世界中。
那自主研发呢?
自主研发, 首先就得有来自公司高层的强烈支持, 得有足够强的单独开发团队、有长期维护优化的决心、有来自业务部门的“财务赞助”, 还得有公司CIO 级别的高管在 IT 战略上的支持。一句话,就是要有“钱”有势(CIO的肯定),否则肯定干不下去。
想一想CIO如何说服CEO、CFO, 来投资一个长期的非直接盈利项目, 就像当年的阿里云,要不是马云这种大佬级别的直接拍板, 恐怕阿里云的发展也不会有这么迅猛。
而且, 不仅是业务应用导向的金融机构,包括科技公司在内,在研发自己的科技产品的过程中,都不可避免需要涉及到各种基础技术框架、技术库、底层工具,这些东西往往是“鸡肋”,自研的话,有点“不务正业”,而且你的团队往往在这些方面非常不专业,长期来看也维护不了, 既要钱也要人, 你是领导的话,你怎么搞?
所以, 即使是金融机构,也对开源技术感兴趣,为了应对开源技术的安全问题, 一些金融机构就团结起来, 成立一些公益性的开源组织, 制定行业标准,实现行业级的协作互助, 而后面还要说的FinOS基金会,就是这么一个面向金融行业的开源机构。
受监管机构认可的行业云服务商或类似 FinOS 基金会的独立非牟利组织,还可以为行业孵化一些开源项目,以及对话科技厂商,协调其发布有金融业针对性、特别安全加固、符合合规诉求的开源技术发行版(distro)。
开源技术发行版(distro ),运营的模式就是基于公共的开源技术进行优化、维护,提供商业化的发行版(distro),并向企业提供技术支持。 这方面的例子,最知名的就是Redhat,以Linux 开源技术为主, 提供专门的发行版Redhat Linux, 并提供收费的技术支持, 这方面Redhat Enterprise Linux就是一个极好的例子。另外的例子是Cloudera + Hortonworks,两家基于开源大数据技术 Hadoop 来做商业化产品及服务的公司。
Linux 基金会的2023金融行业开源应用报告作为全球开源技术的组织者和引领者, Linux 基金会研究中心在过去三年中与金融科技开源基金会 (FINOS) 合作,积极研究金融服务行业对开源的使用、贡献和参与。
对于金融开源技术基金会(FINOS), 可能一些没有从事过金融行业的人士并没有特别了解,这里再介绍一点:
FinOS Foundation(金融科技开源基金会)是一个华尔街的非盈利组织,它的前身是 Symphony Software Foundation, 而Symphony 则是一家前身脱胎于高盛内部 LiveCurrent 的即时通讯技术公司,由高盛、摩根大通、贝莱德、摩根斯坦利、美银美林、花旗、瑞银、野村等十几家金融机构联合投资),这个基金会并充当了行业与外部科技企业在开源协作方面的连接点,吸纳了 RedHat(红帽)、GitHub 等开源科技企业成为其白金成员。
FINOS
2023年,作为FINOS 研究报告的第三个年头,FINOS分析了定量和定性数据,以了解从银行业到资产管理再到对冲基金的全行业开源采用趋势。 与 2021 年和 2022 年的报告相比,该分析说明了开源软件的使用和贡献的方向性转变,并为行业领导者创建或完善其开源战略提供了资源。
Linux Foundation_The 2023 State of the Open Source in Financial Services
在FINOS的报告中, 有这么几个有趣的数字:
90% 的受访者认为开源对于金融服务行业的未来很有价值。65% 的受访者表示有更多时间用于开源贡献“学习和个人发展”以及“乐趣和享受”是受访者使用开源软件 (OSS) 的首要原因88% 的受访者认为开源对其组织的未来很有价值“开源内部开发的项目”是提高工作效率的首要因素,内部资源紧随其后78% 的人认为,与 2022 年相比,他们的组织从开源中获得了更多价值93% 的组织制定了允许使用开源技术的策略只有 5% 的受访组织禁止开源贡献52% 的受访者表示他们的组织中有开源项目办公室(OSPO)拥有 OSPO 的组织采用正式审查流程来评估 OSS 组件的可能性要高出 80% 以上总共 91% 的受访者相信他们使用的 OSS 维护良好并且是最新的对行业来说最有价值的开源技术是人工智能(AI)/机器学习(ML)、网络安全和云/容器技术这份报告有这么几个主要观点:
开源项目办公室(OSPO) 正在兴起并具有强大的影响力超过一半的受访者表示,他们的组织拥有 OSPO,65% 的受访者已经制定了清晰可见的开源战略,这使他们成为中短期内在组织内引入 OSPO 的有力候选人。
OSPO 对于培育将开源最佳实践与业务战略相结合的文化至关重要。 根据报告,拥有 OSPO 的组织更有可能拥有有关开源使用的结构化流程。 而且,OSPO 对于全面了解开源消费对于许可证合规性、安全考虑以及解锁组织如何使用开源的关键见解、揭示效率改进和协作机会至关重要。
业界认识到开源使用的价值几乎所有组织 (94%) 都允许一定程度的开源使用,78% 的组织报告称,开源增加了价值,与去年相比,这一数字显着增加,去年 62% 的受访者表示获得了更多价值。 这种上升表明人们正在加速认识到使用开源的好处,开源的好处包括提高生产力、提高软件质量和加快上市时间。 值得注意的是, 受访者对其组织内使用的开源库的维护比其他行业更有信心。
开源贡献变得越来越被允许与去年相比,贡献政策变得更加宽松,65% 的受访者指出,他们的组织分配给他们为开源做出贡献的时间和精力有所增加,这反映出对协作努力的日益承诺。 内部来源贡献也更为普遍,超过一半的受访者每周都会向内部来源做出贡献。 这种伙伴关系培育了开放和知识交流的内部文化,使组织和个人受益匪浅。 受访者确认,金融服务组织之间的贡献有多种形式,包括通过特殊利益团体 (SIG) 的合作,这为全行业讨论挑战和机遇提供了宝贵的机会。
个人可以通过多种方式参与开放式协作。 组织应建立 OSPO 和内部源计划,根据组织的开源成熟度水平,利用这些项目积极识别和推广员工可接受的协作方式。 等待这样做的公司可能会落后。
开源的问题并未全部解决,但机遇依然存在多种因素仍然阻碍着对这个高度监管行业的贡献。 一个典型的例子是金融服务组织要求记录外部员工的沟通,这限制了与更广泛的开源社区互动的途径。 尽管面临挑战,受访者仍认为人工智能/机器学习、网络安全和云/容器技术是行业未来最有价值的开源技术,而提高生产力、数字身份、行业标准和降低运营成本是最有希望实现的领域。 从开源协作中受益。 采访一致强调了开源在理解和标准化监管要求和合规性方面可以释放的潜在价值。
围绕监管要求的通用标准和协作创新对于整个行业的参与者(包括监管机构、受监管实体和消费者)具有明显的好处。 该领域发展迅速,具有提高透明度和显着降低实施成本的巨大潜力。
国内对于金融行业采用开源技术的情况对于国内的金融机构而言, 也会采用开源技术, 这方面与国外并没有区别。 而且, 国内还有着更加集中的监管机构。
2021年10月20日,人民银行办公厅、中央网信办秘书局、工业和信息化部办公厅、银保监会办公厅、证监会办公厅联合发布《关于规范金融业开源技术应用与发展的意见》(以下简称《意见》)。
《关于规范金融业开源技术应用与发展的意见》全文共计二十条内容,旨在规范金融机构合理应用开源技术,提高应用水平和自主可控能力,促进开源技术健康可持续发展。
其中, 《意见》中的开源技术,是指“金融机构从代码托管平台、技术社区、开源机构官方网站等渠道获取,或通过合作研发、商业采购等方式引入的开源代码、开源组件、开源软件和基于开源技术的云服务等。”
《意见》整体管理要求《关于规范金融业开源技术应用与发展的意见》明确提出,金融行业不必因为害怕开源技术潜在的安全风险而不敢迈出临门的一脚,企业可以根据自身发展需要,继续应用开源技术,其中在第“三、四、五”条中,对于金融机构采用开源技术应用,提出了整体管理要求。
“三、金融机构可以将开源技术应用纳入自身信息化发展规划,明确开源技术应用目标,制定开源技术应用工作方案并组织实施”; 这一条指明金融机构要有使用开源技术的整体规划,金融机构应该具备企业级开源软件治理战略,能够进行开源治理战略规划与实施。“四、鼓励金融机构加强对开源技术应用的组织管理和统筹协调,成立由科技、法务、采购等部门组成的开源技术应用协调机制,负责开源技术评估、选择、应用等工作,协调解决应用中遇到的困难和问题”;“五、鼓励金融机构建立健全开源技术应用管理制度体系,规范开源技术的引入审批、技术评估、合规使用、漏洞检测、更新维护、应急处置、停用退出等行为”。 这一条指明金融机构要有开源的管理规范和开源软件管理制度。《意见》:开源技术的使用过程——以业务场景为核心,需覆盖开源使用全周期,掌握核心技术“六、金融机构可以根据金融业务场景,选择适宜的技术路线,制定合理的开源技术应用策略,包括独立完成开源技术应用及运维、引入第三方机构的开源技术支持服务、采购开源技术提供商的商业软件版本及服务等”;“七、金融机构可以根据开源技术使用情况,建立开源技术应用台账,及时掌握开源许可证变更、漏洞、闭源、停服等变化情况,实行常态化管理,规避风险”;“八、鼓励金融机构将开源技术应用作为提高核心技术自主可控能力的重要手段,加强开源技术研究储备,掌握开源技术核心,以应用促提升,依托金融业丰富的业务场景促进开源技术迭代升级”。《意见》:使用开源技术中的风险管理——及时识别可能存在的风险点并做相应处置和记录《关于规范金融业开源技术应用与发展的意见》中,对于风险管理的要求是比较多的, 九、十、十一、十二涉及到开源的风险管理部分。
“九、推动金融机构建立健全对开源技术基本功能、性能指标、安全性、社区成熟度、商业支持度、行业认可度等方面的评估体系,对开源技术引入、使用、更新、退出等环节开展定期评估,在提升自身评估能力的同时,可结合实际引入第三方评估服务。”;
“十、支持金融机构对开源技术版权、专利、商标、声明等进行事前合规审查,通过审查开源许可证遵从性和兼容性、梳理开源技术间依赖性等,避免法律纠纷。可根据需要引入第三方合规审查服务。”;
“十一、支持金融机构制定应急处置预案,应对开源技术潜在漏洞、后门及闭源、停服等突发情况。通过规划备选方案、限制使用场景、储备核心技术人才等措施降低风险。及时更新应急处置预案,定期开展演练,保证应急处置预案的有效性。”;
“十二、支持金融机构加强开源技术供应链管理,保障开源技术产品和服务质量,通过合同或协议条款,明确开源技术提供商义务和责任,并要求开源技术提供商对其提供的开源技术进行技术评估、合规审查等。”
国内的金融行业的开源技术管理机构在这方面, 国内已经有一些机构和公司在从事开源技术的管理工作, 例如, 开放原子开源基金会作为我国首家开源基金会,致力于推进开源项目、开源生态的繁荣和可持续发展。
北京国家金融科技认证中心有限公司于2011年设立,作为金融行业首家国家级认证机构,对金融行业的产品、服务、系统、基础设施等开展质量认证、检测测评、评估评价等服务,积极参与开源安全委员会共建活动,推动金融行业开源安全标准建设,持续完善开源风险应急响应机制。
北京中科微澜科技有限公司(简称“中科微澜”)是由中科院软件研究所科技成果转化项目孵化形成的一家科技创新类企业,致力于连接前沿技术与产业痛点,为企业提供智能化安全漏洞检测、大型软件测评、大规模代码漏洞挖掘、云环境主机漏洞管理、开源漏洞威胁态势感知等解决方案和产品能力。
深圳国家金融科技测评中心是由中国人民银行批准成立的国家级第三方专业测评机构,坚持以“服务国家战略、服务金融监管、服务产业发展、服务金融消费者”为发展定位,以贯彻落实国家和人民银行对金融科技的发展监管要求为己任,积极开展金融科技应用测评、风险监测、监管科技以及合规科技建设,助力产业高质量发展。
中国信通院更是结合自身的长期的开源技术的管理经验, 提出了开源治理能力成熟度框架图:
作为开发者, 如何面对金融行业的开源要求?前面说了这么多, 其实是对金融行业采用开源技术的一般性介绍, 那么, 对于开发人员而言, 需要了解什么, 做什么呢?
对于一般的开发人员而言, 只要认真阅读和遵守公司的开源政策, 不随意采用互联网上的开源软件和技术, 在引用第三方开源软件之前, 查阅公司的开源规定, 一般就不会出现太大的问题。如果想参与互联网的开源项目并提交贡献(PR), 那么还要咨询公司的开源办公室,一般签署一些保密协议就OK。
但是如果是金融行业的开发人员, 那么在采用开源技术时, 就需要了解更多公司层面对于开源技术的管理规定, 如果是提交贡献, 一般而言更需要谨慎。
如果想要成为金融行业的开发人员, 如果想要更加全面的了解金融行业的开源要求, 建议还是要多了解FinOS 提供的服务。
作为一家专业从事开源金融服务的组织机构, FinOS 无疑是非常专业和开放的,一方面,他们在Github 提供了代码、文档等开源服务, 可以从这个github 网站获得: https://github.com/finos
在FinOS的这个Github里,既有一些具体的可以直接使用的技术组件, 如FINOS Calendar, 这是一个对FullCalendar进行封装的适用于金融行业的日历组件,FullCalendar是一个非常流行的JavaScript 日历组件,功能非常丰富,有多达300项的设置,
FinOS Calendar是对FullCalendar这个软件进行了封装, 具体使用的例子可以查看https://www.finos.org/calendar, 这个网页可以订阅FinOS的各种会议。
FinOS的其他技术组件
名称
介绍
网址
Vuu
Vuu - 一个开源视图服务器和基于 html 5 的 UI 系统,一种在服务器上以表格形式表示外部数据的机制
https://github.com/finos/vuu
Legend
Legend 是一个数据平台,提供通过 API 或自助查询访问数据的单一位置,并内置治理能力;Legend Studio 是一个数据模型编辑器,可让您描述、连接和可视化数据。 Legend Engine 是Legend 数据执行引擎Legend SDLC Server 提供丰富的 REST API,允许用户安全地管理元数据。
https://github.com/finos/legend-studio
perspective
数据可视化和分析组件,特别适合大数据集或者流式数据。
https://perspective.finos.org/
common-domain-model
CDM 是金融产品、这些产品的交易以及这些交易的生命周期事件的模型。 它是一个开源标准,可以协调数据、系统和流程,并且可以多种语言的代码形式提供,以便于跨技术实现。
https://github.com/finos/common-domain-model
FDC3
金融桌面连接与协作联盟 (FDC3) 的使命是开发特定的协议和分类法,以提高金融工作流程中的桌面应用程序以即插即用的方式进行互操作的能力,而无需事先签订双边协议。
FDC3 为金融桌面上的应用程序之间的互操作性提供了开放标准。
https://github.com/finos/FDC3-Conformance-Framework
Waltz
Waltz 允许您可视化和定义组织的技术景观。 将其视为公司架构的结构化 Wiki。
https://waltz.finos.org/
open-source-readiness
开源准备度是一个协作项目,旨在开发有关开源软件及其生态系统的综合知识体系 (BOK)。
该项目旨在为对开源软件感兴趣的个人、组织和社区提供参考点。 它旨在成为希望使用或为开源软件做出贡献的企业的综合资源。 它涵盖了开源理念、不同类型的许可证、管理开源项目的最佳实践以及开源开发中使用的工具和技术。
https://osr.finos.org/OpenSourceReadiness
FinOS perspective
开源准备度是一个从开源成熟度、合规管理、风险管理、角色管理等三个层面对企业和组织的开源技术选取和使用进行描述、评级, 并提供最佳实践:
Open Source Readiness (OSR) 特别兴趣小组 (OSR SIG) 致力于帮助金融服务公司推进其开源项目,生产和收集:
OSR 知识库 - 一个协作项目,旨在开发有关金融服务行业开源最佳实践的全面知识体系。帮助公司完成开源使命的各种资源。综合培训和认证材料,公司可以使用这些材料来培训和认证开发人员在金融服务环境中的开源贡献。目前, OSR SIG 提供两个认证, 一个是金融行业开源贡献认证(LFD137),通过这个课程的学习, 可以获得以下知识:
了解有关社交媒体使用的开源贡献的法规/流程。了解金融机构内部发布开源贡献的法规/流程。了解在财务软件中使用开源组件的流程。了解安全风险/注意事项以及如何减轻它们。了解现有银行法规如何与开源开发相交叉。目前LFD137这个项目是免费的!不过只有英文版可以访问, 中文版尚未上线,地址:https://training.linuxfoundation.org/training/open-source-contribution-in-finance-lfd137/#
一个是FINOS 金融服务开源开发人员, 这个是FINOS 金融科技开源基金会(Fintech Open Source Foundation, FINOS) 与 Linux 基金会共同推出了针对金融服务行业的 FINOS 金融服务开源开发人员 ( FINOS Financial Services open Source Developer, FSOSD) 认证。
FSOSD认证是专为在金融机构工作的软件工程师、开源开发者、DevOps工程师、FinOps从业者或信息安全团队设计的专业认证。获得认证的FSOSD开发人员将证明其在金融行业中如何进行开源贡献的能力。FSOSD认证将展示考生能够理解监管对其行为的影响,以及对他们在自己的组织中和公开运营开源项目的期望。
网址:https://trainingportal.linuxfoundation.org/courses/open-source-contribution-in-finance-lfd137
总结本文系统总结了金融行业采用开源技术的整体情况,展示了当前金融行业采用开源技术的监管情况,最后介绍了FinOS提供的开源金融服务, 以及提供的两个认证。 通过这两个认证, 可以加深金融行业开发人员对于开源技术、开源知识的理解和金融行业的监管要求。
随着我国不断开放外资金融的限制, 越来越多的外资金融机构会来到我国开展业务, 作为想从事外资金融机构的开发人员来说, 提前考取一个FinOS的专业金融服务开源认证, 也是一个提高个人竞争力的好机会!
#FinOS#