System and method of releasing tokens based on performance metrics being met and issuing dual structure tokens

Information

  • Patent Application
  • 20200111064
  • Publication Number
    20200111064
  • Date Filed
    April 15, 2019
    5 years ago
  • Date Published
    April 09, 2020
    4 years ago
Abstract
It is possible for a cryptocurrency company to issue an initial amount of tokens (such as 40 million tokens). Then there will be a second amount of tokens in reserve (such as 60 million tokens in reserve). The cryptocurrency company will issue the remaining 60 million tokens only per some formula, based on performance metrics being met.
Description
BACKGROUND OF THE INVENTION

This invention deals with tokenized asset offerings (TAO) and initial coin offerings (ICOs). The invention deals with cryptocurrency companies releasing tokens.


SUMMARY OF THE INVENTION

It is possible for a cryptocurrency company to issue an initial amount of tokens (such as 40 million tokens). Then there will be a second amount of tokens in reserve (such as 60 million tokens in reserve). The cryptocurrency company will issue the remaining 60 million tokens ONLY per some formula.


Assuming the price per token is 50 cents ($0.50): i. Token trades at least $1 (e.g., 2× offering price) for 30 days—authorized to issue up to 20 million additional tokens; ii. Token trades at least $2 (e.g., 4× offering price) for 30 days—authorized to issue up to 20 million additional tokens; iii. Token trades at least $4 (e.g., 8× offering price) for 30 days—authorized to issue up to 20 million additional tokens; and iv. Some other formula.


The present invention will have the ability to issue additional tokens in the future based on factors—(i) the passage of time, (ii) maximum sale amounts and (iii) increase in the price of the token for a sustained period. Subsequent issuances can occur no more than certain time periods, such as every six months, be limited to no more than some maximum amount and require at least a minimum price increase of the token (e.g., 100% increase) over the prior raise. The first release will be 40 million security tokens. When performance/price targets are met, we will release 60 million more tokens in 20 m increments. Thus, we plan to issue 100 million security tokens in total.


Please note the formula can have any number of potential release dates of additional tokens. The above formula had three release dates. This number of three release dates was only for illustrative purposes. It is possible that none, some, or all of the reserve tokens will be released, based on whether the performance metrics are met.


IPwe will have a dual structure token, giving bonus utility tokens (in addition to receiving security tokens, during the private round before it goes on the public exchanges). Some investors will only purchase utility tokens. Therefore, this approach will allow them to take part in purchasing during the private round. Each investor receives bonus utility token. For utility tokens, there is no lockup period. IPwe will distribute utility tokens first. People that only invest in utility tokens want 1 to 4× multiple. The benefit of investors coming to IPwe is that investors get additional utility token by buying from IPwe, instead of waiting until security token goes onto public exchange. After public exchange, they only get security token.





BRIEF DESCRIPTION OF THE DRAWINGS

The various embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings. Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:



FIG. 1 is an illustration depicting an exemplary operating environment including one or more user computers, computing devices, or processing devices, which can be used to operate a client, such as a dedicated application, web browser is shown.



FIG. 2 is another illustration depicting an exemplary operating environment including a computer system with various elements as shown.



FIG. 3 is an illustration of one aspect of the present invention.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With the advent of cryptocurrency, the global economy and the way we can transaction internationally has changed. Specifically, through use of a blockchain network, virtual tokens, were created that had both utility and value.


The present invention proposes a method of solving the issues associated with the release of various cryptocurrency tokens on a blockchain. Blockchain technology (sometimes simply referred to as a blockchain) was developed and has been used in certain digital currency implementations. An example implementation and corresponding blockchain techniques are described in a 2008 article by Satoshi Nakamoto, called “Bitcoin: A Peer-to-Peer Electronic Cash System,” the entire contents of which are hereby incorporated by reference. With that being said, in certain embodiments discussed herein, the blockchain may be privately hosted (e.g., where all member nodes are run and provided by the same entity or a controlled group of entities). In certain example embodiments, the blockchain may be a distributed blockchain, such as the one provided by the bitcoin network. Thus, the term blockchain as used herein is not confined to the so-called blockchain that is only used for the bitcoin cryptographic currency.


The blockchain is a data structure that stores a list of transactions and can be thought of as a distributed electronic ledger that records transactions between source identifier(s) and destination identifier(s). Every transaction is “to” a destination identifier that is associated with a public/private key pair. In creating a new transaction, outputs from other, prior transactions that are to the “from” address (which may be multiple different addresses derived from the same private key) are used as inputs for this new transaction. The new transaction is then encumbered with the public key associated with the “to” destination identifier. In other words, outputs from prior blockchain transactions are used as inputs for new transactions that are then signed using the public key associated with the destination address. The new blockchain transaction is then submitted to the blockchain. Once on the blockchain multiple such transactions are bundled into a block and the block is linked to a prior block in the “blockchain.” Computer nodes of the distributed system then maintain the blockchain and validate each new block (along with the transactions contained in the corresponding block). The techniques described herein make use of blockchain technology to address one or more problems with the conventional database systems


