Blockchain Digital Cryptocurrency Loan System

20230025000 · 2023-01-26

    Inventors

    Cpc classification

    International classification

    Abstract

    A cryptographic blockchain computer network digital cryptocurrency loan system that rewards both the loan holder and the loan paying network users with system utility fund tokens for each loan payment made. System utility fund tokens entitle the system users to receive dividend distributions of passive income from a system digital cryptocurrency investment fund.

    Claims

    1. A blockchain digital cryptocurrency loan system comprising; A system node comprising a computer processor electronically connected to a computer-readable system storage medium and to a network communications port; a node daemon in said system storage medium having one or more operating instructions for said system node to electronically communicate P2P using said network communications port with one or more network user nodes; a system digital wallet DW.sub.SYS in said system storage medium; an investment fund digital wallet DW.sub.IF in said system storage medium; a fund token digital wallet DW.sub.FT in said system storage medium; a loans database in said system storage medium; a blockchain data file in said system storage medium; an executable loans application in said system storage medium comprising; (i) at least one operating instruction to cryptographically record to said blockchain data file a loan assignment of digital cryptocurrency in a loan amount from a lender digital wallet DW.sub.L to a borrower digital wallet DW.sub.B; (ii) at least one operating instruction to create a record in said loans database of said loan assignment which includes a loan ID field, a loan holder ID field, a borrower ID field and a loan balance field; (iii) at least one operating instruction to receive a loan payment request from a payor digital wallet DW.sub.P, said loan payment request including data for a loan ID value and a loan payment amount value; (iv) at least one operating instruction to locate a loan record in the loans database that has a loan ID field value that equals the loan ID value of the loan payment request and that has a loan balance field value greater than zero, or else returning an error message; (v) at least one operating instruction to determine a payment division of the loan payment amount value between DW.sub.SYS, DW.sub.IF, and the loan holder digital wallet DW.sub.LH of the loan holder ID field of the loan record; (vi) at least one operating instruction to cryptographically record to the blockchain data file a loan payment assignment of digital cryptocurrency in the loan payment amount value from DW.sub.P to DW.sub.SYS, DW.sub.IF and DW.sub.LH in accordance with the determined payment division; (vii) at least one operating instruction to reduce the loan balance field value of the loan record by the loan payment amount; (viii) at least one operating instruction to cryptographically record to the blockchain data file a transfer amount of fund tokens from DW.sub.FT to both DW.sub.P and DW.sub.LH; and (ix) at least one operating instruction to cryptographically record to the blockchain data file at a predetermined time an assignment of a digital cryptocurrency dividend distribution from DW.sub.IF to every digital wallet having a fund token balance greater than zero.

    2. The blockchain digital cryptocurrency loan system where: (i) said loans database also includes an agent field and a commission field; (ii) said at least one operating instruction to determine a payment division determines a division of the loan payment amount value between DW.sub.SYS, DW.sub.IF, the loan holder digital wallet DW.sub.LH of the loan holder ID field of the loan record, and an agent digital wallet DW.sub.A of the agent ID field of the loan record in accordance with the value of the commission field value of the loan record; and (iii) said at least one operating instruction to cryptographically record to the blockchain data file a loan payment assignment of digital cryptocurrency in the loan payment amount value is from DW.sub.P to DW.sub.SYS, DW.sub.IF, DW.sub.LH and DW.sub.A in accordance with the determined payment division;

    3. The blockchain digital cryptocurrency loan system of claim 1 where the digital cryptocurrency dividend distribution from DW.sub.IF to a particular network user with a digital wallet DW.sub.USER will equal a percentage of a determined dividend amount that equals the percentage of circulating fund tokens assigned to DW.sub.USER.

    4. The blockchain digital cryptocurrency loan system of claim 1 where the transfer amount of fund tokens from DW.sub.FT to both DW.sub.P and DW.sub.LH is equal in amount to the loan payment amount.

    5. The blockchain digital cryptocurrency loan system of claim 1 where the lending application further comprises: (i) at least one operating instruction to confirm a request for a digital cryptocurrency transfer from DW.sub.IF to a token exchange for an acquisition amount of investment token; (ii) at least one operating instruction to cryptographically record to the blockchain data file an acquisition transaction comprising a digital cryptocurrency acquisition assignment from DW.sub.IF to a token exchange and a return assignment from the token exchange to DW.sub.IF of an acquisition amount of investment token; (iii) at least one operating instruction to create a record of the acquisition transaction in an investment data object of the loans database, including setting an amount field value to the acquisition amount, a maturity field value to a datetime after which the acquisition amount of investment token may be redeemed, and a redemption status field value to “no”;

    6. The blockchain digital cryptocurrency loan system of claim 1 where the lending application further comprises: (i) at least one operating instruction to confirm the elapse of an investment token redemption period; (ii) at least one operating instruction to confirm that an investment data object in the loans database has a record of an acquisition transaction of investment token that has a maturity field datetime value that has passed, and also has a redemption status field value of “no”; (iii) at least one operating instruction to determine from the loans database a total amount of mature and unredeemed investment token IT.sub.MUR-TOTAL assigned to DW.sub.IF; (iv) at least one operating instruction to cryptographically record to the blockchain data file a redemption transaction comprising an assignment from DW.sub.IF to the token exchange of an IT.sub.MUR-TOTAL amount of investment token and an assignment from the token exchange to DW.sub.IF of an equivalent value amount of digital cryptocurrency; (v) at least one operating instruction to adjust the redemption status field value to “yes” for a record in investment data object; and (vi) at least one operating instruction to reset the investment token redemption period.

    7. The blockchain network lending system of claim 1 where said digital cryptocurrency is EOS.

    8. The blockchain network lending system of claim 5 where said digital cryptocurrency is EOS, said token exchange is REX, and said investment token is T-REX.

    9. The blockchain network lending system of claim 6 where said digital cryptocurrency is EOS, said token exchange is REX, and said investment token is T-REX.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0029] FIG. 1 is a schematic representation of a P2P computer network for using the blockchain loan system of the disclosed invention.

    [0030] FIG. 2 is a schematic representation of a node of the peer-to-peer computer network of for implementing the blockchain loan system invention.

    [0031] FIG. 3 is a schematic representation of the internal RAM memory a node of the peer-to-peer computer network used for the blockchain loan system invention.

    [0032] FIG. 4 is a schematic representation of a blockchain data file of the type used in the blockchain loan system invention.

    [0033] FIG. 5 is a schematic representation of a decentralized software application comprised of “smart contract” code modules for the blockchain loan system invention.

    [0034] FIG. 6 is a schematic representation of a loan database for a preferred EOS Mainnet embodiment of the blockchain loan system invention.

    [0035] FIG. 7 is a flow chart of the steps with the blockchain loan system invention for recording a new DC loan transaction.

    [0036] FIG. 8 is a flow chart of the steps with the blockchain loan system invention for recording a new DC loan payment transaction.

    [0037] FIG. 9 is a flow chart of the steps with the blockchain loan system invention for assigning fund tokens to the digital wallets of a loan holder and payor.

    [0038] FIG. 10 is a flow chart of the steps with the blockchain loan system invention for investing and redeeming DC EOS with the system investment fund digital wallet.

    [0039] FIG. 11 is a flow chart of the steps with the blockchain loan system invention for paying a DC dividend with the system investment fund digital wallet to system user digital wallets that have a balance of system fund tokens.

    [0040] FIG. 12 is a schematic representation of the blockchain loan system invention where DW.sub.LH is the original lender and DW.sub.P is the original borrower.

    BEST MODE FOR CARRYING OUT THE INVENTION

    [0041] The Blockchain Lending System Invention Architecture:

    [0042] FIG. 1 is a schematic representation of the P2P blockchain network DC loan creation and payment system 10 of the present invention. Referring to FIG. 2, in the system of the present invention there is a P2P blockchain computer network 20 that is physically comprised of a plurality of computing system network nodes 30 which can communicate directly with each other over an electronic communications network, such as for example the Internet. Referring to FIG. 3 each network node 30 has a computer processor 31, RAM storage memory 32, and a network communications port 33. Each node may also have persistent memory storage 34, a touch panel input mechanism 35, a keyboard input mechanism 36, a radio communications module 37 (e.g. for Wi-Fi network connection), and an output display mechanism 38 (e.g. an LCD display). Each node 30 connected to network 20 is a “peer” in the network meaning that each node 30 can communicate directly with each other node 30 on network 20 without the need for an intermediate central file server. In other words, each node 30 on network 20 can act as both a file server and a client on the network.

    [0043] Referring to FIG. 3, each peer node 30 on the blockchain P2P network 20 has present in node 30 RAM memory 32 for execution by node processor 31 a software node daemon 50 which is a protocol for P2P blockchain network 20. Node daemon 50 comprises one or more executable computer code files that contain operating instructions to facilitate the connection and participation by node 30 on the blockchain P2P network 20. An administrative node 30 of the system of the present invention may also contain in node memory 32 a loan database 60 which stores data related to the operation and loans of the system of the present invention. Each node 30 of the blockchain P2P blockchain network 20 also contains in node memory 32 a copy of blockchain data file 40.

    [0044] Referring to FIG. 3 each node 30 of the blockchain P2P blockchain network 20 contains in node memory 32 a copy of a blockchain data file 40. FIG. 4 shows blockchain data file 40 as being comprised of cryptographic data blocks 41. Each block 41 contains a cryptographically hashed data set of information and transactions for the blockchain P2P network 20. Each block 41 after the first block (i.e. “genesis block”) is linked via a pointer back to the block 41 produced before it. Thus, a plurality of blocks 41 are linked together in sequence to form a “chain” of blocks (i.e. a “blockchain”) which will contain all of the transactions for the blockchain P2P network 20. Each new block 41 is produced by a block producing node 30. In the exemplary preferred DPoS EOS P2P public blockchain embodiment of the present invention only elected block producing nodes 30 are allowed to produce blocks. Each elected block producing node 30 takes a turn at being the currently assigned block producing node 30. Each currently assigned block producing node 30 produces blocks for its turn which is a set interval (e.g. presently on the EOS Mainnet a currently assigned block producing turn has an interval of 12 blocks produced which under the current EOS Mainnet protocol takes six seconds). Each new block 41 is published on the blockchain P2P network 20 by the currently assigned block producing node 30 and is added by each node 30 of the P2P blockchain network 20 to its stored copy of the blockchain data file 40. Thus, all nodes 30 in the blockchain network will have a copy of the same blockchain data file 40.

    [0045] Every user of a P2P blockchain network 20 must have a digital wallet (“DW”) to enable the user to conduct transactions on P2P blockchain network 20. A DW stores the unique public and private cryptographic keys that are necessary to interface with P2P blockchain network 20, to conduct transactions, and to check the user balances of DC and other cryptographic tokens (e.g. the FT used in the present invention) on the P2P blockchain network 20. In a preferred embodiment a user of the system utilizes a DW to participate in the system.

    [0046] In a preferred exemplary embodiment of the system of the present invention the blockchain P2P network 20 is an EOSIO P2P blockchain network comprised of a plurality of nodes 30 where the node daemon 50 includes the core service daemon nodeos. Nodeos is a part of the free open-source EOSIO software suite that is produced by the company Block.one. The nodeos service daemon 50 runs on every node 30 of the EOSIO P2P blockchain network 20 as it contains the P2P protocol needed for nodes 30 to communicate with another. The nodeos service daemon also is configured to process smart contracts, validate transactions, produce blocks containing valid transactions, and add blocks 41 to the blockchain data file 40 of EOSIO P2P blockchain network 20. Each EOSIO P2P blockchain network 20 user of the system of the present invention will have a DW capable of interfacing with the EOSIO P2P blockchain network 20 to conduct transactions in DC EOS and the system FT tokens.

    [0047] The Loans Database

    [0048] Referring to FIG. 6 in the exemplary preferred EOSIO P2P blockchain network 200 there is a loans database 60 for storing data of the loan creation and payment system. In some embodiments the transaction data of loans database 60 may be stored as part of the EOS blockchain data file 40 itself. However, for reasons of economy, loans database 60 may be stored off of the blockchain data file 40 in the memory of a system administrator node 30. By way of example and not limitation loans database 60 may be a Mongodb database that is stored in the RAM or persistent storage of one or more administrator nodes 30 which will be accessed and updated. through Demux effects and updaters when P2P blockchain network 20 events related to the dApp of the system are being read or executed. Examples of data storage solutions for loans database 60 may also include, by way of example and not limitation, the use of the InterPlanetary File System (IPFS) protocol, vRAM, or DISK.

    [0049] Referring to FIG. 6 loans database 60 comprises a plurality of instances of data objects (i.e. data structures), each of which is comprised of individual record structures having one or more fields for holding values. In the exemplary EOSIO P2P blockchain network 20 each individual data object may, for example, be declared and instantiated by the EOSIO dApp of the system as a Multi-Index Table. In the illustrated exemplary embodiment loans database 60 comprises an instance of a loans data object 62, fund token data object 64, and DC investment data object 66.

    [0050] The Loans Data Object 62

    [0051] Referring to FIG. 6 there is shown a loans data object 62 that contains the records for all loans created with the system of the present invention. There is one record for each loan created. Each record of loans data object 62 has a structure with field values describing the particular loan and its terms.

    [0052] For each loan record there is contemplated to be a loan ID field with a unique identifier for the loan, a timestamp field that stores a datetime value for the loan creation, and a DC loan balance field that stores a value for the amount in DC of the loan balance that remains outstanding. At loan creation the DC loan balance field holds a value for the full DC amount of the loan. As DC loan payments are made towards the loan the DC loan balance field value will be reduced by the amount of the DC loan payments.

    [0053] For each loan record there is also contemplated to be a loan holder DW ID field that stores the identifier for the DW of the network user that currently holds the loan (hereinafter “DW.sub.LH”). In the system of the present invention DW.sub.LH of a loan record is the DW that is entitled to receive the proceeds from DC payments made to that DC loan. The DW.sub.LH field value of a loan record may be the DW value for the original lender but may also be the DW value of different network user who acquired the loan and its rights to repayment by assignment. Any such assignment of a loan between network users would be processed through a call to the system dApp which would update the loan holder DW ID field value in the loan data object 62 for the loan record with the new DW.sub.LH value.

    [0054] For each loan record there is also contemplated to be a borrower DW ID field that stores the identifier for the DW of the network user that currently owes the loan (hereinafter “DW.sub.B”). In the system of the present invention DW.sub.B of a loan record is the DW that is obligated to repay the outstanding balance of the DC loan. The DW.sub.B field value of a loan record may be the DW value for the original borrower but may also be the DW value of different network user who assumed the loan obligation by assignment. Any such assignment of a loan obligation between network users would be processed through a call to the system dApp which would update the borrower DW ID field value in the loan data object 62 for the loan record with the new DW.sub.B value.

    [0055] For each loan record there is also contemplated to be an agent DW ID field that stores the identifier for the DW of the network user, if any, that is an agent (hereinafter “DW.sub.A”) for the loan. Such an agent may be an employee of a lender or may be an independent broker for the lender. There may be an arrangement between a lender and agent where DW.sub.A would be entitled to receive DC proceeds from any loan payments towards the loan balance in accordance with a commission value stored in an agent commission field of the loan record in loan data object 62.

    [0056] For each loan record there is also contemplated to be an administrator fee field that stores a value (e.g. a percentage) for the administrator fee to be transferred from DC proceeds on a loan payment to the DW of the administrator of the system of the present invention (hereinafter “DW.sub.SYS”). There are contemplated to be expenses associated with establishing, running and maintaining the system of the present invention on any P2P blockchain network and the administrator fee is intended to cover and compensate for the network user who incurs such expenses.

    [0057] In the illustrated exemplary embodiment of the invention there is no interest expense associated with loans created and repaid through the system, and no minimum payments or repayment schedule. The economic incentive for both the loan holders and payors of the loan in the illustrated embodiment is the potential DC financial rewards associated with participation in the DC investment fund of the system. However, the system of the present invention could also be implemented with interest bearing loans, minimum payment requirements, payment schedules and any other loan terms or conditions. In such embodiments it is contemplated that each loan record of loan data object 62 would include fields for storing values related to these other loan terms and conditions.

    [0058] The Fund Token Data Object 64

    [0059] Referring to FIG. 6 there is shown a fund token data object 64 that contains records of the FT transactions for each digital wallet that has received FT. Each FT record of the FT data object 64 has a transaction ID field that holds a unique value for the record. There is also DW ID field that stores a value for the DW assignor or assignee of FT for the transaction. There is an FT amount field that stores the value of FT assigned or received. Upon system deployment a digital wallet for FT (hereinafter “DW.sub.FT”) is created by smart contract DCFUNDTOKEN and assigned a genesis balance of FT (hereinafter “FT.sub.GEN”). The value for FT.sub.GEN of a contemplated preferred embodiment is one billion (1×10.sup.9) FT, but FT.sub.GEN can be set to any value chosen by the system administrator.

    [0060] The DC Investment Data Object 66

    [0061] Referring to FIG. 6 there is shown a DC investment data object 66 that contains a record for each transaction of DC or other cryptographic investment token (hereinafter “IT”) of the system investment fund digital wallet DW (hereinafter “DW.sub.IF”). Each record of the DC investment data object 66 has a transaction ID field that holds a unique value for the record. There is also a timestamp field that stores a datetime value for the DW.sub.IF transaction.

    [0062] There is a category field that stores a value for the category of the DW.sub.IF transaction. Contemplated categories include capital contribution (a loan payment portion DC addition to DW.sub.IF), investment (a payment from DW.sub.IF to an investment vehicle such as REX), earnings (an addition to DW.sub.IF received from a transaction with an investment vehicle such as REX), and dividend (a subtraction of DC paid as a dividend distribution from DW.sub.IF to a DW.sub.USER of record in fund token data object 64 having an FT balance).

    [0063] There is a token field that stores a value for the type of cryptographic token of in the DW.sub.IF transaction (e.g. EOS or T-REX). There is a token amount field that stores a value for the transaction amount of token. There is a maturity field which stores a datetime value, as applicable, for when the token of the transaction (e.g. T-REX) is first eligible for redemption of sale. There is a redemption status field which stores a value (i.e. “yes” or “no”), as applicable, indicating whether the token of the transaction has been redeemed or sold.

    [0064] The Blockchain Lending System Software

    [0065] Referring to FIG. 5 it is shown that dApp DCMICROLOAN 70 for the lending system is comprised of one or more code modules that are executable by nodes 30 of P2P blockchain network 20. In the exemplary illustrated embodiment of the present invention the dApp DCMICROLOAN 70 and is built for deployment and execution on EOSIO P2P public blockchain network 20.

    [0066] DApp DCMICROLOAN 70 of the preferred EOSIO P2P public blockchain network embodiment is comprised of a plurality of WebAssembly (hereinafter “Wasm”) code files. The Wasm code files that make up the dApp DCMICROLOAN 70 are DCLOAN 71, DCLOANPAY 72, FUNDTOKENS 73, DCINVEST 74, and DCDIVIDEND 75. It should be noted that these code modules are shown by way of example and not limitation, and that fewer or more code modules, differently named, may also be used. In the preferred embodiment the Wasm code modules are built from source code files that have preferably been authored in the computer language C++ with the EOSIO Contract Development Toolkit. Each code module that makes up dApp DCMICROLOAN 70 is generally referred to as a “smart contract”.

    [0067] DCLOAN 71

    [0068] Referring to FIG. 7 the steps performed by system to create a new DC loan with execution of smart contract DCLOAN are shown. Smart contract DCLOAN is deployed and resides in the blockchain data file 40 stored in the memory of nodes 30 of the P2P blockchain network 20. Operating instructions 80 of DCLOAN will be executed by a node 30 of the P2P blockchain network 20 to create a new loan.

    [0069] DCLOAN has one or more operating instructions 81 to receive a request to create a new loan on certain terms (e.g. amount, term, interest, etc . . . ) from a network user lender having a digital wallet DW.sub.L to a network user borrower having a digital wallet DW.sub.B. The one or more operating instructions 81 in DCLOAN will be executed by a node 30 of the P2P blockchain network 20 to receive a request to create a loan from DW.sub.L to DW.sub.B with the communicated terms.

    [0070] DCLOAN has one or more operating instructions 82 to confirm that DW.sub.L has a sufficient balance of DC to cover the new loan, or else return a message to DW.sub.L and DW.sub.B declining the transaction to create a new loan. The one or more operating instructions 82 in DCLOAN will be executed by a node 30 of the P2P blockchain network 20 to confirm that DW.sub.L has a sufficient balance of DC to cover the new loan, or else return a message to DW.sub.L and DW.sub.B declining the transaction to create a new loan.

    [0071] DCLOAN has one or more operating instructions 83 to communicate the loan terms to DW.sub.B and confirm acceptance by DW.sub.B of the loan terms, or else return a message to DW.sub.L and DW.sub.B declining the transaction to create a new loan. The one or more operating instructions 82 in DCLOAN will be executed by a node 30 of the P2P blockchain network 20 to confirm acceptance by DW.sub.B of the loan terms, or else return a message to DW.sub.L and DW.sub.B declining the transaction to create a new loan.

    [0072] DCLOAN also contains one or more operating instructions 84 for creating and populating the fields of a new loan record in loan data object 62 with the new loan information. The one or more operating instructions 84 will be executed by a node 30 of the P2P blockchain network 20 to create a new loan record in loan data object 62 and populate the record fields with the new loan information. The transaction updating the state of loan data object 62 (i.e. updated data set with the new loan record) that results from execution of operating instructions 84 will be included in the next cryptographic block 41 that produced for publication and addition to the blockchain 40.

    [0073] DCLOAN also contains one or more operating instructions 85 for recording the loan transaction on blockchain 40 including the transfer of a loan amount of DC from the DC balance of DW.sub.L to the DC balance of DW.sub.B. The one or more operating instructions 85 will be executed by a node 30 of the P2P blockchain network 20 to record the loan transaction on blockchain 40 including the transfer of a loan amount of DC from the DC balance of DW.sub.L to the DC balance of DW.sub.B.

    [0074] DCLOANPAY 72

    [0075] FIG. 8 shows the steps 90 performed by the system for processing a loan payment from a network user payor WEB3 digital wallet (hereinafter “DW.sub.P”) to a network user WEB3 digital wallet of the record loan holder (hereinafter “DW.sub.LH”) to reduce the outstanding loan balance field value for a loan record in loans data object 62. DCLOANPAY is deployed and resides in the blockchain data file 40 stored in the memory of nodes 30 of the P2P blockchain network 20.

    [0076] DCLOANPAY contains one or more operating instructions 91 for receiving a loan payment request from DW.sub.P. The received loan payment request must communicate data to DCLOANPAY which includes a loan ID and a DC payment amount. The one or more operating instructions 91 will be executed by a node 30 of the P2P blockchain network 20 to receive from DW.sub.P a loan payment request that communicates data to DCLOANPAY which includes a loan ID and a DC payment amount.

    [0077] DCLOANPAY also contains one or more operating instructions 92 for confirming the existence in loans data object 62 of a record with a loan ID field value matching the loan ID communicated by DW.sub.P and which has a loan balance field value greater than zero but less than or equal to the DC payment amount communicated by DW.sub.P, or else return an error message to DW.sub.P declining the transaction. The one or more operating instructions 92 will be executed by the a node 30 of the P2P blockchain network 20 to confirm the existence in loans data object 62 of a record with a loan ID field value matching the loan ID communicated by DW.sub.P and which has a loan balance field value greater than zero but less than or equal to the DC payment amount communicated by DW.sub.P, or else return an error message to DW.sub.P declining the transaction.

    [0078] DCLOANPAY also contains one or more operating instructions 93 for confirming that DW.sub.P has a sufficient balance of DC to cover the DC loan payment amount, or else return an error message declining the transaction. The one or more operating instructions 93 will be executed by a node 30 of the P2P blockchain network 20 to confirm that DW.sub.P has a sufficient balance of DC to cover the DC loan payment amount, or else return an error message declining the transaction.

    [0079] DCLOANPAY also contains one or more operating instructions 94 for determining a payment division of the DC loan payment amount from DW.sub.P between DW.sub.SYS, DW.sub.I, and DW.sub.LH and DW.sub.A (if any) identified in the confirmed loan record. The one or more operating instructions 94 will be executed by a node 30 of the P2P blockchain network 20 to determine a payment division of the DC loan payment amount between DW.sub.SYS, DW.sub.I, and DW.sub.LH and DW.sub.A (if any) identified in the confirmed loan record. In a preferred exemplary embodiment, the payment division comprises individual loan payment portions (hereinafter “LPP”):


    LPPD.sub.DWsys=0.5%*DC Loan Payment Amount


    LPP.sub.DWi=0.5%*DC Loan Payment Amount


    LPP.sub.DWa=Commission Field Value*DC Loan Payment Amount


    LPP.sub.DWlh=DC Loan Payment Amount−LPP.sub.DWsys−LPP.sub.Dwi−LPP.sub.Dwa


    LPP.sub.DWsys+LPP.sub.DWi+LPP.sub.DWa+LPP.sub.DWlh=DC Loan Payment Amount

    [0080] Thus, the payment division determined for the DC loan payment amount is comprised of (1) LPP.sub.DWsys which is the determined loan payment portion of the DC loan payment amount that will be transferred from DW.sub.P to DW.sub.SYS; (2) LPPD.sub.Wi which is the determined loan payment portion of the DC loan payment amount that will be transferred from DW.sub.P to DW.sub.i; (3) LPP.sub.DWa which is the determined loan payment portion of the DC loan payment amount that will be transferred from DW.sub.P to the DW.sub.A value of the agent ID field for the confirmed loan record and is calculated from the commission field value of the confirmed loan record; and LPP.sub.DWlh is the determined loan payment portion of the DC loan payment amount that will be transferred from DW.sub.P to the DW.sub.LH value of the loan holder ID field for the loan record.

    [0081] DCLOANPAY also contains one or more operating instructions 95 for reducing the value of the loan balance field for the confirmed loan record in loan data object 62 by the DC loan payment amount from DW.sub.P. The one or more operating instructions 95 will be executed by a node 30 of the P2P blockchain network 20 to reduce the value of the loan balance field for the confirmed loan record in loan data object 62 by the DC loan payment amount from DW.sub.P. The updated state (i.e. a data set with new loan balance field value for the confirmed loan record) of loan data object 62 resulting from execution of operating instructions 95 will be included by a block producing node 30 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0082] DCLOANPAY also contains one or more operating instructions 96 for communicating to smart contract FUNDTOKENS, with each successfully processed DC loan payment request, a request to distribute system FT. The communicated request must contain data that includes the DC payment amount, DW.sub.P and DW.sub.LH. The one or more operating instructions 96 will be executed by a node 30 of the P2P blockchain network 20 to communicate to smart contract FUNDTOKENS a request to distribute FT. The communicated request contains data the includes the DC payment amount, DW.sub.P and DW.sub.LH.

    [0083] DCLOANPAY also contains one or more operating instructions 97 for recording a transaction of the divisional transfer from DW.sub.P of the DC loan payment amount on blockchain 40 for (1) the transfer from DW.sub.P of the determined LPP.sub.DWsys to DW.sub.SYS; (2) the transfer from DW.sub.P of the determined LPP.sub.DWi to DW.sub.I; (3) the transfer from DW.sub.P of the determined LPP.sub.DWa to DW.sub.A; and (4) the transfer from DW.sub.P of the determined LPP.sub.DWlh to the DW.sub.LH. The one or more operating instructions 97 will be executed by a node 30 of the P2P blockchain network 20 to record a transaction of the divisional transfer from DW.sub.P of the DC loan payment amount on blockchain 40 for (1) the transfer from DW.sub.P of the determined LPP.sub.DWsys to DW.sub.SYS; (2) the transfer from DW.sub.P of the determined LPP.sub.DWi to DW.sub.I; (3) the transfer from DW.sub.P of the determined LPP.sub.DWa to DW.sub.A; and (4) the transfer from DW.sub.P of the determined LPP.sub.DWlh to the DW.sub.LH. The updated states DW.sub.P, DW.sub.LH, DW.sub.SYS, DW.sub.I, and DW.sub.A (if any) resulting from execution of operating instructions 97 will be included by a block producing node 30 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0084] DCFUNDTOKENS 73

    [0085] FIG. 9 shows the steps 100 performed by the system smart contract DCFUNDTOKENS for distributing fund tokens to DW.sub.LH and DW.sub.P for a loan when a DC loan payment is made by DW.sub.P. Smart contract DCFUNDTOKENS is deployed and resides in the blockchain data file 40 stored in the memory of nodes 30 of the P2P blockchain network 20.

    [0086] Smart contract FUNDTOKENS contains one or more operating instructions 110 for receiving a communication from smart contract DCLOANPAY 72 data for the DC payment amount, DW.sub.P and DW.sub.LH. The one or more operating instructions 110 will be executed by a node 30 of the P2P blockchain network 20 to receive a communication from smart contract DCLOANPAY 72 of data for the DC payment amount, DW.sub.P and DW.sub.LH.

    [0087] FUNDTOKENS also contains one or more operating instructions 120 for determining an FT transfer amount (hereinafter “FT.sub.TA”) from the input of the DC payment amount and the field value of the FT.sub.CONV in the fund token data object 64. In a preferred embodiment the one or more operating instructions 120 will be executed by a node 30 of the P2P blockchain network 20 to determine FT.sub.TA as being equal to the product of the DC loan payment amount multiplied by the current field value of FT.sub.CONV in the fund token data object 64:


    FT.sub.TA=DC loan payment amount*FT.sub.CONV

    [0088] Smart contract FUNDTOKENS of the preferred exemplary embodiment also contains one or more operating instructions 130 for recording a transaction of the transfer of FT.sub.TA from DW.sub.FTto DW.sub.P on blockchain 40. The one or more operating instructions 130 will be executed by a node 30 of the P2P blockchain network 20 to record a transaction of the transfer of FT.sub.TA from DW.sub.FT to DW.sub.P on blockchain 40. The updated states DW.sub.P and DW.sub.FT resulting from execution of operating instructions 130 will be included by a block producing node 30 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0089] The FT balance for a network wallet DW.sub.USER on the P2P blockchain network 20 is used to calculate the periodic dividend distribution from DW.sub.IF to DW.sub.USER. In a preferred embodiment a record of each DW.sub.USER FT transaction is kept by the system, and FT can only be assigned to a DW.sub.USER, whether from DW.sub.FT or another DW.sub.USER, through the smart contract FUNDTOKENS. Therefore, for each FT transaction that happens there is a record created by FUNDTOKENS in fund token data object 64. Each such record has a DW.sub.USER ID field that stores a value identifying the DW.sub.USER (e.g. the public key of DW.sub.USER) and an FT amount field that stores the value for the amount of FT in the transaction.

    [0090] Smart contract FUNDTOKENS therefore also contains one or more operating instructions 140 for creating in fund token data object 64 a record of the FT transaction with a DW ID field that stores the identifying value of DW.sub.P, and the FT amount field storing the value FT.sub.TA.

    [0091] Smart contract FUNDTOKENS of the preferred exemplary embodiment also contains one or more operating instructions 150 for recording a transaction of the transfer of FT.sub.TA from DW.sub.FT to DW.sub.LH on blockchain 40. The one or more operating instructions 150 will be executed by a node 30 of the P2P blockchain network 20 to record a transaction of the transfer of FT.sub.TA from DW.sub.FT to DW.sub.LH on blockchain 40. The updated states DW.sub.LH and DW.sub.FT resulting from execution of operating instructions 150 will be included by a block producing node 30 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0092] Smart contract FUNDTOKENS of the preferred exemplary embodiment also contains one or more operating instructions 160 for creating in fund token data object 64 a record of an FT transaction with a DW ID field that stores the identifying value of DW.sub.LH, and the FT amount field storing the value FT.sub.TA.

    [0093] Smart contract FUNDTOKENS of the preferred exemplary embodiment also contains one or more operating instructions 170 for a block producing node 30 to update the state of fund token data object 64 resulting from execution of operating instructions 140 and 160 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0094] DCINVEST 74

    [0095] FIG. 10 shows the steps 200 performed by the smart contract DCINVEST 74 for the investment and earnings of EOS from DW.sub.IF when the invention is deployed onto EOS Mainnet 20. Smart contract DCINVEST is deployed and resides in the blockchain 40 stored in the memory of nodes 30 of EOS Mainnet 20.

    [0096] Smart contract DCINVEST contains one or more operating instructions 205 for initializing an investment event listener for either a request for an EOS transfer from DW.sub.IF to REX to acquire T-REX tokens, or a redemption period elapse. The one or more operating instructions 205 will be executed by a node 30 of the EOS Mainnet 20 to initialize an investment event listener for either a request for an EOS transfer from DW.sub.IF to REX to acquire T-REX tokens, or a redemption period elapse.

    [0097] Smart contract DCINVEST contains one or more operating instructions 210 for confirming a request for an EOS transfer from DW.sub.IF to REX to acquire T-REX tokens, or else confirming a redemption period elapse. The one or more operating instructions 210 will be executed by a node 30 of the EOS Mainnet 20 to confirm a request for an EOS transfer from DW.sub.IF to REX to acquire T-REX tokens, or else confirm a redemption period elapse.

    [0098] Smart contract DCINVEST contains one or more operating instructions 215 for recording a transaction of the transfer of EOS from DW.sub.IF to REX on blockchain 40. The one or more operating instructions 215 will be executed by a node 30 of the EOS Mainnet 20 to record a transaction of the transfer of EOS from DW.sub.IF to REX on blockchain 40.

    [0099] Smart contract DCINVEST contains one or more operating instructions 220 for recording a transaction of the transfer of T-REX from REX to DW.sub.IF on blockchain 40. The one or more operating instructions 220 will be executed by a node 30 of the EOS Mainnet 20 to record a transaction of the transfer of T-REX from REX to DW.sub.IF on blockchain 40.

    [0100] Smart contract DCINVEST contains one or more operating instructions 225 for creating a record in investment data object 66 of the transfer of T-REX from REX to DW.sub.IF, including setting the field values for amount, maturity, and redemption status. The one or more operating instructions 225 will be executed by a node 30 of the EOS Mainnet 20 to create a record in investment data object 66 of the transfer of T-REX from REX to DW.sub.IF, including but not limited to setting the field values for amount, maturity, and redemption status.

    [0101] Smart contract DCINVEST contains one or more operating instructions 230 for updating the state for the investment data object 66 (i.e. the new T-REX transaction record) on blockchain 40 and reinitializing the investment event listener. The one or more operating instructions 230 will be executed by a node 30 of the EOS Mainnet 20 to update the state for the investment data object 66 (i.e. the new T-REX transaction record) on blockchain 40 and reinitialize the investment event listener.

    [0102] Smart contract DCINVEST contains one or more operating instructions 235 for confirming a redemption period elapse, or else reinitializing the investment event listener. The one or more operating instructions 235 will be executed by a node 30 of the EOS Mainnet 20 to confirm a redemption period elapse, or else reinitialize the investment event listener.

    [0103] Smart contract DCINVEST contains one or more operating instructions 240 for confirming that investment data object 66 has one or more records of a transaction for T-REX that has a maturity field datetime value that has passed, and also has a redemption status field value of empty or “no” (hereinafter any such Mature and UnRedeemed T-REX record being referred to as “T-REX.sub.MUR”), or else reinitializing the investment event listener. The one or more operating instructions 240 will be executed by a node 30 of the EOS Mainnet 20 to confirm that investment data object 66 has one or more T-REX.sub.MUR records, or else reinitialize the investment event listener.

    [0104] Smart contract DCINVEST also contains one or more operating instructions 245 for determining the total amount of mature and unredeemed T-REX (hereinafter “T-REX.sub.MUR-TOTAL”) as being equal to the sum of the token amount field values for the T-REX.sub.MUR records that were identified from execution of the one or more operating instructions 240. The one or more operating instructions 230 will be executed by a node 30 of EOS Mainnet 20 to determine a T-REX.sub.MUR-TOTAL as being equal to the sum of the token amount field values for the T-REX.sub.MUR records that were identified from execution of the one or more operating instructions 240.

    [0105] Smart contract DCINVEST also contains one or more operating instructions 245 for recording on blockchain 40 a redemption assignment from DW.sub.IF to REX of T-REX tokens in an amount equal to T-REX.sub.MUR-TOTAL in exchange for receiving from REX an amount EOS.sub.REX-RDM of EOS. The one or more operating instructions 245 will be executed by a node 30 of the EOS Mainnet 20 to record on blockchain 40 a redemption assignment of T-REX from DW.sub.IF to REX in an amount T-REX.sub.MUR-TOTAL and assignment to DW.sub.IF from REX an amount EOS.sub.REX-RDM of EOS.

    [0106] Smart contract DCINVEST also contains one or more operating instructions 250 for, upon a redemption assignment from DW.sub.IF to REX of T-REX.sub.MUR-TOTAL, adjusting the redemption status field value to “yes” for each of the T-REX.sub.MUR records in investment data object 66 that were identified from execution of the one or more operating instructions 240. The one or more operating instructions 250 will be executed by a node 30 of the EOS Mainnet 20 to, upon a redemption assignment from DW.sub.IF to REX of T-REX.sub.MUR-TOTAL, adjust the redemption status field value to “yes” for each of the T-REX.sub.MUR records in investment data object 66 that were identified from execution of the one or more operating instructions 240. The updated state of investment data object 66 resulting from execution of operating instructions 250 will be included by a block producing node 30 in the next cryptographic block 41 that the node produces for publication and addition to the blockchain 40.

    [0107] Smart contract DCINVEST contains one or more operating instructions 260 for, after a redemption assignment from DW.sub.IF to REX of T-REX.sub.MUR-TOTAL, resetting the redemption period and reinitializing the investment event listener of the one or more operating instruction 205. The one or more operating instructions 260 will be executed by a node 30 of EOS Mainnet 20 after a redemption assignment from DW.sub.IF to REX of T-REX.sub.MUR-TOTAL to reset the redemption period and reinitialize the investment event listener of the one or more operating instruction 205.

    [0108] DCDIVIDEND 75

    [0109] FIG. 11 shows the steps 300 performed by the smart contract DCDIVIDEND for assigning a dividend amount of DC (hereinafter “DC.sub.DIC”) to the network user digital wallets of record in fund token data object 64 that have a balance of FT. DC.sub.DIV is an amount of DC that is set by the system to be calculated as being equal to a predetermined portion of the DC passive income for DW.sub.IF. In a preferred embodiment DC.sub.DIV is calculated as being equal to 50% of the DC passive income for DW.sub.IF. However, any percentage of DC passive income for DW.sub.IF may be used. In the preferred embodiment smart contract DCDIVIDEND is deployed and resides in the blockchain 40 stored in the memory of nodes 30 of EOS Mainnet 20.

    [0110] Smart contract DCDIVIDEND contains one or more operating instructions 310 for determining at a predetermined time the DC.sub.DIV to pay out to the network user digital wallets of record in fund token data object 64 that have a balance of FT. The predetermined dividend time in a preferred EOS Mainnet embodiment is every twenty-four hours, however this may be set to any time interval. The one or more operating instructions 310 will be executed by a node 30 of the EOS Mainnet 20 at a predetermined dividend time to determine the DC.sub.DIV to pay out to the network user digital wallets of record in fund token data object 64 that have a balance of FT.

    [0111] Smart contract DCDIVIDEND also contains one or more operating instructions 320 for identifying at the predetermined time from fund token data object 64 each digital wallet having an FT balance field value greater than zero (hereinafter “DW.sub.USER-FT”), and summing the FT balances for all DW.sub.USER-FT records to determine a value for the circulating FT circulation value (hereinafter “FT.sub.CIRC”). The one or more operating instructions 320 will be executed by a node 30 of the EOS Mainnet 20 at the predetermined time to identify from fund token data object 64 each digital wallet having an FT balance field value greater than zero (hereinafter “DW.sub.USER-FT”), and summing the FT balances for all DW.sub.USER-FT records to determine a value for the circulating FT circulation value (hereinafter “FT.sub.CIRC”).

    [0112] Smart contract DCDIVIDEND also contains one or more operating instructions 330 to calculate at the predetermined time for each DW.sub.USER-FT a DC dividend distribution (hereinafter “DW.sub.USER-DCDIV”) that is equal to the product of the dividend amount multiplied times the FT percentage that DW.sub.USER-FT has of FT.sub.CIRC. Thus, for example, if dividend amount =one hundred (100) EOS, FT.sub.CIRC=one thousand (1000), and DW.sub.USER-FT has an FT balance field value of one hundred (100), then DW.sub.USER-DIV would be equal to ten (10) EOS:


    DW.sub.USER-DCDIV=[DW.sub.USER-FTBAL/FT.sub.CIRC]*Dividend Amount


    DW.sub.USER-DCDIV=[100/1000]*100 EOS


    DW.sub.USER-DCDIV=[0.1]*100 EOS


    DW.sub.USER-DCDIV=10 EOS

    [0113] The one or more operating instructions 330 will be executed by a node 30 of the EOS Mainnet 20 at the predetermined time to calculate for each DW.sub.USER-FT a DC dividend distribution (hereinafter “DW.sub.USER-DCDIV”) that is equal to the product of the dividend amount multiplied times the FT percentage that DW.sub.USER-FT has of FT.sub.CIRC.

    [0114] Smart contract DCINVEST also contains one or more operating instructions 340 for recording on blockchain 40 for each determined DW.sub.USER-DCDIV an assignment from DW.sub.IF of the DW.sub.USER-DCDIV amount of EOS to DW.sub.USER. The one or more operating instructions 340 will be executed by a node 30 of the EOS Mainnet 20 to record on blockchain 40 for each determined DW.sub.USER-DCDIV an assignment from DW.sub.IF of the DW.sub.USER-DCDIV amount of EOS to DW.sub.USER.

    [0115] While particular embodiments and applications of the present blockchain cryptocurrency loan system invention have been shown and described changes and modifications may be made, and the appended claims are to encompass within their scope all such changes and modifications as are within the true spirit and scope of the invention.