Online Poker Security: Random Seed Size
In our discussion on online security and random numbers, we explained that the random seed must be large enough to encompass every possible order of cards and that even then, the deck must continue to be shuffled. Here's why...
A deck of 52 cards can be arranged quite a few ways. Consider if we just shuffled the deck and laid out all 52 cards in a row. There are 52 different cards that could be first, 51 different cards that could be second, 50 that could be third...so 52! is about 8.0659e+67 or 8 x 10 to the 67th different deck setups. A bit is a single unit of computational information. It is either a 0 or a 1. So a 8-bit string could look something like 01110100. 32-bit random seeds used to be considered safe for security purposes. This would be any arrangement of 0's and 1's, 32 characters long. Even assuming that the randomness used to create the individual 0's and 1's is safe, a 32-bit random seed could only generate 2 to the power of 32 different arrangements of cards. That would be 4,294,967,296 different decks, much less than the actual number of possibilities.
In poker, we see our own secret cards. In holdem, we see additional cards like the flop, turn, and river. In a game like omaha we see even more cards, and in seven-card stud even more than that. If we knew that there were only 4 billion possibilities of decks, only a certain number of them would have these cards in those positions. So if you had pocket aces, you could eliminate every other possible shuffle that contained your aces in those two positions in the deck. That would reduce the guesswork of which of those 4 billion decks it was. Specifically, it would be 4,294,967,296 ÷ 52 ÷ 51. That leaves us with 1,619,520 possible decks left. Then a flop comes, so we can now eliminate the remaining decks that have these three particular cards in three more positions. So eliminating all decks that don't match, (1,619,520 ÷ 50 ÷ 49 ÷ 48) that leaves us with 14 card arrangements left. So after the turn...well we'd be positive of the last card. Not to mention that the turn could only be one of 14 possibilities.
If we were playing a game where you know more cards or if you were colluding with another player, the possibilities begin to be limited even faster. As we proved above, with a 32-bit random seed we only need to know six cards to figure out the rest of the deck. That's why decks are shuffled even after the initial shuffle and that larger random seeds are used. A 226-bit seed would cover every possible combination of decks, and even higher ones are used to eliminate the repetition problem. The repetition problem is when there are x numbers of possibilities and you create a larger random number y. If y isn't divisible by x then the leftovers get reassigned to the original possibilities. Here's a very dumbed-down example:
You have a deck of just four cards, the four different aces. You somehow generate a truly random number between 0 and 5. You pull one card out of the deck based on the random number:
- If the number is 0 then we pull the Ace of Spades
- If the number is 1 then we pull the Ace of Hearts
- If the number is 2 then we pull the Ace of Diamonds
- If the number is 3 then we pull the Ace of Clubs
- If the number is 4 then we pull the Ace of Spades
- If the number is 5 then we pull the Ace of Hearts
...so you can see that in this setup the Ace of Spades or Ace of Hearts will most likely be the card pulled! The higher the number of possible shuffles, the smaller the repetition problem gets, and there are even other ways which involve certain shuffling methods to practically eliminate this.
Pius Heinz wins the 2011 World Series of Poker Main Event over Martin Staszko.
The second wave of U.S. indictments against online poker rooms fires out from Maryland.
Player Migration Begins
PartyPoker's attempts to woo poker players away from US-facing rivals.
Feds Indict Online Poker Operators
News about the April 15, 2011 federal online poker indictments.
Three Poker Book Gift Ideas
Three Poker Book Gift Ideas for the Holidays