pip3 install -r requirements.txt python3 bip39\_gui.py
submitted by crypt0hodl1 to PundiX [link] [comments]
PrologueThis is a Concept Paper written to introduce the Function X Ecosystem, which includes the XPhone. It also addresses the relationship between the XPOS and Function X.
Pundi X has always been a community-driven project. We have lived by the mission of making sure the community comes first and we are constantly learning from discussions and interactions on social media and in real-life meetings.
As with all discussions, there is always background noise but we have found gems in these community discussions. One such example is a question which we found constantly lingering at the back of our mind, “Has blockchain changed the world as the Internet did in the ’90s, and the automobile in the ‘20s?”. Many might argue that it has, given the rise of so many blockchain projects with vast potential in different dimensions (like ours, if we may add). But the question remains, “can blockchain ever become what the Internet, as we know it today, has to the world?”
Function X, a universal decentralized internet which is powered by blockchain technology and smart devices.
Over the past few months, in the process of implementing and deploying the XPOS solution, we believe we found the answer to the question. A nimble development team was set up to bring the answer to life. We discovered that it is indeed possible to bring blockchain to the world of telephony, data transmission, storage and other industries; a world far beyond financial transactions and transfers.
This is supported by end-user smart devices functioning as blockchain nodes. These devices include the XPOS and XPhone developed by Pundi X and will also include many other hardware devices manufactured by other original equipment manufacturers.
The vision we want to achieve for f(x) is to create a fully autonomous and decentralized network that does not rely on any individual, organization or structure.
Due to the nature of the many new concepts introduced within this Concept Paper, we have included a Q&A after each segment to facilitate your understanding. We will continuously update this paper to reflect the progress we’re making.
Function X: The Internet was just the beginningThe advent of the Internet has revolutionized the world. It created a communications layer so robust that it has resulted in TCP/IP becoming the network standard.
The Internet also created a wealth of information so disruptive that a company like Amazon threatened to wipe out all the traditional brick-and-mortar bookstores. These bookstores were forced to either adapt or perish. The same applies to the news publishing sector: the offerings of Google and Facebook have caused the near extinction of traditional newspapers.
The digitalization of the world with the Internet has enabled tech behemoths like Apple, Amazon, Google and Facebook to dominate and rule over traditional companies. The grip of these tech giants is so extensive that it makes you wonder if the choices you make are truly your own or influenced by the data they have on you as a user.
We see the blockchain revolution happening in three phases. The first was how Bitcoin showed the world what digital currency is. The second refers to how Ethereum has provided a platform to build decentralized assets easily. The clearest use case of that has come in the form of the thousands of altcoins seen today that we all are familiar with. The third phase is what many blockchain companies are trying to do now: 1) to bring the performance of blockchain to a whole new level (transaction speed, throughput, sharding, etc.) and 2) to change the course of traditional industries and platforms—including the Internet and user dynamics.
Public blockchains allow trustless transactions. If everything can be transacted on the blockchain in a decentralized manner, the information will flow more efficiently than traditional offerings, without the interception of intermediators. It will level the playing field and prevent data monopolization thus allowing small innovators to develop and flourish by leveraging the resources and data shared on the blockchain.
The Blockchain revolution will be the biggest digital revolutionIn order to displace an incumbent technology with something new, we believe the change and improvement which the new technology has to bring will have to be at least a tenfold improvement on all aspects including speed, transparency, scalability and governance (consensus). We are excited to say that the time for this 10-times change is here. It’s time to take it up 10x with Function X.
Function X or f(x) is an ecosystem built entirely on and for the blockchain. Everything in f(x) (including the application source code, transmission protocol and hardware) is completely decentralized and secure. Every bit and byte in f(x) is part of the blockchain.
What we have developed is not just a public chain. It is a total decentralized solution. It consists of five core components: Function X Operating System (OS); Function X distributed ledger (Blockchain); Function X IPFS; FXTP Protocol and Function X Decentralized Docker. All five components serve a single purpose which is to decentralize all services, apps, websites, communications and, most importantly, data.
The purpose of Function X OS is to allow smart hardware and IoTs to harness the upside and potential utility of the decentralization approach. We have built an in-house solution for how mobile phones can leverage Function X OS in the form of the XPhone. Other companies can also employ the Function X OS and further customize it for their own smart devices. Every smart device in the Function X ecosystem can be a node and each will have its own address and private key, uniquely linked to their node names. The OS is based on the Android OS 9.0, therefore benefiting from backward compatibility with Android apps. The Function X OS supports Android apps and Google services (referred to as the traditional mode), as well as the newly developed decentralized services (referred to as the blockchain mode). Other XPhone features powered by the Function X OS will be elaborated on in the following sections.
Using the Function X Ecosystem (namely Function X FXTP), the transmission of data runs on a complex exchange of public and private key data and encryption but never through a centralized intermediary. Hence it guarantees communication without interception and gives users direct access to the data shared by others. Any information that is sent or transacted over the Function X Blockchain will also be recorded on the chain and fully protected by encryption so the ownesender has control over data sharing. And that is how a decentralized system for communications works.
For developers and users transitioning to the Function X platform, it will be a relatively seamless process. We have intentionally designed the process of creating and publishing new decentralized applications (DApps) on Function X to be easy, such that the knowledge and experience from developing and using Android will be transferable. With that in mind, a single line of code in most traditional apps can be modified, and developers can have their transmission protocol moved from the traditional HTTP mode (centralized) to a decentralized mode, thus making the transmission “ownerless” because data can transmit through the network of nodes without being blocked by third parties. How services can be ported easily or built from scratch as DApps will also be explained in the following sections, employing technologies in the Function X ecosystem (namely Function X IPFS, FXTP Protocol and Decentralized Docker).
f(x) Chainf(x) chain is a set of consensus algorithms in the form of a distributed ledger, as part of the Function X ecosystem. The blockchain is the building block of our distributed ledger that stores and verifies transactions including financials, payments, communications (phone calls, file transfers, storage), services (DApps) and more.
Will Function X launch a mainnet?Yes. The f(x) chain is a blockchain hence there will be a mainnet.
When will the testnet be launched?Q2 2019 (projected).
When will the mainnet be launched?Q3 2019 (projected).
How is the Function X blockchain designed?The f(x) chain is designed based on the philosophy that any blockchain should be able to address real-life market demand of a constantly growing peer-to-peer network. It is a blockchain with high throughput achieved with a combination of decentralized hardware support (XPOS, XPhone, etc.) and open-source software toolkit enhancements.
What are the physical devices that will be connected to the Function X blockchain?In due course, the XPOS OS will be replaced by the f(x) OS. On the other hand, the XPhone was designed with full f(x) OS integration in mind, from the ground up. After the f(x) OS onboarding, and with adequate stability testings and improvements, XPOS and XPhone will then be connected to the f(x) Chain.
What are the different elements of a block?Anything that is transmittable over the distributed network can be stored in the block, including but not limited to phone call records, websites, data packets, source code, etc. It is worth noting that throughout these processes, all data is encrypted and only the owner of the private key has the right to decide how the data should be shared, stored, decrypted or even destroyed.
Which consensus mechanism is used?
Practical Byzantine Fault Tolerance (PBFT).
What are the other implementations of Practical Byzantine Fault Tolerance (PBFT)?Flight systems that require very low latency. For example, SpaceX’s flight system, Dragon, uses PBFT design philosophy. [Appendix]
How do you create a much faster public chain?We believe in achieving higher speed, thus hardware and software configurations matter. If your hardware is limited in numbers or processing power, this will limit the transaction speed which may pose security risks. The Ethereum network consists of about 25,000 nodes spread across the globe now, just two years after it was launched. Meanwhile, the Bitcoin network currently has around 7,000 nodes verifying the network. As for Pundi X, with the deployment plan (by us and our partners) for XPOS, XPhone and potentially other smart devices, we anticipate that we will be able to surpass the number of Bitcoin and Ethereum nodes within 1 to 2 years. There are also plans for a very competitive software implementation of our public blockchain, the details for which we will be sharing in the near future.
f(x) OSThe f(x) OS is an Android-modified operating system that is also blockchain-compatible. You can switch seamlessly between the blockchain and the traditional mode. In the blockchain mode, every bit and byte is fully decentralized including your calls, messages, browsers and apps. When in traditional mode, the f(x) OS supports all Android features.
Android is the most open and advanced operating system for smart hardware with over 2 billion monthly active users. Using Android also fits into our philosophy of being an OS/software designer and letting third-party hardware makers produce the hardware for the Function X Ecosystem.
What kind of open source will it be?This has not been finalized, but the options we are currently considering are Apache or GNU GPLv3.
What kind of hardware will it work on?The f(x) OS works on ARM architecture, hence it works on most smartphones, tablet computers, smart TVs, Android Auto and smartwatches in the market.
Will you build a new browser?We are currently using a modified version of the Google Chrome browser. The browser supports both HTTP and FXTP, which means that apart from distributed FXTP contents, users can view traditional contents, such ashttps://www.google.com.
What is the Node Name System (NNS)?A NNS is a distributed version of the traditional Domain Name System. A NNS allows every piece of Function X hardware, including the XPhone, to have a unique identity. This identity will be the unique identifier and can be called anything with digits and numbers, such as ‘JohnDoe2018’ or ‘AliceBob’. More on NNS in the following sections.
Will a third-party device running the f(x) OS be automatically connected to the f(x) blockchain?
Yes, third-party devices will be connected to the f(x) blockchain automatically.
f(x) FXTPA transmission protocol defines the rules to allow information to be sent via a network. On the Internet, HTTP is a transmission protocol that governs how information such as website contents can be sent, received and displayed. FXTP is a transmission protocol for the decentralized network.
FXTP is different from HTTP because it is an end-to-end transmission whereby your data can be sent, received and displayed based on a consensus mechanism rather than a client-server based decision-making mechanism. In HTTP, the server (which is controlled by an entity) decides how and if the data is sent (or even monitored), whereas in FXTP, the data is sent out and propagates to the destination based on consensus.
HTTP functions as a request–response protocol in the client-server computing model. A web browser, for example, may be the client and an application running on a computer hosting a website may be the server. FXTP functions as a propagation protocol via a consensus model. A node that propagates the protocol and its packet content is both a “client” and a “server”, hence whether a packet reaches a destination is not determined by any intermediate party and this makes it more secure.
f(x) IPFSIPFS is a protocol and network designed to store data in a distributed system. A person who wants to retrieve a file will call an identifier (hash) of the file, IPFS then combs through the other nodes and supplies the person with the file.
The file is stored on the IPFS network. If you run your own node, your file would be stored only on your node and available for the world to download. If someone else downloads it and seeds it, then the file will be stored on both your node the node of the individual who downloaded it (similar to BitTorrent).
IPFS is decentralized and more secure, which allows faster file and data transfer.
f(x) DDockerDocker is computer program designed to make it easier to create, deploy, and run applications. Containers allow a developer to package up an application including libraries, and ship it all out as a package.
As the name suggests, Decentralized Docker is an open platform for developers to build, ship and run distributed applications. Developers will be able to store, deploy and run their codes remote in different locations and the codes are secure in a decentralized way.
Beyond crypto: First true blockchain phone that is secured and decentralized to the coreXPhone is the world’s first blockchain phone which is designed with innovative features that are not found on other smartphones.
Powered by Function X, an ecosystem built entirely on and for the blockchain, XPhone runs on a new transmission protocol for the blockchain age. The innovation significantly expands the use of blockchain technology beyond financial transfers.
Unlike traditional phones which require a centralized service provider, XPhone runs independently without the need for that. Users can route phone calls and messages via blockchain nodes without the need for phone numbers.
Once the XPhone is registered on the network, for e.g., by a user named Pitt, if someone wants to access Pitt’s publicly shared data or content, that user can just enter FXTP://xxx.Pitt. This is similar to what we do for the traditional https:// protocol.
Whether Pitt is sharing photos, data, files or a website, they can be accessed through this path. And if Pitt’s friends would like to contact him, they can call, text or email his XPhone simply by entering “call.pitt”, “message.pitt”, or “mail.pitt”.
The transmission of data runs on a complex exchange of public and private key data with encryption. It can guarantee communication without interception and gives users direct access to the data shared by others. Any information that is sent or transacted over the Function X Blockchain will also be recorded on the chain.
Toggle between now and the futureBlockchain-based calling and messaging can be toggled on and off on the phone operating system which is built on Android 9.0. XPhone users can enjoy all the blockchain has to offer, as well as the traditional functionalities of an Android smartphone.
We’ll be sharing more about the availability of the XPhone and further applications of Function X in the near future.
DApps for mass adoptionSo far the use of decentralized applications has been disappointing. But what if there was a straightforward way to bring popular, existing apps into a decentralized environment, without rebuilding everything? Until now, much of what we call peer-to-peer or ‘decentralized’ services continue to be built on centralized networks. We set out to change that with Function X; to disperse content now stored in the hands of the few, and to evolve services currently controlled by central parties.
Use Cases: Sharing economyAs seen from our ride-hailing DApp example that was demonstrated in New York back in November 2018, moving towards true decentralization empowers the providers of services and not the intermediaries. In the same way, the XPhone returns power to users over how their data is being shared and with whom. Function X will empower content creators to determine how their work is being displayed and used.
Use Cases: Free namingOne of the earliest alternative cryptocurrencies, Namecoin, wanted to use a blockchain to provide a name registration system, where users can register their names to create a unique identity. It is similar to the DNS system mapping to IP addresses. With the Node Name System (NNS) it is now possible to do this on the blockchain.
NNS is a distributed version of the traditional Domain Name System. A NNS allows every piece of Function X hardware, including the XPhone, to have a unique identifier that can be named anything with digits and numbers, such as ‘JohnDoe2018’ or ‘AliceBob’.
Use Cases: Mobile data currencyAccording to a study, mobile operator data revenues are estimated at over $600 billion USD by 2020, equivalent to $50 billion USD per month [appendix]. Assuming users are able to use services such as blockchain calls provided by XPhone (or other phones using Function X) the savings will be immense and the gain from profit can be passed on to providers such as DApp developers in Function X. In other words, instead of paying hefty bills to a mobile carrier for voice calls, users can pay less by making blockchain calls, and the fees paid are in f(x) coins. More importantly users will have complete privacy over their calls.
Use Cases: Decentralized file storage
Ethereum contracts claim to allow for the development of a decentralized file storage ecosystem, “where individual users can earn small quantities of money by renting out their own hard drives and unused space can be used to further drive down the costs of file storage.” However, they do not necessarily have the hardware to back this up. With the deployment of XPOS, smart hardware nodes and more, Function X is a natural fit for Decentralized File Storage. In fact, it is basically what f(x) IPFS is built for.
These are just four examples of the many use cases purported, and there can, will and should be more practical applications beyond these; we are right in the middle of uncharted territories.
Decentralized and autonomousThe f(x) ecosystem is fully decentralized. It’s designed and built to run autonomously in perpetuity without the reliance or supervision of any individual or organization. To support this autonomous structure, f(x) Coin which is the underlying ‘currency’ within the f(x) ecosystem has to be decentralized in terms of its distribution, allocation, control, circulation and the way it’s being generated.
To get the structure of f(x) properly set up, the founding team will initially act as ‘initiators’ and ‘guardians’ of the ecosystem. The role of the team will be similar to being a gatekeeper to prevent any bad actors or stakeholders playing foul. At the same time, the team will facilitate good players to grow within the ecosystem. Once the f(x) ecosystem is up and running, the role of the founding team will be irrelevant and phased out. The long term intention of the team is to step away, allowing the ecosystem to run and flourish by itself.
UtilityIn this section, we will explore the utility of the f(x) Coin. f(x) Coin is the native ‘currency’ of the Function X blockchain and ecosystem. All services rendered in the ecosystem will be processed, transacted with, or “fueled” by the f(x) Coin. Some of the proposed use cases include:
Example 1: A developer creates a ride-hailing DApp called DUber.
DUber developer first uploads the image and data to IPFS (storage) and code to DDocker, respectively. The developer then pays for a decentralized code hosting service provided by the DDocker, and a decentralized file hosting service provided by the IPFS. Please note the storage hosting and code hosting services can be provided by a company, or by a savvy home user with smart nodes connected to the Function X ecosystem. Subsequently, a DUber user pays the developer.
Example 2: User Alice sends an imaginary token called ABCToken to Bob.
ABCToken is created using Function X smart contract. Smart nodes hosted at the home of Charlie help confirms the transaction, Charlie is paid by Alice (or both Alice and Bob).
The flow of f(x) CoinFour main participants in f(x): Consumer (blue), Developer (blue), Infrastructure (blue), and Financial Service Provider (green)
Broadly speaking, there can be four main participants in the f(x) ecosystem, exhibited by the diagram above:
Figure: four main participants of the ecosystem The rationale behind f(x) Coin generation is the Proof of Service concept (PoS)Service providers are crucial in the whole f(x) Ecosystem, the problem of motivation/facilitation has become our priority. We have to align our interests with theirs. Hence, we have set up a Tipping Jar (similar to mining) to motivate and facilitate the existing miners shift to the f(x) Ecosystem and become part of the infrastructure service provider or attract new players into our ecosystem. Income for service provider = Service fee (from payer) + Tipping (from f(x) network generation)
The idea is that the f(x) blockchain will generate a certain amount of f(x) Coin (diminishing annually) per second to different segments of service provider, such as in the 1st year, the f(x) blockchain will generate 3.5 f(x) Coin per second and it will be distributed among the infrastructure service provider through the Proof of Service concept. Every service provider such as infrastructure service providers, developers and financial service providers will receive a ‘certificate’ of Proof of Service in the blockchain after providing the service and redeeming the f(x) Coin.
Example: There are 3 IPFS providers in the market, and the total Tipping Jar for that specific period is 1 million f(x) Coin. Party A contributes 1 TB; Party B contributes 3 TB and Party C contributes 6 TB. So, Party A will earn 1/10 * 1 million = 100k f(x) Coin; Party B will earn 3/10 * 1 million = 300k f(x) Coin. Party C will earn 6/10 * 1 million = 600k f(x) Coin.
Note: The computation method of the distribution of the Tipping Jar might vary due to the differences in the nature of the service, period and party.
Figure: Circulation flow of f(x) Coin
The theory behind the computation.Blockchain has integrated almost everything, such as storage, scripts, nodes and communication. This requires a large amount of bandwidth and computation resources which affects the transaction speed and concurrency metric.
In order to do achieve the goal of being scalable with high transaction speed, the f(x) blockchain has shifted out all the ‘bulky’ and ‘heavy duty’ functions onto other service providers, such as IPFS, FXTP, etc. We leave alone what blockchain technology does best: Calibration. Thus, the role of the Tipping Jar is to distribute the appropriate tokens to all participants.
Projected f(x) Coin distribution per second in the first year
According to Moore’s Law, the number of transistors in a densely integrated circuit doubles about every 18 -24 months. Thus, the performance of hardware doubles every 18-24 months. Taking into consideration Moore’s Law, Eric Schmidt said if you maintain the same hardware specs, the earnings will be cut in half after 18-24 months. Therefore, the normal Tipping Jar (reward) for an infrastructure service provider will decrease 50% every 18 months. In order to encourage infrastructure service providers to upgrade their hardware, we have set up another iteration and innovation contribution pool (which is worth of 50% of the normal Tipping Jar on the corresponding phase) to encourage the infrastructure service provider to embrace new technology.
According to the Andy-Bill’s law, “What Andy gives, Bill takes away”; software will always nibble away the extra performance of the hardware. The more performance a piece of hardware delivers, the more the software consumes. Thus, the developer will always follow the trend to maintain and provide high-quality service. The Tipping Jar will increase by 50% (based upon the previous quota) every 18 months.
Financial service providers will have to support the liquidation of the whole ecosystem along the journey, the Tipping Jar (FaaS) will increase by 50% by recognizing the contribution and encouraging innovation.
From the 13th year (9th phase), the Tipping Jar will reduce by 50% every 18 months. We are well aware that the “cliff drop” after the 12th year is significant. Hence, we have created a 3year (two-phase) diminishing transition period. The duration of each phase is 18 months. There are 10 phases in total which will last for a total of 15 years.
According to Gartner’s report, the blockchain industry is forecast to reach a market cap of
3.1 trillion USD in 2030. Hence, we believe a Tipping Jar of 15 years will allow the growth of Function X into the “mature life cycle” of the blockchain industry.
f(x) Coin / Token AllocationToken allocation We believe great blockchain projects attempt to equitably balance the interests of different segments of the community. We hope to motivate and incentivize token holders by allocating a total of 65% of tokens from the Token Generation Event (TGE). Another 20% is allocated to the Ecosystem Genesis Fund for developer partnerships, exchanges and other such related purposes. The remaining 15% will go to engineering, product development and marketing. There will be no public or private sales for f(x) tokens.
NPXS / NPXSXEM is used to make crypto payments as easy as buying bottled water, while f(x) is used for the operation of a decentralized ecosystem and blockchain, consisting of DApps and other services. NPXS / NPXSXEM will continue to have the same functionality and purpose after the migration to the Function X blockchain in the future. Therefore, each token will be expected to assume different fundamental roles and grant different rights to the holders.
65% of allocation for NPXS / NPXSXEM holders is broken down into the following: 15% is used for staking (see below) 45% is used for conversion to f(x) tokens. (see below) 5% is used for extra bonus tasks over 12 months (allocation TBD).
Remarks All NPXS / NPXSXEM tokens that are converted will be removed from the total supply of NPXS / NPXSXEM; Pundi X will not convert company's NPXS for f(x) Tokens. This allocation is designed for NPXS/NPXSXEM long term holders. NPXS / NPXSXEM tokens that are converted will also be entitled to the 15% f(x) Token distribution right after the conversion.
UsageManagement of the Ecosystem Genesis Fund (EGF)
The purpose of setting up the Ecosystem Initialization Fund, is to motivate, encourage and facilitate service providers to join and root into the f(x) Ecosystem and, at the same time, to attract seed consumers to enrich and enlarge the f(x) Ecosystem. EIF comes from funds raised and will be used as a bootstrap mechanism to encourage adoption before the Tipping Jar incentives fully kicks in.
The EGF is divided into 5 parts:
SummaryTime moves fast in the technology world and even faster in the blockchain space. Pundi X’s journey started in October 2017, slightly over a year ago, and we have been operating at a lightning pace ever since, making progress that can only be measured in leaps and bounds. We started as a blockchain payment solution provider and have evolved into a blockchain service provider to make blockchain technology more accessible to the general public, thereby improving your everyday life.
The creation of Function X was driven by the need to create a better suited platform for our blockchain point-of sale network and through that process, the capabilities of Function X have allowed us to extend blockchain usage beyond finance applications like payment solutions and cryptocurrency.
The complete decentralized ecosystem of Function X will change and benefit organizations, developers, governments and most importantly, society as a whole.
The XPhone prototype which we have created is just the start to give everyone a taste of the power of Function X on how you can benefit from a truly decentralized environment. We envision a future where the XPOS, XPhone and other Function X-enabled devices work hand-in-hand to make the decentralized autonomous ecosystem a reality.
You may wonder how are we able to create such an extensive ecosystem within a short span of time? We are fortunate that in today’s open source and sharing economy, we are able to tap onto the already established protocols (such as Consensus algorithm, FXTP, etc), software (like Android, IPFS, PBFT, Dockers, etc.) and hardware (design knowledge from existing experts) which were developed by selfless generous creators. Function X puts together, aggregates and streamlines all the benefits and good of these different elements and make them work better and seamlessly on the blockchain. And we will pay it forward by making Function X as open and as decentralized as possible so that others may also use Function X to create bigger and better projects.
To bring Function X to full fruition, we will continue to operate in a transparent and collaborative way. Our community will continue to be a key pillar for us and be even more vital as we get Function X up and running. As a community member, you will have an early access to the Function X ecosystem through the f(x) token conversion.
We hope you continue to show your support as we are working hard to disrupt the space and re-engineer this decentralized world.
ReferencePractical Byzantine Fault Tolerance
Byzantine General Problem technical paper
Global mobile data revenues to reach $630 billion by 2020
NPXSXEM token supply
NPXS circulating token supply and strategic purchaser
[total supply might differ from time to time due to token taken out of total supply aka “burn”]
ELC: SpaceX lessons learned (PBFT mentioned) https://lwn.net/Articles/540368/
[index]