Blockchain technology holds great promise for a range of industries and business cases, including the financial markets and the transacting economy. That is because a Blockchain can be viewed as a type of shared database, the contents of which are verified and agreed upon by a network or independent actors. For a new piece of data (such as the owner of a newly issued patent) to be added to the Blockchain, the independent verifiers must come to consensus on its validity.


Because each new set of transactions (a “block”) is cryptographically linked to the previous block, it is extraordinarily difficult to change data stored in a Blockchain and any such change would be readily detectable. Thus, blockchains are widely considered to be immutable and thus can serve as a record of proof of ownership.


When transacting in a Blockchain platform, each user makes use of a public address (needed for other actors in the network to send a transaction to that user), and a cryptographically paired “private key.” Private keys are used to sign transactions digitally, a form authentication to ensure that a given user has genuinely generated a transaction.


Blockchain is a relatively new technology. The first “real world” implementations of Blockchain, Bitcoin, envisioned by Satoshi Nakamoto launched in 2009. The Ethereum Blockchain was released in 2015. In addition to the distributed ledger capability of the Bitcoin Blockchain, the Ethereum Blockchain allows so-called “smart contracts,” which are programs stored in the Ethereum Blockchain that can act autonomously to execute sophisticated transactions.1 1“Ethereum Whitepaper,” http://github.com/ethereum/wiki/wiki/white-paper, 2016


Blockchain data transfer is currently considered one the most secure technologies for digital asset transfer due to its distributed nature and use of sophisticated cryptography. Smart contracts, therefore, offer a potential solution for the management of patent transactions via the introduction of a universal, distributed ledger that does not require trust in a single third party.


The Bitcoin blockchain is limited to sets of simple information and scripts such as transaction details, and conditioning a transaction on a minimum number of signatories. It was therefore argued that for a virtual currency to truly revolutionize trade it must also provide built-in means for facilitating complex contracts and deals with the currency.


Project Ethereum builds upon Bitcoin. Not only does it allow decentralized data storage in its blockchain, Ethereum also allows storing program code on its blockchain and running it concurrently by any number of network members. By predicating release of funds upon verifiable occurrences, Ethereum enables smart contract functionality.


Basically, a network member uploads a computer program written in one of several permitted languages to the blockchain. The member may then condition the release of an amount of ETH (the currency underlying Ethereum) upon reaching the end of this program. Various network members thereafter run the program concurrently and reach a consensus on the resulted output.


The scripting languages in Ethereum or the IBM Hyperledger are Turing complete as they can implement any logic rules and initiate any calculations available. This feature allows any member to issue and trade with a custom virtual currency upon the Ethereum network. For the sake of clarity, a custom virtual currency issued and based upon another virtual currency is referred to as a Token. A Token may have various uses. While a certain Token will represent money, another Token will represent club member points or frequent flyer points. Tokens may be traded for ETH or for any other commodities and Tokens via the Ethereum or the IBM Hyperledger network.


Before Ethereum or the IBM Hyperledger, a person was required to launch a new blockchain utilizing custom user clients and mining algorithm, in order to issue a custom decentralized virtual currency. The emergence of the Ethereum or the IBM Hyperledger network allows easy issuance of Tokens with minimal setup. It should be mentioned that after Ethereum, several other virtual currency networks implementing smart contracts were established. Prominent examples include the IBM Hyperledger, Lisk and RootStock.


The proposed method envisions platform on a decentralized network, which connects examiners with prior art, inventors with law firms, and a new system by which to approach the global patenting process.


Cryptocurrency tokens typically have two separate classifications: utility tokens, or security tokens. In order to understand why, it is important to note that each blockchain may have one or more cryptocurrencies associated with it. More specifically, the cryptocurrencies can be used to perform some function, as a utility token, or can simply be traded by investors, as a security token.


When a token is first created, a major question lies on its value. History has shown that financial markets can be devastated by the free printing of a currency. Cryptocurrency provides an easy avenue for someone to replicate a token and thereby decrease its value. In order to combat the issue of depreciation based on “counterfeit” or excess tokens, the release of a cryptocurrency is almost always coupled with a limitation on the total number o coins in circulation. By limiting the number of any one type of cryptocurrency token, the value can be controlled and the utility can be tracked. As the cryptocurrency market has evolved, various issuers of new tokens have held reserves of tokens, releasing them at various times. However, there has been no specific rhyme or reason to this type of release. Generally speaking, the organization in charge of the cryptocurrency has simply decided when to release it.


