mainLibTMCG - Summary

 
 
Membership Info
Project Admin:
2 active members

Group identification
Id: #7256
System Name: libtmcg
Name: LibTMCG
Group Type: non-GNU software and documentation

Search in this Group

in
   

This project is not part of the GNU Project.

LibTMCG is a C++ library for creating secure and fair online card games. The library contains a sort of useful classes, algorithms, and high-level protocols to support an application programmer in writing such software.

The most remarkable feature is the absence of a trusted third party, i.e., neither a central game server nor trusted hardware components are necessary. Thus, it is well-suited for peer-to-peer (P2P) environments.

The implementation is based primarily on two academic research papers:
First, Christian Schindelhauer, A Toolbox for Mental Card Games, Technical Report A-98-14, University of L├╝beck, 1998, and second, Adam Barnett, Nigel P. Smart, Mental Poker Revisited, Cryptography and Coding 2003, Lecture Notes in Computer Science 2898, pages 370-383, 2003.

Of course, we cannot avoid that malicious players share information about their private cards, but the protocols ensure that the shuffle of the deck is performed randomly (presumed that at least one player is honest) and thus the cards will be distributed uniformly among the players. Further, no coalition can learn the private cards of a player against his will (except for trivial conclusions). The corresponding cryptographic problem, actually called ``Mental Poker'', has been studied since 1979 (Shamir, Rivest, and Adleman) by many authors. LibTMCG provides the first practical implementation of such protocols.

The security and the verifiability rely on advanced cryptographic techniques---the so-called zero-knowledge proofs. Using these `building blocks' the high-level protocols minimize the effect of coalitions and preserve the confidentiality of the players' strategy, i.e., the players are not required to reveal their cards at the end of the game to show that they did not cheat. This important property is often required in card games like Poker. For many operations of Schindelhauer's toolbox the library provides optimized protocols based on standard cryptographic assumptions like Decisional Diffie Hellman (DDH). Therefore a reasonable level of performance is obtained.

Registration Date: Sat 22 Jan 2005 04:38:29 PM UTC
License: GNU General Public License v2 or later
Development Status: 5 - Production/Stable

 

Latest News rss feed
Distributed Key Generation and Threshold Decryption for OpenPGP
     posted by stamer, Fri 02 Jun 2017 07:56:50 PM UTC - 0 replies

LibTMCG now contains experimental support of Distributed Key Generation (DKG) and Threshold Decryption for the ElGamal Cryptosystem. There is some basic integration for OpenPGP (RFC 4880). However, for the message exchange of DKG protocol ...


[Read more]
LibTMCG 1.3.1 released
     posted by stamer, Thu 25 May 2017 06:58:39 PM UTC - 0 replies

Small enhancements have been added. In particular, the class VSSHE now provides a simple variant of SetupGenerators_publiccoin().

LibTMCG 1.3.0 released
     posted by stamer, Sat 13 May 2017 06:06:02 PM UTC - 0 replies

This is mainly a bugfix release that removes some issues found by Coverity Scan. However, there are also some new undocumented protocols and experimental support for distributed key generation (DKG) has been added. The most important change is a verifiable setup of VTMF group generator. For some advanced protocols (e.g. Groth's shuffle) with more than two parties the distributed coin flipping protocol (EDCF) should be used.

LibTMCG 1.2.0 released
     posted by stamer, Sat 31 Dec 2016 04:29:51 PM UTC - 0 replies

After a year of work we proudly present LibTMCG 1.2.0.

The default security parameters have been updated to current state of the art. The complexity of hash function g() was improved. Unfortunately, this breaks compatibility with instances that have been compiled with older versions of LibTMCG. ...


[Read more]
[Submit News]
[13 news in archive]

Back to the top


Powered by Savane 3.1-cleanup1