1.应用交互型电子签名的前提
取得待签名数据的原文是交互型电子签名的前提。然而,根据GB/T25070—2010《电子签名卡应用接口基本要求》的描述,基于电子签名卡的电子签名分为两种情况:一种是“散列操作在卡外执行”,一种是“散列操作在卡内执行”。散列操作在卡外执行时,卡内无法获取待签名数据原文。在实际应用中有同样的情况。
交互型电子签名载体通过软件接口获取的只有交易报文的散列值。由于散列运算的单向不可逆特性,无法逆推交易报文原文,因此解析签名数据无从发起,触发条件不可能满足,无法进行交互型电子签名。
在实际应用中,“散列操作在卡外执行”和“散列操作在卡内执行”这两种生成电子签名的方法都被广泛使用。不仅如此,由于卡外执行效率较高,使用比重甚至还要大些。因此,应用交互型电子签名时,往往需要对现有电子签名应用流程进行检查,保证使用交互型电子签名时流程符合交互型电子签名的前提条件。这也给交互型电子签名的推广普及带来了一定困难。
2.交互型电子签名流程设计
在满足交互型电子签名前提的条件下,应在此基础上进一步设计,使交互型电子签名载体以合理和安全的方式,在RSA运算之前以人机交互方式输出与签名原文相关的信息,完成交互型电子签名过程。
3.交互型电子签名的局限性
对待签名数据原文进行解析,与载体紧密相关,是交互型电子签名的基本特征之一,而这些特征也致使交互型电子签名固有的局限性:交互型电子签名的核心密码芯片性能有局限;设备与外部通信多利用USB接口,且普遍仅支持USB2.0全速协议,数据通信速率不高;屏幕尺寸受限,可显示内容不多……这些都使交互型电子签名载体很难处理较大数据量的待签名数据。根据实际经验,一旦需交互型电子签名处理的待签名数据超过1MB,或需复核确认的内容超过1kB,交互型电子签名的实现难度就会大幅上升。综上所述,处理较大规模的数据非常难, 交互型电子签名在批量生成电子签名的应用是不适合的。