CN111435502A - 签名服务器、签名方法及存储签名程序的计算机可读记录介质 - Google Patents
签名服务器、签名方法及存储签名程序的计算机可读记录介质 Download PDFInfo
- Publication number
- CN111435502A CN111435502A CN201911416433.4A CN201911416433A CN111435502A CN 111435502 A CN111435502 A CN 111435502A CN 201911416433 A CN201911416433 A CN 201911416433A CN 111435502 A CN111435502 A CN 111435502A
- Authority
- CN
- China
- Prior art keywords
- transaction
- user
- signature
- rule
- allowance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012545 processing Methods 0.000 claims abstract description 64
- 230000004044 response Effects 0.000 claims abstract description 22
- 238000012546 transfer Methods 0.000 claims description 101
- 230000008569 process Effects 0.000 claims description 35
- 238000010586 diagram Methods 0.000 description 30
- 238000006243 chemical reaction Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 6
- 238000013475 authorization Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 235000012046 side dish Nutrition 0.000 description 3
- 238000012795 verification Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
- G06F21/335—User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/385—Payment protocols; Details thereof using an alias or single-use codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
签名服务器、签名方法及存储签名程序的计算机可读记录介质。一种签名服务器,包括:处理单元,其响应于从用户接收到包括交易信息的令牌发布请求,生成用于基于所述交易信息确定交易内容的允许范围的允许规则并且将与所述允许规则相对应的令牌传输到处理所述用户的代理交易的网络应用,并且响应于从所述网络应用接收到包括所述令牌的基于所述用户的交易请求的签名发布请求,基于包括在所述交易请求中的交易内容是否在通过与包括在所述签名发布请求中的令牌相对应的允许规则确定的允许范围内来确定是否发布与所述签名发布请求相对应的数字签名。
Description
技术领域
本文讨论的实施方式涉及签名服务器、签名方法以及具有存储在其中的签名程序的计算机可读记录介质,所述签名程序能够执行针对数据签名问题的处理。
背景技术
区块链用作虚拟货币的管理系统,并且要求安全操作。虚拟货币或者区块链的类型急剧增加,并且越来越多地要求不同的虚拟货币和区块链之间的链接。当链接不同的虚拟货币和区块链时,要求不同的认证信息以用于交易执行。这一服务的普通用户难于自己保持这样的认证信息、发布数字签名并且执行交易。因此,要求利用许可来代表用户管理认证信息、发布数字签名并且执行交易的网络应用。
在现有技术中,作为与区块链和虚拟货币的管理有关的技术,存在用于使用区块链执行与交易互锁的账户操作并且通过匹配执行结果确定交易的成功或者失败的技术(例如,参见日本早期专利公开No.2018-139067)。存在向用户提供对于其中分布式区块链账本由虚拟数据令牌管理的节点能够访问的加密钱包并且在用户之间传递安全性的技术(例如,参见日本国际专利申请的国家公开No.2018-521437)。存在虚拟货币管理设备向存储区块链的服务器发送包括虚拟货币与合法货币之间的兑换比率的兑换请求以便向区块链添加区块,并且在虚拟货币与合法货币之间的兑换之后接收兑换比率的技术(例如,参见日本早期专利公开No.2018-136657)。
关于网络应用的要求,当在由许多用户访问的网络应用的服务器中管理认证信息时,存在认证信息将被泄露给外面的风险。出于这一原因,考虑其中单独准备根据数字签名发布(issue)执行处理的签名服务器并且签名服务器仅允许访问网络应用的操作模式。此时,签名服务器被允许仅针对由用户经由网络应用请求的特定交易内容来发布签名,并且当从网络应用接收到针对事先允许的交易的请求时发布数字签名。网络应用使用从签名服务器接收到的数字签名在区块链中发布交易。
当执行操作时,例如,在兑换虚拟货币时,货币兑换比率在短时间内波动,因此会存在其中交易数额在用户允许交易签名时与用户实际执行汇款时之间不同的情况。这一情形下,在现有技术中,不可能将用户期望的允许内容与实际交易内容进行核对。
在一个方面,本实施方式的目的在于将允许内容与用户的交易内容进行核对。
发明内容
根据实施方式的方面,一种签名服务器包括:处理单元,响应于从用户接收到包括交易信息的令牌发布请求,生成用于基于交易信息确定交易内容的允许范围的允许规则并且将与所述允许规则相对应的令牌传输到处理用户的代理交易的网络应用,并且响应于从网络应用接收到包括令牌的基于用户的交易请求的签名发布请求做出响应,基于包括在交易请求中的交易内容是否在由与包括在签名发布请求中包括的令牌相对应的允许规则确定的允许范围内来确定是否发布与签名发布请求相对应的数字签名。
附图说明
图1是根据实施方式1与交易处理相关的签名服务器的功能的方框图;
图2是说明根据实施方式1的交易处理的示例的图;
图3是说明根据实施方式1的签名服务器的硬件配置的示例的图;
图4A是说明根据实施方式1的交易处理的示例(部分1)的流程图;
图4B是说明根据实施方式1的交易处理的示例(部分2)的流程图;
图5是说明根据实施方式1允许签名时的交易信息的示例的图表;
图6是说明根据实施方式1由签名服务器生成的允许规则的示例的图表;
图7是说明根据实施方式1由签名服务器保存的允许规则的表格的示例的图表;
图8是说明根据实施方式1的汇款请求的示例的图表;
图9是说明根据实施方式1从网络应用向签名服务器发送的汇款请求的示例的图表;
图10是说明根据实施方式1由签名服务器提取的允许规则的示例的图表;
图11是说明根据实施方式2的交易处理的示例的图;
图12A是说明根据实施方式2的交易处理的示例(部分1)的流程图;
图12B是说明根据实施方式2的交易处理的示例(部分2)的流程图;
图13是说明根据实施方式2允许签名时交易信息的示例的图表;
图14是说明根据实施方式2由签名服务器生成的允许规则的示例的图表;
图15是说明根据实施方式2由签名服务器保存的允许规则的表格的示例的图表;
图16是说明根据实施方式2的汇款请求的示例的图表;
图17是说明根据实施方式2从网络应用向签名服务器发送的汇款请求的示例的图表;
图18是说明根据实施方式2由签名服务器提取的允许规则的示例的图表;
图19是说明根据实施方式3确定允许规则的另一示例的图表;
图20是说明现有技术中用户授权的代理认证的示例的图;并且
图21是说明现有技术中用于区块链的代理交易系统的配置示例的图。
具体实施方式
以下参照附图详细描述根据本公开的签名服务器、签名方法和签名程序的实施方式。
所公开的技术可以例如应用于执行与数字签名发布相关的处理的签名服务器以及区块链的代理交易。在这一情况下,事先,签名服务器基于用户的交易信息计算参数的允许范围(例如,汇款数额的允许范围),并且设置规则,其中向该规则给予关于允许范围的信息。在所公开的技术中,签名服务器保持并保存用户的认证信息(私密秘钥)。
例如,在请求用户访问令牌的发布时,签名服务器将包括汇款数额的允许范围的允许规则设置为交易处理中参数的允许范围。之后,当用户在时间逝去之后实际执行汇款请求时,签名服务器确定汇款请求的汇款数额是否在设置的汇款数额的允许范围内。因此,当汇款请求的汇款数额在设置的汇款数额的允许范围内时,签名服务器发布数字签名并且在网络应用(web app)中执行汇款交易。网络应用例如包括服务器和客户端类型网络应用、区块链中的智能合约、区块链中的程序等。在代理交易中,例如,用户授权被传输到网络应用,并且网络应用代表用户他或她本身执行交易。
由于在虚拟货币等情况下货币兑换比率在短时间内波动,可能存在其中交易数额在用户允许交易时(例如,在发布允许令牌时)与用户经由网络应用实际发布汇款请求时之间不同的情形。在这一情况下,在实施方式中,签名服务器可以在代理交易时核对允许内容与用户的交易内容。在用户实际执行汇款时进行汇款请求时,在即使当货币兑换比率波动时汇款数额也在允许范围内的情况下,签名服务器发布数字签名,并且用户可以执行汇款交易。当汇款数额在允许范围之外时,签名服务器不允许汇款交易并且用户不能执行汇款交易。因此,用户可以在签名服务器中设置的汇款数额的允许范围内执行汇款。
(实施方式1)
图1是根据实施方式1与交易处理相关的签名服务器的功能的方框图。除了根据交易处理的签名服务器A(100),还说明了用户L、网络应用160和区块链BC。
将描述交易处理的流。首先,用户L向签名服务器A(100)传输访问令牌发布请求(步骤S1)。因此,交易信息被登记在签名服务器A(100)中。
签名服务器A(100)包括请求接收和响应单元101、允许范围计算单元102、允许规则登记单元103、访问令牌创建单元104、允许规则确定单元105和数字签名创建单元106的每一个功能。
请求接收和响应单元101分别接收访问令牌发布请求和签名发布请求。签名发布请求包括访问令牌和交易信息。
基于访问令牌发布请求的交易信息,允许范围计算单元102计算允许规则的允许范围(汇款数额的允许范围)(步骤S2)。允许规则登记单元103将由允许范围计算单元102计算的允许规则的允许范围(汇款数额的允许范围)记录在记录单元中(步骤S3)。
访问令牌创建单元104与交易信息(汇款数额)和允许规则相关联地将访问令牌记录在记录单元中(步骤S4)。此时,请求接收和响应单元101向网络应用160发布访问令牌(步骤S5)。
接下来,用户L实际上向网络应用传输汇款交易请求(步骤S6)。因此,网络应用160向签名服务器A(100)传输签名发布请求(附接有访问令牌和交易信息(汇款数额))(步骤S7)。
允许规则确定单元105确定从网络应用160发送的交易信息(汇款数额)是否满足在记录单元中记录的允许规则(步骤S8)。如下面描述的,允许规则确定单元105生成数字签名并且仅当交易信息(汇款数额)满足记录在记录单元中的允许规则时将数字签名发送到网络应用160。
数字签名创建单元106创建与签名发布请求中的访问令牌相对应的交易的数字签名(步骤S9)。此时,数字签名创建单元106通过使用签名服务器A(100)内保存的私密秘钥110来创建数字签名。私密秘钥110与用于认证针对交易处理的用户L的账户的认证信息相对应。
签名服务器A(100)的请求接收和响应单元101向网络应用160发送与访问令牌相对应的交易的数字签名(步骤S10)。网络应用160向区块链BC发布附接有从签名服务器A(100)发送的数字签名的汇款交易(步骤S11)。
图2是说明根据实施方式1的交易处理的示例的图。在实施方式1中,提供一个区块链(BC)和一个签名服务器A(100),并且将描述执行汇款以作为从用户L到用户S的交易处理的示例。
假设用户L在区块链BC中具有账户a,并且用户S也在区块链BC中具有账户b。假设用户L经由链接到区块链BC的网络应用160将账户a中的虚拟货币汇款到用户S的账户b。图2中说明的网络应用160是当网络应用160在诸如由用户L持有的智能电话等的终端中执行处理时的显示屏幕。附图标记150指代实际执行网络应用160的处理的服务器。
以下将基于图2的描述依次描述主要由签名服务器A(100)执行的处理内容。
1.用户L允许签名服务器A(100)仅针对特定的汇款请求代表用户L发布签名(步骤S201)。
2.签名服务器A(100)基于用户L的交易信息创建通过计算汇款数额的允许范围而获得的允许规则,并将访问令牌与允许规则相关联并且将允许规则登记在记录单元中(步骤S202)。
3.签名服务器A(100)向网络应用160发布访问令牌(步骤S203)。
4.用户L向网络应用160发送包括关于汇款数额的信息的汇款请求(步骤S204)。
5.网络应用160向签名服务器A(100)发送曾发送过的访问令牌以及包括诸如汇款数额这样的交易信息的签名发布请求(步骤S205)。
6.签名服务器A(100)确定包括接收到的汇款数额的交易信息是否满足与接收到的访问令牌相关联的允许规则(汇款数额的允许范围)。在确定结果满足允许规则的情况下,签名服务器A(100)创建与接收到的访问令牌相对应的交易信息的数字签名(步骤S206)。
7.签名服务器A(100)向网络应用160发送所创建的数字签名(步骤S207)。
8.网络应用160将接收到的数字签名附接到汇款交易并且在区块链BC中发布汇款交易。
图3是说明根据实施方式1的签名服务器的硬件配置的示例的图。图1中说明的签名服务器A(100)可以例如由图3中说明的硬件配置。
例如,签名服务器A(100)包括中央处理单元(CPU)301、存储器302、网络接口(IF)303、记录介质IF 304以及记录介质305。300是联接每一个单元的总线。
CPU 301是用作控制签名服务器100的整个处理的处理单元的算术处理设备。存储器302包括非易失性存储器和易失性存储器。非易失性存储器例如是存储CPU 301的程序的只读存储器(ROM)。易失性存储器例如是用作CPU 301的工作区域的动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)等。
网络IF 303经由诸如局域网(LAN)、广域网(WAN)、以太网等的网络310在通信上联接到外部终端(例如,用户的PC、智能电话等)。
记录介质IF 304是用于从记录介质305读取由CPU 301处理的信息并且向记录介质305写入由CPU 301处理的信息的接口。记录介质305是辅助存储器302的记录设备。作为记录介质305,例如,可以使用硬盘驱动器(HDD)、固态驱动器(SSD)、通用串行总线(USB)闪速驱动器等。
CPU 301执行记录在存储器302或者记录介质305中的程序以便实现图1中说明的签名服务器A(100)的每一个功能。存储器302和记录介质305可以实现记录和保存诸如图1中说明的访问令牌、允许规则、数字签名等的信息的记录单元的功能。
图3中说明的硬件配置与图2中说明的网络应用服务器150或者执行网络应用160的用户的终端(智能电话等)相同,并且实施方式的系统可以通过使用通用硬件配置实现。
图4A和图4B是说明根据实施方式1的交易处理的示例的流程图。图4A说明了主要由签名服务器A(100)的处理单元(CPU 301)执行的允许规则的登记阶段中的每一个处理(与图2中的步骤S201到S203相对应)的流。图4B说明了主要由签名服务器A(100)的处理单元(CPU 301)和网络应用160(例如,网络应用服务器150的CPU 301)执行的汇款阶段中的每一个处理(与图2中的步骤S204到S208相对应)的流。
另外,下面的步骤S405和S406是用于验证用户L的允许规则的子处理。当不要求用户L的允许规则验证时,签名服务器A(100)可以在步骤S404中的处理之后执行步骤S407。
在图4A中说明的用于允许规则的登记阶段的处理中,首先,作为事先准备,准备保持有用户L的虚拟货币的数额的私密秘钥100的签名服务器A(100)(步骤S401)。
用户L将用于指定汇款源(账户a)、汇款目的地(账户b)和汇款数额的交易信息附接到访问令牌发布请求并且将访问令牌发布请求发送到签名服务器A(步骤S402)。
因此,基于发布请求的交易信息,签名服务器A(100)计算允许规则的允许范围(步骤S403)。签名服务器A(100)向用户L发送附接到允许范围(汇款数额的允许范围)的允许规则(步骤S404)。
签名服务器A(100)确定用户L对于允许规则的响应(允许或者拒绝)(步骤S405)。当用户L的响应是允许(步骤S405中为是)时,签名服务器A(100)进行到步骤S407中的处理。另一方面,当用户L的响应是拒绝(步骤S405中为否)时,基于用户L的参数允许范围(汇款数额的允许范围),生成具有允许范围的允许规则(步骤S406),并且处理进行到步骤S407。
接下来,签名服务器A(100)在签名服务器A内登记具有给出了所生成的参数允许范围的允许范围的允许规则(步骤S407)。签名服务器A(100)创建新的访问令牌并且将该访问令牌与在步骤S402中接收到的交易信息以及经登记的允许规则相关联地登记在签名服务器A内(步骤S408)。签名服务器A(100)向网络应用160发布创建的新的访问令牌(步骤S409)。签名服务器A(100)终止与允许规则的登记阶段相关的一系列处理。
接下来,在图4B中说明的汇款阶段的处理中,首先,用户L向网络应用160发送包括关于汇款数额的信息的汇款请求(步骤S410)。接下来,网络应用160将曾发送过的访问令牌附接到签名发布请求并且将签名发布请求发送到签名服务器A(100)(步骤S411)。
因此,签名服务器A(100)确定包括汇款数额的交易信息是否满足具有与访问令牌相关联的允许范围(汇款数额的允许范围)的允许规则(步骤S412)。当确定结果满足允许规则(汇款数额在允许范围内)时(步骤S413为是),签名服务器A(100)进行到步骤S414中的处理。另一方面,当确定结果不满足允许规则(汇款数额在允许范围之外)时(步骤S413为否),签名服务器A(100)进行到步骤S417中的处理。
在步骤S414中的处理中,签名服务器A(100)创建与接收到的访问令牌相对应的交易信息的数字签名(步骤S414)。接下来,签名服务器A(100)将创建的数字签名发送到网络应用160(步骤S415)。
因此,网络应用160将接收到的数字签名附接到汇款交易并且在区块链BC中发布汇款交易(步骤S416)。在步骤S417中,签名服务器A(100)回答数字签名没有被发布到网络应用160(步骤S417)。在步骤S416或者步骤S417的处理之后,签名服务器A(100)终止与汇款阶段相关联的一系列处理。
接下来,将针对参照图4A和图4B描述的交易处理来描述汇款的具体示例。在步骤S401中的事先准备中,用户L在区块链BC中具有账户a,并且用户S在区块链BC中具有账户b。账户a的私密秘钥由用于区块链的签名服务器A(100)管理。
在步骤S402中,在由用户L请求访问令牌发布的情况下,用户L的账户a中的虚拟货币被汇入用户S的账户b。与虚拟货币相比较,合法货币(例如,美元$,人民币¥等)通常在价值上更加稳定,并且考虑基于合法货币中的价值来构建签名发布规则。在下面的描述中,美元$被认为是合法货币。
图5是根据实施方式1允许签名时的交易信息的示例的图表。图5说明了在步骤S402中来自用户L的访问令牌发布请求的情况下发送给签名服务器A(100)的交易信息500的示例。在交易信息500中,假设汇款源是“用户L的账户a”,汇款对方是“用户S的账户b”,并且汇款数额是“虚拟货币200点”。
接下来,在步骤S403中,签名服务器A(100)根据下面的过程创建允许范围。当在设置允许规则时包括在交易信息中的汇款数额为X时,针对包括在汇款请求中的汇款数额Y计算在下面的等式(1)中描述的允许范围。
X*(1-K)≤Y≤X*(1+K)...(1)
(K是满足0<K<1的常数)
此时,例如,当签名服务器A(100)事先设置K=0.3并且在创建允许规则时包括在交易信息中的汇款数额是虚拟货币100点时,签名服务器A(100)创建在下面的等式(2)中描述的允许规则作为包括在汇款请求中的汇款数额Y的允许范围。
70≤Y≤130...(2)
例如,当K=0.3并且签名服务器A(100)接收到在图5中说明的交易信息500的交易时,假设美元与虚拟货币的比率是3.0(美元/虚拟货币A)。此时,基于上面描述的许可规则,汇款数额的范围在通过合法货币兑换的420到780的范围内。
图6是说明根据实施方式1由签名服务器生成的允许规则的示例的图表。根据步骤S403中的处理,作为允许规则(汇款数额的允许范围)600,签名服务器A(100)包括汇款源“用户L的账户a”、汇款对方“用户S的账户b”以及“通过美元兑换的420到780美元”的汇款数额的范围的信息。
在步骤S408中的处理中,签名服务器A(100)创建合适的字符串(例如,“P8mOcv+6SW”)作为新的访问令牌。签名服务器A(100)将在步骤S404中创建的允许规则(或者在步骤S407中由用户L生成的允许规则)与访问令牌相关联并且将允许规则作为新的允许规则添加到签名服务器A(100)内的记录单元(表格)。
图7是说明根据实施方式1由签名服务器保存的允许规则的表格的示例的图表。根据步骤S408中的处理,签名服务器A(100)将允许规则的新的行701添加到允许规则的表格700。新的行701的允许规则包括新的访问令牌“P8mOcv+6SW”、汇款源“用户L的账户a”、汇款对方“用户S的账户b”以及汇款数额的范围“通过美元兑换的420到780美元”中的每个信息。
接下来,在步骤S409中的处理中,签名服务器A(100)向网络应用160发布新的访问令牌“P8mOcv+6SW”。
图8是说明根据实施方式1的汇款请求的示例的图表。在步骤S410中,用户L向网络应用160发送汇款请求800。汇款请求800包括关于汇款源“用户L的账户a”、汇款对方“用户S的账户b”以及汇款数额“虚拟货币200点”的信息。
图9是说明根据实施方式1从网络应用向签名服务器发送的汇款请求的示例的图表。在步骤S411中,网络应用160将接收到的访问令牌附接到汇款请求900并且将汇款请求900附接到签名服务器A(100)。汇款请求900包括关于汇款源“用户L的账户a”、汇款对方“用户S的账户b”、汇款数额“虚拟货币200点”以及访问令牌“P8mOcv+6SW”的信息。
图10是说明根据实施方式1由签名服务器提取的允许规则的示例的图表。在步骤S412中,基于包括在汇款请求900中的访问令牌“P8mOcv+6SW”,签名服务器A(100)从由签名服务器A(100)保存的允许规则的表格700中提取其访问令牌与所述访问令牌相匹配的行701。包括在提取出的行701中的允许规则1000被提取。图10中说明的允许规则1000与图6具有相同的信息,并且包括汇款源“用户L的账户a”、汇款对方“用户S的账户b”以及汇款数额的范围“通过美元兑换的420到780美元”的信息。
在步骤S413中,签名服务器A(100)确定接收到的汇款请求900的汇款数额是否满足提取出的允许规则1000。例如,在汇款请求900的情况下,假设虚拟货币比率从签名被允许时的3.0波动到3.2[美元/虚拟货币]。在这种情况下,虽然通过美元兑换的汇款数额是640美元(因为比率是3.2[美元/虚拟货币]),但是该汇款数额在允许规则1000的汇款数额的范围之内(见图10),所以签名服务器A(100)确定“允许规则被满足”(步骤S413中为是)。
另一方面,例如,在汇款请求900的情况下,假设虚拟货币比率从签名被允许时的3.0大幅波动到2.0[美元/虚拟货币]。在这种情况下,由于以美元为单位的汇款数额的值是400美元并且在允许规则1000的汇款数额的范围之外,因此签名服务器A(100)确定“允许规则未满足”(步骤S413中为否)。在这种情况下,根据步骤S417中的处理,签名服务器A(100)回答签名不被发布到网络应用160。
接下来,在步骤S414中,签名服务器A(100)仅在步骤S413中确定“允许规则被满足(步骤S413中为是)”时才创建与交易信息相对应的数字签名。接下来,在步骤S415中,签名服务器A(100)向网络应用160发送经创建的数字签名。
在步骤S416中,网络应用160将接收到的数字签名附接到汇款交易并且在区块链BC中发布汇款交易。
根据实施方式1,提供一个区块链(BC)和一个签名服务器A(100),并且当在执行作为从用户L到用户S的交易处理的汇款的情况下货币比率波动时,能够在执行实际汇款时核对用户L的交易的允许内容与交易内容。当在允许交易时发布访问令牌时,签名服务器A(100)计算汇款数额的允许范围,并且仅在实际汇款时的汇款数额在允许范围内的情况下才发布数字签名。汇款的交易处理被允许。
因此,即使在交易被允许时与交易请求被实际发送时之间存在时间差或者差异情形的情况下,在区块链BC中执行虚拟货币的汇款操作的用户L也可以验证汇款数额是否在意图的允许内容内。由于用户L的私密秘钥110被保存在签名服务器A(100)中而没有被放置在网络应用160中,因此可以安全地执行代理交易。
(实施方式2)
图11是说明根据实施方式2的交易处理的示例的图。在实施方式2中,将描述基于当前汇款数额确定交易允许规则的示例。在实施方式2中,与实施方式1相同的组件由相同的附图标记指代。
在实施方式2中,假设用户L分别在区块链A(虚拟货币A)和区块链B(虚拟货币B)中具有账户a和b。将描述用户L经由与区块链链接的网络应用160将账户a中的虚拟货币A兑换为账户b中的虚拟货币B的示例。
账户a的私密秘钥110由区块链A的签名服务器A(100)管理。账户b的私密秘钥110由区块链B的签名服务器B(100)管理。在下面描述的交易处理中,虚拟货币A被兑换为虚拟货币B,并且签名服务器A(100)执行该处理。在虚拟货币B被兑换为虚拟货币A的情况下,需要作为支付源的区块链B的签名服务器B(100)。
以下将基于图11的描述来依次描述主要由签名服务器A(100)执行的处理内容。
1.用户L允许签名服务器A(100)仅针对特定的汇款请求来代表用户L发布签名(步骤S1101)。
2.签名服务器A(100)创建通过基于用户L的交易信息计算汇款数额的允许范围而获得的允许规则,且将访问令牌与允许规则相关联并且将允许规则登记在记录单元中(步骤S1102)。
3.签名服务器A(100)向网络应用160发布访问令牌(步骤S1103)。
4.用户L向网络应用160发送包括关于汇款数额的信息的汇款请求(步骤S1104)。
5.网络应用160向签名服务器A(100)发送曾发送过的访问令牌以及包括诸如汇款数额这样的交易信息的签名发布请求(步骤S1105)。
6.签名服务器A(100)确定包括接收到的汇款数额的交易信息是否满足与接收到的访问令牌相关联的允许规则(汇款数额的允许范围)。在确定结果满足允许规则的情况下,签名服务器A(100)创建与接收到的访问令牌相对应的交易信息的数字签名(步骤S1106)。
7.签名服务器A(100)将创建的数字签名发送到网络应用160(步骤S1107)。
8.网络应用160将接收到的数字签名附接到汇款交易并且在区块链A和B中发布汇款交易(步骤S1108)。
图12A和图12B是说明根据实施方式2的交易处理的示例的流程图。图12A说明了在主要由签名服务器A(100)的处理单元(CPU 301)执行的允许规则的登记阶段中的每一个处理(与图11中的步骤S1101到S1103相对应)的流。图12B说明了在主要由签名服务器A(100)的处理单元(CPU 301)和网络应用160(例如,网络应用服务器150的CPU 301)执行的汇款阶段中的每一个处理(与图11中的步骤S1104到S1108相对应)的流。
另外,下面的步骤S1205和S1206是用于验证用户L的允许规则的子处理。当不要求用户L的允许规则验证时,签名服务器A(100)可以在步骤S1204中的处理之后执行步骤S1207。
在图12A中说明的允许规则的登记阶段的处理中,首先,作为事先准备,准备保持有用户L的虚拟货币的账户的私密秘钥110的签名服务器A(100)(步骤S1201)。
用户L将用于指定汇款源(账户a)、汇款目的地(账户b)和汇款数额的交易信息附接到访问令牌发布请求并且将访问令牌发布请求发送到签名服务器A(步骤S1202)。
因此,基于发布请求的交易信息,签名服务器A(100)计算允许规则的允许范围(步骤S1203)。签名服务器A(100)向用户L发送附接到允许范围(汇款数额的允许范围)的允许规则(步骤S1204)。
签名服务器A(100)确定用户L对于允许规则的响应(允许或者拒绝)(步骤S1205)。当用户L的响应是允许(步骤S1205中为是)时,签名服务器A(100)进行到步骤S1207中的处理。另一方面,当用户L的响应是拒绝(步骤S1205中为否)时,基于用户L的参数允许范围(汇款数额的允许范围),生成具有允许范围的允许规则(步骤S1206),并且处理进行到步骤S1207。
接下来,签名服务器A(100)将具有给出了所生成的参数允许范围的允许范围的允许规则登记到签名服务器A内(步骤S1207)。签名服务器A(100)创建新的访问令牌并且将访问令牌与在步骤S1202中接收到的交易信息和经登记的允许规则相关联地登记在签名服务器A内(步骤S1208)。签名服务器A(100)向网络应用160发布经创建的新的访问令牌(步骤S1209)。签名服务器A(100)终止与允许规则的登记阶段相关的一系列处理。
接下来,在图12B中说明的汇款阶段的处理中,首先,用户L向网络应用160发送包括关于汇款数额的信息的汇款请求(步骤S1210)。接下来,网络应用160将曾发送过的访问令牌附接到签名发布请求并且将签名发布请求发送到签名服务器A(100)(步骤S1211)。
因此,签名服务器A(100)确定包括汇款数额的交易信息是否满足具有与访问令牌相关联的允许范围(汇款数额的允许范围)的允许规则(步骤S1212)。当确定结果满足允许规则(汇款数额在允许范围内)(步骤S1213为是)时,签名服务器A(100)进行到步骤S1214中的处理。另一方面,当确定结果不满足允许规则(汇款数额在允许范围之外)(步骤S1213为否)时,签名服务器A(100)进行到步骤S1217中的处理。
在步骤S1214中的处理中,签名服务器A(100)创建与接收到的访问令牌相对应的交易信息的数字签名(步骤S1214)。接下来,签名服务器A(100)将创建的数字签名发送到网络应用160(步骤S1215)。
因此,网络应用160将接收到的数字签名附接到汇款交易并且在区块链A和B中发布汇款交易(步骤S1216)。在步骤S1217中,签名服务器A(100)回答数字签名不被发布到网络应用160(步骤S1217)。在步骤S1216或步骤S1217中的处理之后,签名服务器A(100)终止与汇款阶段相关的一系列处理。
接下来,将针对参照图12A和12B描述的交易处理来描述汇款的具体示例。在步骤S1201的事先准备中,用户L分别在区块链A(虚拟货币A)和区块链B(虚拟货币B)中具有账户a和b。账户a的私密秘钥由区块链A的签名服务器A管理。尽管描述了虚拟货币A被兑换为虚拟货币B的示例,但是在虚拟货币B被兑换为虚拟货币A的情况中,需要作为支付源的区块链B的签名服务器B(100)。
在步骤S1202中,用户L将账户a中的虚拟货币A兑换为账户b中的虚拟货币B。与虚拟货币A相比较,虚拟货币B在价值上更稳定,并且考虑基于合法货币B的价值来构建签名发布规则。在这一示例中,由于汇款源是虚拟货币A并且私密秘钥由签名服务器A(100)管理,因此假设签名服务器A(100)设置交易的允许规则。
图13是说明根据实施方式2允许签名时的交易信息的示例的图表。图13说明了在步骤S1202中来自用户L的访问令牌发布请求的情况下发送到签名服务器A(100)的交易信息1300的示例。在交易信息1300中,假设汇款源是“用户L的账户a(虚拟货币A)”、汇款对方是“用户L的账户b(虚拟货币B)”并且汇款数额是“虚拟货币A 200点”。
接下来,在步骤S1203中,签名服务器A(100)根据下面的过程来创建允许范围。当设置允许规则时包括在交易信息中的汇款数额为X时,针对包括在汇款请求中的汇款数额Y计算在下面的等式(3)中描述的允许范围。
X*(1-K)≤Y≤X*(1+K)...(3)
(K是满足0<K<1的常数)
此时,当签名服务器A(100)事先设置K=0.3并且在创建允许规则时包括在交易信息中的汇款数额是虚拟货币100点时,签名服务器A(100)创建在下面的等式(4)中描述的允许规则作为包括在汇款请求中的汇款数额Y的允许范围。
70≤Y≤130...(4)
例如,当K=0.3并且签名服务器A(100)接收到在图13中说明的交易信息1300的交易时,假设虚拟货币B到虚拟货币A的比率是3.0[虚拟货币B/虚拟货币A]。此时,基于上面描述的允许规则,汇款数额的范围为以虚拟货币B兑换的420到780点的范围内。
图14是说明根据实施方式2由签名服务器生成的允许规则的示例的图表。根据步骤S1203中的处理,签名服务器A(100)创建允许规则(汇款数额的允许范围)1400。允许规则(汇款数额的允许范围)1400包括汇款源“用户L的账户a(虚拟货币A)”、汇款对方“用户L的账户b(虚拟货币B)”以及汇款数额的范围“通过虚拟货币B兑换的420到780点”的信息。
在步骤S1208中的处理中,签名服务器A(100)创建合适的字符串(例如,“P8mOcv+6SW”)作为新的访问令牌。签名服务器A(100)将在步骤S1204中创建的允许规则(或由用户L在步骤S1207中生成的允许规则)与访问令牌相关联并且将允许规则作为新的允许规则添加到签名服务器A(100)内的记录单元(表格)。
图15是说明根据实施方式2由签名服务器保存的允许规则的表格的示例的图表。根据步骤S1208中的处理,签名服务器A(100)向允许规则的表格1500添加允许规则的新的行1501。新的行1501包括新的访问令牌“P8mOcv+6SW”、汇款源“用户L的账户a(虚拟货币A)”、汇款目的地“用户L的账户b(虚拟货币B)”以及汇款数额的范围“通过虚拟货币B兑换的420到780点”的信息。
接下来,在步骤S1209的处理中,签名服务器A(100)向网络应用160发布新的访问令牌“P8mOcv+6SW”。
图16是说明根据实施方式2的汇款请求的示例的图表。在步骤S1210中,用户L向网络应用1600发送汇款请求1600。汇款请求1600包括汇款源“用户L的账户a(虚拟货币A)”、汇款对方“用户L的账户b(虚拟货币B)”以及汇款数额“虚拟货币A 200点”的信息。
图17是说明根据实施方式2从网络应用发送到签名服务器的汇款请求的示例的图表。在步骤S1211中,网络应用1600将接收到的访问令牌附接到汇款请求900并且将汇款请求1700发送到签名服务器A(100)。汇款请求1700包括关于汇款源“用户L的账户a(虚拟货币A)”、汇款对方“用户L的账户b(虚拟货币B)”、汇款数额“虚拟货币A 200点”以及访问令牌“P8mOcv+6SW”的信息。
图18是说明根据实施方式2由签名服务器提取的允许规则的示例的图表。在步骤S1212中,基于汇款请求1700的访问令牌“P8mOcv+6SW”,签名服务器A(100)从由签名服务器A(100)保存的允许规则的表格1500提取其访问令牌与所述访问令牌相匹配的行1501。提取包括在所提取的行1501中的允许规则1800。图18中说明的允许规则1800与图14中的具有相同信息,并且包括汇款源“用户L的账户a(虚拟货币A)”、汇款对方“用户L的账户b(虚拟货币B)”以及汇款数额“通过虚拟货币B兑换的420到780点”的信息。
在步骤S1213中,签名服务器A(100)确定接收到的汇款请求1700的汇款数额是否满足经提取的允许规则1800。例如,在汇款请求1700的情况下,假设虚拟货币比率从签名被允许时的3.0波动到3.2[虚拟货币B/虚拟货币A]。此时,汇款数额是通过虚拟货币B兑换的640点(由于比率是3.2[虚拟货币B/虚拟货币A])。由于640点的汇款数额在允许规则1800的汇款数额的范围内(参见图18),因此签名服务器A(100)确定“允许规则得到满足”(步骤S1213中为是)。
另一方面,例如,在汇款请求1700的情况下,假设虚拟货币比率从签名被允许时的3.0大幅波动到2.0[虚拟货币B/虚拟货币A]。在这种情况下,由于虚拟货币B中的汇款数额的值是400点并且在允许规则1800的汇款数额的范围之外,因此签名服务器A(100)确定“允许规则未得到满足”(步骤S1213中为否)。在这种情况下,根据步骤S1217中的处理,签名服务器A(100)回答签名不被发布到网络应用160。
接下来,在步骤S1214中,签名服务器A(100)仅当在步骤S1213中确定“允许规则得到满足”(步骤S1213中为是)时创建与交易信息相对应的数字签名。接下来,在步骤S1215中,签名服务器A(100)向网络应用160发送创建的数字签名。
在步骤S1216中,网络应用160将接收到的数字签名附接到汇款交易并且在区块链A和B中发布汇款交易。
根据实施方式2,当在用户L执行两个区块链A和B中的虚拟货币A和B之间的汇款兑换的情况下货币比率波动时,能够核对用户L的交易的允许内容与执行实际汇款时的交易内容。当在允许交易时发布访问令牌时,签名服务器A(100)计算汇款数额的允许范围,并且仅在实际汇款时的汇款数额在允许范围内的情况下发布数字签名。汇款的交易处理被允许。
因此,即使在交易被允许时和交易请求实际被发送时之间存在时间差或者差异情形的情况下,在区块链A中执行虚拟货币A的汇款操作的用户L也可以验证汇款数额是否在意图的允许内容内。由于用户L的私密秘钥110被保存在签名服务器A(100)中而不是被放置在网络应用160中,因此可以安全地执行代理交易。
(实施方式3)
在实施方式3中,将描述基于用户L的过去交易确定交易允许规则的示例。将描述在实施方式1和实施方式2中描述的签名服务器A(100)计算汇款数额的允许范围(与步骤S403和步骤S1203相对应)的另一示例。
当在设置允许规则时包括在交易信息(500和1300)中的汇款数额为X时,签名服务器A(100)针对包括在汇款请求(900和1700)中的汇款数额Y计算在下面的等式(5)中描述的允许范围。
X*(M/U)≤Y≤X*(M/L)...(5)
(M是最近某一时期的货币兑换比率的平均值,L是最近某一时期的货币兑换比率的95%置信区间的下限,并且U是最近某一时期的货币兑换比率的95%置信区间的上限)。
签名服务器A(100)的处理单元(CPU 301)将最近某一时期的货币兑换比率以及置信区间的下限和上限记录在记录单元(例如记录介质305等)中。
货币兑换比率在确定基础货币(作为货币兑换的中心的货币)之后使用[虚拟货币/基础货币]的比率。当计算置信区间的上限和下限时,假设货币兑换比率的值的分布是正态分布。
图19是说明根据实施方式3确定允许规则的另一示例的图表。例如,假设在创建允许规则时包括在交易信息(500和1300)中的汇款数额是虚拟货币100点,并且最近一周的货币兑换比率[虚拟货币/US美元]处于图19中说明的状态。在这一情况下,签名服务器A(100)通过计算平均值和95%置信区间来计算M=15.83,L=13.20并且U=18.46。此时,X*(M/U)=85.8和X*(M/L)=119.9以及85.8≤Y≤119.9被计算为包括在汇款请求中的汇款数额Y的允许范围。
根据实施方式3,能够基于过去某一时段执行的交易的货币兑换比率来计算汇款数额的允许范围。因此,基于与用户L实际执行的交易处理有关的信息,能够沿着用户L的意图的交易来创建允许规则。在上面描述的示例中,基于用户L在过去某一时段执行的交易来计算汇款数额的允许范围,但是可以基于另一用户在过去某一时段执行的交易来计算汇款数额的允许范围,而不限于此。例如,在用户L在过去某一时段不执行交易的情况等中,用户L可以使用基于其他用户在过去某一时段执行的交易计算的汇款数额的允许范围,并且即使具有小数量交易的用户也可以执行合适的汇款。
(实施方式4)
在实施方式4中,将描述智能合约(各种系统的应用示例)的变化。在上面描述的每一个实施方式中,描述用于虚拟货币的汇款的代理认证系统的应用示例。不限于此,其同样可以应用于用于在区块链中发布和操作智能合约的网络应用160的代理认证功能。
当签名服务器A(100)验证来自网络应用160的发布数字签名的请求时,在执行智能合约的交易的情况下,可以将具有允许范围的允许规则设置用于自变量值。为此,在上面描述的每一个实施方式中,在进行汇款请求时,签名服务器A(100)计算汇款数额的允许范围以便创建允许规则。
作为各种系统的应用示例,例如超级市场中存在配菜部分的智能合约。用户事先向测量仪器给出“用一个点的虚拟货币支付300克配菜”的授权。当测量仪器测量出配菜在250到350克的范围内时,与测量仪器互锁的智能合约可以代表用户使用虚拟货币执行支付。
不限于虚拟货币,可以按照与上述实施方式相同的方式设置包括具有点卡的交易的各种交易处理中的智能合约的参数(允许范围的设置值或者条件)。因此,变得能够核对用户的交易的允许内容与使用实际系统时的交易内容。即使在交易被允许时和交易请求被实际发送时之间存在时间差或者差异情形的情况下,网络应用的用户也可以使用汇款数额等沿着意图的允许内容来执行交易处理。
现有技术与实施方式之间的区别
将描述现有技术与实施方式之间的区别。在现有技术中,例如,OAuth 2.0技术被广泛已知为用于将用户的授权转移到另一应用的机制。这一技术包括其中用户的访问授权通过使用访问令牌被部分转移到网络应用以便网络应用代表用户执行处理的机制。如上所述,访问令牌是下述的符号(字符串),其指示仅允许代表用户的特定操作。
图20是说明现有技术中用户授权的代理认证的示例的图。在图20中的示例中,假设用户L具有对视频发布站点2010(视频发布站点服务器2011)和SNS站点2020(SNS站点服务器2021)的访问授权。事先,用户L针对SNS站点2020允许“视频发布站点2010代表用户L他或她本身在SNS站点2020上执行发布”(步骤S2001)。在这种情况下,SNS站点2020向视频发布站点2010发布访问令牌(步骤S2002)。
假设用户L向视频发布站点2010发布视频(步骤S2003)。在这种情况下,视频发布站点2010代表用户L将访问令牌附接到SNS站点2020并且发布视频(步骤S2004)。按照这种方式,在用户L通过使用事先登记的访问令牌在视频发布站点2010登记视频的情况下,能够在视频发布站点2010利用用户L的授权向SNS站点2020自动地发布视频等时执行代理认证。
图21是说明现有技术中用于区块链的代理交易系统的配置示例的图。假设通过使用上面描述的OAuth 2.0技术来配置包括图21中说明的代理认证的虚拟货币交易系统。签名服务器A和B(2101)针对区块链A和B保存用户L的私密秘钥2110。如在图21中说明的,用户L可以访问网络应用2160(网络应用服务器2150)。
为了依次描述在图21中说明的系统配置中的代理认证的流,首先,用户L允许签名服务器A和B(2101)仅针对特定汇款请求(汇款源、汇款对方和汇款数额)发布签名(步骤S2101)。签名服务器A和B(2101)与交易信息相关联地登记访问令牌(步骤S2102)。签名服务器A和B(2101)向网络应用2160发布访问令牌(步骤S2103)。
之后,当存在用户L的汇款请求时(步骤S2104),网络应用2160请求签名服务器A和B(2101)发布数字签名(步骤S2105)。签名服务器A和B(2101)使用访问令牌的机制以便验证交易内容是否与用户L的允许内容一致(步骤S2106),并且当交易内容与允许内容一致时向网络应用2160发布签名(步骤S2107)。因此,网络应用2160通过使用从签名服务器A和B(2101)接收到的签名来在区块链A和B中发布交易作为用户L的代理交易(步骤S2108)。
在现有技术的系统配置中,难于核对用户意图的允许内容与实际交易内容。例如,在虚拟货币的兑换中,货币兑换比率在短时间内波动。出于这一原因,交易数额在用户L允许签名时(在步骤S2101中发布访问令牌时)与用户经由网络应用2160实际执行汇款时(在步骤S2104中发布汇款请求时)之间不同。
为了使用具体示例进行描述,在虚拟货币的交易系统中,假设虚拟货币对基础货币(例如,US美元)的比率波动,并且签名服务器A和B(2101)的允许规则基于基础货币的值被配置。当签名被允许时(步骤S2101中,“使用日期:2018年9月14日,15:00”),假设“US美元对虚拟货币A的比率是2.0USD/虚拟货币A”。在这种情况下,当转换100点虚拟货币A时,以US美元为单位的值是200USD。签名服务器A和B(2101)设置签名发布规则为“当用户向指定的目的地发送与200USD相对应的交易时,签名通过”。
另外,假设虚拟货币的比率波动,直到汇款被实际允许(步骤S2104中,“使用日期:2018年9月14日,15:30”)并且“US美元对虚拟货币A的比率是1.8USD/虚拟货币A”。在这种情况下,即使在用于转换相同虚拟货币A的100点的交易中,以US美元为单位的值为180USD,并且签名服务器A和B(2101)可能不会在步骤S2107中针对该交易发布签名。
按照这一方式,在现有技术中,在简单应用了OAuth 2.0技术的具有代理认证的虚拟货币交易系统中,在用户L允许交易时和交易请求被实际发送时之间存在时间差或者差异情形,因此不能够核对允许内容与交易内容。在这种情况下,例如,用户不能验证汇款数额是否在汇款数额的意图允许范围内。在签名服务器不发布签名的情况下,交易本身不能被执行。
在现有技术中,网络应用保存用户的私密秘钥并且在交易过程中与区块链交换信息。由于私密秘钥由网络应用保存,因此还考虑代理交易可能不会被安全执行。
另一方面,在上面描述的实施方式中,签名服务器设置通过基于用户的交易信息计算汇款数额的允许范围而获得的允许规则,并且确定用户的汇款请求是否在允许规则内。因此,即使当货币兑换比率由于网络应用的用户允许交易时和汇款请求被实际发送时之间存在时间差或者差异情形而波动时,签名服务器也可以基于允许规则验证用户的汇款数额是否在意图的允许范围内。此外,用户可以在汇款数额的允许范围内执行汇款,并且可以降低无意的低于或高于汇款数额。
在实施方式中,由于签名服务器保存用户的私密秘钥,因此与现有技术相比较,代理交易可以被安全执行。即使当链接多个区块链时,相对应的多个签名服务器也分别并且分布式地保存用户的私密秘钥,使得即使在链接多个区块链时也可以安全执行代理交易。
根据上面描述的实施方式,响应于从用户接收到包括交易信息的令牌发布请求,签名服务器生成用于基于交易信息确定交易内容的允许范围的允许规则,并且向处理用户的代理交易的管理应用发送与允许规则相对应的令牌。根据从网络应用接收到包括令牌的基于用户的交易请求的签名发布请求,基于包括在交易请求中的交易内容是否在由与包括在签名发布请求中的令牌相对应的允许规则确定的允许范围内,确定是否发布与签名发布请求相对应的数字签名。因此,令牌发布请求时交易的允许内容与实际交易内容之间的核对被执行。例如,能够验证用户的汇款数额是否在意图的汇款数额的允许范围内。签名服务器确定实际交易内容是否满足允许规则的允许范围,并且当实际交易内容满足允许范围时,签名服务器发布数字签名并且使网络应用(Web app)执行汇款交易。在实施方式中执行的交易处理可以通过区块链和签名服务器应用于代理交易。
在交易是用户汇款具有货币价值的金钱或者点的数额时,在用户请求令牌发布时,签名服务器针对允许规则确定汇款数额的允许范围。在用户进行实际汇款请求时,确定包括在汇款请求中的汇款数额是否在允许规则的允许范围内。因此,变得能够通过应用于虚拟货币等的汇款来核对代理交易时用户的允许内容与实际交易内容。由于货币兑换比率在虚拟货币等中在短时间中波动,因此可能存在即使是相同汇款数额的情况、也由于货币兑换比率的改变而使得交易数额在被用户允许时(在发布访问令牌时)与在用户经由网络应用实际发布汇款请求时之间不同的情形。在这种情况下,能够验证汇款数额是否在允许范围内,并且即使当汇款数额在实际汇款时的货币兑换比率处波动时,也在汇款数额在允许范围内的情况下,发布数字签名并且可以适当地执行网络应用的代理交易。
只有在包括在汇款请求中的汇款数额在允许规则中的允许范围内的情况下,签名服务器可以确定向网络应用发布交易信息的数字签名被允许并且向网络应用发布数字签名。因此,在用户实际执行汇款时的汇款请求时,在其中汇款数额在允许范围内的情况中,签名服务器发布数字签名,并且用户可以执行汇款交易。另一方面,当汇款数额在允许范围之外时,汇款交易不被允许。用户可以在签名服务器中设置的汇款数额的允许范围内执行汇款。
签名服务器可以保存用于认证用户的交易处理的认证信息,并且通过使用认证信息来创建数字签名。通过在签名服务器中保持和保存用户的认证信息(私密秘钥),不要求现有技术中的网络应用保存私密秘钥,并且可以安全执行代理交易。
对于来自用户的包括交易信息的每个令牌发布请求,签名服务器还将汇款源、汇款目的地、汇款数额的允许范围以及每个用户的令牌彼此相关联的信息创建在表格中,作为允许规则的信息。在用户进行实际汇款请求时,与汇款请求相对应的允许规则可以通过参照表格的允许规则而被提取,并且可以确定经提取的允许规则的汇款数额是否在汇款数额的允许范围内。因此,每次用户执行交易时,交易内容的历史可以被制表和累计,并可以创建适合于每个用户的允许规则,并且可以基于每个用户的合适的允许规则来适当地处理汇款。
签名服务器可以计算通过将创建允许规则时包括在交易信息中的汇款数额乘以预定系数而获得的值,作为定义汇款数额的允许范围的最大值和最小值。因此,汇款数额的允许范围可以被适当设置,并且可以通过使用允许范围适当地执行实际汇款处理。
签名服务器可以通过使用包括在用户或者另一用户的当前或者过去交易信息中的货币兑换比率来计算汇款数额的允许范围。因此,变得能够根据用户的交易状态来适当地设置汇款数额的允许范围,并且变得能够基于适合于每个用户的允许规则来适当地处理汇款。即使具有小数量交易的用户也可以通过使用其他用户的交易信息来执行合适的汇款。
签名服务器可以向用户通知计算的允许规则,通过用户的允许使用允许规则来执行确定,并且在用户拒绝时使用由用户创建的允许规则来执行确定。因此,根据由签名服务器创建的允许规则,可以基于用户的允许来适当地执行汇款。由于当用户拒绝由签名服务器创建的允许规则时可以通过使用用户创建的允许规则来执行汇款,因此可以执行根据用户的意图的汇款交易。
交易可以是使用一个或多个区块链账户的智能合约,并且在智能合约被执行时进行交易时,对于来自网络的用于发布数字签名的请求,通过使用允许规则来进行确定。因此,在实施方式中描述的交易处理可以被应用于各种系统,并且可以通过使用允许规则来适当地执行在所应用的各种系统中的交易处理。
在本公开的实施方式中描述的签名方法可以通过使诸如服务器等处理器执行事先准备的程序来实现。当前签名方法被记载在诸如硬盘、压缩盘只读存储器(CD-ROM)、闪存等的计算机可读记录介质中并且通过计算机从记录介质中读取来执行。本签名方法可以经由诸如互联网这样的网络进行分布。
Claims (11)
1.一种签名服务器,包括:
处理单元,其响应于从用户接收到包括交易信息的令牌发布请求,生成用于基于所述交易信息确定交易内容的允许范围的允许规则并且将与所述允许规则相对应的令牌传输到处理所述用户的代理交易的网络应用,并且
响应于从所述网络应用接收到包括所述令牌的基于所述用户的交易请求的签名发布请求,基于包括在所述交易请求中的交易内容是否在通过与包括在所述签名发布请求中的令牌相对应的允许规则所确定的允许范围内,来确定是否发布与所述签名发布请求相对应的数字签名。
2.根据权利要求1所述的签名服务器,
其中,在所述交易是所述用户汇款具有货币价值的金钱或者点的数额的情况下,所述处理单元
确定在从所述用户进行所述令牌发布请求时允许规则的汇款数额的允许范围,并且
确定包括在所述汇款请求中的汇款数额是否在所述用户进行汇款请求时允许规则的允许范围内。
3.根据权利要求2所述的签名服务器,
其中,仅在包括在所述汇款请求中的汇款数额在允许规则中的允许范围内时,所述处理单元确定向所述网络应用发布所述交易信息的数字签名被允许并且向所述网络应用发布所述数字签名。
4.根据权利要求3所述的签名服务器,
其中,所述处理单元保存用于认证所述用户的交易处理的认证信息,并且通过使用所述认证信息创建所述数字签名。
5.根据权利要求2到4中任意一项所述的签名服务器,
其中,对于来自所述用户的包括交易信息的每个令牌发布请求,所述处理单元还创建下述信息作为关于允许规则的信息,在所述信息中关于汇款源、汇款目的地、所述汇款数额的允许范围以及每个用户的令牌的信息在表格中彼此相关联,并且
在所述用户进行所述汇款请求时,通过参照所述表格的允许规则提取与所述汇款请求相对应的允许规则,并且确定所提取的汇款规则的汇款数额是否在所述汇款数额的允许范围内。
6.根据权利要求2到5中的任意一项所述的签名服务器,
其中,所述处理单元计算通过使在创建所述允许规则时包括在所述交易信息中的所述汇款数额乘以预定系数而获得的值,作为定义所述汇款数额的允许范围的最大值和最小值。
7.根据权利要求2到6中的任意一项所述的签名服务器,
其中,所述处理单元通过使用包括在所述用户或者另一用户的当前或者过去交易信息中的货币兑换比率来计算所述汇款数额的允许范围。
8.根据权利要求2到7中的任意一项所述的签名服务器,
其中,所述处理单元向所述用户通知所计算的允许规则并且通过所述用户的允许来使用所述允许规则来执行确定,并且
在所述用户拒绝时使用由所述用户创建的允许规则来执行所述确定。
9.根据权利要求1到8中的任意一项所述的签名服务器,
其中,所述交易是使用一个或多个区块链账户的智能合约,并且
在用于执行所述智能合约的交易时,响应于来自所述网络应用的用于发布数字签名的请求,通过使用所述允许规则来执行确定。
10.一种使得计算机执行处理的签名方法,所述处理包括:
响应于来自用户的包括交易信息的令牌发布请求,生成用于基于所述交易信息确定交易内容的允许范围的允许规则并且向处理所述用户的代理交易的网络应用传输与所述允许规则相对应的令牌,并且
响应于来自所述网络应用的包括所述令牌的基于所述用户的交易请求的签名发布请求,基于包括在所述交易请求中的交易内容是否在由与包括在所述签名发布请求中的令牌相对应的允许规则所确定的允许范围内,来确定是否发布与所述签名发布请求相对应的数字签名。
11.一种计算机可读记录介质,其中存储有签名程序,所述签名程序使得计算机执行处理,所述处理包括:
响应于来自用户的包括交易信息的令牌发布请求,生成用于基于所述交易信息确定交易内容的允许范围的允许规则并且向处理所述用户的代理交易的网络应用传输与所述允许规则相对应的令牌,并且
响应于来自所述网络应用的包括所述令牌的基于所述用户的交易请求的签名发布请求,基于包括在所述交易请求中的交易内容是否在由与包括在所述签名发布请求中的令牌相对应的允许规则所确定的允许范围内,来确定是否发布与所述签名发布请求相对应的数字签名。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-003858 | 2019-01-11 | ||
JP2019003858A JP7172618B2 (ja) | 2019-01-11 | 2019-01-11 | 署名サーバ、署名方法および署名プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111435502A true CN111435502A (zh) | 2020-07-21 |
Family
ID=68835114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911416433.4A Pending CN111435502A (zh) | 2019-01-11 | 2019-12-31 | 签名服务器、签名方法及存储签名程序的计算机可读记录介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200226596A1 (zh) |
EP (1) | EP3680795B1 (zh) |
JP (1) | JP7172618B2 (zh) |
CN (1) | CN111435502A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6852776B1 (ja) * | 2019-11-26 | 2021-03-31 | ダイキン工業株式会社 | ブロックチェーンシステム、プログラム及びネットワーク接続装置 |
US11546358B1 (en) * | 2021-10-01 | 2023-01-03 | Netskope, Inc. | Authorization token confidence system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103441857A (zh) | 2013-09-18 | 2013-12-11 | Tcl集团股份有限公司 | 一种网络电视用户增值服务整合方法及系统 |
CN107683488B (zh) | 2015-04-05 | 2023-09-05 | 数字资产(瑞士)股份有限公司 | 数字资产中介电子结算平台 |
US20170011460A1 (en) | 2015-07-09 | 2017-01-12 | Ouisa, LLC | Systems and methods for trading, clearing and settling securities transactions using blockchain technology |
JP2018092446A (ja) | 2016-12-05 | 2018-06-14 | キヤノン株式会社 | 認証認可システム及び情報処理装置と認証認可方法とプログラム |
US20180191685A1 (en) * | 2016-12-31 | 2018-07-05 | The Western Union Company | Recurring transfer notifications and secure transfers |
JP6352463B1 (ja) | 2017-02-21 | 2018-07-04 | 株式会社三菱Ufj銀行 | 仮想通貨管理装置、仮想通貨管理方法、およびプログラム |
JP6218979B1 (ja) | 2017-02-24 | 2017-10-25 | 株式会社三井住友銀行 | ブロックチェーンを利用した金融取引方法およびシステム |
US20180375791A1 (en) | 2017-06-23 | 2018-12-27 | Ca, Inc. | Authorization of varying levels of access to a resource server |
-
2019
- 2019-01-11 JP JP2019003858A patent/JP7172618B2/ja active Active
- 2019-12-09 EP EP19214400.4A patent/EP3680795B1/en active Active
- 2019-12-12 US US16/712,147 patent/US20200226596A1/en not_active Abandoned
- 2019-12-31 CN CN201911416433.4A patent/CN111435502A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP7172618B2 (ja) | 2022-11-16 |
JP2020113085A (ja) | 2020-07-27 |
EP3680795A1 (en) | 2020-07-15 |
EP3680795B1 (en) | 2022-05-04 |
US20200226596A1 (en) | 2020-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108885761B (zh) | 用于区块链上的安全点对点通信的方法 | |
EP3465418B1 (en) | Systems and methods for providing identity scores | |
JP7128111B2 (ja) | ブロックチェーンを介して資産関連活動を制御するシステム及び方法 | |
US20210065293A1 (en) | Distributed ledger lending | |
Han et al. | On the optionality and fairness of atomic swaps | |
US20170330159A1 (en) | Resource allocation and transfer in a distributed network | |
JP2023036786A (ja) | 信頼度が低い、または信頼度が皆無の当事者間での価値転送を円滑化する装置、システム、または方法 | |
US11108566B2 (en) | Methods and systems for using digital signatures to create trusted digital asset transfers | |
KR20200091882A (ko) | 증분적으로 완성되는 디지털 자산 담보 지갑 | |
US20170237554A1 (en) | Methods and systems for using digital signatures to create trusted digital asset transfers | |
US20120185395A1 (en) | Systems and methods for electronically circulating a conditional electronic currency | |
CN110008716B (zh) | 区块链交易方法及装置、电子设备、存储介质 | |
US20190114707A1 (en) | Distribution of Blockchain Tokens | |
KR20200094531A (ko) | 블록체인 기반 디지털 자산 서비스 제공 시스템 및 방법 | |
JP7276495B2 (ja) | 制御方法、制御プログラム、情報処理装置および制御システム | |
JPWO2017141905A1 (ja) | 情報処理装置、情報処理方法およびコンピュータプログラム | |
CN110033370B (zh) | 账户创建方法及装置、电子设备、存储介质 | |
CN110458561B (zh) | 区块链网络中实现机密交易的方法及装置 | |
CN111435502A (zh) | 签名服务器、签名方法及存储签名程序的计算机可读记录介质 | |
Hrga et al. | Technical analysis of an initial coin offering | |
CN110009323B (zh) | 区块链交易方法及装置、电子设备、存储介质 | |
CN110009492B (zh) | 区块链交易方法及装置、电子设备、存储介质 | |
KR20200065507A (ko) | 블록체인의 개인키 권한 조절 시스템 및 그 방법 | |
KR20200080462A (ko) | 블록체인 기반의 토큰 거래 시스템 | |
JPWO2018179152A1 (ja) | 仮想通貨の支払代行装置、仮想通貨の支払代行方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200721 |