我正在构建一个必须符合欧盟数字签名指令的数字签名模块。
我从一个旧的但运行良好的Java模块开始,以CAdES
格式签署文档。
此外,应用程序由客户端(桌面JAR可执行文件)和服务器部分构成。客户端的开发只是为了与连接USB读卡器的智能卡进行交互,其余的都发生在网络服务器上。
当前的签名客户端支持两种签署和时间戳文件的方式:我可以使用"签名和时间戳"功能或我可以先签署一份文件,然后给它加盖时间戳。
从法律角度来看,两者都会产生相同的结果。
我的问题是:从 techincal 的角度来看,当我使用CAdES(RFC 5126,140页,我还没有能够阅读所有)当我使用组合的"符号和时间戳"时,输出文件是相同的。按顺序运行或使用这两个功能?
让我重新说一下:根据标准,不可能是否有一个代表数字签名和时间戳的机箱? 标准是否要求对签名文档加时间戳,反之亦然?
我想要实现的是在客户端签名文档(使用智能卡),然后在服务器上为文件加时间戳(不触及旧客户端代码)并生成相同的结果,就好像我正在签名并在客户端上为一个文件加时间戳。