WO2020071548A1 - 情報処理装置、方法及びプログラム - Google Patents

情報処理装置、方法及びプログラム

Info

Publication number
WO2020071548A1
WO2020071548A1 PCT/JP2019/039357 JP2019039357W WO2020071548A1 WO 2020071548 A1 WO2020071548 A1 WO 2020071548A1 JP 2019039357 W JP2019039357 W JP 2019039357W WO 2020071548 A1 WO2020071548 A1 WO 2020071548A1
Authority
WO
WIPO (PCT)
Prior art keywords
transaction
software
generated
information processing
authorized
Prior art date
Application number
PCT/JP2019/039357
Other languages
English (en)
French (fr)
Inventor
佐藤 裕之
正一郎 櫻木
三男 落合
Original Assignee
さくら情報システム株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by さくら情報システム株式会社 filed Critical さくら情報システム株式会社
Priority to EP19868349.2A priority Critical patent/EP3863218A4/en
Publication of WO2020071548A1 publication Critical patent/WO2020071548A1/ja
Priority to US17/220,279 priority patent/US20210250179A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3223Realising banking transactions through M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3227Aspects of commerce using mobile devices [M-devices] using secure elements embedded in M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/326Payment applications installed on the mobile devices
    • G06Q20/3263Payment applications installed on the mobile devices characterised by activation or deactivation of payment capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/326Payment applications installed on the mobile devices
    • G06Q20/3265Payment applications installed on the mobile devices characterised by personalisation for use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Definitions

  • the present invention relates to an information processing device, a method, and a program.
  • the types of wallets include a web wallet, a software wallet, a hardware wallet, and a paper wallet.
  • the web wallet manages a secret key on the server using a web service on the server.
  • the software wallet stores a secret key in a storage area such as a hard disk (HDD: Hard Disc Drive) of a smartphone or a personal computer (PC). Since both the web wallet and the software wallet store the secret key in the computer, there is a risk of the secret key being leaked due to the computer being infected with malware or the risk of leaking the secret key due to hacking.
  • HDD Hard Disc Drive
  • a paper wallet stores a private key written on a physical medium such as paper. Since the paper wallet is physically separated from the network, there is no danger of outflow through the network, but the processing becomes complicated when virtual currency is used, which is inconvenient. Furthermore, it is necessary to pay attention to the storage location of the paper wallet itself, and if it is lost, it cannot be restored.
  • the hardware wallet is a dongle-type dedicated device that stores the private key of the virtual currency, is configured separately from the smartphone or PC, and can be used by connecting the dedicated device to the PC via USB (Universal Serial Bus). Become. Hardware wallets are said to be secure because they allow private keys to be physically separated from the network and stored compared to software wallets. Further, the hardware wallet can digitally sign the transaction data (transaction) by the dedicated device itself, and thus is more convenient than the paper wallet.
  • malware wallets that were said to be safe have also been reported to be damaged by malware, and in some cases, transactions generated from PCs via software have been rewritten by malware. Specifically, the destination address that the user originally wanted to remit is rewritten by the malware to the address of the attacker, and an unauthorized transaction not intended by the user is generated. If the user fails to confirm the destination address displayed on the hardware wallet, a digital signature is attached to the unauthorized transaction using the private key, and the unauthorized transaction with the digital signature is transmitted on the network. Sent to. If the unauthorized transaction is authenticated, the user may transfer the virtual currency to the attacker's account, and as a result, the virtual currency may be stolen.
  • the present invention has been made in consideration of the above-described circumstances, and has as its object to provide an information processing apparatus, method, and program that can further enhance the security of transactions.
  • the information processing apparatus is mounted on a terminal, and includes an access control unit and a signature unit.
  • the access control unit verifies the software that generated the transaction.
  • the signature unit applies a digital signature to the transaction using a secret key stored in a secure element of the terminal. .
  • the security of transactions can be further improved.
  • FIG. 1 is a conceptual diagram showing a transaction system including an information processing device according to the embodiment.
  • FIG. 1 is a block diagram showing an information processing apparatus according to the embodiment.
  • FIG. 9 is a sequence diagram showing an example of an installation process and an activation process (a new opening process of a virtual currency account) of a wallet application (virtual currency use software) according to the embodiment.
  • FIG. 7 is a sequence diagram showing an example of a case where a virtual currency account is opened using the authorized wallet application according to the embodiment.
  • FIG. 9 is a sequence diagram showing an example of a case where a virtual currency is traded using the authorized wallet application according to the embodiment.
  • FIG. 9 is a sequence diagram showing an example of a case where a virtual currency is traded using the authorized wallet application according to the embodiment.
  • FIG. 9 is a sequence diagram showing an example of a case where a virtual currency account is opened or a virtual currency is traded by a wallet application that is not an authorized wallet application.
  • 9 is a flowchart showing details of verification processing of the authorized wallet application according to the embodiment.
  • FIG. 6 is a view showing a display example of a message by a presentation unit according to the embodiment.
  • FIG. 1 is a block diagram showing an example of the configuration of an information processing apparatus according to an embodiment.
  • a virtual currency (also called cryptocurrency) transaction system using the information processing apparatus according to the present embodiment will be described with reference to FIG.
  • Bitcoin registered trademark
  • the transaction is not limited to bitcoin, but may be a transaction of another virtual currency in which a secret key is stored and a digital signature is performed using the secret key, that is, altcoin.
  • the information processing apparatus according to the present embodiment may be similar to the information processing apparatus according to the present embodiment. Applicable to
  • the transaction system 1 shown in FIG. 1 includes the terminal 10 and the terminal 30 including the information processing apparatus according to the present embodiment, and the blockchain network 20.
  • FIG. 1 shows an example in which virtual currency is remitted from a terminal 10 operated by a user to a terminal 30 as a remittance destination via a blockchain network 20.
  • the terminal 10 Since the terminal 10 and the terminal 30 have the same configuration, the terminal 10 will be described below as an example. In addition, for convenience of explanation, the terminal 10 and the terminal 30 and the blockchain network 20 are separately described, but the terminal 10 and the terminal 30 also form a part of the blockchain network 20.
  • the terminal 10 is a communication terminal including a SIM (Subscriber Identity Module), and is assumed to be a feature phone, a mobile phone such as a smartphone, a tablet terminal, a tablet PC, or the like.
  • the terminal 10 includes the information processing device 100 according to the present embodiment.
  • the blockchain network 20 is a P2P (Peer to Peer) network using blockchain technology, and communication media 21 participating in the network are interconnected as nodes.
  • a P2P network has no servers and no hierarchical structure, and is basically connected in a “flat” state so that all nodes share a load for processing a service.
  • Communication media 21 participating in the blockchain network 20 are various communication media communicable via a network, such as a mobile phone such as a smartphone, a tablet PC, a notebook PC, and a desktop PC. With such a communication medium 21, a P2P type network is constructed.
  • Each communication medium 21 has a public ledger 25 into which a transaction related to a virtual currency transaction is taken.
  • Each public ledger 25 is data in which bitcoin transactions so far are recorded, which are used in the blockchain technology.
  • a transaction is newly fetched as a block by the mechanism of proof of work, and is shared by each public ledger 25.
  • the block chain technology assumed in the present embodiment is assumed to be a process used in general bitcoin transactions, and thus the description thereof is omitted.
  • the information processing apparatus 100 realizes that the architecture of the terminal 10 is realized in cooperation with each other between the secure element area 120, the operating system (OS) area 140, and the application area 160.
  • the information processing device 100 according to the present embodiment includes an access control unit 101, a storage unit 102, a signature unit 103, a presentation unit 104, a transmission unit 105, and a generation unit 106.
  • the secure element area 120 is a software area included in a secure element that is tamper-resistant hardware such as SIM, USIM (Universal SIM), and eSIM (embedded SIM).
  • the secure element area 120 includes a storage unit 102, a signature unit 103, and a generation unit 106.
  • the OS area 140 is an area where a general OS for operating the system operates. In the present embodiment, for example, it is assumed that an Android (registered trademark) OS operates.
  • the OS area 140 includes the access control unit 101.
  • the application area 160 is an area in which software (an application such as an Android application) used by the user operates via the function of the OS. In the present embodiment, it is assumed that a wallet application, which is software for using virtual currency, operates in the application area 160.
  • the application area 160 includes a presentation unit 104 and a transmission unit 105.
  • the access control unit 101, the signature unit 103, the presentation unit 104, the transmission unit 105, and the generation unit 106 may be realized by one processing circuit.
  • the access control unit 101, the presentation unit 104, and the transmission unit 105 may be realized by one processing circuit
  • the signature unit 103 and the generation unit 106 may be realized by another processing circuit.
  • each unit includes an application-specific processing circuit (ASIC: Application Specific Integrated Circuit), a field programmable gate array (FPGA: Field Programmable ⁇ Gate ⁇ Array) or the like.
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable ⁇ Gate ⁇ Array
  • the access control unit 101 verifies the software that generated the transaction and determines whether the software is software certified by a certificate authority. .
  • a transaction is transaction data related to a virtual currency transaction, and specifically includes a virtual currency address, a virtual currency remittance amount, and the like. If the access control unit 101 determines that the software that generated the transaction is authorized software, it accesses the secure element area 120. For example, the access control unit 101 gives an instruction to the secure element to attach a digital signature to the transaction. On the other hand, if the software that generated the transaction is not authorized software, the access control unit 101 stops processing related to the transaction, such as accessing the secure element and adding a digital signature.
  • the storage unit 102 stores the signature verification key and the secret key in the secure element.
  • the signature verification key is a key for verifying whether the software generating the transaction is reliable software.
  • the secret key is generated when a virtual currency account is opened by the generation unit 106, and is a key for enabling virtual currency transactions. That is, it is assumed that the information processing apparatus 100 uses the secure element as a wallet of the secret key.
  • the signature generation unit 103 determines that the software that generated the transaction is authorized software by the verification by the access control unit 101, the signature unit 103 uses the secret key stored in the storage unit 102 of the secure element area 120 to perform the transaction. A digital signature.
  • the presentation unit 104 presents the content related to the transaction to which the digital signature has been added, for example, on the display of the terminal 10.
  • the transmission unit 105 broadcast-transmits the transaction to which the digital signature has been added to the blockchain network 20.
  • the generation unit 106 generates a pair of a secret key and a public key when opening a virtual currency account.
  • At least the secret key is stored in the storage unit 102 in the secure element area 120, and the secret key of the storage unit 102 can be accessed only when the access control unit 101 authenticates the user. If so, each unit may exist in any area of the architecture configuration.
  • FIG. 3 is a sequence diagram showing the exchange between the software certification authority 50 and the terminal 10 in time series. For the terminal 10, processing in the secure element area 120 and the application area 160 is shown in more detail in a time-series manner.
  • a software certification authority is an organization that issues digital certificates for certifying the submitted software.
  • the terminal 10 including the information processing device 100 according to the present embodiment is a communication terminal using Android OS (registered trademark).
  • step S301 the software certification authority 50 authenticates the wallet application. Specifically, the software certification authority 50 authenticates whether the submitted wallet application is an unauthorized application and whether a malicious program is incorporated before the wallet application is used on the terminal 10. . Note that a general method may be applied to authentication at the software certification authority 50, and a detailed description thereof will be omitted here.
  • step S302 if the wallet application is not an unauthorized application, a malicious program is not incorporated, and the software certificate authority 50 verifies that the wallet application is not a problem, the software certificate authority 50 determines that the wallet application is authorized. A code signature is applied to the wallet application. Thereafter, the wallet application is published on the web, for example, on Google Play (registered trademark), so that the wallet application can be downloaded on the terminal 10. Note that an authorized wallet application (authorized wallet application) is referred to as an authorized wallet application.
  • step S303 the terminal 10 downloads an authorized wallet application from the software certification authority 50.
  • a code signature verification key for verifying the code signature applied to the authorized wallet application is also downloaded.
  • the code signature verification key is assumed to be a public key of a public key cryptosystem.
  • step S304 the terminal 10 installs an authorized wallet application.
  • step S305 when the wallet application is installed on the terminal 10, the storage unit 102 of the secure element area 120 receives and stores the code signature verification key from the application area 160. When the installation of the authorized wallet application is completed, the authorized wallet application can operate in the application area 160.
  • the authorized wallet application can be operated on the terminal 10, but if the user does not have a virtual currency account corresponding to the authorized wallet application, the user can receive the virtual currency and transmit the virtual currency. It is not possible to open a new account.
  • step S401 the authorized wallet application in the application area 160 generates a transaction indicating a virtual currency account generation instruction according to a user operation.
  • step S402 the access control unit 101 in the OS area 140 receives a transaction from the authorized wallet application.
  • the access control unit 101 verifies the wallet application that generated the transaction using the code signature verification key stored in the secure element area 120. This is because the information processing apparatus 100 according to the present embodiment does not know in advance whether the application is a certified wallet application or a non-certified wallet application, so that it is necessary to perform a verification process on any wallet application. is there.
  • step S403 the generation unit 106 in the secure element area 120 receives a notification that the transaction is a legitimate transaction from the access control unit 101, and generates a pair of a secret key and a public key.
  • step S404 the storage unit 102 in the secure element area 120 stores the secret key generated in step S403.
  • step S405 the authorized wallet application in the application area 160 receives the public key from the secure element area 120. Thereby, the virtual currency address can be generated using the public key, and the virtual currency can be traded. Thus, the installation process and the activation process of the authorized wallet application are completed.
  • the generation unit 106 may generate a pair of a public key and a secret key for each virtual currency, and the storage unit 102 may store the secret key separately for each virtual currency.
  • step S501 the user generates a transaction related to remittance of virtual currency via the authorized wallet application.
  • step S502 the access control unit 101 in the OS area 140 receives a transaction from the authorized wallet application.
  • the access control unit 101 verifies the wallet application that generated the transaction using the code signature verification key stored in the secure element area 120.
  • the transaction generated in step S501 is a legitimate transaction (FIG. 5, verification result OK).
  • step S503 the signature unit 103 in the secure element area 120 receives a transaction from the access control unit 101.
  • the signature unit 103 applies a digital signature to the transaction using a secret key stored in the storage unit 102.
  • step S504 the presentation unit 104 in the application area 160 receives the digitally signed transaction from the secure element area 120.
  • the presentation unit 104 causes the display to display the contents related to the digitally signed transaction.
  • the user checks the contents of the transaction displayed on the display of the terminal 10 and executes approval if there is no problem in the contents.
  • the execution of the approval is performed by a general method of obtaining an action from the user, such as, for example, touching or pressing a confirmation button by the user, or obtaining the approval by voice recognition processing when the user utters “OK”. May be used.
  • step S505 the transmitting unit 105 in the application area 160 broadcasts the signed transaction to the blockchain network 20.
  • the transaction is captured by the block and added to the block of the public ledger to complete the transaction.
  • the transaction processing in the blockchain network is a general bitcoin transaction processing, and a description thereof will be omitted.
  • step S601 the user creates a transaction related to opening a virtual currency account or remitting virtual currency via the wallet application.
  • step S602 the access control unit 101 in the OS area 140 receives a transaction from the authorized wallet application.
  • the access control unit 101 verifies the wallet application that generated the transaction using the code signature verification key stored in the secure element area 120.
  • a result of the verification it is determined that the wallet application that generated the transaction is not an authorized wallet application (FIG. 6, verification result NG).
  • step S603 the access control unit 101 in the OS area 140 determines that the transaction generated in step S601 is not a transaction generated by the authorized wallet application, and determines that the transaction may have been tampered with. Abort.
  • step S604 the presentation unit 104 in the application area 160 presents, to the user, a message indicating that the transaction processing has been stopped, as necessary.
  • step S402 details of the wallet application verification processing by the access control unit 101 in step S402, step S502, and step S602 will be described with reference to the flowchart in FIG.
  • step S701 the access control unit 101 acquires a code signature assigned to the wallet application, that is, hash value information encrypted with a secret key of a software certification authority and a code.
  • step S702 the access control unit 101 extracts the code signature verification key from the storage unit, decrypts the encrypted hash value information with the code signature verification key, and generates a decrypted hash value.
  • step S703 the access control unit 101 generates a hash value from the code received in step S701 using a hash function.
  • step S704 the access control unit 101 compares the decrypted hash value with the hash value generated in step S503 to determine whether they are the same. If they are the same, the process proceeds to step S705; otherwise, the process proceeds to step S706.
  • step S705 since the hash values are the same, the wallet application is determined to be an authorized wallet application, and the transaction generated by the authorized wallet application is a legitimate transaction.
  • step S706 the access control unit 101 determines that the wallet application is not a certified wallet application but is a non-certified wallet application, and the transaction generated by the non-certified wallet application is not reliable and may have been falsified by malware. Can be certified.
  • the presentation unit 104 may display a message on the display or the like that there is a possibility of falsification on the screen.
  • a message indicating that there is a possibility of tampering may be notified by voice guidance or an alert sound. The message may be notified by combining the screen display and the sound.
  • FIG. 8 shows a display example of a message by the presentation unit 104.
  • FIG. 8 is an example of a display screen 801 on the display of the terminal. A text indicating that the transaction processing has been stopped and a confirmation screen are presented.
  • the access control unit 101 verifies, using a code signature verification key, whether or not the wallet application that displays the contents related to the transaction is an authorized wallet application. If it is determined that the application is a certified wallet application, the contents related to the transaction to which the digital signature has been added are displayed.
  • the displayed content may not be the content related to the transaction with the digital signature, and the display of the content related to the transaction is stopped.
  • the access control unit 101 may verify whether the content related to the transaction to be presented by the presentation unit is a content related to a transaction to which a digital signature has been added.
  • biometric authentication examples include fingerprint authentication, face authentication, iris authentication, vein authentication, voiceprint authentication, and pinna authentication.
  • the information processing apparatus 100 includes a secure element 910 and a first processing circuit 920.
  • the secure element 910 includes a memory 911 and a second processing circuit 912.
  • the first processing circuit 920 is, for example, a CPU (Central Processing Unit), which executes software operating on an operating system to generate a transaction, and the generation of the transaction triggers the software to be certified. It is determined whether or not.
  • the first processing circuit 920 is not limited to the CPU, and may be configured by an integrated circuit such as an ASIC (application specific integrated circuit) or an FPGA (Field Programmable gate array).
  • the memory 911 is, for example, a random access memory (RAM), a dynamic RAM (DRAM), or a static RAM (SRAM), and stores a secret key related to the use of virtual currency.
  • the second processing circuit 912 is, for example, an ASIC or an FPGA. When the software is determined to be authorized software, the second processing circuit 912 applies a digital signature to the transaction using a secret key.
  • the information processing apparatus does not need to use a separate dedicated device such as a dongle, and can be implemented only with a portable terminal. Thereby, the convenience can be greatly improved.
  • the contents related to the transaction are displayed on the display section of the dongle for USB connection.
  • the display of the dongle is smaller than the display of the PC and has much lower visibility. Even if the remittance contents such as the remittance destination and remittance amount have been falsified due to misreading or oversight by the user, the dongle is transmitted without notice. There is a possibility of doing it.
  • the information processing apparatus as in the case of generating a transaction, when the content of the transaction with the digital signature is displayed, the verification is performed to thereby confirm the content of the legitimate transaction. Only the information is displayed, and the unauthorized content is not displayed, so that the user can execute the transaction with confidence.
  • the instructions shown in the processing procedure shown in the above-described embodiment can be executed based on a program that is software.
  • a general-purpose computer system stores this program in advance, and by reading this program, it is also possible to obtain the same effects as those of the information processing apparatus described above.
  • the instructions described in the above-described embodiments are, as programs that can be executed by a computer, magnetic disks (flexible disks, hard disks, etc.), optical disks (CD-ROM, CD-R, CD-RW, DVD-ROM, DVD). ⁇ R, DVD ⁇ RW, Blu-ray (registered trademark) Disc, etc.), a semiconductor memory, or a similar recording medium. As long as the recording medium is readable by a computer or an embedded system, its storage format may be any.
  • the computer reads the program from the recording medium and causes the CPU to execute the instructions described in the program based on the program, the same operation as the information processing apparatus of the above-described embodiment can be realized.
  • the program may be acquired or read through a network.
  • an OS Operating System
  • MW Middleware
  • a program installed in the computer or the embedded system from the recording medium realizes the present embodiment. May be executed.
  • the recording medium in the present embodiment is not limited to a medium independent of a computer or an embedded system, but also includes a recording medium in which a program transmitted via a LAN, the Internet, or the like is downloaded and stored or temporarily stored.
  • the number of recording media is not limited to one, and a case where the processing in the present embodiment is executed from a plurality of media is also included in the recording medium in the present embodiment, and the configuration of the medium may be any configuration.
  • the computer or the embedded system according to the present embodiment is for executing each process according to the present embodiment based on a program stored in a recording medium, and includes an apparatus including one such as a personal computer and a microcomputer.
  • This device may have any configuration such as a system in which the devices are connected to a network.
  • the computer in the present embodiment is not limited to a personal computer, but also includes an arithmetic processing unit, a microcomputer, and the like included in an information processing device, and is a general term for devices and devices that can realize the functions in the present embodiment by programs. ing.
  • the invention of the present application is not limited to the above-described embodiment, and can be variously modified in an implementation stage without departing from the gist of the invention.
  • the embodiments may be implemented in appropriate combinations as much as possible, in which case the combined effects can be obtained.
  • the above embodiments include inventions at various stages, and various inventions can be extracted by appropriate combinations of a plurality of disclosed constituent elements.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本開示の一実施形態に係る情報処理装置は端末に搭載され、アクセス制御手段と、署名手段とを含む。アクセス制御手段は、前記端末のオペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアを検証する。署名手段は、前記アクセス制御手段により前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合、前記端末のセキュアエレメントに格納される秘密鍵を用いて前記トランザクションにデジタル署名を付与する。