This has lead to significant issues related to trust in the market, since investors are not certain whether the value of tokens can fluctuate greatly based on an arbitrary release. Many founding companies have been accused of artificially inflating the value of a coin, selling assets and then simply releasing more coins to lower the price again. The present invention seeks to remedy this type of behavior. Specifically, in one embodiment, the present invention discloses a method of releasing cryptocurrency securities or utility tokens over the blockchain network using a predetermined algorithm. The algorithm is programmed onto the blockchain itself, and thus viewable by the public. Since the blockchain records the algorithm, a successful meeting of the criterion described therein will result in the release of tokens.


In another embodiment, the criterion programmed on the blockchain can include the initial success of the token, the number of tokens sold, and the length of time a token has been offered in the market.


A smart contract is a specific vehicle for transacting on a blockchain with assurance the transaction will occur. Specifically, a smart contract allows a user to input criterion which will be executed at the occurrence of a condition. This includes the transfer of funds for appropriate wallets, and without possibility of intervention.


In one embodiment, a smart contract is recorded on the blockchain. This smart contract contains criterion regarding the deployment of cryptocurrency tokens. The contract contains a set of rules that define the amount of tokens to initially float the type of tokens to initially float, whether security or utility, and the conditions under which additional tokens are floated onto the global market.


In one embodiment, the total number of tokens is limited, and the release of tokens is done automatically via a smart contract. Under this embodiment, the percentage of tokens is determined to be released based on various criterion. The percentage of tokens to release is modified based on the occurrence of additional criterion.


The invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. Unless stated otherwise, a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. As used herein, the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.


The methods or algorithmic steps described in light of the embodiments disclosed herein can be implemented using hardware, processor-executed software modules, or combinations of both. Software modules can be installed in random-access memory (RAM), memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard drives, removable disks, CD-ROM, or any other forms of storage media known in the technical field.



FIG. 1 is a block diagram illustrating components of an exemplary operating environment in which embodiments of the present invention may be implemented. The system 100 can include one or more user computers, computing devices, or processing devices 112, 114, 116, 118, which can be used to operate a client, such as a dedicated application, web browser, etc. The user computers 112, 114, 116, 118 can be general purpose personal computers (including, merely by way of example, personal computers and/or laptop computers running a standard operating system), cell phones or PDAs (running mobile software and being Internet, e-mail, SMS, Blackberry, or other communication protocol enabled), and/or workstation computers running any of a variety of commercially-available UNIX or UNIX-like operating systems (including without limitation, the variety of GNU/Linux operating systems). These user computers 112, 114, 116, 118 may also have any of a variety of applications, including one or more development systems, database client and/or server applications, and Web browser applications. Alternatively, the user computers 112, 114, 116, 118 may be any other electronic device, such as a thin-client computer, Internet-enabled gaming system, and/or personal messaging device, capable of communicating via a network (e.g., the network 110 described below) and/or displaying and navigating Web pages or other types of electronic documents. Although the exemplary system 100 is shown with four user computers, any number of user computers may be supported.


In most embodiments, the system 100 includes some type of network 110. The network can be any type of network familiar to those skilled in the art that can support data communications using any of a variety of commercially-available protocols, including without limitation TCP/IP, SNA, IPX, AppleTalk, and the like. Merely by way of example, the network 110 can be a local area network (“LAN”), such as an Ethernet network, a Token-Ring network and/or the like; a wide-area network; a virtual network, including without limitation a virtual private network (“VPN”); the Internet; an intranet; an extranet; a public switched telephone network (“PSTN”); an infra-red network; a wireless network (e.g., a network operating under any of the IEEE 802.11 suite of protocols, GRPS, GSM, UMTS, EDGE, 2G, 2.5G, 3G, 4G, Wimax, WiFi, CDMA 2000, WCDMA, the Bluetooth protocol known in the art, and/or any other wireless protocol); and/or any combination of these and/or other networks.


The system may also include one or more server computers 102, 104, 106 which can be general purpose computers, specialized server computers (including, merely by way of example, PC servers, UNIX servers, mid-range servers, mainframe computers rack-mounted servers, etc.), server farms, server clusters, or any other appropriate arrangement and/or combination. One or more of the servers (e.g., 106) may be dedicated to running applications, such as a business application, a Web server, application server, etc. Such servers may be used to process requests from user computers 112, 114, 116, 118. The applications can also include any number of applications for controlling access to resources of the servers 102, 104, 106.


The Web server can be running an operating system including any of those discussed above, as well as any commercially-available server operating systems. The Web server can also run any of a variety of server applications and/or mid-tier applications, including HTTP servers, FTP servers, CGI servers, database servers, Java servers, business applications, and the like. The server(s) also may be one or more computers which can be capable of executing programs or scripts in response to the user computers 112, 114, 116, 118. As one example, a server may execute one or more Web applications. The Web application may be implemented as one or more scripts or programs written in any programming language, such as Java®, C, C # or C++, and/or any scripting language, such as Perl, Python, or TCL, as well as combinations of any programming/scripting languages. The server(s) may also include database servers, including without limitation those commercially available from Oracle®, Microsoft®, Sybase®, IBM® and the like, which can process requests from database clients running on a user computer 112, 114, 116, 118.


