用于传输电子币数据集的方法、终端和币注册器与流程

文档序号:33466440发布日期:2023-03-15 06:47阅读:37来源:国知局
用于传输电子币数据集的方法、终端和币注册器与流程

1.本发明涉及一种在第一安全元件中传输电子币数据集的方法,一种具有安全元件的终端,以及一种支付系统和一种支付系统的币注册器。


背景技术:

2.支付交易和相关联的支付交易数据的安全性意味着保护交换数据的机密性;以及保护所交换数据的完整性;以及保护所交换数据的可用性。
3.对于电子币数据集,必须能够证明基本的控制功能,尤其(1)识别“多次支出方法”、也称为双重支付(double-spending),以及(2)识别未覆盖(ungedeckt)的支付。在情况(1)中,有人尝试多次支出(或者说输出)相同的币数据集,并且在情况(2)中,有人尝试支出币数据集,即使他不(再)具有信用或不具有该币数据集。
4.为了说明情况(1),在图1a和图1b中示出了一种支付系统,在该支付系统中,可以在支付系统中的终端之间直接以电子币数据集的形式交换货币金额。在直接传输的情况下,则没有支付系统的中央实体、例如币注册器参与。在图1a中,终端m1将币数据集ca拆分,以便获得币数据子集cb。终端m1将币数据集cb非法地同时转发到终端m2和m3。
5.在图1a的支付系统中,终端m2进一步拆分币数据集cb并且获得币数据集cc,然后将其直接转发到终端m4。终端m4将币数据集cc直接转发到终端m6。终端m6将币数据集cc直接转发到终端m8。使用终端m3的毫无戒心的参与者将币数据集cb直接转发到终端m5。终端m3将币数据集cb直接转发到终端m5。终端m5将币数据集cb直接转发到终端m7。因此,两个币数据集cb和cc都频繁地变更所有者,而支付系统的币注册器察觉不到这一点。
6.如图1b所示,当终端m7将币数据集cb在支付系统的币注册器4中注册(=“变换”)给自己时,币数据集cb变为无效(通过币数据集的删除线示出)并且币数据集cd变为有效。现在,当终端m8也想将币数据集cc作为币数据集ce在币注册器4中注册时,币注册器4确定币数据集cb已经无效。m1的攻击现在才被发现。结果,币注册器4既不接受币数据集cc也不接受币数据集ce。
7.此外,由于电子币数据集的大量交易并且也由于延长的使用寿命,对电子币数据集进行操纵的风险增加。
8.将来应该可以完全省去现金(钞票和模拟币),或者至少可以省去模拟币。
9.作为系统前提条件,有效的电子币数据集只允许存在一次、即只在唯一的地点存在。该系统前提条件提高了对传输过程的要求,尤其以便在传输过程期间成功地抵御攻击,或者说以便防止可能的传输错误可能被利用来操纵支付系统。支付系统的两个参与者之间的技术传输应该能够通过位于其之间的实体或设备或远程数据存储器进行,以便不降低支付时的灵活性程度,由此使得该系统前提条件变得更复杂。
10.因此,本发明的技术问题是创造一种方法和一种系统,在该方法和系统中,支付系统的参与者之间的支付交易被设计为安全但仍然简单。在此,尤其应在设备、代币机(token)、智能手机、安全元件、机器、销售点终端或自动售货机之间创造直接且匿名的支
environments,tee)或esim软件的形式存储在数据存储器、例如存储在诸如移动终端、代币机、智能手机、机器、销售点终端、自动售货机之类的设备上。备选地或附加地,安全元件例如是特殊硬件,特别是以安全的硬件平台模块(可信平台模块,trusted platform module,tpm)的形式或作为芯片卡或嵌入式安全模块、例如euicc或esim。安全元件提供受信任的环境,因此具有比设备更高的信任级别(level-of-trust),在该设备中必要时运行准备就绪地集成有安全元件。
19.电子币数据集可以安全地存储在安全元件中。安全元件也可以具有多个电子币数据集,例如,多个电子币数据集可以存储在专门配属给安全元件的数据存储器中。数据存储器然后表示例如电子钱包。数据存储器例如可以是安全元件的内部存储器。备选地并且为了提高支付方法的灵活性,数据存储器可以是外部数据存储器、例如终端(等)的数据存储器,在其中必要时运行准备就绪地集成有安全元件。必要时只有一个相应的安全元件具有对该外部数据存储器的独家访问权限。外部数据存储器也可以是远程数据存储器(云存储器)。数据存储器可以是虚拟的。
20.电子币数据集的传输在两个安全元件之间进行。在此,电子币数据集的逻辑传输直接进行,相反地,物理传输可以通过一个或多个中间实体进行,该中间实体例如是用于创建安全元件的运行准备的一个或多个终端和/或远程数据存储服务,在该远程数据存储服务中存储有具有电子币数据集的钱包。
21.安全元件可以在彼此之间传输电子币数据集,然后继续直接使用该电子币数据集,而无需通过支付系统的中央实体进行校验。在此,系统前提条件可能是,由安全元件接收的电子币数据集本身被视作安全/有效。
22.第一安全元件可能已经从作为支付系统中的参与者的诸如终端或机器或在线服务之类的可信度较低的单元接收到电子币数据集。为此例如设置了安全元件的输入(import)功能。来自这种不安全来源的电子币数据集、特别是不直接来自另一个安全元件的电子币数据集被认为是不安全的,并且在安全元件中接收之后,使用支付系统的中央实体、例如远程币注册器检查有效性。在一种设计方案中,这种不安全的电子币数据集在其(允许)被传输到第二安全元件之前通过诸如变换、合并、拆分的动作注册到第一安全元件上。
23.仅仅地唯独为了发送步骤创建(未激活的)电子币数据集的副本,并且将该副本发送到第二安全元件。
24.要传输的电子币数据集在支付系统的币注册器、即远程实体中注册。因此规定,例如建立到币注册器的通信连接以用于注册电子币数据集。现在,该通信连接在传输过程(支付过程)期间不一定必须存在。例如,币注册器被设计为支付系统的更高级别的中央实体。因此,币注册器不必布置在安全元件的相同级别(=层)中。优选地,币注册器设置用于管理和校验经掩蔽的电子币数据集。可以设想,币注册器附加地管理和校验设备之间的其他交易。
25.币注册器例如是数据库。该数据库使得能够以简单的方式校验币数据集的有效性并防止“双重支付”、即多次支出,而传输本身不被注册或记录。在此,该数据库描述了一种用于联网计算机的技术,该联网计算机就特定交易的顺序达成一致,并且这些交易更新数据。
26.币注册器可以是去中心式控制的数据库(分布式账本技术,distributed ledger technology,dlt),经掩蔽的电子币数据集与对经掩蔽的电子币数据集的相应处理一起注册在该数据库中。在一种优选的设计方案中,可以由此推导出(经掩蔽的)电子币数据集的状态或有效性。优选地,(经掩蔽的)电子币数据集的状态或有效性在币注册器中标注并且由币注册器标注。注册处理或者说处理步骤也可以涉及注册与电子币数据集的状态或有效性有关的校验结果和中间校验结果,尤其是确定相应币数据集的校验值和计数器值。如果一项处理是最终的,则这例如通过币注册器中的相应的标记或推导出的整体标记来进行显示。最终的处理然后决定了电子币数据集是有效还是无效。
27.币注册器优选地是集中管理的数据库,例如以可访问的数据存储器的形式。币注册器例如是支付系统的业务服务器。
28.在该方法中,在电子币数据集从第一安全元件发送到第二安全元件之后,检查是否已经在第一安全元件中接收到来自第二安全元件的接收确认。该检查用作在第一安全元件中关于发送步骤是否成功并相应地被第二安全元件承认的调查。为了在后续步骤中删除所发送的电子币数据集,该接收确认是绝对必要的。随着对应于来自第二安全元件的删除请求的接收确认,删除第一安全元件中的电子币数据集。优选地,可以阻断第一安全元件传输进一步的币数据集,直到删除步骤完成并被确认。
29.在一种设计方案中规定,被删除的电子币数据集以存档的形式保留在安全元件中。被删除的电子币数据集不再有效或被返回的事实例如可以借助标记、状态或其他编码来标记(=标识)。备选地且优选地,要删除的电子币数据集被销毁并且必要时也物理地从安全元件上移除。
30.该方法确保,只有非活动的电子币数据集被复制,该电子币数据集在被发送到第二安全元件之后仍继续在第一安全元件中使用。因此,通过传输协议防止了活动的电子币数据集的复制。通过使用安全元件保证了用于这种传输的安全环境,因此“双重支付”是不可能的。通过所述检查还在第一安全元件中确保了,发送是成功的并且可以在第一安全元件中删除电子币数据集而不破坏币值金额。
31.在此,在所选择的(离线)传输环境中特别重要的是,传输错误或传输冲突可以在没有支付系统的中央实体(例如币注册器)的情况下被解决。在此提出的传输协议通过检查接收确认的存在和使用安全元件来确保传输过程(支付过程)是可信的,即使该传输过程是异步实施的。利用在此提出的传输,即,使失效、发送、检查和然后才删除,确保了币值金额不被破坏,并且在活动状态下不会产生复制。
32.在一种优选的设计方案中,将安全元件运行准备就绪地引入到设备中。在此,该设备可以包含应用程序(applikation),用户(=参与者)通过该应用程序控制支付过程并且在该支付过程中访问安全元件的电子币数据集。第一和第二安全元件之间的电子币数据集的传输(即,还有发送)可以集成到两个设备之间的现有传输中和/或集成到相应设备的两个应用之间的安全信道中。此外,传输可以包含与外部数据存储器、例如在线存储器的互联网数据连接。
33.该设备例如可以是移动设备、例如智能手机、平板电脑、计算机、服务器、自动售货机或机器。电子币数据集例如从第一设备的(第一)安全元件传输到另一设备的(第二)安全元件。在此,可以建立设备到设备的传输路径,例如通过该传输路径在两个安全元件之间建
立安全信道,然后通过该安全信道传输电子币数据集。在设备上运行准备就绪地引入(安装)的应用程序可以通过使用相应设备的输入和/或输出装置来启动和控制币数据集的传输。例如可以显示电子币数据集的金额并且可以监控传输过程。
34.尤其将移动电信终端、例如智能手机视为设备。备选地或附加地,该设备也可以是可穿戴设备、机器、工具、自动售货机或也可以是集装箱或车辆。设备因此要么是固定的要么是移动的。设备优选地设计为使用互联网和/或其他公共或私人网络。为此,设备使用合适的连接技术、例如蓝牙、lora、nfc和/或wifi,并且具有至少一个相应的接口。该设备也可以设计为通过接入移动网络来与互联网和/或其他网络连接。
35.例如,两个设备建立本地无线通信连接。两个安全元件之间的传输通过该无线通信连接以该无线通信连接的相应协议进行。
36.在一种优选的设计方案中,第一安全元件紧接在发送步骤之前或之后将电子币数据集的状态设置为非活动状态。这缩短了币数据集处于非活动状态的持续时间,从而币值金额不会由于其失效性而在长的时间段上被阻断。
37.在一种优选的设计方案中,以加密方式发送电子币数据集。在此,在第一和第二安全元件之间应用安全元件的相互认证和/或币数据集的加密传输。在此,密钥交换要么作为会话密钥进行协商,要么预先发布。这提高了传输币数据集时的安全性,并使对传输信道的攻击更难以截获币数据集,例如在“中间人(man-in-the-middle)”或“中继(relay)”攻击的情况下。
38.在一种优选的设计方案中,与所发送的电子币数据集相关的交易数据集优选地以非易失性的方式存储在第一安全元件中。在此,存储例如在本地在安全元件中进行。在错误传输的情况下,交易数据集可以用于重建传输过程,并在必要时重复该传输过程。在此,不需要对电子币数据集本身进行任何改变,特别是币数据集的非活动状态标记也显示发送步骤已经发生,但是没有发生币数据集的删除。
39.因此,该方法提供回滚方法(rollback)和重复方法(重新尝试(retry)),以便能够在传输未完成的传输错误的情况下反转或重复该交易。在重复情况下,可以完成该传输;在反转情况下,将该传输完全抹去。然而,这也意味着,如果重复失败或不希望重复,则可以恢复先前发送的电子币数据集。可以利用币注册器中的注册来完成该恢复。随着恢复,还向第二安全元件提出删除请求,以便删除虽然已接收、但未被确认接收的币数据集。在一种设计方案中,在对第二安全元件发出的删除请求已经被第二安全元件向第一安全元件确认了时,才进行恢复。
40.在一种优选的设计方案中,交易数据集具有交易号。该交易号例如是在发送步骤之前产生的随机数。为此,优选地使用安全元件的随机数发生器。备选地或附加地,交易号是交易的标识号,其对于从第一安全元件到第二安全元件的传输是明确的、一次性的。附加地,交易号可以是支付系统中的交易的标识,并且该交易号由支付系统、例如币注册器进行分配。该分配可以预先进行,或者可以在支付方法中的安全元件的初始化中进行。可以存在多个以类似于tan列表的方式管理的交易号。
41.交易数据集还具有第一安全元件(=发送者)的标识符或地址、即可以在支付系统中明确地标识该安全元件的数据。交易数据集还具有第二安全元件(=接收者)的标识符或地址、即可以在支付系统中明确地标识该安全元件的数据。例如,交易数据集包括电子币数
据集的金额。利用该交易数据集可以重建发送尝试,并在必要时重复或反转该发送尝试。
42.在一种设计方案中,交易数据集与币数据集一起传输。接收确认然后可以是传输回的交易数据集。
43.在一种优选的设计方案中,在传输错误情况下,根据所存储的交易数据集重新发送电子币数据集。在此假定,电子币数据集的传输失败,但传输过程将完成。电子币数据集的传输被即时重复。要重新发送的电子币数据集对应于在传输时发生传输错误情况的电子币数据集。因此,对于重新发送而言,不需要电子币数据集的改变。在一种设计方案中,生成另一交易数据集以用于记录目的。
44.例如,如果在预定义的持续时间内没有在第一安全元件中接收到接收确认,则假定传输错误情况。为此,例如启动计时器。优选地,在电子币数据集的发送步骤期间启动计时器。
45.备选地或附加地,可以通过第一或第二安全元件的错误消息显示传输错误情况。因此,明确地显示错误情况,然后才决定进行回滚或进行重复。
46.还可以通过识别到的连接故障来假定传输错误情况。因此,隐式地显示错误情况,然后才决定进行回滚或进行重复。
47.传输错误情况也可能由于失败的认证而发生。
48.当在其中运行准备就绪地引入了安全元件之一的终端关断时,或者当由于参与者的运动而超出传输范围时,也可能发生传输错误情况。
49.传输错误情况也可能由于第一或第二安全元件中、设备的应用程序中或相应设备中的内部错误而发生。
50.在一种优选的设计方案中,第一安全元件以预定义的周期性时间间隔问询第二安全元件并主动请求接收确认。备选地,当超过计时器的时间值时,第一安全元件主动问询接收确认。
51.在一种优选的设计方案中,在删除步骤之后,在第一安全元件中显示成功的传输。在此,可以更新用户显示或者可以从可用币值金额的列表中删除该币值金额。通过该显示将“传输过程是成功的”可视化给支付系统的参与者(用户)。附加地或备选地,更新可用的币值金额,特别是对应于所传输的币值金额地减少。
52.在一种优选的设计方案中,在显示步骤中,将电子币数据集作为包含第一安全元件的设备的应用程序的输入参数进行评估。被删除的电子币数据集或该电子币数据集的交易数据因此主动地控制传输过程,而不考虑在终端上可实施地引入的应用程序。通过终端上的应用程序将电子币数据集的变化可视化给用户,用户因此获得关于要传输/所传输的电子币数据集的有效性/状态/删除的即时反馈。
53.在一种优选的设计方案中,第一安全元件向第二安全元件显示所发送的币数据集的删除。该显示是将删除确认发送到第二安全元件。该显示还用于显示已在第一安全元件中接收到接收确认。从通过第一安全元件进行显示的时间点开始,可以在第二安全元件中使用电子币数据集,并且传输过程(支付过程)被视作成功完成。
54.在一种优选的设计方案中,第一安全元件向币注册器显示所发送的币数据集的删除。该显示是将删除确认发送到币注册器。该显示还用于显示已在第一安全元件中接收到接收确认。从通过第一安全元件进行显示的时间点开始,可以在第二安全元件中使用电子
币数据集,并且传输过程(支付过程)被视作成功完成。第二安全元件通过问询币注册器获知该显示。
55.在一种优选的设计方案中,在删除步骤之后、优选地在显示步骤之后,第二安全元件将电子币数据集的状态设置为活动状态。利用设置为活动状态,第二安全元件使所发送(或所接收)的电子币数据集对于进一步动作生效。电子币数据集、即尤其币值金额和混淆数额,通过状态的转换而保持不变。例如在用于每个电子币数据集的安全元件的本地存储器区域中管理或记录该状态。因此,活动状态代表用于向进行访问的实体显示电子币数据集未(或不再)用于传输过程并允许进一步使用的标志。
56.在一种优选的设计方案中,在传输错误情况下(参见上文),将所发送的电子币数据集在第一安全元件中的状态重置为活动状态。利用设置为活动状态,第一安全元件使未成功发送的电子币数据集对于进一步动作重新生效(重新激活)。电子币数据集、即尤其币值金额和混淆数额,通过状态的重置而保持不变。可以利用注册器中的注册来完成该恢复。在恢复之前,也可以向第二安全元件发出删除问询,以便在第二安全元件中删除虽然被接收、但未被确认接收的币数据集。在一种设计方案中,当对第二安全元件发出的删除问询已经由第二安全元件向第一安全元件确认了时,才进行恢复。备选地,也可以仅将所发送的币数据集重新变换为活动,而被接收的币数据集不能被激活、而是只能被删除。
57.在该方法的一种优选的设计方案中,在传输错误情况下,第一安全元件从币注册器问询所发送的电子币数据集的状态。在所发送的电子币数据集注册到第一安全元件的情况下,所发送的币数据集在第一安全元件中的状态通过第一安全元件重置(回滚)为活动状态(由识别到的错误情况引起)。因此,通过将币注册器包括在内,不成功传输之前的旧状态被恢复了。
58.在所发送的电子币数据集没有注册到第一安全元件的情况下,第一安全元件向币注册器报告交易错误。这种情况被评估为欺诈情况或攻击情形,因为根据第一安全元件,传输尚未完成并且币数据集因此可能还没有传输到另一安全元件。
59.在一种优选的设计方案中,在传输错误的情况下,第二安全元件从币注册器问询所发送的电子币数据集的状态。在所发送的电子币数据集注册到第一安全元件的情况下,所发送的币数据集在第二安全元件中通过第一安全元件删除(回滚)。因此,通过将币注册器包括在内,不成功传输之前的旧状态被恢复了。
60.在所发送的电子币数据集没有注册到第一安全元件的情况下,第二安全元件向币注册器报告交易错误。这种情况被评估为欺诈情况或攻击情形,因为根据第一安全元件,传输尚未完成并且电子币数据集因此可能还没有传输到另一安全元件。
61.在一种优选的设计方案中,在未收到(或未获得)接收确认的情况下,第一安全元件将所发送的币数据集在币注册器中重新注册。“未收到”被评估为传输错误情况并且例如可以通过超过计时器的预定义的持续时间来识别,该计时器例如以币数据集的发送启动。
62.上述技术问题还通过一种之前描述的安全元件来解决。安全元件具有计算单元,该计算单元设计用于根据上面描述的方法传输电子币数据集。该安全元件还具有用于访问数据存储器的装置,其中,至少一个电子币数据集存储在数据存储器中。并且该安全元件具有接口,该接口设计用于将至少一个电子币数据集输出到另一个安全元件。
63.上述技术问题还通过一种终端来解决,该终端具有上面描述的安全元件,其中,该
接口设计用于将至少一个电子币数据集通过该终端的接口输出到另一个安全元件。
64.上述技术问题还通过在支付系统、尤其商业银行或支付系统的币注册器中用于管理电子币数据集的方法来解决,其中,电子币数据集由中央发行实体发行,其中,对于每个电子币数据集都存在状态,其中,状态包括状况“活动”和“非活动”,并且当电子币数据集在作为支付系统中的参与者的两个安全元件之间直接传输时,该状态相应地设置为(标记为)活动状态或非活动状态并且在电子币数据集处执行动作之前或对电子币数据集执行动作之前被参与者问询,其中,该方法包括步骤:通过币注册器根据电子币数据集的状态确定电子币数据集是否有效。
65.在支付系统中的方法中,优选地仅管理经掩蔽的电子币数据集。币数据集的掩蔽将在稍后描述,并且该掩蔽确保了支付系统中的匿名性或伪名性。
66.在一种优选的设计方案中,电子币数据集设置用于在两个安全元件之间传输,其中,作为确定的结果,要传输的电子币数据集被支付系统声明为有效或无效,并且无效的币数据集被返回到发行实体或被释放以删除。
67.在一种优选的设计方案中,在通过支付系统对电子币数据集执行动作时,电子币数据集的状态被支付系统重置。
68.上述技术问题还通过一种支付系统来解决,该支付系统具有币注册器、至少一个上述类型的终端和发行实体,该发行实体设计用于为支付系统创建电子币数据集,其中,在终端中设置安全元件,该安全元件用于实施根据上述类型的用于传输电子币数据集的方法。
69.优选地,支付系统还设计用于管理来自其他发行实体的电子币数据集,和/或设计用于管理作为账面资金的货币金额。
70.上述技术问题还通过一种币注册器来解决,其中,该币注册器设计用于注册电子币数据集。
71.在一种有利的设计方案中,电子币数据集具有货币金额、即表示电子币数据集的货币价值的数据,以及混淆数额、例如随机数。此外,电子币数据集可以具有其他元数据、例如货币金额代表了哪种通货。一个电子币数据集由这至少两个数据(货币金额、混淆数额)明确地代表。能够访问电子币数据集的这些数据的任何人都可以使用该电子币数据集进行支付。因此,知道这两个值(货币金额、混淆数额)就等同于拥有数字货币。该电子币数据集可以在两个安全元件之间直接传输。在本发明的一种设计方案中,为了交换数字货币仅需要传输货币金额(或称为货币量)和混淆数额(或称为混淆量)。在一种设计方案中,电子币数据集的状态(活动、非活动)也被添加到币数据集中,从而该币数据集由三个数据(货币金额、混淆数额、状态)组成。备选地,币数据集的状态不附加到币数据集中并且仅保存在安全元件本身和/或币注册器中。
72.在一种优选的设计方案中,在所述方法和所述支付系统(币注册器)中,每个电子币数据集都配属有对应的经掩蔽的电子币数据集。对经掩蔽的电子币数据集的了解并不授权支出由电子币数据集所代表的数字货币。这是经掩蔽的电子币数据集和(未掩蔽的)电子币数据集之间的关键区别。经掩蔽的电子币数据集是唯一的,并且也一一对应地配属于电子币数据集,因此在经掩蔽的电子币数据集和(未掩蔽的)电子币数据集之间存在一对一的关系。电子币数据集的掩蔽优选地通过安全元件的计算单元进行。该安全元件具有至少一
个电子币数据集。备选地,可以通过接收电子币数据集的安全元件的计算单元进行掩蔽。
73.在此,在一种设计方案中,经掩蔽的电子币数据集可以与伪名相关联,以获得伪名化的经掩蔽的电子币数据集。此外,为了实现可能需要的去匿名化的机制,在掩蔽之前执行关联步骤,以便将安全元件的伪名与电子币数据集相关联。伪名优选地特定于安全元件。伪名是任何类型的伪装身份,其使得在仅知道币数据集的情况下无法直接得出关于安全元件和利用该安全元件执行的交易的结论。
74.匿名的经掩蔽的币数据集和伪名化的经掩蔽的币数据集之间的区别在于,当使用伪名时,可以通过币注册器标识安全元件。匿名的经掩蔽的币数据集不包含任何关于其来源的信息,因此不能与安全元件相关联。相反地,伪名化的经掩蔽的币数据集具有与安全元件的伪名的关联,从而可以通过所关联的伪名来对将伪名化的经掩蔽的币数据集发送到币注册器的安全元件进行标识。
75.在将电子币数据集从发行实体发行到安全元件时,可以并行地将经掩蔽的电子币数据集从发行实体一起支出到支付系统的币注册器,以注册电子币数据集。
76.通过应用同态单向函数、尤其同态密码函数来获得经掩蔽的电子币数据集。该函数是单向函数、即在复杂性理论方面能够“容易”地计算但“困难”到实际上不可能反向的数学函数。在此,单向函数也被称为如下函数:对于该函数,迄今为止还不知道在适当的时间内以合理的耗费实际上可实施的反向。因此,“从电子币数据集中计算经掩蔽的电子币数据集”与“在加密方法中通过剩余类群生成公钥”类似。优选地,使用对其中难以解决离散对数问题的群进行运算的单向函数、例如类似于由相应密码方法的私钥进行椭圆曲线加密(ellipticcurvecryptography,简称ecc)的密码方法。在此,反向函数、即从经掩蔽的电子币数据集产生电子币数据集,等效于在加密方法中通过剩余类群从公钥中生成私钥,是非常耗时的。当在本文档中提及“和”与“差”或其他数学运算时,在此在数学意义上理解为对相应数学群、例如椭圆曲线上的点的群的相应运算。
77.单向函数是同态的、即是具有同态特性的密码方法。因此,可以对未掩蔽的电子币数据集执行数学运算,该数学运算也可以对(掩蔽的)电子币数据集并行地执行并且因此可以被追踪。在当前情况下,在币注册器中追踪基于经掩蔽的电子币数据集的运算,该运算已经在安全元件中以相应的未掩蔽的电子币数据集执行。借助同态单向函数,可以在币注册器中追踪对经掩蔽的电子币数据集的计算,而无需在那里知道对应的(未掩蔽的)电子币数据集。因此,对电子币数据集的特定的计算、例如用于对(未掩蔽的)电子币数据集进行处理(例如拆分或合并)的计算,也可以与相应的经掩蔽的电子币数据集并行地验证,例如用于有效性校验或用于监控相应电子币数据集的合法性。同态特性至少适用于加法和减法运算,因此电子币数据集的拆分或组合(=合并)也可以借助对应的经掩蔽的电子币数据集记录在币注册器中并且可以被进行问询的安全元件和/或被币注册器追踪,而无需获得对货币金额和进行执行的终端的了解。
78.因此,同态特性使得有效和无效的电子币数据集能够基于其经掩蔽的电子币数据集在币注册器中进行录入而无需了解这些电子币数据集,即使当这些电子币数据集在被处理(拆分、合并、变换)时,即,使得能够对电子币数据集执行动作。在此,确保了没有附加的货币金额已经被创建或者安全元件的身份被记录在币注册器中。在无需了解货币金额或终端的情况下,掩蔽实现了高度的安全性。因此,例如得到了双层支付系统。一方面存在币注
册器,在该币注册器中校验经掩蔽的电子数据集,并且另一方面存在直接交易层,在该直接交易层中,至少两个安全元件传输电子币数据集。
79.当将电子币数据集从第一安全元件直接传输到第二安全元件时,两个安全元件同时知道要传输的电子币数据集。为了防止进行发送的第一安全元件也使用电子币数据集在另一个(第三)安全元件中进行支付(所谓的双重支付),应用上面描述的方法。尤其在传输之前将币数据集的状态设置为非活动状态,以便使该币数据集失效,然后进行发送并且如果存在来自第二安全元件的接收确认,则删除第一安全元件中的币数据集。可以将来自第一安全元件的删除确认发送到币注册器或第二安全元件,以便显示成功删除。
80.此外,可以将所传输的电子币数据集从第一安全元件变换(“switch”)到第二安全元件。变换可以优选地自动地在接收到电子币数据集的删除确认时在第二安全元件中进行。附加地,变换也可以应请求、例如来自第一和/或第二安全元件的命令进行。附加地,一个电子币数据集也可以拆分为(“split”)至少两个币数据子集。附加地,两个电子币数据集可以合并(“merge”)为一个币数据集。
81.变换、拆分和合并是对电子币数据集的不同修改、即对电子币数据集的动作。这些修改需要在支付系统的币注册器中注册经掩蔽的币数据集。各种修改的具体执行将在稍后阐述。
82.当电子币数据集被改变、例如被拆分或与其他电子币数据集合并时也发生变换,尤其以便能够适当地结算要支付的货币金额。在此,支付系统应该始终能够支付任何货币金额,只要各个币数据集的总和不超过货币金额。
83.拆分和随后的注册具有以下优点,即至少一个电子币数据集的所有者不必总是一次传输整个货币金额,而是形成并传输相应的部分货币金额。只要所有电子币数据子集都具有小于从中进行拆分的电子币数据集的货币金额的正货币金额,并且电子币数据子集的总和等于要拆分的电子币数据子集,那么货币值就可以被拆分,而不受对称或非对称的限制。备选地或附加地,可以使用固定面额。拆分为部分金额是任意的。
84.优选地,所述方法还包括以下步骤:变换所传输的电子币数据集;和/或将所传输的电子币数据集与第二电子币数据集合并成另一个电子币数据集、即合并后的电子币数据集。
85.当变换时,由第一安全元件接收的电子币数据子集产生优选地具有相同的货币金额的新的电子币数据集、即所谓的要变换的电子币数据集。新的电子币数据集由第二安全元件生成,优选地,方式为将所接收的电子币数据集的货币金额用作要变换的电子币数据集的货币金额。在此,生成新的混淆数额、例如随机数。例如将新的混淆数额添加到所接收的电子币数据集的混淆数额中,使得两个(新的和所接收的)混淆数额的总和用作要变换的电子币数据集的混淆数额。在变换之后,优选地,通过将同态单向函数分别应用于所接收的电子币数据子集和要变换的电子币数据子集,在安全元件中对所接收的电子币数据子集和要变换的电子币数据子集进行掩蔽,以便相应地获得经掩蔽的所接收的电子币数据子集和经掩蔽的要变换的电子币数据子集。
86.因此,通过将新的混淆数额添加到所接收的电子币数据集来保护变换,从而获得只有第二安全元件知道的混淆数额。新创建的混淆数额必须具有高熵,因为其被用作对应的经掩蔽的电子币数据子集的扰乱因子(blendungsfaktor)。为此优选地使用安全元件上
的随机数发生器。可以在币注册器中跟踪这种保护。
87.在变换的范畴中,优选地在安全元件中计算为了在币注册器中注册经掩蔽的电子币数据集的变换所需的附加信息。优选地,附加信息包括关于经掩蔽的要变换的电子币数据集的范围证明和关于经掩蔽的所接收的电子币数据集的范围证明。范围证明涉及证明电子币数据集的货币金额为非负数、电子币数据集是有效创建的和/或电子币数据集的货币金额和混淆数额是范围证明的创建者已知的。范围证明尤其用于提供这种(这些)证明而不暴露经掩蔽的电子币数据集的货币金额和/或混淆数额。范围证明也称为“零知识范围证明(zero-knowledge-range-proofs)”。优选地,将环签名用作范围证明。随后,在远程币注册器中注册经掩蔽的电子币数据集的变换。
88.注册步骤优选地在第二安全元件与币注册器连接时才实施。当电子币数据集用于两个安全元件之间的直接支付时,经掩蔽的币数据集能够在币注册器中以伪名注册。
89.在所述方法的另一种优选的设计方案中,为了电子币数据子集的合并,从第一和第二电子币数据子集中确定另一个电子币数据集(合并的电子币数据集)。在此,通过形成第一和第二电子币数据集的各自的混淆数额的总和来计算要合并的电子币数据集的混淆数额。此外优选地,通过形成第一和第二电子币数据集的各自的货币金额的总和来计算合并后的电子币数据集的货币金额。
90.在合并之后,通过将同态单向函数分别应用于第一电子币数据子集、第二电子币数据子集以及要合并的电子币数据集,在(第一和/或第二)安全元件中对第一电子币数据子集、第二电子币数据子集和要合并的电子币数据集进行掩蔽,以便获得经掩蔽的第一电子币数据子集、经掩蔽的第二电子币数据子集和经掩蔽的要合并的电子币数据子集。此外,在安全元件中计算为了在远程币注册器中注册经掩蔽电子币数据集的合并所需的附加信息。优选地,附加信息包括关于经掩蔽的第一电子币数据子集的范围证明和关于经掩蔽的第二电子币数据子集的范围证明。范围证明涉及证明电子币数据集的货币金额为非负数、电子币数据集是有效创建的和/或电子币数据集的货币金额和混淆数额是范围证明的创建者已知的。范围证明尤其用于提供这种(这些)证明而不暴露经掩蔽的电子币数据集的货币金额和/或混淆数额。范围证明也称为“零知识范围证明”。优选地,将环签名用作范围证明。随后,在远程币注册器中注册两个经掩蔽的电子币数据集的合并。
91.利用合并的步骤,可以将两个电子币数据集或者说两个电子币数据子集组合。在此,将货币金额和混淆数额相加。因此,与在拆分中一样,在合并中也可以执行两个原始币数据集的有效性。
92.在一种优选的设计方案中,注册步骤包括在币注册器中接收经掩蔽的要变换的电子币数据子集,校验经掩蔽的要变换的电子币数据子集的有效性;并且当校验步骤成功时,在币注册器中注册经掩蔽的要变换的电子币数据集,由此将要变换的电子币数据子集视为已校验。
93.支付系统优选地至少两层地构建并且具有用于直接交换(未掩蔽的)电子币数据集的直接支付交易层和币注册器层,该币注册器层也可以被称为“混淆的电子数据集分类帐”。在币注册器层中优选地不记录支付交易,而仅记录经掩蔽的电子币数据集、其状态、必要时校验值、签名以及修改,以验证(未掩蔽的)电子币数据集的有效性。因此确保了支付系统参与者的匿名性。交易也以这种方式被隐藏,因为在币注册器中没有存储货币金额和/或
交易的安全元件的标识符。币注册器层给出关于有效和无效电子币数据集的情况,以便例如避免相同电子币数据集的多次支出;或者验证电子币数据集作为有效支出的电子货币的真实性;或者获取每个安全元件的货币金额的总和,以便将该总和与阈值进行比较并相应地阻止或允许修改。币注册器层可以根据电子币数据集的计数器值确定电子币数据集是否已到期并要返回,或者要进行相应的修改以使其被视为返回。
94.在本文中,设备可以具有安全元件或本身是安全元件,在该安全元件中安全地存储有电子币数据集。在设备上可以运行准备就绪地引入有应用程序,该应用程序控制或至少启动传输过程的部分。
95.可以借助与安全元件在逻辑上和/或在物理上连接的设备来传输电子币数据集。
96.两个具有相应的安全元件的设备之间的通信可以无线地或有线地进行,或者例如也可以以光学方式、优选地通过qr码或条形码进行,并且可以设计为例如终端的应用程序之间的安全信道。光学方式可以包括例如生成光学编码、尤其2d代码、优选qr代码的步骤以及读取光学编码的步骤。
97.电子币数据集的传输例如通过密钥来保护,例如通过针对电子币数据集交换而协商的会话密钥或者对称的或非对称的密钥对。
98.通过设备之间例如通过其安全元件进行的通信,所交换的电子币数据集被保护免于被盗或篡改。因此,安全元件层面补充了已创立的区块链技术的安全性。
99.在一种优选的设计方案中,币数据集的传输作为apdu指令进行。为此,币数据集优选地存储在作为安全元件的(嵌入式)uicc中并且在那里被管理。apdu是uicc和终端之间的连接协议的组合式指令/数据块。apdu的结构由标准iso-7816-4定义。apdus表示应用层面(osi层模型的第7层)的信息元素。
100.此外,有利的是,电子币数据集可以以任何格式传输。这意味着,电子币数据集可以在任意信道上进行通信、即传输。电子币数据集不必以固定的格式或在特定的程序中存储。
101.在一种设计方案中可以规定,当存在或接收到多个电子币数据集时,第一和/或第二安全元件相应于其货币价值地处理接收到的电子币数据集。因此可以规定,在处理具有较低货币价值的电子币数据集之前处理具有较高货币价值的电子币数据集。
102.在一种设计方案中,安全元件可以设计为,在接收到电子币数据集之后根据所附信息(例如通货或面额)将该电子币数据集与安全元件中已经存在的电子币数据集合并,并且相应地实施合并步骤。此外,安全元件还可以设计为在接收到电子币数据集之后自动地实施变换。
103.在一种设计方案中,在传输时,其他信息、尤其元数据,例如通货,从第一终端或第一安全元件传输到第二终端或第二安全元件。在一种设计方案中,该信息可以包括在电子币数据集中。
104.所述方法不限于一种通货。因此,支付系统可以设计用于管理不同发行实体的不同通货。例如,支付系统设计用于将第一通货的电子币数据集转换(=兑换)为另一种通货的电子币数据集。这种兑换也是对电子币数据集的修改。随着兑换,原始币数据集变为无效并被视为返回。因此可以使用不同的通货进行灵活支付并且提高用户友好性。
105.该方法还使得电子币数据集能够例如通过将货币金额赎回到支付系统中参与者
的账户上而被转换成账面资金。这种转换也是一种修改。赎回后,电子币数据集变为无效并视为返回。
106.优选地,至少一个初始电子币数据集仅由发行实体创建,其中,优选地,经拆分的电子币数据集、尤其电子币数据子集也可以由安全元件生成。优选地,创建和选择货币金额还包括选择具有高熵的混淆数额。发行实体是计算系统,其优选地远离第一和/或第二终端。在创建新的电子币数据集后,在发行实体中通过将同态单向函数应用于新的电子币数据集来对新的电子币数据集进行掩蔽,以便相应地获得经掩蔽的新的电子币数据集。此外,在发行实体中计算为了在远程币注册器中注册经掩蔽的新电子币数据集的创建所需的附加信息。优选地,该附加信息是对(经掩蔽的)新电子币数据集源自发行实体的证明,例如通过经掩蔽的新电子币数据集的签名。在一种设计方案中可以规定,发行实体用其签名在产生电子币数据集时对经掩蔽的电子币数据集进行签名。为此,发行实体用于验证签名的密钥存储在币注册器中。发行实体的签名与由终端或安全元件产生的签名不同。
107.优选地,发行实体可以将其拥有的电子币数据集(即发行实体知道其货币金额和混淆数额)去激活,方式为,利用同态单向函数来掩蔽经掩蔽的要去激活的电子币数据集并且为币注册器准备去激活命令。除了经掩蔽的要去激活的电子币数据集之外,去激活命令的一部分优选地也证明了去激活步骤是由发行实体发起的,例如以已签名的经掩蔽的要去激活的电子币数据集的形式。针对经掩蔽的要去激活的电子币数据集的范围校验可以作为附加信息包括在去激活命令中。去激活可以是返回的结果。随后在远程币注册器中注册经掩蔽的电子币数据集的去激活。利用去激活命令触发去激活步骤。
108.创建步骤和去激活步骤优选地在安全位置处、尤其不在终端中执行。在一种优选的设计方案中,创建步骤和去激活步骤仅由发行实体执行或触发。这些步骤优选地在安全位置处进行、例如在开发用于处理不安全网络中的敏感数据材料的硬件和软件架构中进行。将相应的经掩蔽的电子币数据集去激活具有如下效果:相应的经掩蔽的电子币数据集不再可用于进一步的处理、尤其是交易。然而,在一种设计方案中可以规定,已去激活的经掩蔽的电子币数据集以存档的形式保留在发行实体中。已去激活的经掩蔽的电子币数据集不再有效或被返回的事实例如可以借助标记或其他编码来标识,或者已去激活的经掩蔽的电子币数据集可以被销毁和/或删除。已去激活的电子币数据集也物理地从终端或安全元件上移除。
109.通过根据本发明的方法能够实现对电子币数据集和相应的经掩蔽的电子币数据集进行不同的处理操作(修改)。在此,每个处理操作(尤其创建、去激活、拆分、合并和变换)在币注册器中注册并且在那里以不可改变的形式附加到先前对相应的经掩蔽的电子币数据集的处理操作的列表中。在此,注册在时间和地点(空间)方面都与安全元件之间的支付过程无关。涉及货币金额本身的存在、即意味着创造和废除甚至销毁货币的处理操作“创建”和“去激活”(=返回)需要附加的批准、例如以发行实体的签名的形式,以便在币注册器中进行注册(即记录)。其余的处理操作(拆分、合并、变换)不需要发行实体或命令发起者(=付款人,例如终端或安全元件)的授权,在所述其余的处理操作中,拆分和合并也可以由一个安全元件委托给另一个安全元件。
110.直接交易层中的处理仅涉及币数据集相对于相应电子币数据集的安全元件的所有权关系和/或配属关系。例如通过数据库中的相应的列表条目来实现币注册器中相应处
理的注册,该列表条目包括必须由币注册器执行的一系列标记。列表条目的可能结构例如包括:前面的币数据集的列、后面的币数据集的列、发行实体的签名列、进行发送和/或进行接收的安全元件的签名列、币拆分过程的签名列、至少一个标记列。当币注册器已经验证了所要求的标记时、即例如在相应的校验之后已经从状态“0”转换为状态“1”时,改变(修改)才是最终的。相反,如果校验失败或持续过久,则例如会从状态
“‑”
转换为状态“0”。也可以设想其他状态值,和/或在此提及的状态值是可以交换的。与修改有关的状态与传输过程期间的状态(非活动/活动)无关。优选地,相应的(经掩蔽的)电子币数据集的有效性由这些标记的状态值汇总表示,每个状态值在一列中针对在该处理的注册中涉及的每个经掩蔽的电子币数据集。
111.在另一种设计方案中,至少两个、优选三个或甚至所有前面提及的标记也可以由当所有校验都已成功完成时才设置的单个标记代替。此外,可以将前面的数据集和后面的数据集的每两列组合为一列,在其中将所有币数据集共同列出。由此,每个字段条目可以管理两个以上的电子币数据集,并且因此例如可以实现分成两个以上的币数据集。
112.上面已经描述了通过币注册器而进行的校验,以校验处理是否是最终的,所述校验尤其是:
[0113]-前面一(多)列的经掩蔽的电子币数据集是否有效?
[0114]-监控是否给出了正确的校验值?
[0115]-针对经掩蔽的电子币数据集的范围证明是否成功?
[0116]-经掩蔽的电子币数据集的签名是否是发行实体的有效签名?
[0117]-进行发送/进行接收的终端(伪名)是否尤其每单位时间都超过最大允许货币金额的极限值?
[0118]-币数据集是否由于安全元件之间的传输而处于非活动状态?
[0119]
还优选的是,当符合以下校验之一时,经掩蔽的电子币数据集无效,即当:
[0120]
(1)经掩蔽的电子币数据集未在币注册器中注册;
[0121]
(2)经掩蔽的电子币数据集的最后处理表明其有前面的币数据集,但该最后处理不是最终的;或者
[0122]
(3)经掩蔽的电子币数据集的最后处理表明其有后面的币数据集,并且该最后处理是最终的;
[0123]
(4)经掩蔽的电子币数据集不是有效的经掩蔽的电子数据集的后继者,除非其由发行实体签名;
[0124]
(5)经掩蔽的电子币数据集的货币金额导致尤其每单位时间都超过最大允许货币金额的极限值,并且所请求的去匿名化被相应的终端拒绝。
[0125]
(6)关于一个安全元件的活动状态被录入到币注册器中,但另一个安全元件在拥有显示下问询动作(变换、合并、拆分)。
[0126]
在一个方面,一种用于交换货币金额的支付系统设有币注册器层,该币注册器层具有:优选地去中心式控制的数据库、即分布式账本技术(distributedledgertechnology,dlt),经掩蔽的电子币数据集存储在该数据库中;以及具有至少两个安全元件的直接交易层,在该直接交易层中可以执行前面描述的方法;和/或用于产生电子币数据集的发行实体。在此,发行实体可以证明所产生的经掩蔽的电子币数据集是由它产生的,优选地,发行
实体可以通过签名来证实自己,并且币注册器层可以校验发行实体的签名。
[0127]
优选地,支付系统设计用于执行上面提及的方法和/或设计方案中的至少一个设计方案。
[0128]
另一方面涉及一种通货系统,包括发行实体、币注册器层、第一安全元件和第二安全元件,其中,发行实体设计用于创建电子币数据集。经掩蔽的电子币数据集设计为由发行实体可证明地创建。币注册器层设计用于实施如在上述方法中实施的注册步骤。优选地,安全元件、即至少第一和第二安全元件适用于实施上面提及的用于传输的方法之一。
[0129]
在通货系统的一种优选的设计方案中,只有发行实体被授权最初创建和最终收回电子币数据集。处理(例如合并、拆分和/或变换的步骤)可以并且优选地由安全元件执行。去激活的处理步骤可以优选地仅由发行实体实施。
[0130]
优选地,币注册器和发行实体布置在服务器实体中或者作为计算机程序产品存在于服务器和/或计算机上。
[0131]
在此,电子币数据集可以以多种不同的表现形式存在,并且因此可以通过不同的通信信道,以下也称为接口,来进行交换。因此创造了电子币数据集的非常灵活的交换。
[0132]
电子币数据集例如可以以文件的形式表示。在此,文件由存储在数据载体、数据存储器或存储介质上的在内容方面相关的数据组成。每个文件最初是一维的比特序列,其通常被概括解释为字节区块。安全元件和/或终端的应用程序(applikation)或操作系统将比特序列或字节序列解释为例如文本、图像或录音。在此使用的文件格式可能有所区别,例如其可以是代表电子币数据集的纯文本文件。在此,尤其将货币金额和盲签名映射为文件。
[0133]
电子币数据集例如是美国信息交换标准代码(americanstandardcode forinformationinterchange,ascii)字符的序列。在此,尤其将货币金额和盲签名映射为该序列。
[0134]
电子币数据集也可以在设备中从一种表现形式变换为另一种表现形式。因此,电子币数据集例如可以作为qr码在设备中接收并且作为文件或字符序列从设备中输出。
[0135]
同一电子币数据集的不同的表现形式使得能够在使用不同的传输介质(空气、纸、有线)并考虑终端的技术设计方案的情况下实现不同技术配置的安全元件或终端之间的非常灵活的交换。电子币数据集的表现形式的选择优选地例如基于识别到或所协商的传输介质和设备组件自动地进行。附加地,设备的用户也可以选择用于交换(=传输)电子币数据集的表现形式。
[0136]
在简单的情况下,数据存储器是终端的内部数据存储器。电子币数据集存储在这里。因此,确保了对电子币数据集的简单访问。
[0137]
数据存储器是外部数据存储器、也称为在线(online)存储器。因此,安全元件或终端只有一种访问存储在外部的并且因此是安全存储的电子币数据集的装置。尤其是,如果安全元件或终端丢失或者安全元件或终端发生故障,电子币数据集不会丢失。由于拥有(未掩蔽的)电子币数据集就相当于拥有货币金额,因此可以通过使用外部数据存储器来更安全地保管和管理货币。
[0138]
如果币注册器是远程实体,则该设备优选地具有用于借助诸如tcp、ip、udp或http之类的通用互联网通信协议进行通信的接口。该传输可以包括通过移动网络的通信。
[0139]
在一种优选的设计方案中,安全元件设计用于对电子币数据集执行已经描述的处
理、尤其拆分、合并和变换。为此,计算单元设计用于将要变换的电子币数据集掩蔽为如下电子币数据集并将其与伪名相关联:安全元件需要该电子币数据集作为经掩蔽的电子币数据集以用于注册变换命令或者说在变换步骤中注册。以这种方式,可以如上所述地变换电子币数据集。
[0140]
此外或备选地,计算单元优选地设计用于掩蔽被拆分为多个币数据子集的电子币数据集并将其与伪名相关联,以便获得经掩蔽的电子币数据集并且在必要时获得可以在币注册器中注册的经掩蔽的电子币数据集。以这种方式,可以如上所述地拆分电子币数据集。
[0141]
此外或备选地,计算单元优选地设计用于将要由第一和第二电子币数据子集合并成的电子币数据集作为电子币数据集掩蔽并将其与伪名相关联,以便获得经掩蔽的要合并的币数据集作为在币注册器中注册的经掩蔽的电子币数据集。以这种方式,可以如上所述地合并电子币数据集。
[0142]
在一种优选的设计方案中,用于输出至少一个电子币数据集的接口是终端的电子显示单元,其设计用于显示电子币数据集和/或币数据集的成功传输(如上所述)和/或必要时(也)用于以视觉形式输出电子币数据集。如已经描述的,电子币数据集然后可以例如以光电可检测代码、图像等形式在终端之间交换。
[0143]
在一种优选的设计方案中,用于输出(=发送)至少一个电子币数据集的接口是协议接口,其用于借助针对无线通信的通信协议通过终端将电子币数据集无线地发送到另一安全元件。在此,尤其设置例如借助蓝牙协议或nfc协议或ir协议的近场通信;备选地或附加地,可以设想wlan连接或移动无线电连接。电子币数据集然后根据协议属性进行适配或集成到协议中和进行传输。
[0144]
在一种优选的设计方案中,用于输出至少一个电子币数据集的接口是数据接口,其用于借助应用程序将电子币数据集提供给另一安全元件。与协议接口不同的是,在此借助应用程序传输电子币数据集。该应用程序然后以适当的文件格式传输电子币数据集。可以使用特定于电子币数据集的文件格式。在最简单的形式中,币数据集以ascii字符串或文本消息(例如sms、mms、即时通讯消息如threema或whatsapp)的形式传输。在一种替代的形式中,币数据集作为apdu字符串传输。还可以设置钱包应用程序。在此,进行交换的安全元件或其终端优选地确保可以借助应用程序进行交换,即两个安全元件或其终端都具有应用程序并且准备好进行交换。
[0145]
在一种优选的设计方案中,安全元件或设备进一步具有用于接收电子币数据集的接口。
[0146]
在一种优选的设计方案中,用于接收至少一个电子币数据集的接口是安全元件或终端的电子检测模块,其设计用于检测以视觉形式表示的电子币数据集。检测模块例如是摄像机或者条形码或qr码扫描仪。
[0147]
在一种优选的设计方案中,用于接收至少一个电子币数据集的接口是协议接口,其用于借助针对无线通信的通信协议从另一安全元件或终端无线地接收电子币数据集。在此,尤其设置例如借助蓝牙协议或nfc协议或ir协议的近场通信;备选地或附加地,可以设想wlan连接或移动无线电连接。
[0148]
在一种优选的设计方案中,用于接收至少一个电子币数据集的接口是数据接口,其用于借助应用程序从另一安全元件或终端接收电子币数据集。该应用程序然后以适当的
文件格式接收币数据集。可以使用特定于电子币数据集的文件格式。在最简单的形式中,币数据集以ascii字符串或文本消息(例如sms、mms、即时通讯消息如threema或whatsapp)的形式传输。在一种替代的形式中,币数据集作为apdu字符串传输。附加地,可以借助钱包应用程序进行传输。
[0149]
在一种优选的设计方案中,用于接收至少一个电子币数据集的接口也是用于输出电子币数据集的接口,从而该接口不仅设置用于发送币数据集而且设置用于接收币数据集。
[0150]
优选地,作为电子币数据集获得的货币金额部分是先前对称地拆分的电子币数据集的电子币数据子集。在此,为了进行拆分,另一安全元件或另一设备可以要么独立地与币注册器联系,要么将该安全元件或终端用作受信任的实体来与币注册器进行通信。在这种情况下,在一种优选的设计方案中,所述另一安全元件或另一终端将电子币数据集发送给该安全元件或终端并请求将其对称地拆分为例如第一预定义的电子币数据子集和第二预定义的电子币数据子集。
[0151]
在一种优选的设计方案中,安全元件或设备包括:至少一个安全元件读取设备,其设计用于读取安全元件;随机数发生器;和/或对银行账户具有待授权的访问的与保险库模块和/或银行机构的通信接口。
[0152]
在一种优选的设计方案中,数据存储器是可以由至少一个另外的安全元件或终端访问的共享数据存储器,其中,每个所述另外的安全元件或终端具有应用程序,其中,所述应用程序设计用于与用于相应地注册电子币数据子集的币注册器进行通信。
[0153]
因此,这里提出的是一种以电子币数据集的形式发行数字货币的解决方案,该解决方案依赖于传统的(模拟)钞票和/或币的应用。在此,数字货币通过电子币数据集映射。与(模拟)钞票一样,这些电子币数据集可以用于所有形式的支付,包括对等(peer-to-peer)支付和/或pos支付。知道有效的电子币数据集的所有组成部分(尤其货币金额和混淆数额)就相当于对数字货币的拥有(所有权)。因此,最好对这些有效的电子币数据集进行保密处理,例如将其保管在终端的安全元件/保险库模块中并在那里进行处理。为了判定电子币数据集的真实性并防止双重支付,将经掩蔽的电子币数据集作为电子币数据集的唯一的对应的公开表示保存在币注册器中。知道或拥有经掩蔽的电子币数据集并不代表拥有金钱。更确切地说,这相当于校验模拟支付手段的真实性。
[0154]
币注册器还包含例如关于经掩蔽的电子币数据集的所执行和所计划的处理的标记。从关于处理的标记中推导出相应的经掩蔽的电子币数据集的状态,所述状态说明相应的(未掩蔽的)电子币数据集是否有效、即是否准备用于支付。因此,电子币数据集的接收者将首先产生经掩蔽的电子币数据集,并且通过币注册器认证经掩蔽的电子币数据集的有效性。根据本发明的该解决方案的一大优点是,数字货币被拆分给终端、商家、银行和系统的其他用户,但没有数字货币或其他元数据存储在币注册器、即公共实体中。
[0155]
所提出的解决方案可以整合到现有的支付系统和基础设施中。根据本解决方案,尤其可以存在利用钞票和币的模拟支付过程与数字支付过程的组合。因此,可以利用钞票和/或币进行支付过程,但换钱或找零可以作为电子币数据集存在。为了进行交易,例如可以设置具有相应配置的atm、尤其是具有合适的通信接口的atm,和/或移动终端。此外,可以设想将电子币数据集换成钞票或币。
[0156]
本文中列出的创建、变换、拆分、合并和去激活(返回)的步骤分别通过相应的创建命令、变换命令、拆分命令、合并命令或去激活命令(返回命令)触发。
附图说明
[0157]
下面根据附图更详细地阐述本发明以及本发明的其他实施方式和优点,其中,附图仅描述了本发明的实施例。附图中相同的组件设有相同的附图标记。附图不应被视为真实的比例,并且附图的各个元件可能以过度放大或过度简化的方式示出。
[0158]
在附图中:
[0159]
图1a,b示出了根据现有技术的支付系统的实施例;
[0160]
图2示出了根据本发明的方法的方法流程图的实施例;
[0161]
图3示出了图2所示方法流程图的扩展设计的实施例;
[0162]
图4示出了图2所示方法流程图的扩展设计的实施例;
[0163]
图5示出了在第一安全元件中根据本发明的方法的方法流程图的实施例;
[0164]
图6示出了根据本发明的系统的实施例;
[0165]
图7示出了支付系统、尤其币注册器的实施例;
[0166]
图8示出了根据本发明的系统的用于拆分和变换和直接传输电子币数据集的实施例;
[0167]
图9示出了根据本发明的支付系统的用于合并电子币数据集的实施例;
[0168]
图10示出了根据本发明的方法的方法流程图和币数据集的相应处理步骤的实施例;
[0169]
图11示出了根据本发明的方法的方法流程图和币数据集的相应处理步骤的实施例;
[0170]
图12示出了根据本发明的安全元件的实施例;并且
[0171]
图13示出了根据本发明的系统。
具体实施方式
[0172]
图1a和图1b示出了根据现有技术的支付系统的实施例并且在背景技术中进行了描述。再次指出,终端m8想要将币数据集cc在币注册器4中注册为币数据集ce,并且币注册器4查明币数据集cb已经无效。结果,币注册器4既不接受假定有效的币数据集cc,也不接受要变换的币数据集ce。
[0173]
例如当攻击者m1将币数据集cb直接转发给两个参与者m2和m3时,就会出现这种问题。一旦m2将该币数据集在币注册器4中注册,币数据集cb就变为无效。反之,毫无戒心的参与者(终端)m3直接转发币数据集cb,而不对其进行注册。只有终端m8断开了直接传输链,其中币注册器4识别到币数据集cb的无效并且识别到双重支付。因此,中央银行(以下与电子币数据集的发行实体同义)一方面希望限制币数据集的直接传输次数,另一方面希望在识别到攻击的情况下能追踪发生攻击的位置。
[0174]
因此,在现有技术中,对m1的攻击(电子币数据集的双重支付)被发现得显著得更晚,并且大量直接传输已经以不被允许的方式实施。此外,由于电子币数据集的大量交易并且也由于延长的使用寿命,对电子币数据集进行操纵的风险增加。因此期望的是,当超过币
数据集的一定使用寿命或币数据集/与币数据集有关的动作总数时,币数据集到期。
[0175]
根据本发明的整个系统包括发行实体(中央银行)、至少一个支付系统和表示为安全元件(终端mx)的多个参与者。支付系统例如包括商业银行和一个(或多个)中央币注册器,该中央币注册器注册币数据集并且校验和记录对币数据集的修改。整个系统(系统)的另一种示例也在图13中示出。
[0176]
图2示出了根据本发明的用于将电子币数据集(以下简称为emd)c,从第一安全元件se1传输105到第二安全元件se2的方法的流程图的实施例。安全元件se例如是euicc或芯片卡。
[0177]
se1可能已经从作为支付系统的参与者的诸如终端或机器或在线服务之类的可信度较低的单元接收到emdc。为此,例如在se1中设置了输入功能。来自这种不安全来源的emd、特别是不直接来自另一个se的emd被认为是不安全的,并且在se中接收之后,使用支付系统的币注册器2检查有效性。
[0178]
在可选步骤104中,se1将emdc注册到其自身上,如下文所阐述的那样。在步骤301中,se1将emdc的状态设置为“不活动”,以便开始将emdc传输105到se2。可选地,在币注册器4中注册改变的状态。例如,在se1的数据存储器中进行状态的设置。此外(未示出),se1可选地创建交易数据集并将其保存在se1中,该交易数据集包括交易号、接收者地址(在此为se2)、发送者地址(在此为se1)和emdc的币值金额。利用交易数据集,传输105可以被记录并且在错误情况下用于反转(图4)或重复(图3)。
[0179]
在步骤302中,emdc被发送到se2。为此,在se1和se2之间建立有安全信道,在其范畴内,两个se已相互认证。se1和se2之间的传输路径不一定是直接直达的,而是可以是互联网或也可以是具有连接在中间的实体(终端、路由器、交换机、应用程序)的近场通信路径,其在图2中概括地示出为“互联网”云。通过使用se作为安全环境,可以产生更高的信任级别、即提高可信度。在可选步骤303中,与发送302同时或紧接在发送302之前或之后启动计时器。在步骤301中被失效的emdc不能再被se1用于动作(如下所述)。因此,由于已经触发(且尚未结束)的传输过程105,emd在支付系统中被阻断。因此,防止了在发送步骤302之后的双重支付。“失效”实现了在传输过程105期间的简单操作。
[0180]
在se2中符合规定地接收到emdc的情况下,se2生成接收确认并将其发送回到se1。来自se2的接收确认可以作为删除请求发送,因为只有在se1中删除了emdc之后,才可以(允许)在se2中使emdc生效并使用emdc。
[0181]
在步骤304,se1检查是否已经接收到来自se2的接收确认。根据图2,已经接收到接收确认,从而se1在步骤305中删除emdc。删除emd可以是将emd移动到emd的存储器区域,该存储器区域被视为存档并将被删除的emd的历史呈现为存档保留。备选地,emd从数据存储器中物理地删除。由于emd已经成功发送到se2,因此emdc的币值金额没有被破坏,而是如所期望的那样被转移(传输)。
[0182]
在步骤305a中,可以可选地显示从se1中删除emdc。在此,例如更新se1(或se1在逻辑上所在的终端me1)的金额显示。例如,从可用于支付交易的se1的金额中减去emdc的货币金额。在此,过程300承担控制角色,使得以步骤305引导的删除过程对于用户显示的更新有因果关系,因此必要时使用的更高级别的应用程序控制了emdc的命运。
[0183]
在步骤306中,将删除确认发送到se2。这相当于承认emdc在se1中不再存在,并且
因此可以在se2中使其生效。随着在se2中获得删除确认,se2将emdc在se2中的状态转换为活动状态,emdc因此生效并且从该时间点开始可以用于se2中的进一步的支付交易或动作(拆分、合并、变换)。
[0184]
可选地,在步骤307中,se2将激活确认发送到se1。传输过程105因此完成,并且emdc已成功地从se1传输到se2。
[0185]
可选地,se2的emdc在币注册器中变换到se2(参见下文),由此,emdc注册到se2(步骤104)。
[0186]
在图3和4中分别示出了根据图2的传输过程105的流程的扩展方案。图3的第一步骤104、301、302和303与图2的步骤104、301、302和303相同,因此在此不重新阐述。与图2不同,se2没有接收到emdc(参见步骤302的箭头末端)。
[0187]
se2在第一次发送尝试302时没有接收到emdc。这意味着传输错误,其原因(如上所述)可能是各式各样的。例如,se1可能失去了与其自身的终端m1c(未示出)的nfc连接,se2可能失去了与其自身的终端m2或另一终端m1(未示出)的nfc连接,发生了设备关断或传输协议错误。在所有情况下,se2都不会生成接收确认。
[0188]
错误情况在se1中确定,在图3和图4通过检查304示出,方式例如为:超过预定义的持续时间,如根据步骤303通过计时器显示,或者接收到来自se2或终端m1或另一终端m2的错误消息(未示出)。
[0189]
然后在步骤308决定,是否应该重新发送emdc或者是否应该反转该传输。可以视错误情况类型或重复尝试次数(例如仅可以有x次重复)而定地做出该决定,并且导致根据图3或图4的不同的方法流程。在图3中决定,重新发送emdc。为此,根据图2的步骤302至307实施传输105,由于与图2的特征相同,在此不再重复。为此创建的交易数据集可以帮助重复交易。然而,优选地随着每次交易尝试创建新的交易数据集,以便也记录失败并且以后能够重建或评估该失败。传输过程105因此以第二次尝试成功完成并且emdc已经成功地从se1传输到se2。
[0190]
在图4中示出了从检查步骤308开始的图3的备选的方法流程、即针对se1决定(或预规定)不执行重复尝试、而是反转该方法(回滚方法)的情况。在这种情况下,在步骤309中,emdc被se1重新激活,并且从该时间点起可以再次用于/提供给se1中的交易或动作。
[0191]
步骤308可以包含检查步骤。例如,计数器值可以随着每次新的发送尝试(retry)而递增,并且如果超过重复尝试的最大允许次数、例如10次或5次或3次,则在步骤308中自动地且与错误情况无关地决定,不执行新的发送尝试(retry),而是将传输105作为不成功而结束并且应运行根据图4的方法。
[0192]
备选地或附加地,步骤308也可以根据检测到的错误情况进行决定,使得“不可恢复错误(fatalerror)”导致图4的回滚,但是nfc通信的连接错误导致根据图3的重复。
[0193]
备选地或附加地,步骤308也可以根据生成的错误消息进行决定。
[0194]
图3和4的步骤优选地在不问询币注册器的情况下执行,由此,该方法不需要与币注册器连接以执行传输105。
[0195]
在该方法的一种备选的设计方案中,emd的状态利用步骤301由se1报告给币注册器4。利用检查步骤304,建立与币注册器4的连接并且执行对emdc的状态问询。如果币注册器4继续反馈关于emdc(注册到se1)的非活动状态,则假定没有交易错误(操纵尝试)并且该
方法如所描述的那样继续。然而,如果币注册器4反馈关于emdc的活动状态或者反馈注册到另一个se上,则假定交易错误(操纵尝试)并且支付系统被警告。使用se1的交易数据集以作凭证。
[0196]
在该方法的另一种备选的设计方案中,利用步骤301将emd的状态由se1报告给币注册器4。在se2方面,在发送接收确认之后未接收到删除确认的情况下,建立与币注册器4的连接,并且执行关于emdc的状态问询。如果币注册器4继续反馈关于emdc(注册到se1)的非活动状态,则假定没有交易错误(操纵尝试)并且重新发送接收确认,然后该方法如所描述的那样继续。然而,如果币注册器4反馈关于emdc的活动状态或者反馈注册到se1或另一个se上,则假定交易错误(操纵尝试)并且支付系统被警告。使用se2的交易数据集以作凭证,或者请求se1的关于emd的交易数据集。
[0197]
在图5中示出了se1中的传输过程105的根据本发明的方法流程,如已经在图2至图4中描述的那样。
[0198]
可选地,在步骤301中,使emd失效。在后续步骤302中,发送emd。在可选步骤303中,启动计时器。步骤303也可以可选地在步骤302之前执行。在检查步骤304中,检查是否已经接收到接收确认。
[0199]
在步骤304的检查结果为“是”的情况下,在后续步骤305中,se1中的emd被se1删除。可选地,在步骤305a中,向参与者(用户)显示该删除。在后续步骤306中,se1发送删除确认并且在后续步骤307中接收激活确认。步骤304的检查结果为“是”的情况反映了成功的传输105。
[0200]
在步骤304的检查结果为“否”的情况下,可选地进行决定步骤308(也是检查步骤),以便决定是否应重新尝试发送(在步骤308的结果为“否”的情况下)或者是否应将传输105作为不成功而结束(在步骤308的结果为“是”的情况下)。在步骤308的结果为“是”的情况下,在后续步骤309中,emd被重新激活并且可用于se1中的交易或动作。在步骤308的结果为“否”的情况下,从步骤302起重复该方法。也可以省略该决定步骤308,并且可以指定总是反转或总是重复。
[0201]
如已经在图3和4中阐述的那样,可以在步骤308中问询计数器值,以便将重复尝试次数限制在预定义的次数。
[0202]
可以预先在发行实体中问询电子币数据集并且可选地由终端或发行实体或支付系统接收该电子币数据集。步骤104和105可以对应于图10的步骤104和105。对emd的动作(拆分、合并、变换、传输、赎回、转换)可以对应于图6至图12的动作之一。
[0203]
附加地,步骤305a中的显示也可以理解为将emd报告给币注册器4,以便跟踪币注册器中的传输。
[0204]
在电子币数据集中,校验值当前被作为数据元素运用。每次在终端之间直接传输币数据集时,校验值都会递增。在支付系统中,还可以运用或确定包含校验值的计数器值,例如作为先前(注册的)计数器值和校验值的总和,以便确定是否要返回币数据集。对币数据集的每个动作都会增加该计数器值。不同的动作类型对计数器值的权重不同,例如,币数据集的直接转发具有比修改(拆分、组合)更高的权重。以这种方式,对币数据集的使用寿命和在其中运用的动作进行评估,并且根据所运用的动作来定义币数据集的返回标准。校验值和计数器值映射出币数据集的生命周期,然后根据该生命周期做出关于返回的决定。
[0205]
图6示出了根据本发明的具有安全元件se1和se2的支付系统的实施例。在此,se1和se2可以运行准备就绪地引入到终端m1和m2中,并且在逻辑上或在物理上连接。
[0206]
在这种情况下,在发行实体1(例如中央银行)中产生电子币数据集ci。关于电子币数据集ci产生经掩蔽的电子币数据集zi,其设有混淆数额并在作为币注册器4的“混淆的电子数据集分类帐”中注册。在本发明的范畴中,分类帐被理解为列表、目录、优选数据库结构。电子币数据集ci被发行到第一终端m1。
[0207]
例如为此产生真正的随机数作为混淆数额ri。混淆数额ri与货币金额vi相关联。因此,根据本发明的第i个电子币数据集可以是:
[0208]ci
={vi;ri}
ꢀꢀ
(1)
[0209]
有效的电子币数据集可以用于支付。因此,vi和ri这两个值的所有者拥有数字货币。然而,数字货币通过由有效电子币数据集和对应的经掩蔽的电子币数据集zi组成的对来定义。通过根据等式(2)应用同态单向函数f(si)获得经掩蔽的电子币数据集zi:
[0210]
zi=f(ci)
ꢀꢀ
(2)
[0211]
函数f(ci)是公开的,即任何系统参与者都可以调用和使用该函数。函数f(ci)根据等式(3)定义:
[0212]
zi=vi·
h+ri·gꢀꢀ
(3)
[0213]
其中,h和g是具有生成元g和h的群g的生成点,在该群中离散对数问题很难解决,对于所述生成元,另一个基的离散对数未知。例如,g和h是椭圆曲线加密ecc的生成点,即ecc的私钥。必须以这种方式选择生成点g和h,使得g和h之间的联系不为公众所知,因此:
[0214]
g=n
·hꢀꢀ
(4)
[0215]
关联n必须实际上是无法找到的,以防止货币金额vi被操纵而仍然可以计算出有效的zi。等式(3)是“用于ecc的彼得森承诺(pederson-commitment)”,其确保货币金额vi可以被币注册器4得到、即“承诺”给币注册器4,而不将其透露给币注册器4。因此,只有经掩蔽的币数据集zi被发送(公开)给公共且远程的币注册器4。
[0216]
虽然在本示例中描述了基于椭圆曲线的加密或者说对基于椭圆曲线的加密进行描述,但是也可以设想基于离散对数方法的另外的密码方法。
[0217]
通过混淆数额ri的熵,等式(3)使得即使在用于货币金额vi的值范围很小的情况下也能够获得密码学强度的zi。因此,通过估计货币金额vi来进行简单的暴力破解(brute-force)攻击实际上是不可能的。
[0218]
等式(3)是单向函数,也就是说,从ci计算zi很容易,因为存在有效的算法,而从zi出发计算ci非常困难,因为不存在多项式时间内可解的算法。
[0219]
此外,等式(3)对于加法和减法是同态的,即,适用的是:
[0220][0221]
因此,可以在直接交易层3中以及在币注册器4中并行地执行加法运算和减法运算,而币注册器4不知道电子币数据集ci。等式(3)的同态特性使得能够仅基于经掩蔽的币数据集zi来监控有效和无效的电子币数据集ci,并且确保没有新的货币金额vj被创建。
[0222]
通过该同态特性,币数据集ci可以根据等式(1)拆分为:
[0223]ci
=cj+ck={vj;rj}+{vk;rk}
ꢀꢀ
(6)
[0224]
其中适用:
[0225]
vi=vj+vkꢀꢀ
(7)
[0226]ri
=rj+rkꢀꢀ
(8)
[0227]
对于相应的经掩蔽的币数据集:
[0228]
zi=zj+zkꢀꢀ
(9)
[0229]
利用等式(9)例如可以以简单的方式校验根据图8或图11的对币数据集的“对称或不对称的拆分”处理或者说“对称或不对称的拆分”处理步骤,而无需币注册器4知道ci、cj、ck。尤其校验等式(9)的条件,以表明拆分后的币数据集cj和ck有效并且币数据集ci无效。电子币数据集ci的这种拆分在图8或图11中示出。
[0230]
以相同的方式,也可以组合(合并)电子币数据集,参见图8或图10及说明。
[0231]
附加地,需要校验是否注册了(不允许的)负货币金额。在此,电子币数据集ci的所有者必须能够向币注册器4证明处理操作中的所有货币金额vi都位于[0,...,n]的值范围内,而不需要将货币金额vi告知给币注册器4。范围证明也称为“range-proofs”。优选地使用环签名(ringsignature)作为范围证明。对于本实施例,电子币数据集c的货币金额v和混淆数额r都以比特表示(bitdarstellung)来解决。适用的是:
[0232]
vi=∑aj·2j
,0≤j≤n,且aj∈{0;1}
ꢀꢀ
(9a)
[0233]
以及
[0234]ri
=∑bj·2j
,0≤j≤n,且bj∈{0;1}
ꢀꢀ
(9b)
[0235]
对于每个比特,优选地以
[0236]cij
=aj·
h+bj·gꢀꢀ
(9c)
[0237]