Description

情報処理装置、方法及びプログラム
 本発明は、情報処理装置、方法及びプログラムに関する。
 仮想通貨(暗号通貨ともいう)取引では、マルウェアなどによる取引記録の改ざんにより、仮想通貨の盗難などの不正流出事件が社会問題化している。このような仮想通貨の不正流出を防ぐため、利用者は仮想通貨をどのように保管するかに苦心している。仮想通貨の保管とは、実際には秘密鍵を管理することと同義である。秘密鍵は、いわゆる「ウォレット」で管理される。
 ウォレットの種類としては、ウェブウォレット、ソフトウェアウォレット、ハードウェアウォレット、ペーパーウォレットなどがある。ウェブウォレットは、サーバ上にあるウェブサービスを利用してサーバ上で秘密鍵を管理する。ソフトウェアウォレットは、スマートフォンやパーソナルコンピュータ(PC)のハードディスク(HDD:Hard Disc Drive)などの記憶領域に秘密鍵を記憶する。ウェブウォレットおよびソフトウェアウォレットは、どちらもコンピュータ内で秘密鍵を記憶するため、当該コンピュータがマルウェアに感染することによる秘密鍵の流出の危険性またはハッキングによる秘密鍵の漏えいの危険性がある。
 一方、ペーパーウォレットは、紙等の物理媒体に秘密鍵を記載して保管する。ペーパーウォレットはネットワークから物理的に切り離されているため、ネットワークを介した流出の危険性はないが、その分仮想通貨の利用時に処理が煩雑となり、利便性が悪い。さらに、ペーパーウォレット自体の保管場所に注意する必要があり、紛失した場合には復元することができない。
 そこで、流出の危険性及び仮想通貨利用時の利便性を考慮して、「ハードウェアウォレット」を利用する利用者が増加している。ハードウェアウォレットは、仮想通貨の秘密鍵を保管するドングル型の専用装置であり、スマートフォンまたはPCとは別体に構成され、専用装置をPCにUSB(Universal Serial Bus)接続することで使用可能となる。ハードウェアウォレットは、ソフトウェアウォレットと比較して秘密鍵をネットワークから物理的に切り離して保管できるため、安全であるといわれている。また、ハードウェアウォレットは、専用装置自体で、取引データ(トランザクション)にデジタル署名できるため、ペーパーウォレットと比較して利便性も高い。