The system 100 may also include one or more databases 120. The database(s) 120 may reside in a variety of locations. By way of example, a database 120 may reside on a storage medium local to (and/or resident in) one or more of the computers 102, 104, 106, 112, 114, 116, 118. Alternatively, it may be remote from any or all of the computers 102, 104, 106, 112, 114, 116, 118, and/or in communication (e.g., via the network 110) with one or more of these. In a particular set of embodiments, the database 120 may reside in a storage-area network (“SAN”) familiar to those skilled in the art. Similarly, any necessary files for performing the functions attributed to the computers 102, 104, 106, 112, 114, 116, 118 may be stored locally on the respective computer and/or remotely, as appropriate. In one set of embodiments, the database 120 may be a relational database, such as Oracle 10g, that is adapted to store, update, and retrieve data in response to SQL-formatted commands.



FIG. 2 illustrates an exemplary computer system 200, in which embodiments of the present invention may be implemented. The system 200 may be used to implement any of the computer systems described above. The computer system 200 is shown comprising hardware elements that may be electrically coupled via a bus 224. The hardware elements may include one or more central processing units (CPUs) 202, one or more input devices 204 (e.g., a mouse, a keyboard, etc.), and one or more output devices 206 (e.g., a display device, a printer, etc.). The computer system 200 may also include one or more storage devices 208. By way of example, the storage device(s) 208 can include devices such as disk drives, optical storage devices, solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like.


The computer system 200 may additionally include a computer-readable storage media reader 212, a communications system 214 (e.g., a modem, a network card (wireless or wired), an infra-red communication device, etc.), and working memory 218, which may include RAM and ROM devices as described above. In some embodiments, the computer system 200 may also include a processing acceleration unit 216, which can include a digital signal processor DSP, a special-purpose processor, and/or the like. The computer-readable storage media reader 212 can further be connected to a computer-readable storage medium 210, together (and, optionally, in combination with storage device(s) 208) comprehensively representing remote, local, fixed, and/or removable storage devices plus storage media for temporarily and/or more permanently containing, storing, transmitting, and retrieving computer-readable information. The communications system 214 may permit data to be exchanged with the network and/or any other computer described above with respect to the system 200.


The computer system 200 may also comprise software elements, shown as being currently located within a working memory 218, including an operating system 220 and/or other code 222, such as an application program (which may be a client application, Web browser, mid-tier application, RDBMS, etc.). It should be appreciated that alternate embodiments of a computer system 200 may have numerous variations from that described above. For example, customized hardware might also be used and/or particular elements might be implemented in hardware, software (including portable software, such as applets), or both. Further, connection to other computing devices such as network input/output devices may be employed.


Storage media and computer readable media for containing code, or portions of code, can include any appropriate media known or used in the art, including storage media and communication media, such as but not limited to volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage and/or transmission of information such as computer readable instructions, data structures, program modules, or other data, including RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, data signals, data transmissions, or any other medium which can be used to store or transmit the desired information and which can be accessed by the computer. Based on the disclosure and teachings provided herein, a person of ordinary skill in the art will appreciate other ways and/or methods to implement the various embodiments.


As discussed above, embodiments are suitable for use with the Internet, which refers to a specific global internetwork of networks. However, it should be understood that other networks can be used instead of the Internet, such as an intranet, an extranet, a virtual private network (VPN), a non-TCP/IP based network, any LAN or WAN or the like.



FIG. 2 further illustrates an environment where an on-demand distributed database service might be used. As illustrated in FIG. 2 user systems might interact via a network with an on-demand database. Some on-demand databases may store information from one or more records stored into tables of one or more distributed database images to form a database management system (DBMS). Accordingly, on-demand database and system will be used interchangeably herein. A database image may include one or more database objects. A relational database management system (RDMS) or the equivalent may execute storage and retrieval of information against the database object(s). Some on-demand database services may include an application platform that enables creation, managing and executing one or more applications developed by the provider of the on-demand database service, wherein users accesses the on-demand database service via user systems, or third-party application developers access the on-demand database service via user systems.


The security of a particular user system might be entirely determined by permissions (permission levels) for the current user. For example, where a user account identification transaction may involve a portable identification alpha-numeric data field physically or digitally linked to a personal primary identification device to request services from a provider account and wherein the user is using a particular user system to interact with System, that user system has the permissions allotted to that user account. However, while an administrator is using that user system to interact with System, that user system has the permissions allotted to that administrator. In systems with a hierarchical role model, users at one permission level may have access to applications, data, and database information accessible by a lower permission level user, but may not have access to certain applications, database information, and data accessible by a user at a higher permission level. Thus, different users will have different permissions with regard to accessing and modifying application and database information, depending on a user's security or permission level.