[0238]cij-aj·hꢀꢀ
(9d)
[0239]
执行环签名,其中,在一种设计方案中可以规定,仅对特定的比特执行环签名。
[0240]
在图6中,电子币数据集ci由发行实体1产生且提供给第一安全元件se1。
[0241]
在图6中,电子币数据集ci由发行实体1借助等式(3)计算,经掩蔽的电子币数据集zi由发行实体1计算,并且与至少第二校验值p
i2
在币注册器4中注册。传输例如通过wlan、nfc或蓝牙以无线的方式进行。可以通过密码学加密方法附加地保护传输,方式例如为,协商会话密钥或应用pki基础设施。
[0242]
在第二安全元件se2中,所传输的电子币数据集ci被接收为ci*。随着电子币数据集ci*的接收,se2拥有由电子币数据集ci*代表的数字货币。随着直接传输,其提供给se2用于进一步动作。对于传输105,应用在图2至图4中提出的方法。
[0243]
由于在使用se时可信度较高,两个se1、se2相互信任并且原则上不需要进一步的步骤来结束传输105。然而,se2不知道电子币数据集ci*是否实际有效。为了进一步保证传输,可以在该方法中设置进一步的步骤,如下文所述。
[0244]
为了校验接收到的电子币数据集ci*的有效性,在se2中利用等式(3)的公共的单向函数来计算经掩蔽的所传输的电子币数据集zi*。然后将经掩蔽的所传输的电子币数据集zi*传输到币注册器4并在那里进行搜索。如果与已注册且有效的经掩蔽的电子币数据集一致,则将所接收的币数据集ci*的有效性显示给se2,并且适用的是,接收到的电子币数据
集ci*等于已注册的电子币数据集ci。在一种设计方案中,利用有效性校验可以查明所接收的电子币数据集ci*仍然有效,即其尚未被另一处理步骤或在另一交易/动作中使用和/或受到进一步修改。
[0245]
优选地,然后对所接收的电子币数据集进行变换(switch)。
[0246]
对于根据本发明的方法适用的是,仅知道经掩蔽的电子币数据集zi无权输出数字货币。仅知道电子币数据集ci有权进行支付、即成功执行交易,尤其是当币数据集ci有效时、当币数据集ci具有活动状态时。该状态如上所示优选只在收到se1的删除确认时才被设置为活动状态。在电子币数据集ci与对应的经掩蔽的电子币数据集zi之间存在一一对应的关系。经掩蔽的电子币数据集zi在币注册器4中、例如在公共去中心化数据库中注册。通过这种注册首先可以校验电子币数据集的有效性、例如是否(以非法的方式)创建了新的货币金额。
[0247]
与传统解决方案相比,主要区别特征是,经掩蔽的电子币数据集zi存储在币注册器4中,并且对电子币数据集zi的所有处理都在那里注册,而数字货币的实际传输在(秘密的、即不为公众所知的)直接交易层3中进行。
[0248]
为了防止多次支付或确保更灵活的传输,可以在根据本发明的方法中处理电子币数据集。在下面的表1中列出了各个操作,其中,利用所说明的命令实施相应的处理步骤:
[0249]
命令或步骤创建签名创建随机数创建掩蔽创建范围证明产生1110或1返回1010或1拆分1130或1合并1031变换1121
[0250]
表1-在安全元件或发行实体中每次处理币数据集时可执行的操作次数
[0251]
可能需要其他未在表1中列出的操作、例如转换通货或将货币金额赎回到账户中。代替所列出的实现方式,还可以设想包含其他操作的其他实现方式。表1示出,对于每个币数据集,每个处理“创建”、“返回”、“拆分”、“合并”和“变换”可以设置不同的操作“创建签名”;“创建随机数”;“创建掩蔽”;“范围校验”,其中,每个处理操作都在币注册器4中注册并且在那里以不改变的形式附加到经掩蔽的电子币数据集zi的先前处理操作的列表中。电子币数据集的处理“创建”和“返回”的操作仅在安全位置和/或仅由选择的实体、例如发行实体1实施,而所有其他处理的操作可以在终端m1至m3或其安全元件se1、se2、se3上实施。
[0252]
每个处理的操作次数在表1中用“0”、“1”或“2”表示。次数“0”在此表示安全元件或发行实体1不必为电子币数据集的该处理执行该操作。数字“1”在此表示终端或发行实体1必须能够为电子币数据集的该处理执行该操作一次。数字“2”在此表示安全元件或发行实体1必须能够为该电子币数据集的该处理执行该操作两次。
[0253]
原则上,在一种设计方案中还可以规定,在产生和/或删除时也通过发行实体1执行范围校验。
[0254]
在下面的表2中列出了币注册器4针对各个处理所需的操作:
[0255][0256]
表2-在币注册器中每次处理币数据集时可执行的操作次数
[0257]
可能需要其他未在表2中列出的操作。代替所列出的实现方式,还可以设想包含其他操作的其他实现方式。表2的所有操作都可以在币注册器4中执行,该监控实体作为受信任的实体、例如作为去中心式服务器、尤其分布式可信服务器确保电子币数据集的足够的完整性。
[0258]
表3示出了为图1的支付系统中的系统参与者优选安装的组件:
[0259][0260][0261]
表3-系统组件中的优选单元
[0262]
表3示出了在每个系统参与者、即发行实体1、安全元件se1和币注册器4中优选使用的组件的概述。安全元件se1可以设计为用于电子币数据集ci(以及其校验值p
i1
、p
i2
)的钱
包、即电子钱包、即安全元件se1的数据存储器,在其中可以存储多个币数据集ci,并且安全元件se1例如可以以应用程序的形式在商家、商业银行或其他市场参与者的智能手机或it系统上实现,并且发送或接收电子币数据集。因此,如表3所示,组件在安全元件中实现为软件。假设币注册器4基于dlt并且由一批受信任的市场参与者运行。
[0263]
图7示出了上面附图的币注册器4的实施例。在图7中,示例性的数据库以表格的形式示出,经掩蔽的电子币数据集zi和其可能的处理注册在其中。币注册器4优选地布置为在本地远离终端m或其安全元件se,并且例如容纳在服务器架构中。
[0264]
在此,用于处理(创建、返回、对称或非对称的拆分、合并和变换)的每个处理操作在币注册器4中注册并且在那里以不改变的形式附加到用于经掩蔽的电子币数据集zi的先前处理操作的列表中。各个操作或其校验结果(即处理的准中间结果)记录在币注册器4中。
[0265]
处理“创建”和“返回”涉及货币金额vi本身的存在、即意味着货币的创建和销毁,需要发行实体1的附加授权才能在币注册器4中注册(即记录)。其余的处理操作(拆分、合并、变换)不需要发行实体1或命令发起者(=付款人,例如终端或安全元件)的授权。
[0266]
例如通过根据图7的数据库中的对应的列表条目来实现相应处理在币注册器4中的注册。在此,每个列表条目具有进一步的标记25到28,其记录必须由币注册器4执行的相应处理的中间结果,还具有币注册器4记录的状态显示29。优选地,标记25至28用作辅助并且在命令完成后被币注册器4丢弃。剩下的是关于来自列22a、22b、23a和/或23b的(经掩蔽的)电子币数据集的有效性的标记。例如,在处理命令到达时,标记处于状态
“‑”
;在所有校验成功完成后,标记设置为状态“1”;当至少一个校验失败时,标记设置为状态“0”。用于币数据集的列表条目的可能结构包括例如用于前面的币数据集(o1,o2)的两列22a、22b、用于后面的币数据集(s1,s2)的两列23a、23b、用于发行实体1的签名和终端m的签名的签名列24,以及四个标记列25到28。列25到28中的每个条目具有三个替换的状态
“‑”
、“1”或“0”。列25(o标记)表示关于列23a/b中的电子币数据集的有效性校验是否成功,其中,状态“1”意味着:有效性校验表明列23a/b的电子币数据集有效;状态“0”表示:有效性校验表明列23a/b的电子币数据集无效;状态
“‑”
表示:有效性校验尚未完成。列26(c标记)表示经掩蔽的电子币数据集的计算是否成功,其中,状态“1”意味着计算成功,状态“0”表明计算不成功,状态
“‑”
表示有效性校验尚未完成。
[0267]
在列26中执行的计算例如是:
[0268]
(z
o1
+z
o2
)-(z
s1
+z
s2
)==0
ꢀꢀ
(10)
[0269]
列27(r标记)表示对一个或多个范围证明的校验是否成功,其中,状态“1”意味着:有效性校验表明所述一个或多个范围证明是可追踪的;状态“0”表示:有效性校验表明所述一个或多个范围证明不可追踪;状态
“‑”
表示:有效性校验尚未完成。
[0270]
列28(s标记)表示电子币数据集的签名是否与列24的签名一致,其中,状态“1”意味着:有效性校验表明该签名可以识别为发行实体1的签名;状态“0”表示:有效性校验表明该签名无法识别为发行实体的签名;状态
“‑”
表示:有效性校验尚未完成。
[0271]
标记(flag)的改变需要币注册器4的批准,然后必须以不改变的方式存储在币注册器4中。当且仅当所要求的标记25至28已经被币注册器4验证时、即在相应的校验之后从状态“0”变为状态“1”或状态“1”时,处理才是最终的。
[0272]
为了查明经掩蔽的电子币数据集z是否有效,币注册器4搜索与经掩蔽的电子币数
据集z有关的最后改变。适用的是,当且仅当经掩蔽的电子币数据集z关于其最后处理在后面的列23a、23b之一中被列出并且该最后处理具有相应的最终标记25至28时,经掩蔽的电子币数据集z才有效。也适用的是,当且仅当经掩蔽的电子币数据集z关于其最后处理在前面的列22a、22b之一中被列出并且该最后处理失败时、即标记25至28的相应所需的状态中的至少一个状态设置为“0”时,经掩蔽的电子币数据集z才有效。
[0273]
此外适用的是,经掩蔽的电子币数据集z并非对于所有其他情况都有效,例如当在币注册器4中未找到经掩蔽的电子币数据集z时;或者当经掩蔽的电子币数据集z的最后处理在后面的列23a、23b之一中列出但是该最后处理不是最终的时;或者当经掩蔽的电子币数据集z的最后处理在前面的列22a、22b之一中列出并且该最后处理是最终的时。
[0274]“由币注册器4校验处理是否是最终的”通过列25至28映射:列25中的状态表示根据前面的列22a、22b的经掩蔽的电子币数据集是否有效。列26中的状态说明根据等式(10)对经掩蔽的电子币数据集的计算是否正确。列27中的状态说明是否成功校验了经掩蔽的电子币数据集z的范围证明。列28中的状态说明经掩蔽的电子币数据集z的列24中的签名是否为发行实体1的有效签名。
[0275]
对于修改“拆分”,可以在对称拆分的情况下在列24中设置成,录入由终端m1至m3或其se产生的签名,以便检查或记录经掩蔽的币数据子集的有效性。
[0276]
列25至28中的状态“0”在此表示校验不成功。列25至28中的状态“1”在此表示校验成功。列25至28中的状态
“‑”
在此表示没有进行校验。状态也可以具有另外的值,只要可以在校验的成功/失败之间做出明确的区分并且可以明显看出是否执行了特定的校验。
[0277]
列29设置成在两个se之间的直接传输中记录币数据集的状态。状态的设置在se中进行并且被报告给币注册器2,如在图2至图4中示出的那样。状态可以具有两种状况:非活动“0”和活动“1”,其中,非活动的币数据集不可用于任何交易或动作,因为其已经是传输过程105的一部分。
[0278]
示例性地定义了五种不同的处理,在此将详细阐述。在此,参考图7中的对应的列表条目。
[0279]
处理例如是“产生”电子币数据集ci。通过发行实体1在直接交易层3中的产生包括选择货币金额vi、创建混淆数额ri,如已经用等式(1)描述的那样。如图7所示,处理“产生”不需要在列22a、22b、23b和25至27或29中的任何条目/标记。经掩蔽的电子币数据集zi在后面的列23a中注册。该注册优选地在传输到终端m1至m3或其se之前执行、尤其是在发行实体1生成期间进行或在生成期间已经进行,其中,在这两种情况下,为此必须实施等式(3)。经掩蔽的电子币数据集zi在创建时由发行主体1签名,该签名录入在列24中,以便确保电子币数据集ci实际上由发行主体1创建,其中,为此也可以考虑其他方法。如果接收到的zi的签名与列24中的签名一致,则设置列28中的标记(从“0”到“1”)。根据列25到列27的标记不需要状态改变并且可以忽略。不需要范围证明,因为币注册器4相信发行实体1不发行任何负货币金额。然而,在一种替代的实施方式中,范围证明可以由发行实体1在创建命令中一起发送并且由币注册器4进行校验。列29中的状态设置为“活动”。
[0280]
处理例如是“返回”。返回、即销毁货币这样作用,即,在通过发行实体1成功实施返回命令后,经掩蔽的电子币数据集zi变为无效。因此,在币注册器4中无法再处理要返回的(经掩蔽的)电子币数据集。为了避免混淆,应在直接交易层3中删除相应的(未掩蔽的)电子
币数据集ci。在“返回”中,前面的列22a被写入电子币数据集zi,但是不占用后面的列23a、23b。在去激活时,经掩蔽的电子币数据集zi应校验签名与根据列24的签名是否一致,以便确保电子币数据集ci实际上由发行实体1创建,其中,为了校验又可以使用其他手段。如果在返回命令中一起发送的已签名的zi可以被确认由发行实体1签名,则设置标记28(从“0”到“1”)。根据列26至27的标记不需要状态改变并且可以忽略。根据列25和28的标记在对应的校验后设置。根据29的状态设置为“非活动”。
[0281]
处理例如是“拆分”。拆分、即电子币数据集zi分成n个(例如2个)电子币数据子集zj和zk,首先在直接交易层3中进行,如在图8和10中示出的那样,其中,生成货币金额vj和混淆数额rj。vk和rk通过等式(7)和(8)得出。在币注册器4中,设置标记24至27,前面的列22a写入电子币数据集zi,后面的列23a写入zj并且后面的列23b写入zk。根据列24至27所需的状态改变在币注册器4进行相应的校验之后进行,并且记录相应的校验结果。根据列28的标记被忽略。列24用于录入由进行拆分的终端m1至m3或其se产生的签名。列29中的状态(保持)设置为“活动”。
[0282]
处理例如是“合并”。合并、即将两个电子币数据集zi和zj组合成电子币数据集zm,首先在直接交易层3中进行,如在图10中示出的那样,其中,计算货币金额vm和混淆数额rm。在币注册器4中,设置标记25至27,前面的列22a写入电子币数据集zi,前面的列22b写入zj,后面的列23b写入zm。列25至27中的标记需要状态改变,并且币注册器2执行相应的校验。必须产生范围证明,以便表明没有产生新的资金。根据列28的标记被忽略。列24用于录入由进行合并的终端m1至m3或其se产生的签名。列29中的状态(保持)设置为“活动”。
[0283]
处理例如是“变换”。当电子币数据集已经传输到另一个终端mx或其sex时,提出变换。在变换时(也称为“switch”),将从第一终端m1或se1接收的电子币数据集ck交换为具有相同货币金额的新电子币数据集c
l
。新电子币数据集c
l
由第二终端m2或se2生成。这种变换是另一种可能性,以便使从第一终端m1或se1接收的电子币数据集ck失效(使无效),从而避免再次输出(支出)相同的电子币数据集ck。例如,通过将新的混淆数额r
add
添加到所接收的电子币数据集ck的混淆数额rk来进行变换,从而获得只有第二终端m2或se2知道的混淆数额r
l
。这也可以在币注册器4中进行。为了证明只有新的混淆数额r
add
被添加到经掩蔽的所接收的电子币数据集zk的混淆数额rk中,货币金额保持不变,并且因此等式(11):
[0284]
vk=v
l
ꢀꢀ
(11)
[0285]
适用,则第二终端m2或se2必须能够证明z
l-zk可以表示为g的标量倍数,即表示为r
add
*g。也就是说,只产生了混淆数额r
add
,z
l
的货币金额等于zk的货币金额,即z
l
=zk+r
add
*g。这是通过使用公钥z
l-zk=r
add
*g生成签名来完成的。
[0286]
也可以将对电子币数据集的修改“拆分”和“合并”从终端m1或se1委托给另一终端m2、m3或se2、se3,例如当不存在与币注册器4的通信连接时。
[0287]
在图8中示出了根据本发明的用于电子币数据集c的动作“拆分”、“合并”和“变换”的支付系统的实施例。在图8中,第一终端m1或se1已经接收到币数据集ci并且现在希望不以全部货币金额vi而仅以部分金额vk执行支付交易。为此,币数据集ci被拆分。为此,首先拆分货币金额:
[0288]
vi=vj+vkꢀꢀ
(12)
[0289]
在此,每个所获得的金额vj、vk必须大于0,因为不允许负的货币金额。
[0290]
在一种优选的设计方案中,货币金额vi被对称地拆分为数量n个相同大小的部分货币金额vj。
[0291]
vj=vi/n
ꢀꢀ
(12a)
[0292]
在此,数量n是大于或等于二的整数。例如,10个单位的货币金额可以拆分为2份5个单位的部分金额(n=2)或5份分别2个单位的部分金额(n=5)或10份分别一个单位的部分金额(n=10)。
[0293]
此外,还推导出新的混淆数额:
[0294]ri
=rj+rkꢀꢀ
(13)
[0295]
如果对称地拆分,则在终端m1或se1中针对每个部分币金额形成单独的、唯一的混淆数额rj,其中,数量n个币数据子集的混淆数额rj之和等于被拆分的币数据集的混淆数额ri:
[0296][0297]
尤其适用的是,最后一个部分混淆数额r
j_n
等于混淆数额ri与其余部分混淆数额之和的差值:
[0298][0299]
以这种方式,可以任意地选择混淆数额r
j_1
至r
j_n-1
并且通过相应地计算“最后一个”单独的混淆数额r
j_n
来满足等式(13a)的规则。
[0300]
在非对称拆分的情况下,经掩蔽的币数据集zj和zk根据等式(3)从币数据集cj和ck中获得并注册在币注册器4中。对于拆分,前面的列22a以币数据集zi写入,后面的列23a以zj写入,后面的列23b以zk写入。生成关于范围证明(零知识证明(zero-knowledge-proof))的附加信息。列25到列27中的标记需要状态更改,并且币注册器4执行相应的校验。根据列28的标记和根据列29的状态被忽略。
[0301]
在对称拆分的情况下,在相应的终端或se中计算签名。为此,对于第k个币数据子集c
j_k
使用以下签名密钥sig:
[0302]
sig=r
i-n
·rj_k
ꢀꢀ
(13c)
[0303]
在此,n是对称拆分的币数据子集的数量。在对称拆分的情况下,可以利用以下验证密钥sig校验根据(13c)的第k个币数据子集c
j_k
的签名:
[0304]
sig=z
i-n
·zj_k
ꢀꢀ
(13d)
[0305]
在此,z
j_k
是经掩蔽的第k个币数据子集,n是对称拆分的币数据子集的数量。这种简化由与等式(3)的联系得出:
[0306]zi-n
·zj_k
=(v
i-n
·vj_k
)
·
h+(r
i-n
·rj_k
)
·gꢀꢀ
(13e)
[0307]
其中,由于拆分的对称属性,适用:
[0308]
(v
i-n
·vj_k
)
·
h=0
ꢀꢀ
(13f)
[0309]
因此等式13e被简化为:
[0310]zi-n
·zj_k
=(r
i-n
·rj_k
)
·gꢀꢀ
(13g)
[0311]
基于等式13f的简化使得能够完全省去零知识证明,由此,使用对称拆分节省大量的计算功率和数据量。
[0312]
然后币数据子集(在此为ck)从第一终端m1或se1传输到第二终端m2或se2。为了防
止双重支付,变换操作是有意义的,以便将从第一终端m1或se1接收的电子币数据集ck交换为具有相同货币金额的新电子币数据集c
l
。新电子币数据集c
l
由第二终端m2或se2生成。在此,币数据集c
l
的货币金额被采用而不改变,参见等式(11)。
[0313]
然后,根据等式(14)将新的混淆数额r
add
添加到接收到的电子币数据集ck的混淆数额rk中,
[0314]rl
=rk+r
add
ꢀꢀ
(14)
[0315]
从而获得只有第二终端m2知道的混淆数额r
l
。为了证明只有新的混淆数额r
add
被添加到所接收的电子币数据集zk的混淆数额rk中,货币金额保持不变(vk=v
l
),第二终端m2必须能够证明z
l-zk可以表示为g的倍数。这可以借助根据等式(15)的公共签名r
add
来完成:
[0316]radd
=r
add
·
g=z
l-zk=(v
l-vk)*h+(rk+r
add-rk)*g
ꢀꢀ
(15)
[0317]
其中,g是ecc的生成点。然后,借助等式(3)对要变换的币数据集c
l
进行掩蔽,以便获得经掩蔽的币数据集z
l
。然后可以在币注册器4中使用私人签名r
add
,以便例如对经掩蔽的要变换的电子币数据集z
l
进行签名,这被视为第二终端m2或se2仅将混淆数额r
add
添加到经掩蔽的电子币数据集而没有附加的货币值的证明,即v
l
=vk。
[0318]
证明如下:
[0319][0320]
图9示出了根据本发明的用于合并(也称为组合)电子币数据集的支付系统的实施例。在此,在第二终端m2或se2中获得两个币数据集ci和cj。在依照根据图8的拆分之后,通过将两个币数据集ci和cj的货币金额和混淆数额相加来获得新的币数据集zm。然后对所获得的要合并的币数据集cm进行掩蔽,并且将经掩蔽的币数据集zm在币注册器4中注册。然后,当“合并”时,录入第二终端m2或se2的签名,因为该第二终端已经接收到币数据集ci和cj。
[0321]
在通过支付系统2进行组合时,确定相应的电子币数据子集ci和cj的两个单独校验值中的最大值。采用该最高校验值作为组合式电子币数据集的校验值ci和cj。
[0322]
备选地,在通过支付系统2进行组合(=合并)时,新的校验值由“电子币数据子集ci和cj的所有校验值的总和”除以“币数据子集ci和cj的数量(在此为两个)与恒定校正值的乘积”来确定。校正值在支付系统范围内是恒定的。校正值大于或等于1。优选地,校正值取决于电子币数据集ci和cj的各个校验值的最大偏差或取决于电子币数据集ci和cj之一的最大校验值。进一步优选地,校正值小于或等于2。采用该新的校验值作为组合式电子币数据集cm的校验值。
[0323]
下面一起描述图10和图11,以便阐述动作“创建”、“传输”、“变换”、“合并”和“拆分”。在可选的步骤101和102中,在创建电子币数据集之后,从发行实体1方面请求币数据集并将其提供给第一终端m1或se1。将经掩蔽的电子币数据集发送给币注册器4。在步骤103中,根据等式(3)对接收到的电子币数据集ci进行掩蔽。然后,在步骤104中,将经掩蔽的电子币数据集zi在币注册器4中注册。可选地,终端m1或se1可以变换所接收的电子币数据集。在步骤105中,根据图2至图4的方法,在直接交易层3中将币数据集ci传输到第二终端m2或
se2。在可选的步骤106和107中,对先前的掩蔽进行有效性校验(或者说检查),其中,在好的情况下,币注册器4确认币数据集zi或ci的有效性。
[0324]
在步骤108中,将接收到的币数据集ck变换到新的币数据集c
l
(当然也可以变换接收到的币数据集ci),从而使币数据集ck无效并且防止双重支付。为此,将所传输的币数据集ck的货币金额vk用作“新”的货币金额v
l
。此外,如已经利用等式(14)至(17)阐述的那样,创建了混淆数额r
l
。使用附加的混淆数额r
add
,以便证明第二终端m2或se2没有生成新的资金(以更高的货币金额的形式)。然后将经掩蔽的要变换的币数据集z
l
发送给币注册器4并且指示从ck变换到c
l