日本国特開2017-207860号公報
 しかし、安全であると言われていたハードウェアウォレットもマルウェアによる被害が報告されており、PCからソフトウェアを介して生成されたトランザクションがマルウェアにより書き換えられるという事例がある。具体的には、利用者が本来送金したかった送信先アドレスが、マルウェアにより攻撃者のアドレスに書き換えられ、利用者が意図しない不正なトランザクションが生成される。利用者は、ハードウェアウォレットに表示される送信先アドレスの確認を怠ると、不正なトランザクションに対し秘密鍵を用いてデジタル署名を付与してしまい、デジタル署名が付与された不正なトランザクションがネットワーク上に送信される。不正なトランザクションが認証されてしまうと、利用者から攻撃者の口座に仮想通貨が送金され、結果として仮想通貨が盗難される恐れがある。
 本発明は、上述した事情を考慮してなされたものであり、取引の安全性をより高めることができる情報処理装置、方法及びプログラムを提供することを目的とする。
 上述の課題を解決するため、本実施形態に係る情報処理装置は端末に搭載され、アクセス制御手段と、署名手段とを含む。アクセス制御手段は、前記端末のオペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアを検証する。署名手段は、前記アクセス制御手段により前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合、前記端末のセキュアエレメントに格納される秘密鍵を用いて前記トランザクションにデジタル署名を付与する。
 本発明の情報処理装置、方法及びプログラムによれば、取引の安全性をより向上させることができる。
