docs.bitcoincomputer.io
Open in
urlscan Pro
2606:4700::6812:191
Public Scan
URL:
https://docs.bitcoincomputer.io/
Submission: On February 04 via api from US — Scanned from DE
Submission: On February 04 via api from US — Scanned from DE
Form analysis
0 forms found in the DOMText Content
Bitcoin Computer Bitcoin Computer Getting started Tutorial Api Examples Videos Getting Help Jobs Powered By GitBook Bitcoin Computer Javascript Smart Contracts on Bitcoin SIMPLE DEVELOPMENT The Bitcoin Computer makes smart contract development easy: A smart contract is a Javascript class. You can create an object from the class and store it on the blockchain. The object can be updated by calling a function. You can share the location of the object with other users and gain consensus over the state of the object. This makes is easy to build games, messengers, social networks, NFTs, fungible tokens, stable coins, exchanges, auctions, voting, office applications, artificial intelligence, every application you can think of. The integration into web applications is seamless. Often the entire backend can be replaced by a smart contract which can vastly simplify development. LOW FEES On other blockchains fees are charged for every computational step and for every memory allocation. On Bitcoin there is no fee per computational step or memory allocation. This is because smart contracts are evaluated by users as opposed to by miners. The only fee that needs to be paid is for the block space required to encode the name of the function being called and its parameters. This is mostly less than a few cents. It is possible, for the first time, to run compute and memory intense programs as smart contracts. HIGH THROUGHPUT We are launching on Litecoin. In the future we want to support all currencies in the Bitcoin family. Between these blockchains, the Bitcoin Computer will have a maximum throughput of over 300 transactions per second. If one of these blockchains scales exponentially with hardware the throughput of the Bitcoin Computer scales exponentially over time. HOW IT WORKS Bitcoin had support for tokens before Ethereum existed. Tokens were built on colored coin protocols. Colored coins allow users to encode updates to data structures in Bitcoin transactions. Other users can parse these transactions to compute the latest state of the data structure. Each colored coin protocol comes with a fixed set of update types and only protocol developers can add new transaction types. This limits the speed at which applications can evolve. The Bitcoin Computer is an improvement over previous colored coin protocols by supporting arbitrary user defined data types and all computable updates. This is achieved by simulating memory cells in unspent transaction outputs (utxos). When a memory cell is updated a Bitcoin transaction spends the utxo representing the old state of that memory cell and creates an utxo representing the new state. The Bitcoin Computer creates a shared memory on the blockchain. This utxo based memory can do things that normal memory cannot do: utxos can store satoshis so that money can be stored in an atomic unit with data. Only users that can unlock the output script can spend a utxo. Thus the right to update data in the Bitcoin memory can also be restricted by Bitcoin Script. This leads to a natural notion of data ownership, enforced by Bitcoin's mining network. Data structures and updates are specified in Javascript. When a new object is created, a transaction encoding the class and the arguments to the constructor is broadcast. When a function is called, the name of the function as well as its parameters are stored as metadata on a transaction. Other users can parse the transactions and compute the latest state of the data structure, just like in a traditional colored coin. The computation required to evaluate smart contracts is shifted from the most expensive computing devices (blockchains) to the cheapest ones (user hardware). Users do not consider electricity cost for computation, even when running demanding software like games or video editing. Client side validation enables arbitrary computation at a fixed cost. This is the biggest advantage of smart contracts on Bitcoin as it will make it possible to build all applications, even compute intense ones, as smart contracts. Like for all colored coins, users only need to perform computation for objects they are interested in. This makes it possible to run a smart contract that requires a supercomputer to evaluate without bothering other users. Application development with the Bitcoin Computer can be compared to web development. The biggest difference is that Javascript objects can be persisted directly on the blockchain via the client side Bitcoin Computer library. This makes it possible to build applications without a server. Plus it's cool to run smart contracts on Bitcoin. DOWNLOAD FROM NPM npm: bitcoin-computer-lib npm Next Getting started Last modified 10d ago Was this page helpful? Copy link Contents Simple Development Low Fees High Throughput How it Works Download from NPM Cookies Reject all This site uses cookies to deliver its service and to analyse traffic. By browsing this site, you accept our cookie policy.