A network can be a LAN (local area network), WAN (wide area network), wireless network, point-to-point network, star network, token ring network, hub network, or other appropriate configuration. As the most common type of network in current use is a TCP/IP (Transfer Control Protocol and Internet Protocol) network such as the global internetwork of networks often referred to as the “Internet” with a capital “I,” that will be used in many of the examples herein. However, it should be understood that the networks that the present invention might use are not so limited, although TCP/IP is a frequently implemented protocol.


User systems might communicate with a system using TCP/IP and, at a higher network level, use other common Internet protocols to communicate, such as HTTP, FTP, AFS, WAP, etc. In an example where HTTP is used, a user system might include an HTTP client commonly referred to as a “browser” for sending and receiving HTTP messages to and from an HTTP server at System. Such HTTP server might be implemented as the sole network interface between a system and network, but other techniques might be used as well or instead. In some implementations, the interface between a system and network includes load sharing functionality, such as round-robin HTTP request distributors to balance loads and distribute incoming HTTP requests evenly over a plurality of servers. At least as for the users that are accessing that server, each of the plurality of servers has access to at least one third party entity system data schema; however, other alternative configurations are contemplated.


According to one arrangement, each user system and all of its components are operator configurable using applications, such as a browser, including computer code run using a central processing unit such as an Intel Pentium® processor or the like. Similarly, a computer system (and additional instances of an enterprise database, where more than one is present) and all of their components might be operator configurable using application(s) including computer code run using a central processing unit such as an Intel Pentium® processor or the like, or multiple processor units. A computer program product aspect includes a machine-readable storage medium (media) having instructions stored thereon/in which can be used to program a computer to perform any of the processes of the embodiments described herein. Computer code for operating and configuring systems to intercommunicate and to process web pages, applications and other data and media content as described herein is preferably downloaded and stored on a hard disk, but the entire program code, or portions thereof, may also be locally stored in any other volatile or non-volatile memory medium or device as is well known, such as a ROM or RAM, or provided on any media capable of storing program code, such as any type of rotating media including floppy disks, optical discs, digital versatile disk (DVD), compact disk (CD), microdrive, and magneto-optical disks, and magnetic or optical cards, nanosystems (including molecular memory ICs), or any type of media or device suitable for storing instructions and/or data.


Additionally, the entire program code, or portions thereof, may be transmitted and downloaded from a software source over a transmission medium, e.g., over the Internet, or from another server, as is well known, or transmitted over any other conventional network connection as is well known (e.g., extranet, VPN, LAN, etc.) using any communication medium and protocols (e.g., TCP/IP, HTTP, HTTPS, Ethernet, etc.) as are well known. It will also be appreciated that computer code for implementing aspects of the present invention can be implemented in any programming language that can be executed on a client system and/or server or server system such as, for example, in C, C++, HTML, any other markup language, Java™, JavaScript, ActiveX, any other scripting language such as VBScript, and many other programming languages as are well known. (Java™ is a trademark of Sun Microsystems, Inc.). In one embodiment, the present invention contains a method of transactions wherein all fees, payments, purchases, and services are transacted using virtual currency, or cryptocurrency. The Network can further reward various stakeholders for participation within the network using the same cryptocurrency tokens. Each token can be traded or transacted using various systems and converted to FIAT currency. Such a system is applicable as a blockchain network.


A block chain or blockchain is a distributed database that maintains a list of data records, the security of which is enhanced by the distributed nature of the block chain. A block chain typically includes several nodes, which may be one or more systems, machines, computers, databases, data stores or the like operably connected with one another. In some cases, each of the nodes or multiple nodes are maintained by different entities. A block chain typically works without a central repository or single administrator. One well-known application of a block chain is the public ledger of transactions for cryptocurrencies such as used in bitcoin. The data records recorded in the block chain are enforced cryptographically and stored on the nodes of the block chain.


A block chain provides numerous advantages over traditional databases. A large number of nodes of a block chain may reach a consensus regarding the validity of a transaction contained on the transaction ledger. The blockchain typically has two primary types of records. The first type is the transaction type, which consists of the actual data stored in the block chain. The second type is the block type, which are records that confirm when and in what sequence certain transactions became recorded as part of the block chain. Transactions are created by participants using the block chain in its normal course of business, for example, when someone sends cryptocurrency to another person), and blocks are created by users known as “miners” who use specialized software/equipment to create blocks. In some embodiments, the block chain system disclosed, SS the number of miners in the current system are known and the system comprises primary sponsors that generate and create the new blocks of the system. As such, any block may be worked on by a primary sponsor. Users of the block chain create transactions that are passed around to various nodes of the block chain. A “valid” transaction is one that can be validated based on a set of rules that are defined by the particular system implementing the block chain. For example, in the case of cryptocurrencies, a valid transaction is one that is digitally signed, spent from a valid digital wallet and, in some cases, that meets other criteria.