本実施形態に係る情報処理装置を含む取引システムを示す概念図。 本実施形態に係る情報処理装置を示すブロック図。 本実施形態に係るウォレットアプリ(仮想通貨利用ソフトウェア)のインストール処理及びアクティベート処理(仮想通貨口座の新規開設処理)の一例を示すシーケンス図。 本実施形態に係る公認ウォレットアプリを用いて仮想通貨口座を開設する場合の一例を示すシーケンス図。 本実施形態に係る公認ウォレットアプリを用いて仮想通貨の取引を行う場合の一例を示すシーケンス図。 公認ウォレットアプリではないウォレットアプリにより、仮想通貨口座の開設または仮想通貨の取引を行う場合の一例を示すシーケンス図。 本実施形態に係る公認ウォレットアプリの検証処理の詳細を示すフローチャート。 本実施形態に係る提示部によるメッセージの表示例を示す図。 本実施形態に係る情報処理装置の装置構成例を示すブロック図。
 以下、図面を参照しながら本発明の実施形態に係る情報処理装置、方法及びプログラムについて詳細に説明する。なお、以下の実施形態中では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
 本実施形態に係る情報処理装置による仮想通貨(暗号通貨ともいう)の取引システムについて図1を参照して説明する。本実施形態では、取引に用いる仮想通貨としてビットコイン(登録商標)を想定する。なお、ビットコインに限らず、秘密鍵を格納して当該秘密鍵によりデジタル署名を行う他の仮想通貨、つまりオルトコイン(altcoin)の取引でもよい。または、イーサリアム(Ethereum)などを用いたスマートコントラクト(契約と当該契約の履行との関係)を用いる取引など秘密鍵の保管が必要となるシステムであれば、本実施形態に係る情報処理装置を同様に適用できる。
 図1に示す取引システム1では、本実施形態に係る情報処理装置を含む端末10及び端末30とブロックチェーンネットワーク20とを含む。図1は、ユーザが操作する端末10から送金先である端末30へブロックチェーンネットワーク20を介して仮想通貨を送金する例を示す。
 なお、端末10と端末30とは同様の構成を有するため、以下では端末10を例に説明する。また、説明の便宜上、端末10および端末30とブロックチェーンネットワーク20とを区別して記載しているが、端末10および端末30もブロックチェーンネットワーク20の一部を形成する。
 端末10は、SIM(Subscriber Identity Module)を含む通信端末であり、例えばフィーチャーフォン、スマートフォン等の携帯電話、タブレット端末、タブレットPCなどを想定する。端末10は、本実施形態に係る情報処理装置100を含む。
 ブロックチェーンネットワーク20は、ブロックチェーン技術を用いるP2P(Peer to Peer)ネットワークであり、ネットワークに参加する通信媒体21それぞれがノードとして相互に繋がっている。P2Pネットワークは、中央集権型のネットワークと異なり、サーバおよび階層構造はなく、基本的に全てのノードがサービスの処理に関する負荷を分担するように「フラット」な状態で接続される。ブロックチェーンネットワーク20に参加する通信媒体21は、スマートフォンなどの携帯電話、タブレットPC、ノートPCおよびデスクトップPCなど、ネットワークを介して通信可能な様々な通信媒体である。このような通信媒体21により、P2P形式のネットワークが構築される。各通信媒体21は、これまでの仮想通貨の取引に関するトランザクションが取り込まれた公開台帳25を有する。
 各公開台帳25は、ブロックチェーン技術で用いられる、これまでのビットコインの取引が記録されたデータである。各公開台帳25は、プルーフオブワークの仕組みにより新たにトランザクションがブロックとして取り込まれ、各公開台帳25にて共有される。なお、本実施形態で想定するブロックチェーン技術は、一般的なビットコインの取引において用いられる処理を想定するため、ここでの説明は省略する。
 次に、本実施形態に係る情報処理装置100について図2のブロック図を参照して説明する。
 本実施形態に係る情報処理装置100は、端末10のアーキテクチャである、セキュアエレメント領域120、オペレーティングシステム(OS)領域140およびアプリケーション領域160の各領域間で相互に協働して実現されることを想定する。
 本実施形態に係る情報処理装置100は、アクセス制御部101と、格納部102と、署名部103と、提示部104と、送信部105と、生成部106とを含む。
 セキュアエレメント領域120は、例えばSIM、USIM(Universal SIM)、eSIM(embedded SIM)のような耐タンパー性を有したハードウェアであるセキュアエレメントに含まれるソフトウェア領域である。セキュアエレメント領域120には、格納部102と、署名部103と、生成部106とが含まれる。
 OS領域140は、システムを動作させるための一般的なOSが動作する領域であり、本実施形態では、例えば、アンドロイド(登録商標)OSが動作する場合を想定する。OS領域140には、アクセス制御部101が含まれる。
 アプリケーション領域160は、OSの機能を介して、ユーザが利用するソフトウェア(アンドロイドアプリなどのアプリケーション)が動作する領域である。本実施形態では、仮想通貨を利用するためのソフトウェアであるウォレットアプリが、アプリケーション領域160で動作すると想定する。アプリケーション領域160には、提示部104と、送信部105とが含まれる。
 なお、アクセス制御部101と、署名部103と、提示部104と、送信部105と、生成部106とは、1つの処理回路により実現されてもよい。または、アクセス制御部101、提示部104および送信部105が1つの処理回路により実現され、署名部103および生成部106が別の処理回路により実現されてもよい。さらには、各部(アクセス制御部101、署名部103、提示部104、送信部105および生成部106)は、特定用途向け処理回路(ASIC:Application Specific Integrated Circuit)、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)等によって、それぞれ構成されてもよい。
 アクセス制御部101は、端末10のOS上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアを検証し、当該ソフトウェアが認証局で公認されたソフトウェアであるかどうかを判定する。トランザクションは、仮想通貨の取引に関する取引データであり、具体的には、仮想通貨のアドレス、仮想通貨の送金額などが含まれる。アクセス制御部101は、トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定した場合、セキュアエレメント領域120にアクセスする。例えば、アクセス制御部101は、セキュアエレメントに対して、トランザクションにデジタル署名を付与する指示を与える。
 一方、トランザクションを生成したソフトウェアが公認されたソフトウェアでない場合、アクセス制御部101は、セキュアエレメントへのアクセスおよびデジタル署名の付与といった、当該トランザクションに関する処理を中止する。
 格納部102は、セキュアエレメント内に署名検証鍵と秘密鍵とを格納する。署名検証鍵は、トランザクションを生成するソフトウェアが信頼できるソフトウェアであるか否かを検証するための鍵である。秘密鍵は、生成部106により仮想通貨の口座を開設したときに生成され、仮想通貨の取引を可能とするための鍵である。すなわち、情報処理装置100は、セキュアエレメントを秘密鍵のウォレットとして用いることを想定する。
 署名部103は、アクセス制御部101による検証により、トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定した場合、セキュアエレメント領域120の格納部102に格納される秘密鍵を用いて、当該トランザクションに対しデジタル署名を付与する。
 提示部104は、デジタル署名が付与されたトランザクションに関する内容を、例えば端末10のディスプレイに提示する。
 送信部105は、デジタル署名が付与されたトランザクションをブロックチェーンネットワーク20にブロードキャスト送信する。
 生成部106は、仮想通貨の口座を開設したときに、秘密鍵と公開鍵とのペアを生成する。
 なお、上述するアーキテクチャに限らず、少なくとも秘密鍵がセキュアエレメント領域120内の格納部102に格納されており、アクセス制御部101により認証された場合のみ格納部102の秘密鍵にアクセス可能とする構成であれば、各部がアーキテクチャ構成のうちのどの領域に存在してもよい。
 次に、本実施形態に係る情報処理装置100を用いることで利用可能となる仮想通貨のウォレットアプリ(仮想通貨利用ソフトウェア)のインストール処理、及びアクティベート処理(仮想通貨口座の開設処理)ついて、図3および図4のシーケンス図を参照して説明する。
 図3は、ソフトウェア認証局50と端末10との間のやりとりを時系列で示すシーケンス図である。端末10については、より詳細に、セキュアエレメント領域120およびアプリケーション領域160での処理を時系列で示す。
 ソフトウェア認証局は、提出されたソフトウェアに対し、信頼性を証明するデジタル証明書を発行する機関である。
 本実施形態に係る情報処理装置100を含む端末10は、アンドロイドOS(登録商標)を用いる通信端末である。
 ステップS301では、ソフトウェア認証局50が、ウォレットアプリの認証を行う。具体的には、ソフトウェア認証局50は、提出されたウォレットアプリが、不正なアプリかどうか及び悪意のあるプログラムが組み込まれているかどうかを、端末10で当該ウォレットアプリが利用される前に認証する。なお、ソフトウェア認証局50での認証は一般的な手法が適用されればよいため、ここでの詳細な説明は省略する。
 ステップS302では、ソフトウェア認証局50でウォレットアプリが不正なアプリでは無く、悪意のあるプログラムも組み込まれておらず、問題ないと認証されれば、ウォレットアプリを公認した証拠として、ソフトウェア認証局50よりウォレットアプリにコード署名が施される。その後、ウォレットアプリが端末10でダウンロード可能となるように、ウェブ上に、例えばGoogle Play(登録商標)上に公開される。なお、公認されたウォレットアプリ(正規のウォレットアプリ)を公認ウォレットアプリと呼ぶ。
 ステップS303では、端末10が、ソフトウェア認証局50から公認ウォレットアプリをダウンロードする。このとき、公認ウォレットアプリに施されたコード署名を検証するためのコード署名検証鍵も併せてダウンロードする。コード署名検証鍵は、ここでは公開鍵暗号方式の公開鍵を想定する。
 ステップS304では、端末10が、公認ウォレットアプリをインストールする。
 ステップS305では、ウォレットアプリが端末10にインストールされると、セキュアエレメント領域120の格納部102が、アプリケーション領域160よりコード署名検証鍵を受け取って格納する。公認ウォレットアプリのインストールが完了すると、公認ウォレットアプリがアプリケーション領域160で動作可能となる。
 以上の処理により、端末10で公認ウォレットアプリが動作可能な状態となるが、公認ウォレットアプリに対応する仮想通貨の口座を所有していない場合、仮想通貨の受け取り及び仮想通貨の送信を行うことができないため、新規に口座を開設する必要がある。
 続いて、ウォレットアプリを用いて端末10で仮想通貨口座を開設する場合について図4のシーケンスを参照して説明する。
 ステップS401では、アプリケーション領域160における公認ウォレットアプリが、ユーザの操作に応じて仮想通貨口座の生成指示を示すトランザクションを生成する。
 ステップS402では、OS領域140におけるアクセス制御部101が、公認ウォレットアプリからトランザクションを受け取る。アクセス制御部101は、セキュアエレメント領域120に格納されたコード署名検証鍵を用いて、トランザクションを生成したウォレットアプリを検証する。これは、本実施形態に係る情報処理装置100では、公認ウォレットアプリであるか非公認のウォレットアプリであるかは前もって分からないため、どのウォレットアプリに対しても検証処理をする必要があるからである。
 具体的には、トランザクションを生成したウォレットアプリが公認ウォレットアプリであるか否かを判定する。詳細な検証方法については、図6を参照して後述する。図4では、検証の結果、トランザクションを生成したウォレットアプリが公認ウォレットアプリであると判定される。公認ウォレットアプリにより生成されたトランザクションは、正規なトランザクションである。(図4、検証結果OK)。
 ステップS403では、セキュアエレメント領域120における生成部106が、アクセス制御部101から正規なトランザクションである旨の通知を受け取り、秘密鍵および公開鍵のペアを生成する。
 ステップS404では、セキュアエレメント領域120における格納部102が、ステップS403で生成された秘密鍵を格納する。
 ステップS405では、アプリケーション領域160における公認ウォレットアプリが、セキュアエレメント領域120から公開鍵を受け取る。これにより、公開鍵を用いて仮想通貨アドレスを生成でき、仮想通貨の取引が可能となる。以上により、公認ウォレットアプリのインストール処理及びアクティベート処理を終了する。
 なお、本実施形態では、ビットコイン1種類のためのウォレットを想定して説明するが、他の仮想通貨についても同様に口座を開設し、1つのウォレットで管理できる。具体的には、生成部106が、仮想通貨ごとに公開鍵および秘密鍵のペアを生成し、格納部102が、仮想通貨ごとに区別して秘密鍵を格納すればよい。
 次に、公認ウォレットアプリを用いて仮想通貨の取引を行う場合のシーケンスについて図5を参照して説明する。ここでは、端末10から他の端末30の口座宛てに仮想通貨を送金する場合を想定する。
 ステップS501では、ユーザが公認ウォレットアプリを介して、仮想通貨の送金に関するトランザクションを生成する。
 ステップS502では、OS領域140におけるアクセス制御部101が、公認ウォレットアプリからトランザクションを受け取る。アクセス制御部101が、セキュアエレメント領域120に格納されたコード署名検証鍵を用いて、トランザクションを生成したウォレットアプリを検証する。ここでは検証の結果、トランザクションを生成したウォレットアプリが公認ウォレットアプリであると判定される。図4の場合と同様に、ステップS501で生成されたトランザクションは、正規なトランザクションである(図5、検証結果OK)。
 ステップS503では、セキュアエレメント領域120における署名部103が、アクセス制御部101からトランザクションを受け取る。署名部103は、トランザクションに対して格納部102に記憶される秘密鍵でデジタル署名を施す。
 ステップS504では、アプリケーション領域160における提示部104が、セキュアエレメント領域120からデジタル署名されたトランザクションを受け取る。提示部104は、デジタル署名されたトランザクションに関する内容をディスプレイに表示させる。ユーザは、端末10のディスプレイに表示されたトランザクションの内容を確認し、内容に問題が無ければ承認を実行する。承認の実行は、例えばユーザが確認ボタンをタッチまたは押下したり、ユーザが「OK」と発声することにより音声認識処理により承認を取得したりするなど、ユーザからのアクションを取得する一般的な手法を用いればよい。
 ステップS505では、アプリケーション領域160における送信部105が、署名済みトランザクションをブロックチェーンネットワーク20にブロードキャスト送信する。
 なお、ブロックチェーンネットワーク20では、当該トランザクションがブロックに取り込まれ、公開台帳のブロックに追加されることで取引が成立する。なお、ブロックチェーンネットワークにおけるトランザクションの処理は、一般的なビットコインにおけるトランザクション処理であるので、ここでの説明は省略する。
 一方、公認ウォレットアプリではないウォレットアプリにより、仮想通貨口座の開設または仮想通貨の取引を行う場合のシーケンスについて図6を参照して説明する。
 ステップS601では、ユーザがウォレットアプリを介して、仮想通貨口座の開設または仮想通貨の送金に関するトランザクションを生成する。
 ステップS602では、OS領域140におけるアクセス制御部101が、公認ウォレットアプリからトランザクションを受け取る。アクセス制御部101が、セキュアエレメント領域120に格納されたコード署名検証鍵を用いて、トランザクションを生成したウォレットアプリを検証する。ここでは、検証の結果、トランザクションを生成したウォレットアプリが公認ウォレットアプリではないと判定される(図6、検証結果NG)。
 ステップS603では、OS領域140におけるアクセス制御部101が、ステップS601で生成されたトランザクションが、公認ウォレットアプリにより生成されたトランザクションではないため、改ざんされた可能性があるものとして、当該トランザクションの処理を中止する。
 ステップS604では、必要に応じて、アプリケーション領域160における提示部104が、トランザクションの処理を中止したことを示すメッセージをユーザに提示する。
 次に、ステップS402、ステップS502およびステップS602における、アクセス制御部101によるウォレットアプリの検証処理の詳細について、図7のフローチャートを参照して説明する。
 ステップS701では、アクセス制御部101が、ウォレットアプリに付与されたコード署名、すなわちソフトウェア認証局の秘密鍵で暗号化されたハッシュ値情報と、コードを取得する。
 ステップS702では、アクセス制御部101が、記憶部からコード署名検証鍵を抽出し、暗号化されたハッシュ値情報をコード署名検証鍵で復号し、復号済みハッシュ値を生成する。
 ステップS703では、アクセス制御部101が、ステップS701で受け取ったコードからハッシュ関数を用いてハッシュ値を生成する。
 ステップS704では、アクセス制御部101が、復号済みハッシュ値と、ステップS503で生成したハッシュ値とを比較して、同一であるか否かを判定する。同一であれば、ステップS705に進み、同一でなければ、ステップS706に進む。
 ステップS705では、ハッシュ値が同一であるので、ウォレットアプリは公認ウォレットアプリであると判定され、公認ウォレットアプリにより生成されたトランザクションは、正規なトランザクションである。
 ステップS706では、アクセス制御部101が、ウォレットアプリは公認ウォレットアプリではない非公認のウォレットアプリであり、非公認のウォレットアプリで生成されたトランザクションは信頼できず、マルウェアにより改ざんされた可能性があると認定できる。
 なお、ステップS707に示すように、改ざんされたトランザクションの可能性があると判定された場合、提示部104が、ディスプレイなどに改ざんの可能性がある旨のメッセージを画面に表示してもよい。または、画面表示に代えて、音声案内またはアラート音により改ざんの可能性がある旨のメッセージを通知してもよい。画面表示と音声とを組み合わせてメッセージを通知してもよい。
 提示部104によるメッセージの表示例について図8に示す。
 図8は、端末のディスプレイにおける表示画面801の一例である。トランザクションの処理を中止したことを示す文面及び確認画面を提示する。
 また、ディスプレイにトランザクションに関する内容を表示する前に、当該内容を表示させるウォレットアプリが公認ウォレットアプリであるか否かが検証されてもよい。具体的には、アクセス制御部101が、トランザクションに関する内容を表示するウォレットアプリが公認ウォレットアプリか否かを、コード署名検証鍵を用いて検証する。公認ウォレットアプリであると判定されれば、デジタル署名が付与されたトランザクションに関する内容を表示する。
 一方、公認ウォレットアプリではないと判定されれば、表示される内容がデジタル署名が付与されたトランザクションに関する内容ではない可能性もあるため、当該トランザクションに関する内容の表示を中止する。
 また、アクセス制御部101は、前記提示手段により提示予定のトランザクションに関する内容が、デジタル署名が付与されたトランザクションに関する内容であるか否かを検証してもよい。
 また、トランザクションに対しデジタル署名を行う段階で、よりセキュリティ強度を向上させるため、ユーザに既存のバイオ認証を要求してもよい。バイオ認証としては、例えば、指紋認証、顔認証、虹彩認証、静脈認証、声紋認証、耳介認証が挙げられる。
 次に、本実施形態に係る情報処理装置100の装置構成例について図9のブロック図を参照して説明する。
 情報処理装置100を単体で構成する場合を想定すると、情報処理装置100は、セキュアエレメント910と、第1の処理回路920とを含む。セキュアエレメント910は、メモリ911と、第2の処理回路912とを含む。
 第1の処理回路920は、例えば、CPU(Central Processing Unit)であり、オペレーティングシステム上で動作するソフトウェアを実行してトランザクションを生成し、トランザクションの生成を契機として、ソフトウェアが公認されたソフトウェアであるか否かを判定する。なお、第1の処理回路920は、CPUに限らず、ASIC(application specific integrated circuit)、FPGA(Field Programmable gate array)等の集積回路で構成されてもよい。
 メモリ911は、例えば、RAM(Random Access Memory)、DRAM(Dynamic RAM)、SRAM(Static RAM)であり、仮想通貨の利用に関する秘密鍵を格納する。
 第2の処理回路912は、例えば、ASICやFPGAであり、ソフトウェアが公認されたソフトウェアであると判定された場合、秘密鍵を用いてトランザクションにデジタル署名を付与する。
 以上に示した本実施形態によれば、ソフトウェア認証局に認可されたソフトウェアウォレットにより生成されたトランザクションのみに対し、セキュアエレメントのウォレットに格納される秘密鍵を用いてデジタル署名するため、マルウェアを含む非公認のソフトウェア、または改ざんされたトランザクションには、デジタル署名を付与する前の段階で処理を中止することができる。
 よって、PCがマルウェアに感染してトランザクションが書き換えられることによる、ドングル型のハードウェアウォレットで生じるようなトランザクションの誤承認の可能性をなくすことができる。さらに、本実施形態に係る情報処理装置は、ドングルなどの別体の専用装置を用いる必要が無く、携帯端末のみで実装することができる。これにより、利便性を大幅に向上させることができる。
 また、既存のハードウェアウォレットでは、USB接続するドングルの表示部にトランザクションに関する内容が表示される。ドングルの表示部は、PCのディスプレイと比較して小さく視認性が大きく劣るため、ユーザの誤読、見落としなどにより送金先、送金額などの送金内容が改ざんされていても、ユーザが気づかずに送信してしまう可能性もある。一方、本実施形態に係る情報処理装置によれば、トランザクションの生成時と同様に、デジタル署名が付与されたトランザクションの内容が表示される際も、検証を実行することで、正規なトランザクションの内容のみが表示され、不正な内容は表示されないため、ユーザは安心して取引を実行することができる。
 上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した情報処理装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RW、Blu-ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の情報処理装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
 また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
 さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
 また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
 なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
 また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
 なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。
