电子邮件签名方法、装置及系统制造方法及图纸

技术编号:13544464 阅读:37 留言:0更新日期:2016-08-18 09:29
本发明专利技术公开了一种电子邮件签名方法、装置及系统,属于信息安全领域。所述方法包括:电子邮件签名装置接收上位机下发的指令并根据接收到的指令做相应处理和向上位机返回相应数据;上位机下发的指令包括获取相关数据指令、验证管理员PIN码指令、生成签名密钥对指令、写签名密钥指纹指令、验证用户PIN码指令和签名指令。本发明专利技术的有益效果在于:本发明专利技术提供了一种独立于上位机的电子邮件签名装置,通过在该装置上生成签名密钥对、保存私钥以及使用保存的私钥在该装置上进行签名操作,实现了电子邮件的发送方和接收方之间无需第三方机构参与即可建立信任关系,相较于现有的电子邮件签名体系实现成本低且使用方便。

【技术实现步骤摘要】
201610329454

【技术保护点】
一种电子邮件签名方法,其特征在于,包括电子邮件签名装置执行以下步骤:接收上位机下发的指令,判断所述指令的类型;若为获取相关数据指令,则获取所述电子邮件签名装置中存储的相关数据,向所述上位机返回获取到的相关数据;所述相关数据包括签名密钥指纹;若为验证管理员PIN码指令,则验证指令中的管理员PIN码,向所述上位机返回管理员PIN码验证结果;若为生成签名密钥对指令,则生成签名密钥对,保存签名私钥,将签名公钥返回给所述上位机;若为写签名密钥指纹指令,则根据所述写签名密钥指纹指令中的签名密钥指纹更新所述电子邮件签名装置中存储的签名密钥指纹;若为验证用户PIN码指令,则验证指令中的用户PIN码,向所述上位机返回用户PIN码验证结果,并且当用户PIN码验证结果为验证通过时标识用户PIN码已验证通过;若为签名指令,则检查用户PIN码是否已验证通过,是则使用所述电子邮件签名装置中存储的签名私钥对所述签名指令中的待签名数据进行签名,得到签名值,向所述上位机返回所述签名值,标识用户PIN码未验证通过,否则向上位机返回错误码;所述待签名数据包括哈希算法标识和电子邮件哈希值。

