Systems and methods for using single or multi-chain deposit tokens
The system addresses the challenge of managing deposit tokens across multiple blockchain networks by using verifiable credentials and data oracles to ensure compliance and control, enabling secure and efficient token transfer and management.
Patent Information
- Application Number
- JP2025521342
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-12
- Filing Date
- 2023-10-13
- Publication Date
- 2025-10-28
AI Technical Summary
Existing systems lack efficient methods for managing and transferring deposit tokens across different blockchain networks while ensuring compliance with regulatory requirements and maintaining control over their distribution.
A system and method for using single or multi-chain deposit tokens that utilize verifiable credentials and data oracles to verify identities and compliance, enabling tokenization, transfer, and redemption across public and private blockchain networks, with smart contracts enforcing transfer controls and interest distribution.
Facilitates secure, compliant, and controlled transfer and management of deposit tokens across various blockchain networks, ensuring regulatory adherence and efficient token lifecycle management.
Smart Images

Figure 2025535793000001_ABST
Abstract
Description
[Technical Field]
[0001] Related Applications
[0001] This application claims priority to and benefit of U.S. Provisional Patent Application No. 63 / 379,581, filed October 14, 2022, the disclosure of which is incorporated herein by reference in its entirety.
[0002] FIELD OF THE INVENTION
[0002] Embodiments relate to systems and methods for using single or multi-chain deposit tokens. [Background technology]
[0003]
[0003] A deposit token evidences a demand deposit claim by a token-holder to a token-issuing bank for a certain amount of fiat cash. Deposit tokens are typically issued on a distributed ledger, such as a blockchain digital ledger, and can be transferred to other parties. Summary of the Invention [Means for solving the problem]
[0004]
[0004] A system and method for using single or multi-chain deposit tokens is disclosed. According to an embodiment, a method for deposit tokenization may include: (1) receiving, by a deposit tokenization service for a token issuer, an instruction from an authorized party to tokenize an untokenized amount of funds in a deposit account; (2) verifying, by the deposit tokenization service, the identity of the authorized party using a verifiable credential; (3) screening, by the deposit tokenization service, the deposit account and / or the verifiable credential using an information oracle; (4) debiting, by the deposit tokenization service, the amount from the deposit account and crediting, by the deposit tokenization service, the amount to an omnibus account; (5) tokenizing, by the deposit tokenization service, the untokenized amount of funds on a blockchain network as a deposit token; and (6) crediting, by the deposit tokenization service, a wallet address on the blockchain network with the deposit token.
[0005] In one embodiment, the screening step comprises sanctions screening.
[0006] In one embodiment, the method may also include updating, by the deposit tokenization service, a transaction store with the amount of the deposit token, wherein the transaction store includes updating the total number of deposit tokens for the token issuer.
[0006]
[0007] In one embodiment, the blockchain network may be a public blockchain network or a private blockchain network.
[0008] In one embodiment, the verifiable credential attests to the identity of an authorized party.
[0007]
[0009] According to another embodiment, a method for transferring a deposit token may include (1) receiving an instruction from a holder or authorized party of the deposit token by a token issuer to transfer an amount of the deposit token from a first wallet address to a second wallet address; (2) verifying the identity of the holder or authorized party using verifiable credentials; (3) screening the first wallet address, the second wallet address, and / or the verifiable credentials using an information oracle; (4) transferring the amount of the deposit token from the first wallet address to the second wallet address; and (5) storing a transfer event for the transfer in an event store.
[0008]
[0010] In one embodiment, the screening step comprises approval screening.
[0011] In one embodiment, the first wallet address and the second wallet address are on the same blockchain network, which may be a public blockchain network or a private blockchain network.
[0009]
[0012] In one embodiment, the first wallet address and the second wallet address are on different blockchain networks, and the method may also include triggering a burn event for the amount of deposit tokens at the first wallet address; crediting the second wallet address with the amount of deposit tokens burned from the first wallet address; and updating a transaction store with the deposit tokens, wherein the transaction store updates the total number of deposit tokens for the token issuer.
[0010]
[0013] In one embodiment, the first wallet address and the second wallet address are on different public blockchain networks.
[0014] In one embodiment, the first wallet address is on a public blockchain network and the second wallet address is on a private blockchain network, or the first wallet address is on a private blockchain network and the second wallet address is on a public blockchain network.
[0011]
[0015] In one embodiment, the verifiable credential proves the identity of the authorized party.
[0016] According to another embodiment, a method for redemption of a deposit token may include the steps of: (1) receiving a request from a holder or authorized party of the deposit token instructing redemption of the amount of the deposit token from a wallet address on a blockchain network to a bank account; (2) identifying the holder's account as a burn account; (3) verifying the identity of the holder or authorized party using verifiable credentials; (4) performing screening on the wallet address, bank account, and / or verifiable credentials from which the deposit token originated using an information oracle; (5) transferring the amount of the deposit token to the holder's account; (6) triggering a burn event on the holder's account; (7) executing the burn event; and (8) crediting the amount of the deposit token to the bank account by debiting the omnibus account and crediting the bank account.
[0012]
[0017] In one embodiment, the screening step comprises approval screening.
[0018] In one embodiment, the method may also include updating a transaction store with the amount of the deposit token, where the transaction store updates the total number of deposit tokens for the deposit token issuer.
[0013]
[0019] In one embodiment, the blockchain network comprises a public blockchain network or a private blockchain network.
[0020] In one embodiment, a verifiable credential proves the identity of the holder or authorized party.
[0014]
[0021] According to another embodiment, a method for applying on-chain transfer controls to support transferability between end token holders of an issuing institution and other institutions is disclosed.
[0022] According to another embodiment, a method for distributing interest on a deposit token may include the steps of: (1) receiving a calculation of interest on the deposit token; (2) triggering an interest event in response to the interest being received in an omnibus account; (3) instructing a deposit token smart contract to distribute the interest; and (4) crediting a wallet address with an amount of deposit tokens equivalent to the interest.
[0015]
[0023] To facilitate a better understanding of the present invention, reference is made to the accompanying drawings, which should not be construed as limiting the invention, but are intended only to illustrate different aspects and embodiments. [Brief explanation of the drawings]
[0016] [Figure 1]
[0024] FIG. 1 illustrates a system for using single or multi-chain deposit tokens, according to an embodiment. [Figure 2]
[0025] FIG. 2 illustrates a system for using single or multi-chain deposit tokens, according to another embodiment. [Figure 3]
[0026] FIG. 3 illustrates a method for deposit tokenization according to an embodiment. [Figure 4A]
[0027] FIG. 4A illustrates a method for transferring deposit tokens on the same blockchain network, according to an embodiment. [Figure 4B]
[0028] FIG. 4B illustrates a method for transferring deposit tokens between blockchain networks, according to an embodiment. [Figure 5]
[0029] FIG. 5 illustrates a method for interest distribution for deposit tokens according to an embodiment. [Figure 6A]
[0030] FIG. 6A illustrates a method for direct redemption of deposit tokens according to an embodiment. [Figure 6B]
[0031] FIG. 6B illustrates a method for indirect redemption of deposit tokens according to an embodiment. [Figure 7]
[0032] FIG. 7 illustrates an exemplary computing system for implementing aspects of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0017]
[0033] Embodiments relate to systems and methods for using single or multi-chain deposit tokens.
[0034] A deposit token may be a transferable token evidencing a current deposit claim of a legal tender cash amount against an issuing bank by the party holding the token. However, a deposit token is not a stablecoin. Instead, the evidenced current deposit claim is an unsecured claim constituting a general liability of the issuing bank with the same credit priority as other deposits held at the issuing bank and counts against the fractional reserve requirement applicable to the issuing bank with respect to deposit liabilities of a similar nature.
[0018]
[0035] Deposit tokens may be issued and transferred on public or private blockchain networks. To facilitate transfers in public environments where an issuing bank may want to exercise control over where deposit tokens are transferred, embodiments may enable deposit token smart contracts to operate using verifiable credentials, or "VCs," such as digital identities or certificates, and / or data oracles that can verify certain conditions, such as that the wallet address receiving the token is not on an approved list.
[0019]
[0036] VC may prove the identity of a party, such as a party receiving a deposit token, and may be used to verify the identity of a party. Examples of digital identities and proofs are described in U.S. Patent Application No. 16 / 878,457, filed May 19, 2020, U.S. Provisional Patent Application No. 62 / 850,181, filed May 20, 2019, U.S. Provisional Patent Application No. 62 / 976,262, filed February 13, 2020, U.S. Provisional Patent Application No. 63 / 126,335, filed December 16, 2020, and U.S. Patent Application No. 17 / 174,650, filed February 12, 2021, the disclosures of which are incorporated herein by reference in their entireties. Examples of VC verification processes are disclosed in U.S. Patent Application No. 18 / 342,450, filed June 27, 2023, U.S. Provisional Patent Application No. 63 / 367,115, filed June 27, 2022, U.S. Provisional Patent Application No. 63 / 357,511, filed June 30, 2022, and U.S. Provisional Patent Application No. 63 / 373,814, filed August 29, 2022, the disclosures of each of which are incorporated by reference in their entirety into this specification.
[0020]
[0037] 1 and 2, a system for using single or multi-chain deposit tokens is disclosed according to an embodiment. System 100 illustrates one or more public blockchain-based networks (e.g., first public network 110, second public network 120). System 200 illustrates one or more private blockchain-based networks (e.g., first private network 110, private public network 120).
[0021]
[0038] The first public network 110, the second public network 120, the first private network 210, and the second private network 220 may include screening oracles 112, 122, 212, 222 and deposit token smart contracts (SCs) 114, 124, 214, 224. The first public network 110 and the second public network 120 may further include verifiable credential (VC) registry smart contracts (SCs) 116, 126.
[0022]
[0039] The deposit token smart contract 114, 124, 214, 224 may invoke additional smart contracts (not shown), which may be created by the token issuer or an external party, to apply logic restricting transferability or apply controls on transferability for transfers between internal and external institutional token end-holders.
[0023]
[0040] The screening oracles 112, 122, 212, 222 may be data oracles that can interact with other data oracles (not shown), such as OFAC / approval list providers, that indicate whether a wallet or validated credential is approved. The screening oracles 112, 122, 212, and 222 may be on-chain smart contracts that can be updated with off-chain activity. The screening oracles 112, 122, 212, and 222 may maintain the same activity list as the off-chain screening list 160, 260.
[0024]
[0041] A "verifiable credential" is a digital identity tool that can be used to verify the identity of a party receiving a deposit token. As part of the transfer validation process, the deposit token smart contract (not shown) may interact with the VC registry smart contract 116, 126 to verify the transferability of the deposit token and / or the credentials of the entities involved in the transfer.
[0025]
[0042] VCs may also be used to provide specific certifications necessary to meet transaction control requirements, such as authorization screening status verification, know-your-customer (KYC) status, and the type of institution conducting the transaction.
[0026]
[0043] The VC registry smart contracts 116, 126 and screening oracles 112, 122, 212, 222 may be optional depending on the network type (e.g., public or private), the preferences of the deposit token issuer, etc.
[0027]
[0044] The external service 130 may provide an interface between the first public network 110 / second public network 120 and the deposit tokenization service 140. The external service 130 may provide a meta transaction relayer 132 and an external service node 134. The meta transaction relayer 132 may be a relayer that pays gas fees and issues transactions on behalf of a financial institution.
[0028]
[0045] The external service node 134 may enable a financial institution's distributed applications to connect to a node service provider to monitor contract activity on the first public network 110 and / or the second public network 120.
[0029]
[0046] The deposit token wallet 150, 250, which may be VC-enabled, may store the client's deposit tokens.
[0047] The deposit tokenization service 140, 240 may generate fiat tokens. The deposit tokenization service 140, 240 may further verify authorizations and other issues of the account or client involved using an authorization screening module 162, 262. The authorization screening module 162, 262 may verify accounts and clients based on screening lists 160, 260. The screening lists 160, 260 may be provided by one or more operating users.
[0030]
[0048] The client may interface with the deposit token wallet 150, 250 and the channel 164, 264. The channel 164, 264 may be an application programming interface (API), a web user interface (UI), an application, etc., a method by which the client may provide instructions, such as tokenization instructions, to the financial institution.
[0031]
[0049] A payment service 166, 266 may be a service provided by a financial institution. The payment service 166, 266 may provide payment orchestration and related processing services. For example, the payment service 166, 266 may perform controls such as authorization screening, fraud checks, and anti-money laundering.
[0032]
[0050] Liquidity and account services 168, 268 may provide core banking ledgers, liquidity reporting, and the like.
[0051] The core ledger 170, 270 may be an off-chain ledger provided by a financial institution. The core ledger 170, 270 may maintain an omnibus account 172, 272 that may be used as an account that may temporarily hold fiat currency during the tokenization and de-tokenization processes.
[0033]
[0052] The event store and reports 142, 242 may receive events from the deposit tokenization service 140, 240. The event store and reports 142, 242 may interface with other internal systems to obtain further information to meet reporting requirements. For example, they may obtain customer level information from static data references to meet end of day reporting requirements, such as total deposit token liabilities per customer, total liabilities of all types per customer, etc.
[0034]
[0053] The transaction store 144, 244 may track the total deposit tokens in circulation. The transaction store 144, 244 may also track the total token supply per blockchain address (e.g., client location).
[0035]
[0054] The deposit tokenization service 140, 240 may verify the total value in circulation before any new mint activity.
[0055] The reports and data feeds 146, 246 may receive transaction data from the transaction stores 144, 244 and provide reports / data feeds to external systems.
[0036]
[0056] As shown with reference to Figure 3, a method for deposit tokenization according to an embodiment is provided. In step 305, a client, or other authorized party, may issue instructions via existing channels regarding tokenization of a deposit from funds that have not been tokenized (e.g., obtained from a standard account).
[0037]
[0057] In step 310, the issuing bank's payment system may process the instruction by performing approval screening, postings generation, etc.
[0038]
[0058] In step 315, the tokenized funds may be deposited into an internal omnibus house account for deposit tokens ("omnibus account") that reflects the amount of the tokenized deposit liability. This deposit may trigger an event to the deposit tokenization service. The omnibus account may be used during the transition, and ultimately the balance may be recorded in the deposit token ledger rather than being stored in the omnibus account.
[0039]
[0059] In step 320, the deposit tokenization service may command the tokenization of the deposit token to an associated blockchain network, such as a private or public blockchain network.
[0040]
[0060] In step 325, the requested deposit token may be deposited into the designated recipient wallet address in the applicable blockchain network.
[0061] In step 330, the deposit tokenization service may update a transaction store with the transaction, and in step 335, the transaction store may update the total number of deposit tokens for the financial institution and provide reports to downstream systems. For example, the deposit tokenization service may maintain state (e.g., total token supply (per blockchain address) and token disposition) and provide state changes to downstream reporting systems.
[0041]
[0062] As shown with reference to FIG. 4A, according to an embodiment, a method for transferring deposit tokens on the same blockchain network is provided.
[0063] In step 405, a party may issue an instruction to transfer a deposit token from one wallet address holding the deposit token to another wallet address. The issuing party may optionally attach a verifiable credential (VC) to the request.
[0042]
[0064] In step 410, the deposit token smart contract may optionally validate the VC with the VC registry smart contract and may reject the request if this validation fails.
[0043]
[0065] In step 415, upon successful validation of the VC, the deposit token smart contract may optionally validate the sender and recipient wallet addresses with a screening oracle, which may further check the sender and recipient wallet addresses for approval.
[0044]
[0066] In step 420, upon successful verification of the sender and receiver wallet addresses, the transfer may be executed by the deposit token smart contract.
[0067] In step 425, the deposit tokenization service may receive the event for transfer, and in step 430, the event may be stored in an event store.
[0045]
[0068] In step 435, the deposit tokenization service may update the transaction store with the transaction, and in step 440, the transaction store may update the total number of deposit tokens for the financial institution and provide reports to downstream systems, such as FDIC Part 370 calculators, end-of-day anti-money laundering reports, and general ledger reports.
[0046]
[0069] As shown with reference to FIG. 4B, according to an embodiment, a method for transferring deposit tokens between blockchain networks is provided.
[0070] In step 450, the client may request that the deposit token service authorize the issuing bank to debit up to the authorized amount. The issuing bank may generate a certificate and return it to the customer. Optionally, the client may attach the bank-provided certificate and its verifiable credentials (VC) to the request. Alternatively, the deposit token smart contract may already recognize the bank as an authorized party to debit.
[0047]
[0071] In step 455, the deposit token smart contract may optionally validate the VC with the VC registry smart contract and may reject the request if this validation fails. The deposit token smart contract may optionally validate the issued certificate and may reject the request if this validation fails.
[0048]
[0072] In step 460, the client may instruct the financial institution to move a deposit balance from one network to another (e.g., from a first network to a second network), for example, by calling a deposit token API.
[0049]
[0073] The deposit tokenization service may validate the instruction in step 465. The issuer's payment system may process the instruction and implement it by performing authorization screening and other necessary validation.
[0050]
[0074] In step 470, if the verification is successful, the deposit tokenization service may instruct the deposit token smart contract on the first network to debit the wallet address from which the deposit token was sent and burn the amount.
[0051]
[0075] In step 475, the deposit token smart contract on the first network (the network from which the deposit token was sent) may debit the originating wallet address, burn the amount, and issue an event.
[0052]
[0076] At step 480, the deposit tokenization service receives the burn event, and the deposit tokenization service may instruct the tokenization of the deposit token to the associated receiving blockchain network (e.g., the second network). In one embodiment, the deposit tokenization service may invoke a deposit token smart contract on the receiving blockchain network to perform the tokenization.
[0053]
[0077] In step 485, on the applicable blockchain network (e.g., in this example, the second network), the recipient's wallet address may be credited with the requested deposit token. For example, a deposit token smart contract on the recipient's blockchain network may credit the recipient's wallet address with the deposit token.
[0054]
[0078] In step 490, the deposit tokenization service may store the event in an event store.
[0079] In step 495, the deposit tokenization service may update the transaction store with the transaction, which may update the total number of deposit tokens for the financial institution and provide reports to downstream systems.
[0055]
[0080] Referring to FIG. 5, according to an embodiment, a method for interest distribution of deposit tokens is provided.
[0081] In step 505, the core banking interest calculation system may periodically calculate interest on deposit tokens within the associated network and transfer the distributed interest amount from the deposit token issuer's funds to the omnibus account.
[0056]
[0082] In step 510, when funds are deposited into the omnibus account, an event may be triggered to the deposit tokenization service.
[0083] In step 515, the deposit tokenization service may instruct the distribution of interest to the deposit token smart contract on the associated network.
[0057]
[0084] In step 520, an equivalent amount of deposit tokens may be deposited into a wallet address on the associated network that holds the interest-earning deposit tokens.
[0085] As shown with reference to FIG. 6A, according to an embodiment, a method for direct redemption of a deposit token is provided.
[0058]
[0086] In step 605, a client of the deposit token issuing bank, or other authorized party, may issue a request ordering the redemption of the deposit token balance from an eligible digital wallet to a bank account on the blockchain network. The recipient wallet may be identified as a specific "burn account" defined by the deposit token issuer. The ordering party may optionally attach VC to the request.
[0059]
[0087] In step 610, the deposit token smart contract may optionally validate the VC with the VC registry and reject the request if this validation fails.
[0088] In step 615, if the VC is successfully verified, the deposit token smart contract may check whether the deposit is to a burn account.
[0060]
[0089] In step 620, the transfer may be executed by the deposit token smart contract and a burn event is issued by the smart contract.
[0090] In step 625, the deposit tokenization service may receive the burn event and trigger a client deposit process, which reduces the total number of tokens in circulation.
[0061]
[0091] In step 630, the deposit tokenization service may update the transaction store with the transaction, and in step 635, the transaction store may update the number of deposit tokens in circulation. The transaction store may perform reporting to downstream systems as needed.
[0062]
[0092] In step 640, existing systems may trigger a credit to the client's bank account.
[0093] In step 645, the issuer's core ledger may reflect the debit of the omnibus account and the credit of the client's bank account.
[0063]
[0094] As shown with reference to Figure 6B, according to an embodiment, a method is provided for indirect redemption of a deposit token, in which the holder of the deposit token is not a customer of the issuing bank.
[0064]
[0095] In step 655, the holder of the deposit token may issue a request to redeem the deposit token to a bank account at an authorized institution. In one embodiment, the holder may not be a customer of the deposit token-issuing bank. The request may be to redeem the deposit token balance from an eligible digital wallet on the blockchain network to the bank account.
[0065]
[0096] In step 660, the deposit token smart contract may optionally validate the VC with the VC registry and reject the request if this validation fails.
[0097] In step 665, the deposit token smart contract may execute the transfer to the authorized institution's redemption account.
[0066]
[0098] In step 670, the deposit tokenization service may receive the event information and update the transaction store with the transaction information. In step 675, the transaction store may update the client's location record and the number of deposit tokens in circulation. The transaction store may also perform reporting to downstream systems as needed.
[0067]
[0099] In step 680, once the deposit token is received, the authorized institution may hold the deposit token by transferring the deposit from the burn account to its blockchain address, or may redeem the deposit token directly using a process such as that shown in FIG. 6A.
[0068]
[0100] FIG. 7 illustrates an exemplary computing system for implementing aspects of the present disclosure. FIG. 7 illustrates an exemplary computing device 700. The computing device 700 may represent system components described herein. The computing device 700 may include a processor 705, which may be coupled to a memory 710. The memory 710 may include volatile memory. The processor 705 may execute computer-executable program code stored in the memory 710, such as a software program 715. The software program 715 may include one or more of the logical steps disclosed herein as program instructions that may be executed by the processor 705. The memory 710 may also include a data repository 720, which may be non-volatile memory, for data persistence. The processor 705 and the memory 710 may be coupled by a bus 730. The bus 730 may also be coupled to one or more network interface connectors 740, such as a wired network interface 742 or a wireless network interface 744. Computing device 700 may also have user interface components, such as a screen for displaying a graphical user interface and receiving input from a user, a mouse, a keyboard, and / or other input / output components (not shown).
[0069]
[0101] General aspects of implementation of the system and method of the embodiments are described below.
[0102] An embodiment of the system or portions of the system may take the form of a "processing machine," such as, for example, a general-purpose computer. As used herein, the term "processing machine" is understood to include at least one processor that uses at least one memory. The at least one memory stores a set of instructions. The instructions may be stored permanently or temporarily in a memory or memories of the processing machine. The processor executes the instructions stored in the memory or memories to process data. The set of instructions may include various instructions that perform a particular task or tasks, such as those described above. Such a series of instructions for performing a particular task may be characterized as a program, a software program, or simply software.
[0070]
[0103] In one embodiment, the processing machine may be a dedicated processor.
[0104] In one embodiment, the processing machine may be a cloud-based processing machine, a physical processing machine, or a combination thereof.
[0071]
[0105] As described above, a processing machine executes instructions stored in a memory or memories to process data, which may be, for example, in response to commands by one or more users of the processing machine, in response to a previous process, in response to a request by another processing machine, and / or in response to any other input.
[0072]
[0106] As mentioned above, the processing machine used to implement the embodiments may be a general-purpose computer. However, the processing machine described above may utilize any of a wide variety of other technologies, including special purpose computers, computer systems including, for example, microcomputers, minicomputers, or mainframes, programmed microprocessors, microcontrollers, peripheral integrated circuit elements, Customer Specific Integrated Circuits (CSICs) or Application Specific Integrated Circuits (ASICs) or other integrated circuits, logic circuits, digital signal processors, programmable logic devices such as Field-Programmable Gate Arrays (FPGAs), Programmable Logic Devices (PLDs), Programmable Logic Arrays (PLAs), or Programmable Array Logic (PALs), or any other device or arrangement of devices capable of performing the steps of the processes disclosed herein.
[0073]
[0107] The processing machine used to implement the embodiments may utilize a suitable operating system.
[0108] It is recognized that the processor and / or memory of a processing machine need not be physically located in the same geographic location to perform the methods of the embodiments described above. That is, each of the processors and memories used by a processing machine may be located in different geographic locations and may be communicatively connected in any appropriate manner. In addition, it is recognized that each of the processors and / or memories may be comprised of different physical devices. Thus, it is not necessary for the processor to be one device in one location and the memory to be another device in another location. That is, it is contemplated that the processor may be two devices in two different physical locations. The two different devices may be connected in any appropriate manner. In addition, the memory may include two or more memory portions in two or more physical locations.
[0074]
[0109] To further illustrate, the processes described above are performed by various components and various memories. However, it will be appreciated that, according to further embodiments, the processes performed by two different components as described above may be performed by a single component. Furthermore, the processes performed by one different component as described above may be performed by two different components.
[0075]
[0110] Similarly, the memory storage performed by two different memory portions as described above may, according to further embodiments, be performed by a single memory portion. Furthermore, the memory storage performed by one different memory portion as described above may be performed by two memory portions.
[0076]
[0111] Additionally, various technologies may be used to provide communication between the various processors and / or memories, as well as to enable the processors and / or memories to communicate with any other entity, e.g., to obtain additional instructions or to access and use a remote memory store. Such technologies used to provide such communication may include, for example, a network, the Internet, an intranet, an extranet, a LAN, Ethernet, wireless communication via cell tower or satellite, or any client-server system that provides communication. Such communication technologies may use any suitable protocol, such as, for example, TCP / IP, UDP, OSI, etc.
[0077]
[0112] As described above, a set of instructions may be used in the processing of the embodiments. The set of instructions may take the form of a program or software. The software may take the form of, for example, system software or application software. The software may also take the form of, for example, a collection of separate programs, a program module within a larger program, or a portion of a program module. The software used may also include modular programming in the form of object-oriented programming. The software tells the processing machine how to handle the data being processed.
[0078]
[0113] It will be further recognized that the instructions or sets of instructions used in the implementation and operation of the embodiments may be in any suitable form that allows a processing machine to read the instructions. For example, the instructions forming a program may be in the form of a suitable programming language and converted into machine language or object code so that a processor or group of processors can read the instructions. That is, lines of programming code or source code written in a particular programming language are converted into machine language using a compiler, assembler, or interpreter. Machine language is binary-coded machine instructions that are specific to a particular type of processing machine, i.e., a particular type of computer. Computers understand machine language.
[0079]
[0114] Any suitable programming language may be used, depending on various embodiments. Also, the instructions and / or data used in practicing the embodiments may utilize any compression or encryption technique or algorithm, as appropriate. An encryption module may be used to encrypt data. Furthermore, files or other data may be decrypted, for example, using an appropriate decryption module.
[0080]
[0115] As described above, embodiments may illustratively be embodied in the form of a processing machine, including, for example, a computer or computer system including at least one memory. It will be recognized that the set of instructions, i.e., software, that enables the computer's operating system to perform the operations described above may be included in any of a wide variety of media or media, as appropriate. Furthermore, data processed by the set of instructions may also be included in any of a wide variety of media or media. That is, the particular medium utilized to hold the set of instructions and / or data used in the embodiments, i.e., the memory within the processing machine, may take any of a variety of physical forms or transmissions. Illustratively, the medium may take the form of a compact disc, DVD, integrated circuit, hard disk, floppy disk, optical disk, magnetic tape, RAM, ROM, PROM, EPROM, wire, cable, fiber, communication channel, satellite transmission, memory card, SIM card, or other remote transmission, and any other medium or source of data that can be read by a processor.
[0081]
[0116] Furthermore, the memory or memories used in a processing machine implementing an embodiment may be in any of a wide variety of forms, such that the memory can hold instructions, data, or other information, as appropriate. Thus, the memory may be in the form of a database for holding data. The database may use any desired file arrangement, such as, for example, a flat file arrangement or a relational database arrangement.
[0082]
[0117] The systems and methods may utilize various "user interfaces" to allow a user to interface with a processing machine or machines used to implement embodiments. As used herein, a user interface includes any hardware, software, or combination of hardware and software used by a processing machine that allows a user to interact with the processing machine. A user interface may be in the form of, for example, a dialog screen. A user interface may also include a mouse, touch screen, keyboard, keypad, voice reader, voice recognizer, dialog screen, menu box, list, check box, toggle switch, push button, or any other device that allows a user to receive information about the operation of a processing machine as the processing machine processes a set of instructions and / or provides information to the processing machine. Thus, a user interface is any device that provides communication between a user and a processing machine. Information provided by a user to a processing machine through a user interface may be in the form of, for example, commands, data selections, or some other input.
[0083]
[0118] As discussed above, a user interface is utilized by a processing machine that executes a sequence of instructions to enable the processing machine to process data for a user. A user interface is typically used by a processing machine to interact with a user and transmit and receive information from the user. However, it should be recognized that, according to some embodiments of the systems and methods, a human user need not actually interact with the user interface utilized by the processing machine. Rather, it is contemplated that the user interface may interact, i.e., transmit and receive information, with another processing machine rather than a human user. Thus, the other processing machine may be characterized as a user. Furthermore, it is contemplated that the user interface utilized in the systems and methods may interact partially with another processing machine or multiple processing machines, and simultaneously interact partially with a human user. Those skilled in the art will readily appreciate that the embodiments are susceptible to broad utility and applicability. Many embodiments and adaptations of the invention other than those described herein, as well as many variations, modifications, and equivalent arrangements, will be apparent or reasonably suggested from the foregoing description without departing from the substance or scope. Thus, while embodiments of the invention have been described in detail herein with reference to exemplary embodiments thereof, it should be understood that this disclosure is merely illustrative and exemplary of the invention, and is made to provide a useful disclosure of the invention. Thus, the foregoing disclosure is not intended to be construed as limiting the invention or to exclude any other such embodiments, adaptations, variations, modifications, or equivalent arrangements.
Claims
1. 1. A method for deposit tokenization, comprising: receiving, by a deposit tokenization service for a token issuer, from an authorized party, an instruction to tokenize the untokenized amount of funds in the deposit account; verifying, by the deposit tokenization service, the identity of the authorized party using verifiable credentials; screening, by the deposit tokenization service, the deposit account and / or the verifiable credential information using an information oracle; debiting the amount from the deposit account and crediting the amount to an omnibus account by the deposit tokenization service; tokenizing, by the deposit tokenization service, the untokenized amount of funds on a blockchain network as deposit tokens; depositing the deposit tokens to a wallet address on the blockchain network by the deposit tokenization service; A method comprising:
2. The method of claim 1 , wherein the screening step comprises admission screening.
3. 10. The method of claim 1, further comprising updating, by the deposit tokenization service, a transaction store with the amount of the deposit token, wherein the transaction store updates a total number of deposit tokens for the token issuer.
4. The method of claim 1 , wherein the blockchain network comprises a public blockchain network.
5. The method of claim 1 , wherein the blockchain network comprises a private blockchain network.
6. The method of claim 1 , wherein the verifiable credential proves the identity of the authorized party.
7. 1. A method for transferring a deposit token, comprising: receiving instructions from a holder of the deposit token or an authorized party to transfer, by the token issuer, an amount of the deposit token from the first wallet address to a second wallet address; verifying the identity of the holder or authorized party using a verifiable credential; screening the first wallet address, the second wallet address, and / or the verifiable credential information using an information oracle; transferring the amount of the deposit token from the first wallet address to the second wallet address; storing a transfer event for the transfer in an event store; A method comprising:
8. The method of claim 7 , wherein the screening step comprises approval screening.
9. 8. The method of claim 7, wherein the first wallet address and the second wallet address are on the same blockchain network.
10. 10. The method of claim 9, wherein the blockchain network is a public blockchain network.
11. 10. The method of claim 9, wherein the blockchain network is a private blockchain network.
12. the first wallet address and the second wallet address are on different blockchain networks, and the method further comprises: triggering a burn event of the amount of the deposit tokens in the first wallet address; crediting the amount of the deposit tokens burned from the first wallet address to the second wallet address; updating a transaction store with the deposit token, the transaction store updating the total number of deposit tokens for the token issuer; The method of claim 7 further comprising:
13. 13. The method of claim 12, wherein the first wallet address and the second wallet address are on different public blockchain networks.
14. 13. The method of claim 12, wherein the first wallet address is on a public blockchain network and the second wallet address is on a private blockchain network, or the first wallet address is on the private blockchain network and the second wallet address is on the public blockchain network.
15. The method of claim 7 , wherein the verifiable credential proves the identity of the authorized party.
16. 1. A method for redemption of deposit tokens, comprising: receiving a request from a holder of the deposit token or an authorized party instructing redemption of the amount of the deposit token from a wallet address on the blockchain network to a bank account; identifying the holder's account as a burn account; verifying the identity of the holder or authorized party using a verifiable credential; using an information oracle to perform screening on the wallet address, the bank account, and / or the verifiable credentials from which deposit tokens originate; transferring the amount of the deposit token to the holder's account; triggering a burn event in said holder's account; executing the incineration event; crediting said bank account with the amount of said deposit token by debiting an omnibus account and crediting said bank account; A method comprising:
17. The method of claim 16 , wherein the screening step comprises approval screening.
18. 17. The method of claim 16, further comprising updating a transaction store with the amount of the deposit token, wherein the transaction store updates a total number of deposit tokens for a deposit token issuer.
19. 17. The method of claim 16, wherein the blockchain network comprises a public blockchain network or a private blockchain network.
20. The method of claim 16 , wherein the verifiable credential proves the identity of the holder or the authorized party.