In one embodiment, the Network is made up of a plurality of nodes, each node connected to another node in the plurality of nodes, having the ability to pass data to each of the connected plurality of nodes. At least one node of the plurality of nodes is connected to an existing blockchain. Using this existing blockchain, the decentralized transactions can take place.



FIG. 3 depicts one aspect of the present invention. Specifically, the illustration shows the interconnection of each node 301 in a distributed decentralized network 300. In accordance with the preferred embodiment of the present invention, each node 301 in the distributed network 300 is directly connected to at least two other nodes 302. This allows each node 301 to transact with at least one other node 301 in the network.


In one embodiment, each transaction (or a block of transactions) is incorporated, confirmed, verified, included, or otherwise validated into the blockchain via a consensus protocol. Consensus is a dynamic method of reaching agreement regarding any transaction that occurs in a decentralized system. In one embodiment, a distributed hierarchical registry is provided for device discovery and communication. The distributed hierarchical registry comprises a plurality of registry groups at a first level of the hierarchical registry, each registry group comprising a plurality of registry servers. The plurality of registry servers in a registry group provide services comprising receiving client update information from client devices, and responding to client lookup requests from client devices. The plurality of registry servers in each of the plurality of registry groups provide the services using, at least in part, a quorum consensus protocol.


The above illustrations provide many different embodiments for implementing different features of the invention. Specific embodiments of components and processes are described to help clarify the invention. These are, of course, merely embodiments and are not intended to limit the invention from that described in the claims. In one embodiment, each transaction (or a block of transactions) is incorporated, confirmed, verified, included, or otherwise validated into the blockchain via a consensus protocol. Consensus is a dynamic method of reaching agreement regarding any transaction that occurs in a decentralized system. In one embodiment, a distributed hierarchical registry is provided for device discovery and communication. The distributed hierarchical registry comprises a plurality of registry groups at a first level of the hierarchical registry, each registry group comprising a plurality of registry servers. The plurality of registry servers in a registry group provide services comprising receiving client update information from client devices, and responding to client lookup requests from client devices. The plurality of registry servers in each of the plurality of registry groups provide the services using, at least in part, a quorum consensus protocol.


As another example, a method is provided for device discovery and communication using a distributed hierarchical registry. The method comprises Broadcasting a request to identify a registry server, receiving a response from a registry server, and sending client update information to the registry server. The registry server is part of a registry group of the distributed hierarchical registry, and the registry group comprises a plurality of registry servers. The registry server updates other registry servers of the registry group with the client update information using, at least in part, a quorum consensus protocol.


As another example, a computer-readable medium comprising computer executable instructions for causing a client device to perform a method for device discovery and communication is provided, the method comprising broadcasting a request to identify a registry server, receiving a response from a registry server, and sending client update information to the registry server. The registry server is part of a registry group of the distributed hierarchical registry, where the registry group comprises a plurality of registry servers. The registry server updates other registry servers of the registry group with the client update information using, at least in part, a quorum consensus protocol.


In some embodiments, the system is further able to conserve network and computing resources by securely storing information associated with user data, preventing potential malicious activity involving such information, conserving bandwidth, memory, and computation resources. A digital wallet is software and hardware (or specifically designed hardware) that allows an individual to make electronic commerce transactions that use, a blockchain. The digital wallet is a data structure that can include a private key (e.g., that is only known to the holder of the wallet) and a series of identifiers (sometimes called wallet identifiers, blockchain identifier, or walletlDs herein) that have been generated based on the private key. These identifiers are used to allow other users to “send” transactions, which are recorded on the blockchain, to that identifier. For example, the above novation process creates two blockchain transactions for a trade between Publisher (“Party A”) and the distributed decentralized network administrator (“Party B”). A first blockchain transaction may be from the wallet of party A to the wallet of the Party B. A second blockchain transaction may be from the wallet of the Party B to a wallet of party A. These transactions may be separately generated and submitted to the blockchain. Alternatively, the blockchain may only have one “wallet” that is being used for interacting with the blockchain. Other types of implementations may also be possible (e.g., where different parties, or their respective computer systems, use their own keys for a central blockchain). In certain embodiments, the wallets may be centrally managed by the distributed decentralized network computer system that the parties associated with the trade. However, the transactions recorded to the blockchain may still be signed by or otherwise associated with the individual wallets of the patent stakeholders.


A computer process typically includes an executing (running) program or portion of a program, current program values and state information, and the resources used by the operating system to manage the execution of the process. An operating system (OS) is the software that manages the sharing of the resources of a computer and provides programmers with an interface used to access those resources. An operating system processes system data and user input and responds by allocating and managing tasks and internal system resources as a service to users and programs of the system.


