New port: games/libtmcg: C++ library for creating secure and fair online card games

This commit is contained in:
Yuri Victorovich 2019-06-03 05:01:36 +00:00
parent 2300ad0f5d
commit 25b53e1d50
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=503348
5 changed files with 91 additions and 0 deletions

View File

@ -513,6 +513,7 @@
SUBDIR += libmaitretarot
SUBDIR += libmt_client
SUBDIR += libshhcards
SUBDIR += libtmcg
SUBDIR += lightsoff
SUBDIR += lightyears
SUBDIR += lincity

28
games/libtmcg/Makefile Normal file
View File

@ -0,0 +1,28 @@
# $FreeBSD$
PORTNAME= libtmcg
DISTVERSION= 1.3.18
CATEGORIES= games security
MASTER_SITES= SAVANNAH
DISTNAME= libTMCG-${DISTVERSION}
MAINTAINER= yuri@FreeBSD.org
COMMENT= C++ library for creating secure and fair online card games
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libgcrypt.so:security/libgcrypt \
libgpg-error.so:security/libgpg-error \
libgmp.so:math/gmp
USES= gmake libtool localbase:ldflags
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-static
INSTALL_TARGET= install-strip
INFO= libTMCG
.include <bsd.port.mk>

3
games/libtmcg/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1559536683
SHA256 (libTMCG-1.3.18.tar.gz) = dddb3ad01ef4056dfe74697e9df80466458cba99dc3124f58349e33aba2c2b9d
SIZE (libTMCG-1.3.18.tar.gz) = 1175591

19
games/libtmcg/pkg-descr Normal file
View File

@ -0,0 +1,19 @@
LibTMCG is a C++ library for creating secure and fair online card games. The
library provides 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 (TTP), i.e. neither a
central game server nor trusted hardware components are necessary. Thus, with
the present library there is no need for an independent referee, because the
applied protocols provide a basic level of confidentiality and fairness by
itself. Consequently, the library is well-suited for peer-to-peer (P2P)
environments where no TTP is available. 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.
WWW: https://www.nongnu.org/libtmcg/

40
games/libtmcg/pkg-plist Normal file
View File

@ -0,0 +1,40 @@
bin/libTMCG-config
include/BarnettSmartVTMF_dlog.hh
include/BarnettSmartVTMF_dlog_GroupQR.hh
include/CachinKursawePetzoldShoupSEABP.hh
include/CallasDonnerhackeFinneyShawThayerRFC4880.hh
include/CanettiGennaroJareckiKrawczykRabinASTC.hh
include/GennaroJareckiKrawczykRabinDKG.hh
include/GolleDCPG_elgamal.hh
include/GrothVSSHE.hh
include/HooghSchoenmakersSkoricVillegasVRHE.hh
include/JareckiLysyanskayaASTC.hh
include/NaorPinkasEOTP.hh
include/PedersenCOM.hh
include/PedersenVSS.hh
include/SchindelhauerTMCG.hh
include/TMCG_Card.hh
include/TMCG_CardSecret.hh
include/TMCG_OpenStack.hh
include/TMCG_PublicKey.hh
include/TMCG_PublicKeyRing.hh
include/TMCG_SecretKey.hh
include/TMCG_Stack.hh
include/TMCG_StackSecret.hh
include/VTMF_Card.hh
include/VTMF_CardSecret.hh
include/aiounicast.hh
include/aiounicast_nonblock.hh
include/aiounicast_select.hh
include/libTMCG.hh
include/mpz_helper.hh
include/mpz_shash.hh
include/mpz_spowm.hh
include/mpz_sprime.hh
include/mpz_sqrtm.hh
include/mpz_srandom.hh
include/parse_helper.hh
lib/libTMCG.so
lib/libTMCG.so.18
lib/libTMCG.so.18.0.0
share/aclocal/libTMCG.m4