学术论坛
基于Python 与CA 数字证书电子签章结合的中标通
知书智能签发
陆谞君
(江苏电力信息技术有限公司,江苏 南京 211100)
摘要:文章分析基于Python 技术与CA 数字证书结合的中标通知书智能签发,结合CA 机构的软证书(数字证书)实现中标通知书电子签章,能够实现对中标通知书文件的制作、转换、签章做到一键操作,实现批量签章(中标通知书批量生成、批量对同一份文件加盖多个签章);最后通过集成电子招标投标系统,实现中标通知书按名称自动匹配、一键发放,极大的提高了中标通知书的签发效率。 关键词:Python;CA;数字证书;电子签章;JAR;电子招投标;中标通知书
在电力行业传统的招标采购业务中,中标通知书都是线下制作,人工加盖招标人及招标代理机构的单位公章,供应商需要到服务大厅现场窗口领取中标通知书,耗费了大量的人力时间成本,效率低,耗时长;随着《中华人民共和国电子签名法》的实施,确立了电子文件和电子签章的法律效力,近些年来国家发展改革委、工业和信息化部、监察部、住房城乡建设部、交通运输部、铁道部、水利部、商务部也
联合制定了《电子招标投标办法》及相关附件,以数据电文形式,依托电子招标投标系统支撑完成招标投标交易,中标通知书可以依托交易平台自动生成,通过办理CA 机构颁发的数字证书以硬证书(Ukey)的形式去加盖电子签章,解决了中标通知书电子化、防篡改的问题,为文件和重要信息的网络传输提供了法律依据;但是通过Ukey 对中标通知书逐个盖章,有的中标通知书还需要加盖多个单位的公章(招标人、招标代理机构),业务人员通过电子签章工具逐个文件打开进行签章操作后再换另一把Ukey 进行操作,仍然工作量大,效率低,长时间重复劳动易出错。 1 实现方案 首先招标人、招标代理机构需要向证书颁发机构申请用于电子签章的数字证书(pfx 格式)。证书颁发机构(CA, Certificate Authority)即颁发数字证书的机构,是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。用于电子签章的数字证书,私钥用于制作签章、公钥用于验证签章,采用非对称秘钥实现,电子签章是电子签名的一种表现形式,利用图像处理技术将电子签名操作转化为与纸质文件盖章操作相同的可视效果,同时利用电子签名技术保障电子信息的真实性和完整性以及签名人的不可否认性,完整性体现在经过数字签名的文档,任何篡改都会验签失败,真实性体现在验签成功后,可以提取出文件签名时的数字证书信息(通常会包含签章身份的企业名称和统一社会信用代码),保证了电子文档签名的
主体身份信息。  图1 设计流程图
基于Python 技术的中标通知书生成工具摆脱了传统的B/S 架构
的web 系统束缚,Python 是一门简单有效的面向对象的编程语言,
由荷兰数学和计算机科学研究学会的Guido van Rossum 于1990 年
代初设计,它能在多数平台上写脚本和快速开发应用的编程语言,
由于Python 语言的简洁性、易读性以及可扩展性,众多开源的科学
easyui griddata 首行列聚合
计算软件包都提供了Python 的调用接口。web 系统中的中标通知书功能,不同的招标采购平台的业务需求不一样,中标通知书模板有差异,就要适应性的定制开发对应的系统功能。基于Python 技术的中标通知书生成工具,可以将这部分功能单独剥离出来,提供标准的数据接口,只考虑中标通知书的生
成、转换和电子签章,可以跨多个招标采购平台通用,达到和电子采购平台解耦的目的;上图1展示了Python 技术与CA 数字证书结合完成中标通知书电子签章的流程图。
2 智能签发步骤
首先Python 编写的工具会解析中标清单数据(定义了标准的数据接口)形成Python 指定的字典格式数据,根据解析的中标清单数据自动匹配中标通知书模板生成word 版的中标通知书;其次将word 版的中标通知书批量转换为pdf 格式,在CA 提供的电子签章包基础上二次封装形成可以支持Python 调用的电子签章jar 包(支持输入多个签章关键字、多个待签章的数字证书密码), 通过Python 调用封装后的签章jar 包实现软证书批量进行电子签章,完成一份中标通知书只需要秒级,极大的提高到了中标通知书的签发效率,具体实现步骤如下。
利用doc 模板标签语法(jinja),制作中标通知的word 模板;利用openpyxl 包解析中标清单(execl 格式)中的数据,按中标通知书模板组织Python 格式的字典数据,包括:中标通知书模板类型、招标项目名称、招标项目编号、分标名称、分标编号、分包名称、需求计划、中标厂家、项目单位、招标金额、报价方式、招标专职、招标专职、计划编制人、编制人、合同签订单位、中标金额、授权代理人、项目经理等信息。
利用DocxTemplate 包中的docxtpl 模块,按照中标通知书模板和组织好的数据批量生成word 版格式的
中标通知书,利用win32com.client 模块,将word 版的中标通知书批量转为pdf 格式文件。
封装CA 提供的电子签章方法(按照关键字选择pfx 格式的软件
书)为独立的jar 包,实现单文件批量签章(招标人、招标代理机
构);利用subprocess 模块,调用封装的电子签章jar 包,批量对织梦自动采集教程
中标通知书pdf 格式文件生成电子签章后的中标通知书;电子签章
后的中标通知书按指定格式命名文件(分标-分包-供应商),集成
python教材下载
web应用具有哪些特点web 系统自动挂载到对应的中标厂家,可以在招标采购平台上直接下载中标通知书,省去了供应商线下窗口领取的环节。
3 结语
随着电子签名在招标采购过程中各环节的逐步完善使用,通过
jpa怎么写sql
本文对Python 技术在招标采购平台中标通知书签发过程中的应用
论述,结合数字证书,合理对该项技术的应用,可以为招标人、招
php判断题考试题
标代理机构、供应商在招标交易过程中极大得提高工作效率,缩减
了时间成本奠定基础,获得比较理想的社会效应。 参考文献: [1]蔡国明,汪淼,李瑞锋,王晋东,徐开勇.基于eID的电子签名系统设计与应用[J].信息工程大学学报,2020(04). [2]刘龙.关于电子商务平台CA证书切换的设计与实现[J].数码世界, 2019(12).