Ethbet - decentralized, peer-to-peer, and provably-fair Ethereum-based dicing game without a house edge.

  • Ethbet is a decentralized, peer-to-peer, and provably-fair Ethereum-based dicing game without a
    mandatory house edge. Ethbet is able to offer bets without a house edge because players bet directly
    against other players instead of against a centralized house. The disadvantage of this is that in order to
    place a bet, there must be another party willing to place the same bet. For this reason it is possible that
    a player must wait for their desired bet to take place, especially if it is very large. To combat this, an
    additional feature of an optional player-defined house edge is added, allowing players to offer and take
    (‘call’) bets with any house edge that they desire. Thus, a player that prioritizes speed over their
    expected return can agree to a bet that gives him a slight disadvantage (i.e., a bet that gives his
    opponent a small house edge). Similarly, a player that is patient and prioritizes their expected return can
    offer bets that the formerly mentioned player may choose to call. This results in a model where players
    are effectively able to become their own casinos, allowing market forces to provide players with bets as
    quickly as possible at the best possible rates. The Ethbet protocol features an efficient off-chain
    matchmaking relay in order to allow players to quickly and cheaply communicate their intent. The
    protocol can also be extended to support betting using any Ethereum-based (ERC20) token and for use
    with other games.

    Gambling Without a House Edge

    A house edge is a statistical bias in favor of the house, so that the house has a slight advantage in every
    bet. House edges of various games found in physical casinos often range from 2% to 15%, with some
    games having a low house edge (such as craps) and other games having a higher house edge (such as
    slot machines). With the advent of online gambling using cryptocurrencies, various websites offer
    players relatively lower house edges, such as 1%. Although 1% sounds like a low house edge, one must
    keep in mind that this house edge is applied to every individual bet. Thus, if a player only places one
    bet, they are expected to lose 1% of it, on average. But it’s likely that most players will want to bet
    more than just once. If a player places 100 bets, they are expected to lose 1% of each of those 100 bets,
    making it increasingly difficult for the player to turn a profit, inevitably leading to gambler’s ruin (the
    player running out of funds). This is how dice sites are able to consistently generate steady streams of
    profit for their owners and investors – they slowly but surely make sure that the more people play, the
    more likely they are to lose all of their money to the house.

    Betting without a house edge saves players much more than a trivial amount. Because a player’s
    expected loss can be zero for every bet they make, they can now make hundreds or thousands of bets
    without statistically being likely to lose more and more of their money over time. With a house edge of

    0%, a player’s probability of gaining capital is equal to their probability of losing it – they are no longer

    making an inherently irrational decision with a negative expected gain.

    Provable Fairness
    Most modern cryptocurrency dicing sites offer provably-fair betting. This is done by having a client
    seed and a server seed. The client seed is picked by the client, often generated randomly by default. The
    server seed is picked by the server. The server then hashes its server seed using a secure cryptographic
    hash function (such as a sha2 or sha3 function) and provides the hash to the client before their roll.
    Then the client submits their client seed and bet information to the server, and the server combines both
    seeds, using a public algorithm to generate a random number. After the roll has been made, the client is
    able to view the server seed that was used, and can confirm that the server did not modify the client
    seed or the server seed, and therefore also the result of the roll. This results in a roll that is
    mathematically impossible to bias or otherwise predict by either party, given basic assumptions
    including that the client does not use a predictable seed, and that the hash function used is secure.
    Although this model of provable fairness is suitable for a client-server model, it cannot be performed in
    a smart contract, as the blockchain is public information and no fully-unbiased source of entropy exists.
    Most solutions put fourth to securely generate a random number on the Ethereum blockchain pose
    significant downsides, as there are too many actors that are able to influence the blockchain when
    money is at stake. For example, if the hash of the next Ethereum block was used as a source of
    randomness, then a miner can choose to modify a block before they publish it, or can decide against
    publishing a block altogether, depending on if it is favorable to them. Given that there have already
    been notable instances of miners acting selfishly in a way that hurts other users, this is not an
    acceptable solution.
    RANDAO1 attempts to solve the problem of untrustable miners by effectively crowd-sourcing entropy.
    Anyone who wants to participate in RANDAO may contribute to its pool of entropy, and is
    incentivized to do so as they are paid a small reward, which RANDAO in turn collects from those that
    call its contract. It would take every participant to collude with one another in order to manipulate the
    result2. Unfortunately it takes a wait time of several blocks for RANDAO to be statistically confident
    that a miner has not manipulated its pool of entropy. RANDAO is also limited in the amount of entropy
    that it can provide per unit of time, and potentially per unit of ether.
    A similar algorithm called the Signidice3 algorithm is being used by early versions of DAO.Casino4, a
    blockchain protocol designed for provably-fair gambling. Although sound from a statistical and gametheoretic
    point of view, this algorithm is computationally expensive, relatively complex, and has been

    used less frequently in production settings. This RNG method is best implemented in a separate smart
    contract that has a large amount of participants that are unable to collude among each other. Due to the
    complexity and amount of risks involved with this algorithm, we have chosen not to adopt it.
    One solution which is used by Etheroll5 and others is to use Oraclize6 and random.org7 to generate a
    random number. Oraclize is a service that fetches external (outside of the blockchain) data for use on
    the blockchain. Oraclize makes a call to, returning the integer roll from, the id
    associated with it, and a TLSNotary proof8, showing that Oraclize did not modify the result. As the id
    associated with the bet (returned from is supplied as well, it can be shown that Oraclize
    only made one call to for every call it was requested to make. This solution has two
    downsides, the first being that it introduces a liability of depending on Oraclize, which is not desired.
    The second is that must be trusted to provide a secure random number. This solution is
    currently implemented in at least one decentralized dicing game due to the lack of appealing and
    efficient alternatives. Performing statistical analysis on the results that have been returned from
    Oraclize via, it appears that this solution has thus far succeeded (with high probability) in
    its goal of providing a source of entropy that is unbiased. Although the previously mentioned issue of a
    miner choosing not to publish a block if it would result in a RNG output that is detrimental to them reoccurs
    in this scenario (with Oraclize instead of the miner, however), a single instance of this occurring
    could be detected as there would be a gap in the integer IDs returned from If,
    hypothetically, Oraclize attempted to game this system, it could only be done once before it ceases to
    work (as they would no longer be trusted afterwards).
    An additional solution is currently being tested by Oraclize9. This solution involves a hardware random
    data source that is integrated with the Ethereum network. The random bytes generated by the data
    source are periodically published onto the Ethereum network along with a proof that they have not been
    modified. Although fully functional, it is currently only available on the testnet. When available on the
    mainnet, this will likely become the best option to use for Ethbet’s source of randomness. Until that
    period, the aforementioned solution that has an additional liability of is scheduled to be
    used for Ethbet.

    The Optional Player-Defined House Edge
    Placing bets with a house edge of 0% does not come without a disadvantage, i.e., a bet can only take
    place if there are two parties that wish to make it. As bets are significantly more advantageous for
    players when made with a 0% (or otherwise negligible) house edge, network effects may cause the
    majority of players to use Ethbet, as it will be more profitable than other betting alternatives. Even with
    this, however, it may be possible that players are not content with the amount of time they have to wait

    between bets, especially for larger bets, which fewer players are willing to call. To solve this problem,
    an optional feature is added: allow players to offer and call bets with a player-defined house edge.
    With the ability for players to offer and call bets with an arbitrary player-defined house edge, the
    problem of large wait times for bets can now be solved with negligible downsides. Players are
    effectively able to become their own casinos within Ethbet, setting their own house edge. As every
    player that offers bets is competing against other players to have their bets taken, they are incentivized
    to set their house edge as low as possible.
    For example, if a player wants to make a very large bet, they may be incentivized to offer a house edge
    to whoever calls the bet, so that they do not have to wait too long for someone to bet against them. This
    player decides to prioritize speed over their proportional expected gain.
    Similarly, if a player has a large amount of ETH and wishes to make a profit over time with it (with
    high or variable probability), they can offer bets with a small house edge in their favor, making it easier
    for others to play the game while giving them a small profit over time for their service. This player is
    providing ‘bet liquidity’ to Ethbet by acting as their own casino, and in return is rewarded with a house
    edge in their favor.

    Profit Model
    The profit model of Ethbet has several aspects which cause Ethbet tokens to appreciate in value:
    The Ethbet smart contract will take a small portion of the house edge that is offered by players. This
    only occurs for bets with a nonzero house edge. As an example, suppose that a player offers a bet of 1
    ETH with a house edge of 1% in their favor. This player’s expected gain would normally be 0.01 ETH.
    If the Ethbet smart contract were to take a 10% cut of their expected gain, this would change their
    expected gain to 0.009 ETH. Thus the player would win a total of 1.009 ETH instead of 1.01 ETH,
    decreasing their profit by slightly less than 0.1%, or less than 1/1000th. The portion of the house edge
    that Ethbet takes is decided by token holders. This house edge can then be converted to EBET by smart
    contract so that the value of EBET tokens increases. This could be done via an external protocol such
    as 0x, or by an Ethbet smart contract.
    In addition to this, it’s possible for Ethbet to charge a small fee on top of bets. Because Ethbet is not the
    house and is instead a matchmaking platform, this fee does not need to be high like in other dicing
    platforms. No matter how low this fee is, it is raw profit for Ethbet, as Ethbet has no funds at risk
    during play. This value will be able to be decided by token holders. Profit from this is also converted
    into EBET tokens, increasing their demand as a consequence.
    Although token holders can vote on these values, they are incentivized not to set these values to be
    unreasonable, or less users would use Ethbet, and the value of their tokens would decrease. For
    example, token holders would never vote to charge a fee higher than alternative dicing platforms offer,
    or the platform would be unable to compete with them. Thus we are able to leverage wisdom of the
    crowds in order to effectively optimize the profitability and competitiveness of the Ethbet platform.

    Ethbet Tokens (EBET)

    For the purposes of decentralization, enforcing beneficial market incentives, decentralized governance,
    further developmental funding, and future endeavors of Ethbet, an Ethbet token (EBET) will be created
    on top of the Ethereum network. This will be a standard ERC20 token, and thus will be secure, easy to
    store, use, and trade, as wallets and exchanges already have the needed technical infrastructure to
    interface with tokens that implement the ERC20 interface. For the technical details of the ERC20
    specification, see the EIP on Github16.
    The Ethbet token will be used as currency for the Ethbet platform and protocol. In order to provide
    incentives to run Ethbet relays as described later in this paper, a small fee is charged for the service of
    matchmaking. This fee is dynamic and fluctuates based off of the bet liquidity of the platform. For
    example, if few users are offering bets, the fee can be low or even negative, compared to a higher fee
    when many users are offering bets. The profit that Ethbet smart contracts generate that is not in EBET
    can be converted to EBET by having the smart contract purchase it, either via a third party smart
    contract such as 0x or via an Ethbet smart contract. This buy-back feature allows the price of EBET to
    appreciate as the platform becomes more widely used. In addition to this, it is possible for token
    holders to vote on a burn rate that can be used by Ethbet. A burn rate would cause the smart contract to
    destroy a small portion of EBET that are used, causing the currency to become deflationary.
    In addition to this functionality, token holders are eligible to vote on Ethbet Improvement Proposals
    (Ethbet IPs). An Ethbet IP is a proposed change to Ethbet, such as modifying the fees that Ethbet
    charges. Rather than having a single entity decide on this proposal, the proposal will be voted on by
    those who hold Ethbet tokens, with their voting weight being linearly proportional to the amount of
    tokens that they hold. This way the holders of EBET are able to optimize Ethbet in the direction that
    they see most desirable.


    Those wishing to invest in Ethbet via purchasing Ethbet tokens will have the opportunity to do so via
    the Ethbet crowdsale. The funds received from the crowdsale go to fund the further development of
    Ethbet, including third-party contract security audits and further web/application development. The
    crowdsale will last for 4 weeks and is set to begin on September 17th, 2017, 8:00 PM UTC. All
    information relevant to the crowdsale is available in the below table.

    The intended funding allocation from the proceeds of the crowdsale will depend largely on the amount
    of tokens purchased. With a low amount of funding, the project will be able to fully fund necessary
    operations such as smart contract development, user experience development (interfaces to interact
    with the smart contracts, written primarily in JS and HTML), and security audits of all critical
    infrastructure including smart contracts.
    With larger amounts of funding, more ambitious goals can be set. These goals include funding large
    advertisement campaigns to promote Ethbet, decreasing the barrier to entry for Ethbet by promoting
    additional efforts towards user experience and ease of use, overcoming legal barriers to more
    widespread adoption, and additional projects involving other types of gambling and games on the
    blockchain. As we cannot anticipate how many tokens will be sold or account for future unknown
    values, we cannot yet provide information showing exactly what proportion of funds will be allocated
    to which of these goals.
    The maximum possible tokens supply is 10,000,000 EBET. Of those, up to 75% (7,500,000) can be
    purchased during the crowdsale. If all of these were purchased on the first day of the crowdsale (+50%
    tokens), that would make the theoretical maximum possible funding 7,500,000 / 1,500 = 5,000 ETH,
    ensuring that there is no possibility the project is significantly over-funded. For more information about
    the crowdsale or to participate in it, visit

    How to take part in the Ethbet Crowdsale

    1. Wait until September 17th, 8PM UTC. This will occur in 6 days and 8 hours.

    2. Use a wallet that supports tokens, such as MyEtherWallet, Metamask, Parity, or

    3. Move Ethereum into your wallet. Ethereum is the only currency that is
    accepted in the Ethbet crowdsale. If you do not have Ethereum, you can buy it
    from websites such as Coinbase, or use a
    service such as Shapeshift to exchange other
    cryptocurrencies for Ethereum. Be sure to securely store and back up your
    private key.

    4. Send the desired amount of ETH to the crowdsale wallet address below (not yet
    shown). Set your 'gas' to 200,000 for
    a smooth transaction. You will receive 1,000 EBET plus an early investor bonus
    per ETH that you send. The current investor bonus will be displayed.

    More detailed information will be posted prior to the date of the crowdsale. If you have
    any questions about the crowdsale, don't hesitate to send us an email.

    Do not send ETH from an exchange wallet such as Coinbase, Poloniex, and
    many others. These
    wallets do not support ERC20 tokens, including Ethbet. Your tokens will
    be lost if you use a wallet that does not support tokens.

    Do not participate in the crowdsale if you have not read or do not
    understand the risks involved with
    platforms such as Ethereum and Ethbet.

    Do not attempt to participate in the crowdsale if you are a resident of
    the United States. Although our token is likely no longer considered a security federally
    and by all or most states, there are still many other potential legal complications involved with selling
    to US residents.

    The Ethbet Protocol

    The Ethbet protocol is a description of what information users need to relay to each other in order to
    signal their intent to bet assets. This protocol is open, meaning that it can be implemented and executed
    by any actor. There is no need to use a specific website, browser, or even medium of communication, as

    the information can be exchanged via any method including email, a forum post, or a physical message.
    In addition to this, the protocol is extendable in that it can be modified for use with not just Ether, but
    also with any ERC20 token on the Ethereum blockchain. This would allow users not only to bet with
    each other using Ether, but also any other Ethereum-based token. The original version and deployment
    of the Ethbet protocol will focus on Ether, leaving the option of arbitrary ERC20 token support for a
    later period.
    The Ethbet protocol closely mirrors the protocol outlined in the 0x whitepaper20, as the Ethbet protocol
    has almost the same goal’s as 0x’s: 0x intends to allow users to exchange tokens with each other, while
    Ethbet intends to allow users to bet tokens with each other. The following example demonstrates a
    scenario of two users using the Ethbet protocol to make a bet with each other. In this example ‘Maker’
    is the user that offers a bet and ‘Caller’ is the user that accepts that offer:
    1. Maker approves the Ethbet contract to access their balance that they intend to wager
    2. Maker creates an offer to bet their balance, specifying their desired amount, edge and bet expiration
    time, then signs this offer with their private key, proving both their their ownership and intent
    3. Maker broadcasts their bet via any medium. Theoretically the best place to broadcast a bet will be an
    Ethbet relay, but there is no reason why it cannot be posted on a forum or sent via an email, as it is only
    a string (text)
    4. Caller reads the bet offer from Maker and decides they would like to call it
    5. Caller approves the Ethbet contract to access their balance as well
    6. Caller submits the Maker’s signed order to the contract
    7. The Ethbet contract authenticates Maker’s signature, verifies that the bet has not expired and that the
    bet has not already been called
    8. The Ethbet contract executes the bet and transfers the bet amount between the two parties based off
    of the outcome.
    The primary method of communication with the Ethbet protocol is intended to be via relays, as outlined
    in the previous section. The full protocol description of Ethbet is not yet finalized, but the information
    and format of it will be relatively standard, containing the parameters of a bet (amount, edge,
    expiration, and later on, asset type), as well as the necessary information to secure it, including a
    cryptographic hash function like SHA3 and an ECDSA signature from the private key of the

    Development Timeline

    At the time of the crowdsale, the Ethbet token and Ethbet crowdsale contracts will be deployed on the
    mainnet and fully functional, as necessary for the crowdsale to occur. The code in these smart contracts
    is a relatively standard and lightweight implementation of the ERC20 standard, and the possibility for
    critical bugs is small in comparison to that of more complex and novel contracts, such as the primary
    Ethbet game contract. If a significant problem occurs that is recoverable, the necessary steps will be

    taken to remedy the situation. For example, if there was somehow a critical flaw in the Token contract,
    allowing someone to steal all Ethbet Tokens, we could fix the problem, deploy the new token contract
    (with the problem fixed), and restore the balances of all users, migrating the entire platform to the
    newer version of the token, similar to what happened with Ethereum and the DAO. An issue like this is
    is very unlikely to occur unless it is caused by a problem within Ethereum itself, as the Ethbet Token is
    nearly isomorphic to most Ethereum (ERC20) tokens, so a critical problem with one could indicate the
    same problem with many others.
    After the crowdsale is complete, Ethbet tokens will become unfrozen and can then be sent to other
    users. At this time the development of the primary game contract will proceed. This is a relatively
    lengthy process despite the simplicity of the game architecture. The general timeline is as follows:
    1. Develop primary contract functionality and tests
    2. Extensively test and audit the contract for potential flaws
    3. Deploy the contract onto the testnet
    4. Allow users to interact with the contract during a beta period
    5. Continue to improve the contract as needed
    6. Perform final third-party security audit(s)
    7. Deploy the contract onto the mainnet
    8. Continue to improve non-contract code, such as improving accessibility and user interfaces,
    only updating the contract to fix critical issues or to later implement new features.

    In addition to this, there’s other developmental overhead, such as the off-blockchain relay and various
    user-interfaces required to interact with Ethbet in a user-friendly fashion. In order to make interaction
    with the smart contract user-friendly and simple, users will be able to interact with it via the Mist
    browser, giving them an experience similar to traditional websites, but while still interfacing only with
    smart contracts for their betting.

    Q1 2017 Market research, feasibility assessment, other planning– completed
    Q2 2017 Website and Whitepaper – completed
    Q3 2017 Crowdsale, live demo, development, and community building – in progress
    Q4 2017 Continuation of development and other improvements, alpha/beta launches
    Q1 2018 Full launch, playerbase building, community growth, further improvements as needed
    Q2 2018+ Additional features, projects, games, advertising, and community building



    white paper:








Looks like your connection to Cryptocentral was lost, please wait while we try to reconnect.