【技术特征摘要】
1.一种电子邮件签名方法,其特征在于,包括电子邮件签名装置执行以下步骤:接收上位机下发的指令,判断所述指令的类型;若为获取相关数据指令,则获取所述电子邮件签名装置中存储的相关数据,向所述上位机返回获取到的相关数据;所述相关数据包括签名密钥指纹;若为验证管理员PIN码指令,则验证指令中的管理员PIN码,向所述上位机返回管理员PIN码验证结果;若为生成签名密钥对指令,则生成签名密钥对,保存签名私钥,将签名公钥返回给所述上位机;若为写签名密钥指纹指令,则根据所述写签名密钥指纹指令中的签名密钥指纹更新所述电子邮件签名装置中存储的签名密钥指纹;若为验证用户PIN码指令,则验证指令中的用户PIN码,向所述上位机返回用户PIN码验证结果,并且当用户PIN码验证结果为验证通过时标识用户PIN码已验证通过;若为签名指令,则检查用户PIN码是否已验证通过,是则使用所述电子邮件签名装置中存储的签名私钥对所述签名指令中的待签名数据进行签名,得到签名值,向所述上位机返回所述签名值,标识用户PIN码未验证通过,否则向上位机返回错误码;所述待签名数据包括哈希算法标识和电子邮件哈希值。2.如权利要求1所述的方法,其特征在于,所述向所述上位机返回获取到的相关数据,具体包括:对获取到的各相关数据分别进行封装,将封装得到的数据顺序拼接,对拼接得到的数据进行整体封装后返回给所述上位机。3.如权利要求1所述的方法,其特征在于,所述根据所述写签名密钥指纹指令中的签名密钥指纹更新所述电子邮件签名装置中存储的签名密钥指纹,具体包括:解析所述写签名密钥指纹指令,获取签名密钥指纹的长度,并按照所述签名密钥指纹的长度获取签名密钥指纹,用获取到的签名密钥指纹替换所述
\t电子邮件签名装置中存储的签名密钥指纹。4.如权利要求1所述的方法,其特征在于,当所述指令为验证管理员PIN码指令时还包括:当管理员PIN码验证通过时,所述电子邮件签名装置标识管理员PIN码已验证通过;当所述指令为生成密钥对指令时,所述电子邮件签名装置生成签名密钥对之前还包括:检查管理员PIN码是否已验证通过,是则生成签名密钥对,否则向所述上位机返回错误码。5.如权利要求1所述的方法,其特征在于,所述方法还包括所述上位机执行以下操作:步骤A1、向所述电子邮件签名装置下发获取相关数据指令;步骤A2、接收所述电子邮件签名装置返回的相关数据,当所述相关数据中的签名密钥指纹为空时,向所述电子邮件签名装置下发验证管理员PIN码指令;步骤A3、接收所述电子邮件签名装置返回的管理员PIN码验证结果,当所述管理员PIN码验证结果为验证通过时,向所述电子邮件签名装置下发生成签名密钥对指令;步骤A4、接收所述电子邮件签名装置返回的签名公钥。6.如权利要求5所述的方法,其特征在于,所述方法还包括所述上位机执行以下操作:步骤B1、向所述电子邮件签名装置下发获取相关数据指令,接收所述电子邮件签名装置返回的相关数据;步骤B2、生成密钥信息列表,接收用户选择签名密钥的操作信息,根据所述电子邮件签名装置返回的相关数据判断用户选择的签名密钥是否是由所述电子邮件签名装置生成的;步骤B3、当用户选择的签名密钥是由所述电子邮件签名装置生成的时,向所述电子邮件签名装置下发验证用户PIN码指令;步骤B4、接收所述电子邮件签名装置返回的用户PIN码验证结果,当所述用户PIN码验证结果为验证通过时,向所述电子邮件签名装置下发签名指令;步骤B5、接收所述电子邮件签名装置返回的签名值。7.如权利要求6所述的方法,其特征在于,所述相关数据还包括序列号;所述步骤A2中还包括:获取当前接收到的相关数据中的序列号,得到第一序列号;所述步骤A4中还包括:根据所述签名公钥计算公钥ID,将所述公钥ID与所述第一序列号对应存储;所述步骤B1中还包括:获取当前接收到的相关数据中的序列号,得到第二序列号;所述B2具体包括:根据已存储的公钥ID生成密钥信息列表,接收用户通过指定所述密钥信息列表中的公钥ID以选择签名密钥的操作信息,判断是否存在与用户指定的公钥ID对应存储的第一序列号且该第一序列号与所述第二序列号相同,是则用户选择的签名密钥是由所述电子邮件签名装置生成的,否则用户选择的签名密钥不是由所述电子邮件签名装置生成的。8.如权利要求1所述的方法,其特征在于,还包括:所述上位机接收所述电子邮件签名装置返回的签名公钥,根据所述签名公钥计算签名密钥指纹,向所述电子邮件签名装置下发写签名密钥指纹指令。9.如权利要求8所述的方法,其特征在于,所述上位机根据所述签名公钥计算签名密钥指纹具体包括:所述上位机解析所述签名公钥,获取所述签名公钥中的模数,计算所述模数的哈希值,将所述模数的哈希值作为签名密钥指纹。10.如权利要求1所述的方法,其特征在于,还包括:所述上位机接收所述电子邮件签名装置返回的签名值,向邮件接收方发送电子邮件、签名公钥以及所述签名值。11.如权利要求1所述的方法,其特征在于,还包括:所述上位机接收所述电子邮件签名装置返回的签名公钥,根据所述签名公钥计算公钥ID;所述上位机接收所述电子邮件签名装置返回的签名值,向公钥服务器上传所述签名公钥和所述公钥ID,向邮件接收方发送电子邮件、所述公钥ID以及所述签名值。12.如权利要求7或11所述的方法,其特征在于,所述上位机根据所述签名公钥计算公钥ID具体包括:所述上位机解析所述签名公钥,获取所述签名公钥中的模数,计算所述模数的哈希值,将所述模数的哈希值的一部分作为公钥ID。13.如权利要求1所述的方法,其特征在于,还包括:所述上位机采用所述哈希算法标识对应的哈希算法对电子邮件进行哈希运算,得到所述电子邮件哈希值,将所述哈希算法标识与所述电子邮件哈希值拼接,得到待签名数据,向所述电子邮件签名装置下发包含所述待签名数据的签名指令。14.一种电子邮件签名装置,其特征在于,包括:存储模块,用于存储相关数据和签名私钥,所述相关数据包括签名密钥指纹;接收模块,用于接收上位机下发的指令;判断模块,用于判断所述接收模块接收到的指令的类型;第一指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令为获取相关数据指令时,从所述存储模块中获取相关数据,将获取到的相关数据返回给所述上位机;第二指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令为验证管理员PIN码指令时,验证所述指令中的管理员PIN码,将管理员PIN码验证结果返回给所述上位机;第三指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令
\t为生成签名密钥对指令时,生成签名密钥对,保存签名私钥到所述存储模块,将签名公钥返回给所述上位机;第四指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令为写签名密钥指纹指令时,根据所述指令中的签名密钥指纹更新所述存储模块中存储的签名密钥指纹;第五指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令为验证用户PIN码指令时,验证指令中的用户PIN码,将用户PIN码验证结果返回给所述上位机,并且当用户PIN码验证结果为验证通过时标识用户PIN码已验证通过;第六指令响应模块,用于当所述判断模块判定所述接收模块接收到的指令为签名指令时,检查用户PIN码是否已验证通过,是则使用所述存储模块中存储的签名私钥对所述指令中的待签名...

【专利技术属性】
技术研发人员:陆舟于华章
申请(专利权)人:飞天诚信科技股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1