Before the round starts, pick a 64 digit number, and publish its sha256 hash.
Each player picks a digit 0 through 9 when they buy their ticket. Publish each player's number alongside their entry.
When all the tickets are sold, put the 10 player digits on the end of your 64 digit number, re-hash it, and use that hash to decide the winner. (For instance, take the first 4 bits of the hash. If they are in the range 0 through 9, you have a winner, else add one to your 64 digit number and repeat).
Publish the 64 digit number and the 10 player digits. Then each player can verify that you didn't cheat.
There's still a slight problem in that you could buy the last ticket. Since you know the other 9 players' digits and the 64 digit number, you can try all ten possibilities for the your own choice of digit and probably find one that makes you win. I don't see a way around that at the moment.
Doesn't sound like it would be too hard to implement, also when a player buys a ticket that number is locked in, I can't pick that number. If someone has ticket #5 I can't also buy ticket #5.
Another issue with these style raffles - there is no end date. Raffles usually sell the most at the start and just before closing.
I cannot tell if I lost a game currently.
They end when all of the tickets are purchased, I could set expiration dates but not sure how to handle the money on the spent tickets, since there isnt enough to do a payout.
I guess I could return the coins (minus a fee perhaps).