[0325]
在步骤108'中,在币注册器4中进行相应的校验。在此,根据图2中的表格将zk录入到列22a中,并且将要转换的币数据集z
l
录入到列23b中。然后在币注册器4中校验zk是否(仍然)有效,即zk的最后处理是否被录入到列23a/b之一中(作为zk没有被进一步拆分或返回或合并的证明)以及关于最后处理的校验是否为失败。此外,z
l
被录入到列23b中,并且列25、26、27中的标记最初设置为“0”。现在校验z
l
是否有效,其中,在此可以使用根据等式(16)和(17)的校验。在好的情况下,列25中的标记设置为“1”,否则设置为“0”。现在进行校验,根据等式(10)的计算表明zk和z
l
是有效的,并且相应地设置列26中的标记。此外,校验这些范围是否是结论性的,然后设置列27中的标记。当所有校验都成功并且这已经相应地不改变地记录在币注册器4中时,认为币数据集已被变换。也就是说,币数据集ck不再有效,从现在开始币数据集c
l
有效。
[0326]
在步骤109中将两个币数据集ck和ci合并为新的币数据集cm,从而使币数据集ck、ci无效并且防止双重支付。为此,货币金额vm由两个货币金额vk和vi形成。为此,混淆数额rm由两个混淆数额rk和ri形成。此外,借助等式(3)获得经掩蔽的要合并的币数据集zm并将其(连同其他信息)发送到币注册器2,并请求合并作为处理。此外,产生签名sk和签名si并将其告知给币注册器2。
[0327]
在步骤109'中,在币注册器4中进行相应的校验。在此,根据图2中的表格将zm录入到列23b中,也相当于重写。然后在币注册器4中校验zk和zi是否(仍然)有效,即zk或zi的最后处理是否录入在列23a/b之一中(作为zk和zi没有被进一步拆分或去激活或合并的证明)以及关于最后处理的校验是否为失败。此外,列25、26、27中的标记首先设置为“0”。现在校验zm是否有效,其中,在此可以使用根据等式(16)和(17)的校验。在好的情况下,列25中的标记设置为“1”,否则设置为“0”。现在进行校验,根据等式(10)的计算表明,zi加上zk等于zm,并且相应地设置列26中的标记。此外,校验这些范围是否是结论性的,然后设置列27中的标记。
[0328]
在步骤110中,将币数据集ci非对称地拆分为两个币数据子集ck和cj,从而使币数据集ci无效并且使两个非对称地拆分后的币数据子集ck和cj应有效。在非对称拆分时,货币金额vi被拆分为不同大小的部分货币金额vk和vj。为此,混淆数额ri被分为两个混淆数额rk和rj。此外,借助等式(3)获得经掩蔽的币数据子集zk和zj并将其与进一步信息、例如范围证明(零知识范围证明)一起发送到币注册器4,并请求拆分作为处理。
[0329]
在步骤110'中,在币注册器4进行相应的校验。在此,根据图2中的表格将zj和zk录入到列23a/b中。然后在币注册器4中校验zi是否(仍然)有效,即zi的最后处理是否录入在列23a/b之一中(作为zi没有被进一步拆分、去激活或合并的证明)以及关于最后处理的校验
是否为失败。此外,列25、26、27中的标记首先设置为“0”。现在校验zj和zk是否有效,其中,在此可以使用根据等式(16)和(17)的校验。在好的情况下,列25中的标记设置为“1”。现在进行校验,根据等式(10)的计算表明,zi等于zk加上zj,并且相应地设置列26中的标记。此外,校验这些范围是否是结论性的,然后在列27中设置标记。
[0330]
在图12中示出根据本发明的设备m1的实施例,se1被引到该设备中。设备m1可以将电子币数据集ci存储在数据存储器10、10'中。在此,电子币数据集ci可以位于设备m1的数据存储器10上或者可以在外部数据存储器10'中可用。在使用外部数据存储器10'时,电子币数据集ci可以存储在在线存储器、例如数字钱包提供商的数据存储器10'中。附加地,也可以使用私有数据存储器、例如私有网络中的网络附属存储器(network-attached-storage,nas)。
[0331]
在一种情况下,电子币数据集ci表现为纸上打印输出。在此,电子币数据集可以通过qr码、qr码的图像来表示,或者也可以是文件或字符串(ascii)。
[0332]
设备m1具有至少一个接口12,其用作用于输出币数据集ci的通信信道。该接口12例如是光学接口,例如用于将币数据集ci显示在显示单元(显示器)上,或者是用于将电子币数据集ci打印为纸打印资料的打印机。该接口12也可以是例如用于近场通信如nfc、蓝牙的数字通信接口,或者是具有互联网能力的接口、例如tcp、ip、udp、http,或者是对作为安全元件的芯片卡的访问入口。该接口12例如是数据接口,使得币数据集ci通过诸如即时通讯服务的应用程序或者作为文件或者作为字符串在设备之间传输。
[0333]
此外,设备m1的接口12或另外的接口(未示出)设计为与币注册器4交互。设备m1为此优选地具有在线能力。
[0334]
此外,设备m1还可以具有用于接收电子币数据集的接口。该接口设计为接收例如借助检测模块如摄像机或扫描仪视觉呈现的币数据集,或者接收数字呈现的币数据集,如通过nfc、蓝牙、tcp、ip、udp、http接收,或者接收借助应用程序呈现的币数据集。
[0335]
设备m1还包括计算单元13,其能够执行上面描述的用于掩蔽币数据集的方法和对币数据集的处理。
[0336]
设备m1具有在线能力并且可以优选地借助位置识别模块15识别它何时与网络、例如wlan连接。可选地,特定的网络可以被标记为优选的(=位置区域),从而仅当设备m1在此网络中登录时才实施特殊功能。备选地,位置识别模块15识别设备m1何时处于包括定义半径的预定义的gps坐标中,并且相应于如此定义的位置区域地执行特殊功能。该位置区域可以要么手动地引入到设备m1中,要么通过其他单元/模块引入到设备m1中。设备m1在识别到定位区域时执行的特殊功能尤其是,电子币数据集从外部数据存储器10到保险库模块14的传输或从保险库模块14到外部数据存储器10的传输,并且在必要时、例如在对币数据集的上述处理的范畴中将经掩蔽的电子币数据集z传输到币注册器4。
[0337]
在最简单的情况下,在终端m1中,所有币数据集ci在收到后自动地合并为币数据集(参见合并处理或合并步骤)。也就是说,一旦接收到新的电子币数据集,就向币注册器4发送合并或变换命令。设备m1还可以以算法定义的面额准备电子币数据集并将其保存在数据存储器10、10'中,以便即使没有与币注册器4的数据连接也可以进行支付过程。
[0338]
为了更好地理解,在图13中示出了整个系统。根据本发明的整个系统包括发行实体(中央银行)1a。此外,可以设置另外的发行实体1b、1c,其例如以另外的通货发行电子币
数据集。此外,示出了至少一个支付系统2,在其中设置了至少一个币注册器4作为支付系统的中央管理器。此外,设置了多个参与者,其表示为终端mx(具有相应的sex)。支付系统2例如包括商业银行和一个(或多个)中央币注册器4,该中央币注册器执行币数据集ci的注册并且校验和记录对币数据集ci的修改。
[0339]
终端m1至m6可以在直接交易层3中直接交换币数据集ci。例如,终端m5将币数据集传输到终端m4。例如,终端m4将币数据集传输到终端m3。例如,终端m6将币数据集传输到终端m1。在每个进行发送的终端mx或每个进行接收的终端mx中,使用要发送或要接收的币数据集的校验值,以便校验是否在支付系统中显示该币数据集和/或该币数据集是否被返回到发行实体1a,参见图2至4。支付系统2例如根据每个币数据集的校验值或从校验值中导出的计数器值来校验是否返回币数据集,更多细节请参见图5。
[0340]
在图13中,币数据集通过支付系统2从终端m1传输到终端m2(间接转发),如在图2至图4(步骤105)中描述的那样。
[0341]
在本发明的范畴中,所有所描述和/或所绘制和/或所要求保护的元件可以任意相互组合。
[0342]
附图标记列表
[0343]
1,1a-c发行实体或银行
[0344]
2支付系统
[0345]
21命令条目
[0346]
22a,b要处理的(前面的)电子币数据集的条目
[0347]
23a,b已处理的(后面的)电子币数据集的条目
[0348]
24签名条目
[0349]
25有效性校验的标记
[0350]
26计算校验的标记
[0351]
27范围证明校验的标记
[0352]
28签名校验的标记
[0353]
29状态显示
[0354]
3直接交易层
[0355]
4币注册器
[0356]
5应用共享钱包
[0357]
10,10'数据存储器
[0358]
11显示
[0359]
12接口
[0360]
13计算单元
[0361]
14保险库模块
[0362]
15位置识别模块
[0363]
mx第x个终端
[0364]ci
电子币数据集
[0365]cj
,ck拆分后的电子币数据子集
[0366]cj_k
对称拆分中第k个拆分后的电子币数据子集
[0367]cl
要变换的电子币数据集
[0368]cm
要合并的电子币数据集
[0369]
zi经掩蔽的电子币数据集
[0370]
zj,zk经掩蔽的拆分后的电子币数据子集
[0371]zl
经掩蔽的要变换的电子币数据集
[0372]
zm经掩蔽的要合并的电子币数据集
[0373]
s已签名的经掩蔽的电子币数据集
[0374]
sex第x个安全元件
[0375]
vi货币金额
[0376]
vj,vj拆分后的货币金额
[0377]vl
要变换的/变换后的电子币数据集的货币金额
[0378]
vm要合并的/合并后的电子币数据集的货币金额
[0379]
n对称拆分的币数据子集的数量
[0380]ri
混淆数额,随机数
[0381]rj
,rj拆分后的电子币数据集的混淆数额
[0382]rm
要合并的/合并后的电子币数据集的混淆数额
[0383]ci
*所传输的电子币数据集
[0384]cj
*,ck*所传输的拆分后的电子币数据子集
[0385]
zi*经掩蔽的所传输的电子币数据集
[0386]
zj*,zk*经掩蔽的所传输的拆分后的电子币数据子集
[0387]
f(c)同态单向函数
[0388]
[zi]sig(pk
l
)发行实体的签名
[0389]
301-309根据实施例的安全元件中的方法步骤
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1