10,30…端末、20…ブロックチェーンネットワーク、21…通信媒体、25…公開台帳、50…ソフトウェア認証局、100…情報処理装置、101…アクセス制御部、102…格納部、103…署名部、104…提示部、105…送信部、106…生成部、120…セキュアエレメント領域、140…オペレーティングシステム領域(OS領域)、160…アプリケーション領域、701…表示画面、910…セキュアエレメント、920…第1の処理回路、911…メモリ、912…第2の処理回路。

Claims (12)

  1.  端末に搭載される情報処理装置であって、
     前記端末のオペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアが公認されたソフトウェアであるか否かを判定するアクセス制御手段と、
     前記アクセス制御手段により前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合に限り、前記端末のセキュアエレメントに格納される秘密鍵を用いて前記トランザクションにデジタル署名を付与する署名手段と、
     を具備する情報処理装置。
  2.  前記アクセス制御手段は、前記トランザクションを生成したソフトウェアが公認されたソフトウェアでないと判定された場合、当該トランザクションの処理を中止する請求項1に記載の情報処理装置。
  3.  前記セキュアエレメント内に、認証局により公認されたソフトウェアに関する署名検証鍵を格納する格納手段をさらに具備し、
     前記アクセス制御手段は、前記ソフトウェアに付与されたデジタル署名を前記署名検証鍵を用いて検証することで、前記トランザクションを生成したソフトウェアが公認されたソフトウェアであるか否かを判定する請求項1または請求項2に記載の情報処理装置。
  4.  前記トランザクションに関する内容をユーザに提示する提示手段をさらに具備し、
     前記アクセス制御手段は、前記デジタル署名が付与されたトランザクションに関する内容を表示するソフトウェアが、前記公認されたソフトウェアであるか否かを判定する請求項1から請求項3のいずれか1項に記載の情報処理装置。
  5.  前記デジタル署名が付与されたトランザクションを、ブロックチェーン技術を用いるP2P(Peer to Peer)ネットワークにブロードキャスト送信する送信手段をさらに具備する請求項1から請求項4のいずれか1項に記載の情報処理装置。
  6.  公開鍵および秘密鍵のペアを生成する生成手段をさらに具備し、
     前記格納手段は、前記秘密鍵を格納する請求項3に記載の情報処理装置。
  7.  前記公開鍵および前記秘密鍵のペアは、仮想通貨ごとに生成される請求項6に記載の情報処理装置。
  8.  前記トランザクションは、前記仮想通貨の取引に関する指示である請求項1から請求項7のいずれか1項に記載の情報処理装置。
  9.  アクセス制御手段が、端末のオペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアが公認されたソフトウェアであるか否かを判定し、
     署名手段が、アクセス制御手段により前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合に限り、前記端末のセキュアエレメントに格納される秘密鍵を用いて前記トランザクションにデジタル署名を付与する、情報処理方法。
  10.  コンピュータに、
     端末のオペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、当該トランザクションを生成したソフトウェアが公認されたソフトウェアであるか否かを判定する機能と、
     前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合に限り、前記端末のセキュアエレメントに格納される秘密鍵を用いて前記トランザクションにデジタル署名を付与する機能と、を実現させる情報処理プログラム。
  11.  コンピュータに、
     オペレーティングシステム上で動作するソフトウェアによりトランザクションが生成された場合、前記トランザクションを生成したソフトウェアが公認されたソフトウェアであるか否かを判定する機能と、
     前記トランザクションを生成したソフトウェアが公認されたソフトウェアであると判定された場合、セキュアエレメントにデジタル署名を指示する機能と、
     を実現させる情報処理プログラム。
  12.  オペレーティングシステム上で動作するソフトウェアを実行してトランザクションを生成し、前記トランザクションの生成を契機として、前記ソフトウェアが公認されたソフトウェアであるか否かを判定する第1の処理回路と、
     秘密鍵を格納するメモリと、前記ソフトウェアが公認されたソフトウェアであると判定された場合に限り、前記秘密鍵を用いて前記トランザクションにデジタル署名を付与する第2の処理回路とを有するセキュアエレメントと、
     を具備する情報処理装置。
