What is LUCKYNANO ? Who is behind it ?

LUCKYNANO is a community-driven casino based on the DAG cryptocurrency NANO. It is the only currency accepted and distributed on the website, and was created as an intiative to provide a real use case for NANO, back in January 2018. It was entirely devised by one developper, Emulord a.k.a Steven Lefebvre, whom you can contact whenever needed via e-mail at, or on Reddit (u/Emul0rd), or Discord.

LUCKYNANO delivers a neat and fair gambling experience to the players. The small casino edge is partly used to rent the infrastructure used by the website, and another portion goes to free redistribution to the players, in the form of free games distributed on a regular basis that reward with real money.

As updates are made to the website, more and more features are integrated to create a real community around it, and actually reward the players with NANO — directly or indirectly — for being active.

Are all games fair on LUCKYNANO? If so, how are wins generated?

Absolutely, all the games are 100% fair and completely randomized. Contrary to physical casinos, LUCKYNANO relies purely on statistics and uniform probability disribution to generate games. This means that any possible outcome to a game strictly has the same chance of happening than any other, and that every game is independant from the last. There is a small house edge in every game. It ranges from less than a percent in Dice to up to 5% for American Roulette, and is mostly used to rent the servers and for free NANO giveaways led by the casino.

All the direct gambling games — meaning all games except Poker — use a pre-generation algorithm of the upcoming games, whose legitimacy can be verified by using SHA256 hashing tools such as this one. Every game hash depends on the one before it, to make sure that it is impossible for the owner to forge the outcome of a game to get advantage out of it. The only execption to this is when a new chain of games is generated — the server ran out of pre-generated hashes. This dependance on hashes doesn't allow for prediction of a future outcome, and doesn't affect statistics, due to the very nature of SHA256 hashing. This guarantees a provably fair experience.

Some technical details (hey, we have to!): Since LUCKYNANO v1.0, the back-end algorithm to generate games has moved from the PHP server to a Node.js server. We thought that it was an ideal time to re-conceive our code from the ground up, as we were willing to keep it private while being as provably fair as an open-source one. We ended up using the following libraries:

  • crypto: This library is integrated in Node.js core, and provides a crytographically secure random bytes generator.
  • big-integer: This NPM library allows for the handling of extremely big numbers that JS normally fails at interpreting.

    The principal of generation is fairly simple:

  • our server first generates a random 64 hexadecimal characters (256-bit) seed using the randomBytes(32) function of the crypto library.
  • This seed is stored and from there, 500 more hashes — 2500 for Slots, as each of the 5 reels has to be randomized independently — are derived using the createHash('sha256') function of the crypto library. The first hash derives from the seed itself, the second from the first, the third from the second, and so on. The 500 games are kept in a array and ready to be used whenever a player places a bet.
  • When a bet is placed, the server picks the latest unrevealed generated hash and uses it as a base for calculating the outcome of the current game. Basically, it reads the list of generated hashes in reverse order, as a SHA256 hash cannot be reverted to predict the outcome of the next game.
  • In the case of Dice, the server has to return a value between 0 and 99,999 to the player. It works exactly the same way for Slots — the server must pick on which fruit it will stop —, and Roulette — a number between 0 and 37 must be drawn, but we will focus on the example of Dice. To calculate the desired number, we use the big-integer library to turn our random hash into its equivalent (huge) integer number. For instance, the following hash:


    is an equivalent representation of the number:


    a number more than 1050 times bigger than the amount of stars in the universe. Remember that any number between 0 and the one above could be drawn with the exact same probability — and this is far from the biggest integer that can be extracted from a 64-char hexadecimal chain. Talk about fair randomization ! ;-)
  • Finally, this extremely big integer is divided by the maximal value expected + 1. For Dice, we thus divide the above number by 100,000. The remainder is the winning number, in this case 62,336.
  • Fun fact: this hash was actually issued in a Dice game.

  • What happens when an incorrect wallet address is submitted for withdrawals?

    Due to the nature of the NANO network, when a send block is generated, the funds associated cannot be recovered. We do verify that the wallet address that you provided for withdrawals is in a correct format (64 characters, beginning with xrb_ or nano_), but if you happen to misspell it or lose the seed/password to recover your wallet, funds withdrawn will be lost and impossible to recover.

    We will save the last withdrawal address that you provided, to prevent you from going through the process of copy-pasting it the next time, limiting risks of an error happening.

    Why is there currently a restriction (time/amount) on withdrawals?

    Firstly to avoid fraud. As we distribute money for free, setting a high enough limit for it to require more effort from people trying to exploit giveaways is important. Still, we do our best to keep it at as negligible levels as possible.
    The time and amount restrictions act as a way of preventing too small transactions from spamming our node / team members, and guarantee a reasonable processing time for everyone.

    Why is my withdrawal not instant?

    The transaction may need manual processing. You will receive a mail notification when the transaction is complete (generally under a business day, more like from almost instant to a few hours).

    Why is there a restriction (time/amount) on deposits?

    As of now, LuckyNano only runs one node to handle deposits. The time and amount restrictions act as a way to prevent too small transactions from spamming our server, and guarantee a reasonable transaction completion time (receive blocks will be generated faster).

    Why is my transaction not complete yet ?

    NANO transactions are reputed to be instant. This is correct, but it does take a few seconds for your computer and our server to generate and broadcast their respective send / receive blocks. If your latest deposit does not show up in a timely manner, please double-check the amount that you sent, and wait up to a few minutes. Don't hesitate to contact our support team if the issue persists longer than expected.

    What does "Profit-based fee" mean in Poker game?

    When you leave a Poker table, LuckyNano takes a small fee (depending on the table that you were playing on), proportionnal to the profit you made. There is no fee to sit at a Poker table and begin playing, and you won't be asked any fee in the case you made a negative profit, or simply end with an even balance.


    Please send an email to our team, specifying your account name / email address at:

    You can also join us on Discord or Reddit (links right below).