The computer system may for instance include at least one processing unit, associated memory and a number of input/output (I/O) devices. When executing the computer program, the computer system processes information according to the computer program and produces resultant output information via I/O devices. The present technology requires a data processing system with sufficient memory and processing power to store and recall user data in real time. In addition, the invention may be implemented in a computer program for running on a computer system, at least including code portions for performing steps of a method according to the invention when run on a programmable apparatus, such as a computer system or enabling a programmable apparatus to perform functions of a device or system according to the invention. The computer program may cause the storage system to allocate disk drives to disk drive groups. In particular, the distributed decentralized network discussed herein must be capable of analyzing user and bid data in a manner that can optimize the bidding process.


While various embodiments of the disclosed technology have been described above, it should be understood that they have been presented by way of example only, and not of limitation. Likewise, the various diagrams may depict an example architectural or other configuration for the disclosed technology, which is done to aid in understanding the features and functionality that may be included in the disclosed technology. The disclosed technology is not restricted to the illustrated example architectures or configurations, but the desired features may be implemented using a variety of alternative architectures and configurations. Indeed, it will be apparent to one of skill in the art how alternative functional, logical or physical partitioning and configurations may be implemented to implement the desired features of the technology disclosed herein. Also, a multitude of different constituent module names other than those depicted herein may be applied to the various partitions. Additionally, with regard to flow diagrams, operational descriptions and method claims, the order in which the steps are presented herein shall not mandate that various embodiments be implemented to perform the recited functionality in the same order unless the context dictates otherwise.


Although the disclosed technology is described above in terms of various exemplary embodiments and implementations, it should be understood that the various features, aspects and functionality described in one or more of the individual embodiments are not limited in their applicability to the particular embodiment with which they are described, but instead may be applied, alone or in various combinations, to one or more of the other embodiments of the disclosed technology, whether or not such embodiments are described and whether or not such features are presented as being a part of a described embodiment. Thus, the breadth and scope of the technology disclosed herein should not be limited by any of the above-described exemplary embodiments.


Terms and phrases used in this document, and variations thereof, unless otherwise expressly stated, should be construed as open ended as opposed to limiting. As examples of the foregoing: the term “including” should be read as meaning “including, without limitation” or the like; the term “example” is used to provide exemplary instances of the item in discussion, not an exhaustive or limiting list thereof; the terms “a” or “an” should be read as meaning “at least one,” “one or more” or the like; and adjectives such as “conventional,” “traditional,” “normal,” “standard,” “known” and terms of similar meaning should not be construed as limiting the item described to a given time period or to an item available as of a given time, but instead should be read to encompass conventional, traditional, normal, or standard technologies that may be available or known now or at any time in the future. Likewise, where this document refers to technologies that would be apparent or known to one of ordinary skill in the art, such technologies encompass those apparent or known to the skilled artisan now or at any time in the future.


The presence of broadening words and phrases such as “one or more,” “at least,” “but not limited to” or other like phrases in some instances shall not be read to mean that the narrower case is intended or required in instances where such broadening phrases may be absent. The use of the term “module” does not imply that the components or functionality described or claimed as part of the module are all configured in a common package. Indeed, any or all of the various components of a module, whether control logic or other components, may be combined in a single package or separately maintained and can further be distributed in multiple groupings or packages or across multiple locations.


Additionally, the various embodiments set forth herein are described in terms of exemplary block diagrams, flow charts and other illustrations. As will become apparent to one of ordinary skill in the art after reading this document, the illustrated embodiments and their various alternatives may be implemented without confinement to the illustrated examples. For example, block diagrams and their accompanying description should not be construed as mandating a particular architecture or configuration.


While the present invention has been described with reference to one or more preferred embodiments, which embodiments have been set forth in considerable detail for the purposes of making a complete disclosure of the invention, such embodiments are merely exemplary and are not intended to be limiting or represent an exhaustive enumeration of all aspects of the invention. The scope of the invention, therefore, shall be defined solely by the following claims. Further, it will be apparent to those of skill in the art that numerous changes may be made in such details without departing from the spirit and the principles of the invention.


In the foregoing specification, the invention has been described with reference to specific examples of embodiments of the invention. It will, however, be evident that various modifications and changes may be made therein without departing from the broader spirit and scope of the invention as set forth in the appended claims. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to obscure the present invention.


Because the illustrated embodiments of the present invention may for the most part, be implemented using electronic components and circuits known to those skilled in the art, details will not be explained in any greater extent than that considered necessary as illustrated above, for the understanding and appreciation of the underlying concepts of the present invention and in order not to obfuscate or distract from the teachings of the present invention. Any reference in the specification to a method should be applied mutatis mutandis to a system capable of executing the method and should be applied mutatis mutandis to a non-transitory computer readable medium that stores instructions that once executed by a computer result in the execution of the method.