PCT/JP2019/039357 2018-10-05 2019-10-04 情報処理装置、方法及びプログラム WO2020071548A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP19868349.2A EP3863218A4 (en) 2018-10-05 2019-10-04 Information processing device, method and program
US17/220,279 US20210250179A1 (en) 2018-10-05 2021-04-01 Information processing apparatus, method and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018190158A JP6522842B1 (ja) 2018-10-05 2018-10-05 情報処理装置、方法及びプログラム
JP2018-190158 2018-10-05

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/220,279 Continuation US20210250179A1 (en) 2018-10-05 2021-04-01 Information processing apparatus, method and program

Publications (1)

Publication Number Publication Date
WO2020071548A1 true WO2020071548A1 (ja) 2020-04-09

Family

ID=66655641

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/039357 WO2020071548A1 (ja) 2018-10-05 2019-10-04 情報処理装置、方法及びプログラム

Country Status (4)

Country Link
US (1) US20210250179A1 (ja)
EP (1) EP3863218A4 (ja)
JP (1) JP6522842B1 (ja)
WO (1) WO2020071548A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021095795A1 (ja) * 2019-11-12 2021-11-25 株式会社Miare 情報処理装置
WO2022009429A1 (ja) * 2020-07-10 2022-01-13 さくら情報システム株式会社 制御装置、制御方法およびドローン装置
KR20230056379A (ko) * 2021-10-20 2023-04-27 삼성전자주식회사 외부 장치를 이용하여 트랜잭션을 전송하는 전자 장치 및 그의 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006197127A (ja) * 2005-01-12 2006-07-27 Ntt Docomo Inc 通信装置、デジタル署名検証方法およびデジタル署名生成方法
JP2008522470A (ja) * 2004-11-25 2008-06-26 フランス テレコム 端末ユーザ識別情報モジュールを接続した通信端末を保護する方法
US20100223475A1 (en) * 2009-02-27 2010-09-02 Research In Motion Limited Low-level code signing mechanism
US20140040147A1 (en) * 2012-08-06 2014-02-06 Ca, Inc. Secure and convenient mobile authentication techniques
JP2014164585A (ja) * 2013-02-26 2014-09-08 Nippon Telegr & Teleph Corp <Ntt> サービス提供システム、サービス提供方法、データ集計装置及びプログラム
WO2017022121A1 (ja) * 2015-08-06 2017-02-09 三菱電機株式会社 認証装置、認証システム、及び認証方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11049349B2 (en) * 2004-06-01 2021-06-29 Daniel William Onischuk Computerized voting system
KR101430240B1 (ko) * 2011-12-19 2014-08-19 주식회사 케이티 어플리케이션 서명 장치 및 방법
WO2015142765A1 (en) * 2014-03-17 2015-09-24 Coinbase, Inc Bitcoin host computer system
EP3568794B1 (fr) * 2017-01-16 2024-03-13 Enrico Maim Procédés et systèmes pour l'exécution de contrats intelligents dans des environnements sécurisés
EP3662636B1 (en) * 2017-08-05 2022-07-20 Proclus Technologies Limited Method and system for securing blockchain with proof-of-transactions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008522470A (ja) * 2004-11-25 2008-06-26 フランス テレコム 端末ユーザ識別情報モジュールを接続した通信端末を保護する方法
JP2006197127A (ja) * 2005-01-12 2006-07-27 Ntt Docomo Inc 通信装置、デジタル署名検証方法およびデジタル署名生成方法
US20100223475A1 (en) * 2009-02-27 2010-09-02 Research In Motion Limited Low-level code signing mechanism
US20140040147A1 (en) * 2012-08-06 2014-02-06 Ca, Inc. Secure and convenient mobile authentication techniques
JP2014164585A (ja) * 2013-02-26 2014-09-08 Nippon Telegr & Teleph Corp <Ntt> サービス提供システム、サービス提供方法、データ集計装置及びプログラム
WO2017022121A1 (ja) * 2015-08-06 2017-02-09 三菱電機株式会社 認証装置、認証システム、及び認証方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: " Part 3 Defense, stop damage by isolation, restoration, detoxification", NIKKEI BYTE, no. 267, 22 July 2005 (2005-07-22), pages 40 - 45, XP009527327, ISSN: 0289-6508 *
See also references of EP3863218A4 *
WATANABE, HIROKI ET AL.: "Technology and challenges of blockchain platforms", IEICE TECHNICAL REPORT, vol. 117, no. 114, 29 June 2017 (2017-06-29), pages 21 - 26, XP055655511 *

