按照传统的硬件检验方法检 验现代计量器具,无法发现和检测 计量器具软件中的质量问题。新型 计量器具型式评价过程中,应当包 含硬件与软件两部分,前者在标 准、规程规范和检验方法等方面比 较成熟,而后者则存在若干问题需 要解决。
本文就计量器具软件型式评 价提出几点思考,与同行交流。
一、理想的评价方法及目前 检测中的困难
对于测试一个全新的计量器 具软件,就功能性检测而言,其复 杂程度并不算高,根据需求说明, 编制检测大纲,按部就班地执行检 测步骤即可。计量器具软件有其自 身的特点——及时性、可靠性、易 读性。但是,针对计量器具软件的 特点,在验证功能是否正常的同 时,还要检测软件中可能出现的漏 洞,甚至是后门,其难度比编制一 个软件还甚。
软件检测是为了发现设计人 员、编程人员由于疏忽或故意而留 下的隐患和错误。软件检测方法归 结起来,不外乎黑盒测试与白盒测 试。黑盒测试相对简单易行,一般 用于功能验证;白盒测试则比较繁 琐,主要用于内部逻辑检查。面对 由少则近万,多则十几万甚至更多 软件源代码编译成的机器代码,仅 通过黑盒测试,即使采用了自动测 试工具,也很难确保软件质量的可 靠。如果对这么多源代码进行白盒 测试,人工时间成本过高,不能适 应管理部门和企业对计量器具型 式评价时间的需求。
通过分析部分计量器具软件 的源代码可知,源代码中很大一部 分是实现各种功能的代码,真正涉 及法制计量管理部分的(比如传感 器通信、数据读取、保存、处理、显 示等)并不多。正是这些原因,也促 使OIMLD31《软件控制的计量器 具通用要求》中提出软件分离的概 念,将法制规定和要求囊括的管理 部分与市场客户需求的功能部分 分开。在型式评价时,仅针对法制 管理的软件部分进行测试。 JJF1182-2007《计量器具软件测评 指南》中将这种分离称为法制软件 部分和非法制软件部分的分离。这 样做对管理部门、检测机构和软件 制造商而言都有利。降低管理风 险,更加有效地实施监督,降低检 测成本,提高型式评价效率,企业 版本控制得力,核心知识产权得到 保护。
就计量器具软件型式试验检 测而言,为降低管理风险,提高型 式评价的工作效率,实现知识产权 保护,理想的型式评价流程大体如 下:功能检测^法制软件部分白盒 测试^非法制软件部分抽样测 试^版本备案。
从管理角度出发,功能检查是 与现有计量法规保持一致,法制软 件部分的白盒测试是保证计量器 具软件质量、降低发证和管理风险 的有效手段,非法制软件部分的抽 样测试是保证软件整体质量可靠, 版本备案将为日后法制目的活动 提供相关证据。就目前情况而言, 还有以下实际困难。
1.时效性
如果按照白盒测试的要求,需 要经过较长时间的前期准备,包括 与研发人员的沟通,走读大量的程 序代码,进行相关的临界值测试, 判断功能算法的正确等内容,往往 会超过3个月的时间。而目前型式 评价试验根据不同的项目,时限要 求非常严格,在目前对软件规范度 还不够高的情形下,很难在限定的 时间内完成软件的白盒测试,满足不了型式评价的时限要求。
2.风险性
即使给予了充分的时间保障, 对于一个没有进行软件法制部分 和非法制部分分离的计量器具软 件而言,一般检测人员需要做到 100%覆盖率的检测仍然是一项高 难度的技术工作。即使做到了 100%覆盖,仍不敢断言其中没有 缺陷。
就目前而言,软件的覆盖率测 试达到50%已经是一个比较高的比 例。在这种情形下,另外的50%只能 靠其他技术,甚至是检测人员的个 人经验进行必要的判断。如此处 理,软件评测的风险就随之而来。
3.版本多
另一个比较普遍的问题是,厂 家的计量器具软件版本往往有很多, 有测试版本、最终版本、地区版本, 这些版本本身还有不同的升级版 本。进行检测的往往是其中之一。
二、国际上的做法
现在计量器具软件的重要性 已经得到全世界的认同。国际法制 计量组织也出台了相关文件和国 际建议。美国国家标准与技术研究 院(NIST)考量的是软件系统的稳 定性、易用性和安全性,特别注重 新技术的研究和应用。譬如云计 算、计算机安全、加密算法、软件检 测方法等。欧盟、曰本、加拿大、新 西兰和澳大利亚等地区及国家相 对而言更加愿意参与制定行业规 范并执行OIML的建议和文件。譬 如OIML R76《非自动衡器》在欧 盟特别是德国以及日本等国已经 得到较好贯彻。
根据欧盟的做法,首先是将计 量器具根据多个因素综合评定后 分类,从A到F,不同的级别由低到 高代表了不同的风险等级。然后根 据不同级别设定不同的计量器具软 件检测要求及方法。 对于高风险等 级的除了常规测试外,还要进行源 代码级别的测试。任何新版本的软 件必须按照新软件进行检测和实 验。
以衡器为例,根据OIML R76 的规定和要求,首先制造商需要按 模块化方案,提交衡器型式评价的 技术规范说明性文件等相关检测 资料。检测和认证机构应当对衡器 的所有文件保密。另外,制造商出 具一份衡器中控制软件功能的完 整性及一致性声明。即制造商需要 声明:提交的技术文档已经全部描 述了样品的所有功能,样品的实际 功能执行结果与文档中的描述完 全一致。根据这些文档,再结合与 制造商技术人员的沟通、交流,给 检测机构对一个全新的衡器产品 的计量性能和软件质量进行全面 的检测奠定了坚实的基础。同时, 制造商的声明,也减少了型式批准 隐含的责任风险。
在欧盟的法制管理理念中,责 任主体发生了变化。在新版OIML R76中,涉及检测或型式批准中的 一些要求,大部分的责任或需要承 担可能带来的后果的主体是厂家, 绝大部分的内容需要厂家自我声 明,就是说,指定的检测机构对厂 家提交的各种书面材料,第一态度 是认可,然后按照你说明的内容, 一一去验证。对于厂家的产品可能 存在的问题如果当时并没有检测 出来,在投放市场之后被发现,那 么厂家是唯一对所有可能造成的 后果承担责任的人。而指定的技术 检测机构或颁发证书的机构不需 要对此承担任何责任。这一点和我 国国情不太一样。我国目前还是谁 发证谁负责,一旦市场上发现有问 题的计量器具,厂家会把责任推给 检测机构。这就会给检测或颁发证 书的机构和部门带来负面影响。如 何最大限度地保证计量器具产品 的软件质量以及不被无意和有意 的修改,如何最大限度地规避计量 软件检测中可能存在的风险,是目 前必须解决的问题。
三、设想
从2003年国家质检总局开始 关注计量器具软件问题开始,到现 在已有10多年时间。我们已经建立 了国家计量器具软件测评中心,推 出了两部计量技术法规,培养了一 批从事计量器具软件检测的专业 人才。而且,社会各界对计量器具 软件检测期望越来越高。对国家明 令打击的计量器具作弊违法行为, 我们应当提出切实可行的技术支 撑方案。现就计量器具软件型式评 价提些设想,以供大家讨论。
1.法律法规建设
根据软件测评的特点和国内 外对计量器具软件测评的经验,首 先应当制定相应的、适合我国实际 情况的法律法规体系。法律法规体 系的建设是计量器具软件测评体 系建设的基础,完善的管理规定和 健全的技术法规及实施细则是保 证测评工作科学、规范的前提。在 某种程度上,管理法规体系的建设比技术法规体系更加重要。除了 JJF1182-2007、JJF1365 -2012《数字 指示秤软件可信度测评方法》外, 针对计量器具软件的技术法规在 未来几年内,有望陆续出台。以电 能表为例,笔者认为需要完善或制 定应当包含下面一些相关的软件 标准规范:
(1)(电能表软件开发语言编 写规范》;(2)《电能表软件功能规 范——计量部分》;(3)《电能表接 口规范——软件部分》;(4)《电 能表数据远程通讯协议规范》; (5 )《电能表软件测评规范——计 量部分》等。
电能表标准大多参照ffiC的 标准,这些标准为我们提供了借 鉴,但是应当根据我国实际情况, 特别是智能电能表的发展,统一规 划、科学决策,设立必要的技术壁 垒,保护我国具有知识产权的电能 表企业。对电能表的软件检测,应 当严格限制法制软件部分与电能 表其他功能之间的数据通信。譬如 谷峰时间的设定、数据远程读取的 权限等。谷峰时间从贸易结算角度 而言,应当是电能表这一计量器具 的法制参数,进一步可以认为是设 备参数(因为不同地域有不同时间 设定),在设计之初就应当设置不 打开外売就无法调整的内置跳线。 型式评价之后,谷峰时间经电力部 门或使用部门按照规定程序设定 完毕(也可在生产时将谷峰时间作 为缺省设置)并安装好电能表后, 然后加封相应的硬件铅封,不得随 意破坏。内置跳线的作用就是让数 据通信模块或程序不能修改已经 设定的谷峰时间。在软件型式评价 的过程中,这一项测试将会是计量 法制功能中数据安全性测试的重 要一环。
2.企业自主声明
由于知识产权保护、企业诚信体系建设等客观条件限制,现阶段 要求提交检测的产品资料一致性 很难做到。这可能给严肃的型式评 价检测带来不可预计的风险,甚至 会对检测数据和结果带来较大的 偏差。因而,在现有管理体系以及 相关制度中新增加一些规定非常 重要和紧迫。例如,企业提交的文档 和资料中应当包含“符合性”和“一 致性”声明。也就是说,企业应当书 面声明,其提交的各种文档资料以 及物理器件、产品样机等完全符合 相关规范或标准的要求,而且所有 文字表述没有前后矛盾的情况。这 也是验证备案制度的一个前提条
件。3.验证备案制度
送样物品(包括文档资料、物 理器件产品样机等资料)应当严格 按照既定流程进行相应的检查、封 存、备案留档。备案制度的建立将 大大减轻今后法制管理机构的风 险和压力,方便对检测过程和使用 过程中出现的可疑功能、按键和模 块等在具备能力的条件下进行符 合性的验证测试。
4.实验室能力提升
在法律法规逐步完善的过程 中,特别重要的是需要加强实验室 能力建设,包括管理规章制度的 建立、技术人才的引进和培养、测 评工具购置与研发、检测技术的 国内外交流、技术法规等业务培 训、检测平台搭建。通过一系列的 实验室能力建设,才能建立起符合 技术发展潮流和法制管理要求,符 合ISO/IEC17025:2005《检测和校 准实验室能力的通用要求》导则规 定,具备国际水准的一流计量器具 软件测评实验室。也只有这样,才 能带动和提升我国计量器具软件 测评整体的技术能力,才有可能对 重点管理的计量器具软件进行型 式评价检测。
当然,这仅是目前情况下的一 个设想。整个软件测评及公共服务 的框架将在我国出台的各项计量 器具软件技术法规的范畴内搭建, 切实为政府部门、制造企业、消费 者提供技术支持和仲裁服务。国家 层面的法律法规以及实验室能力 建设是开展型式评价实验和检测 服务的重要依据和技术保证。实验 室作为技术服务平台不仅为实现 方便快捷的现代化计量型式评价 服务提供了便利,同时也能为今后 涉及计量器具软件的第三方测评 提供符合社会多元化需求的重要 载体。所以,计量器具软件型式评 价不仅是技术范畴内的内容,随着 经济的不断发展,社会各界的需求 也必将增多,如何及早谋划,科学 决策,将可能带来的计量法制管理 风险降至最低是今后需要面临的 重要议题。现阶段,对已有相关法 律法规计量器具软件的型式评价 工作应当抓紧实施,落实好型式评 价工作中计量器具硬件和软件之 间的衔接,积累计量器具软件型式 评价的法制管理经验,为后续其他 的重点管理计量器具软件的型式 评价工作做好铺垫,为技术机构在 软件检测能力提升创造条件。