Any reference in the specification to a system should be applied mutatis mutandis to a method that may be executed by the system and should be applied mutatis mutandis to a non-transitory computer readable medium that stores instructions that may be executed by the system. Any reference in the specification to a non-transitory computer readable medium should be applied mutatis mutandis to a system capable of executing the instructions stored in the non-transitory computer readable medium and should be applied mutatis mutandis to method that may be executed by a computer that reads the instructions stored in the non-transitory computer readable medium. Any reference to “having”, “including” or “comprising” should be applied mutatis mutandis to “consisting” or “consisting essentially of.”

Claims
  • 1. A network comprising a plurality of nodes, each node in the plurality of nodes configured to transact with at least one other node in the plurality of nodes, the network further comprising: at least one hardware processor, a non-transitory machine-readable storage medium having an executable computer readable program code, the at least one hardware processor configured to execute the computer-readable program code to: receive, by the secure ledger network, a request to validate a smart contract that determines at least one rule for a transaction involving the distribution of the virtual currency, wherein an execution of the transaction comprises:receiving, by the secure ledger network, a request to approve an exchange rate for at least one virtual currency token in terms of FIAT currency;validating the exchange rate;updating a secure ledger maintained by the secure ledger network with the smart contract;the smart contract further configured with at least one rule regarding the floating of the virtual currency;executing a smart contract; andupdating the secure ledger about the transaction.
  • 2. The virtual currency of claim 1, wherein a limited number of virtual currency tokens exist.
  • 3. The smart contract of claim 1, further programmed with a rule regarding the number of virtual currency tokens to disburse.
  • 4. The smart contract of claim 3, wherein the rule regarding the amount of virtual currency tokens to float is dependent on the existing value of the virtual currency token with respect to FIAT currency.
  • 5. The smart contract of claim 3, wherein the rule regarding the amount of virtual currency tokens to float is based on the length of time the virtual currency has been available for use or trade.
  • 6. The smart contract of claim 3, wherein the rule regarding the amount of virtual currency tokens to float is based on the total number of virtual currency tokens available.
  • 7. The smart contract of claim 3, wherein the rule regarding the amount of virtual currency tokens to disburse is based on percentage of the total virtual currency tokens available is released.
  • 8. The network of claim 1, further configured as a decentralized network.
  • 9. The network of claim 1, further configured as a blockchain network.
  • 10. The secure ledger of claim 1, further configured as a public ledger.
  • 11. The secure ledger of claim 1, further configured as a private ledger.
  • 12. A method of floating virtual currency, the method comprising: limiting the number of virtual currency tokens available to float;determining an initial amount of virtual currency tokens to float;programming a smart contract with rules regarding additional amount of tokens to float; andrecording the smart contract on a network accessible by the public.
  • 13. The method of claim 12, wherein the rules in the smart contract are based on the length of time the virtual currency has been available for use or trade.
  • 14. The method of claim 12, wherein the rules of the smart contract are based on the total number of virtual currency tokens available.
  • 15. The method of claim 12, wherein the rules of the smart contract are based on the value of the virtual currency token.
  • 16. The method of claim 12, wherein the network is a blockchain network.
  • 17. The method of claim 12, wherein the smart contract rules disclose a percentage of virtual currency tokens to float.
  • 18. The method of claim 12, wherein the smart contract rules disclose the number of virtual currency tokens to float.
  • 19. The method of claim 12, wherein the virtual currency tokens are utility tokens.
  • 20. The method of claim 12, wherein the virtual currency tokens are security tokens.
PRIORITY CLAIMS

This application claims the benefit of U.S. Provisional Patent Application No. 62/660,946, filed Apr. 21, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/672,697, filed May 17, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/685,299, filed Jun. 15, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/685,937, filed Jun. 16, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/685,960, filed Jun. 16, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/689,241, filed Jun. 24, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/695,002, filed Jul. 7, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/695,126, filed Jul. 8, 2018. This application also claims the benefit of U.S. Provisional Patent Application No. 62/696,357, filed Jul. 11, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/56690, filed on Oct. 19, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/56884, filed on Oct. 22, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/57062, filed on Oct. 23, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/59174, filed on Nov. 5, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/61448, filed on Nov. 16, 2018. This application also claims the benefit of International Patent Application Number PCT/US2018/64186, filed on Dec. 6, 2018. This application also claims the benefit of U.S. patent application Ser. No. 16/216,776, filed Dec. 11, 2018. This application also claims the benefit of U.S. patent application Ser. No. 16/257,006, filed Jan. 24, 2019, each of which is incorporated herein by reference.

Provisional Applications (7)
Number Date Country
62689241 Jun 2018 US
62695002 Jul 2018 US
62685937 Jun 2018 US
62685960 Jun 2018 US
62672697 May 2018 US
62685299 Jun 2018 US
62660946 Apr 2018 US