Also Published As

Publication number Publication date
JP6522842B1 (ja) 2019-05-29
EP3863218A4 (en) 2022-06-29
JP2020061614A (ja) 2020-04-16
US20210250179A1 (en) 2021-08-12
EP3863218A1 (en) 2021-08-11

Similar Documents

Publication Publication Date Title
US11477034B2 (en) Method and apparatus for processing account information in block chain, storage medium, and electronic apparatus
US10673632B2 (en) Method for managing a trusted identity
CA3058240C (en) Cryptographic key management based on identity information
JP6543040B2 (ja) リモートアクセス、リモートデジタル署名のためのシステムおよび方法
WO2020192406A1 (zh) 数据存储、验证方法及装置
WO2017084013A1 (zh) 一种交易认证方法、装置、移动终端、pos终端及服务器
US20210250179A1 (en) Information processing apparatus, method and program
CN111404696B (zh) 协同签名方法、安全服务中间件、相关平台及系统
KR20060060664A (ko) 리모트 액세스 시스템, 게이트웨이, 클라이언트 기기,프로그램 및 기억 매체
KR102234825B1 (ko) 암호 동작들의 안전한 수행
US11251941B2 (en) Managing cryptographic keys based on identity information
JP6650543B1 (ja) 情報処理装置、方法及びプログラム
JP2017079419A (ja) サーバ認証システム、端末、サーバ、サーバ認証方法、プログラム
Sun A survey of payment token vulnerabilities towards stronger security with fingerprint based encryption on Samsung Pay
JP2019205143A (ja) 認証装置、認証システム、認証方法及びコンピュータプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19868349

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2019868349

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2019868349

Country of ref document: EP

Effective date: 20210506