diff --git a/data.ds2014/blastmaster_pentanews_gameshow_pt2.yaml b/data.ds2014/blastmaster_pentanews_gameshow_pt2.yaml new file mode 100644 index 0000000..da30464 --- /dev/null +++ b/data.ds2014/blastmaster_pentanews_gameshow_pt2.yaml @@ -0,0 +1,170 @@ +--- !Question +question: Mit welcher Verschluesselung kommuniziert das Ampelsystem von Michigan? +answers: + - false: aes + - false: ssl + - true: keine Verschluesselung + - false: gpg +tier: 1 +game_round: 1 + +--- !Question +question: Wofuer steht ASLR? +answers: + - true: Adress Space Layout Randomization + - false: A Secret Lawyer Recommendation + - false: Accelerated Sea-Level Rise + - false: Age, Sex, Location, Race +tier: 2 +game_round: 1 + +--- !Question +question: Wie hoch ist der Preis fuer den Schluessel fuer den Synology Trojaner? +answers: + - true: 0,6 Bitcoin + - false: over9000 Euro + - false: 2,50 Mark + - false: 10.000 Dollar +tier: 3 +game_round: 1 + +--- !Question +question: Was ist ICREACH? +answers: + - true: Suchmaschine fuer Vorratsdaten der US Behoerden + - false: Wlan-Kuehlschrank mit Backdoor + - false: Ein Umweltprogramm der DB + - false: Ein Typo auf abwegen +tier: 4 +game_round: 1 + +--- !Question +question: Was soll in Karlinfornien ab 2015 verpflichtend jedes Smartphones besitzen? +answers: + - true: Kill Switch + - false: Kamera + - false: Kindersicherung + - false: Pornfilter +tier: 5 +game_round: 1 + +--- !Question +question: Wegen was ist der ehemalige Mozilla CEO Branden Eich zurueckgetreten? +answers: + - true: Spenden an Prosposition 8 + - false: Sexuellebelaestigung + - false: propritaerer Software + - false: schlechtem Kaffee +tier: 6 +game_round: 1 + +--- !Question +question: Was ist keine SSL Implementierung? +answers: + - false: GnuTLS + - false: BoringSSL + - false: MatrixSSL + - true: FreeSSL +tier: 7 +game_round: 1 + +--- !Question +question: Finde das Patent? +answers: + - true: Fotografieren vor weisen Hintergrund + - false: Sechseckige Tasten + - false: Datenspuren Stuff Please Do not Touch Zettel + - false: jegliche Python Programmierung +tier: 8 +game_round: 1 + +--- !Question +question: Wie ist die Postleitzahl des Internet Kurorts? +answers: + - true: 502 + - false: 404 + - false: 403 + - false: 503 +tier: 9 +game_round: 1 + +--- !Question +question: In welchen Land wurde jemand verhaftet weil er Waffen mit einem 3D-Drucker herstellte? +answers: + - true: Japan + - false: USA + - false: Deutschland + - false: Frankreich +tier: 10 +game_round: 1 + +--- !Question +question: Wer ist nach Meinung der Bundesregierung kein Element der Menge alle? +answers: + - true: Angela Merkel + - false: Edward Snowden + - false: Obama + - false: die Queen +tier: 11 +game_round: 1 + +--- !Question +question: Welches AntiViren Programm hat tcpip.sys als Virus endeckt? +answers: + - true: Kaspersky AntiVirus + - false: F-Secure AntiVirus + - false: McAfee AntiVirus + - false: Norton AntiVirus +tier: 12 +game_round: 1 + +--- !Question +question: Welche End-to-End Verschluesselungsmethode feierte im Dezember 2013 ihren 16. Jahrestag? +answers: + - true: GPG + - false: S/MIME + - false: SSL + - false: OTR +tier: 13 +game_round: 1 + +--- !Question +question: Welche Art des Protestes waehlte ein russischer Kuenstler gegen den Polizeistaat? +answers: + - true: die Hoden auf den Rote Platz nageln + - false: die Koerperhygiene zu verweigern + - false: Polizeiserver anzugreifen + - false: Blumen auf Polizeiautos malen +tier: 14 +game_round: 1 + +--- !Question +question: Welche Firma warb mit Auslieferung von Binary Blobs von OpenSource? +answers: + - false: Mozilla + - true: Cisco Systems + - false: Microsoft + - false: Google +tier: 15 +game_round: 1 + +--- !Question +question: Was hat die IT-Administration vom EU-Parlament gemacht? +answers: + - false: Verschluesselung von E-Mails gefoerdert + - true: Verschluesselung von E-Mails verboten + - false: Neue Crypto fuer E-Mails entwickelt + - false: E-Mail als Kommunikationsmittel abgeschafft +tier: 16 +game_round: 1 + +--- !Question +question: Adobe hat seine Triple DES verschluesselt und gesalteten Passwoerter verloren. Warum ist das doof? +answers: + - false: Weil sie den Schluessel mit verloren haben? + - true: Weil sie die Passwort-Hints mit verloren haben? + - false: Weil sie die klartext Passwoerter daneben liegen hatten? + - false: Weil sie Verantwortlich fuer Flash sind? +tier: 17 +game_round: 1 + diff --git a/data.ds2014/murx.yaml b/data.ds2014/murx.yaml new file mode 100644 index 0000000..c959d8e --- /dev/null +++ b/data.ds2014/murx.yaml @@ -0,0 +1,179 @@ +--- !Question +question: Welcher Diktator hat in diesem Jahr Twitter waehrend Unruhen sperren lassen? +answers: + - false: Putin + - false: Assad + - true: Erdogan + - false: Kim Jung Un +tier: 1 +game_round: 1 + +--- !Question +question: wie wurden alternative dns-server, um die twitter-sperre in der Tuerkei diesen jahres zu umgehen, verbreitet? +answers: + - false: Ueber Brieftauben + - true: Ueber Graffiti + - false: Ueber Lautsprecherdurchsagen + - false: Ueber Banner +tier: 2 +game_round: 1 + +--- !Question +question: welches betriebssystem hat dieses jahr durch supportstop, man koennte sagen, ausgedient? +answers: + - true: Windows XP + - false: Windows Vista + - false: Mac OS9 + - false: Ubuntu 13.04 +tier: 3 +game_round: 1 + +--- !Question +question: Wem ist die Domain rms.sexy gewidmet? +answers: + - false: Richard Stahlman + - true: Richard Stallman + - false: Richard Simmons + - false: Rosy Mandy Sugar +tier: 4 +game_round: 1 + +--- !Question +question: Was von dem folgenden ist ca-cert? +answers: + - true: eine Community + - false: ein Social Network + - false: ein Friend-to-Friend-Network + - false: Ein Krankhaus +tier: 5 +game_round: 1 + +--- !Question +question: Wieviel Speicher hat der Heartbleed-bug in openssl geleaked? +answers: + - false: 128mb + - true: 64kb + - false: 32kb + - false: 128kb +tier: 6 +game_round: 1 + +--- !Question +question: wie heisst ein Fork von Openssl, der nach dem bekanntwerden des Heartbleed-bugs enstanden ist? +answers: + - false: lovessl + - true: libressl + - false: liberssl + - false: securessl +tier: 7 +game_round: 1 + +--- !Question +question: Was hat sich Amazon 2014 patentieren lassen? +answers: + - false: das Versenden von Packeten per Drohnen + - true: das Fotografieren auf weissem Hintergrund + - false: das Erstellen von .mobi Dateien + - false: das Fotografieren auf schwarzem Hintergrund +tier: 8 +game_round: 1 + +--- !Question +question: wie alt waere Karl Koch dieses Jahr geworden? +answers: + - false: 23 + - false: 42 + - true: 49 + - false: 67 +tier: 9 +game_round: 1 + +--- !Question +question: Welcher ist Karl Kochs Todestag? +answers: + - false: 05. November 1984 + - true: 23. Mai 1989 + - false: 09. November 1989 + - false: 13. September 1984 +tier: 10 +game_round: 1 + +--- !Question +question: wieviele Daten zu IP-Adress-Inhabern hat die Telekom wegen Urheberechtsverletzungen nach dem letzten Transparenzbericht herausgegeben? +answers: + - false: ca. 1000 + - true: ca. 1.000.000 + - false: ca. 10.000 + - false: ca. 100.000 +tier: 11 +game_round: 1 + +--- !Question +question: Wie hat ein saechsischer Hacker die nsa.gov seite gehackt? +answers: + - true: mit einer Cross-Side-Scripting Luecke + - false: mit einer Man-In-The-Middle-Attacke + - false: mit Social-Engineering + - false: mit Gewalt +tier: 12 +game_round: 1 + +--- !Question +question: Wie ist der nickname von dem ehemaligen lulzsec-hacker, welcher fuer das fbi gearbeitet hat und seine crew-mitglieder verraten hat? +answers: + - false: apu + - true: sabu + - false: nabu + - false: babu +tier: 13 +game_round: 1 + +--- !Question +question: von wem hat lulzsec kreditkartendaten entwendet und damit geld an Hilfsorganisationen Uebwerwiesen? +answers: + - false: playstation-network + - false: weisse haus + - true: stratfor + - false: Paypal +tier: 14 +game_round: 1 + +--- !Question +question: wer hat den grimme-online-award 2014 in der kategorie Initiative und Gesamtverantwortung bekommen? +answers: + - false: krautchan.net + - false: heise.de + - true: netzpolitik.org + - false: c3d2.de +tier: 15 +game_round: 1 + +--- !Question +question: was ist in diesem jahr beerdigt worden? +answers: + - false: bestandsdatenauskunft + - true: no-spy-abkommen + - false: indect + - false: CETA +tier: 16 +game_round: 1 + +--- !Question +question: wie heisst der erste deutsche email-provider der einen transparenzbericht vorgestellt hat? +answers: + - true: posteo + - false: gamma + - false: telekom + - false: united Internet +tier: 17 +game_round: 1 + +--- !Question +question: wenn ein hacker neuerdings von herzbluten spricht, dann meint er? +answers: + - false: lovoo.de-Datenbank-Leak + - true: openssl-Bug + - false: java-exploit + - false: Einstellung von Windows XP +tier: 18 +game_round: 1 diff --git a/data.ds2014/pngs14-koeart.yaml b/data.ds2014/pngs14-koeart.yaml new file mode 100644 index 0000000..a720eed --- /dev/null +++ b/data.ds2014/pngs14-koeart.yaml @@ -0,0 +1,319 @@ +#--- !Question +#question: What are users in Facebook called? +#answers: +# - false: Hostage +# - false: Victims +# - true: Target +# - false: Product +#tier: 2 +#game_round: 1 +#media: +# question: +# - pix/facebook.jpg +# - pix/facebook-jail.png +# explanation: +# - videos/big-buck-bunny_trailer.webm +# +--- !Question +question: Wie hat das FBI nach eigenen Angaben die Silkroad Seite hops genommen? +answers: + - false: Werbung geschaltet + - false: die NSA um Hilfe gefragt + - true: die Captcha Funktion angegriffen + - false: Ross Ulbricht hat sich gestellt +tier: 1 +game_round: 1 + +--- !Question +question: Suzan G. LeVine, die US-Botschafter in der Schweiz, schor ihren Amtseid auf +answers: + - false: einem iPad + - false: der Bibel + - false: der Schweizer Verfassung + - true: einem Kindle +tier: 2 +game_round: 1 + + +--- !Question +question: Was muss in einer SMS stehen um ein WIKO Android Smartphone zum Reboot zu zwingen? +answers: + - false: \!reboot + - true: \= + - false: \]; shutdown -r now \n + - false: 6662342 +tier: 3 +game_round: 1 + +--- !Question +question: Was verloste die saechsische Polizei als Preis ihres WM-Tippspiels? +answers: + - false: eine Nacht in der Ausnuechterungszelle (mit Fruehstueck) + - false: einen Kanister Pfefferspray + - true: Fahrt mit dem Wasserwerfer + - false: bei der naechsten Anti-Nazi Demo am 13. Februar ohne Platzverweis eine Sitzblockade machen zu duerfen +tier: 4 +game_round: 1 + +--- !Question +question: Wie wiele Stille SMS wurden 2013 von der Berliner Polizei versendet? +answers: + - true: 73.000 + - false: 145.000 + - true: 250.000 + - false: 310.000 +tier: 5 +game_round: 1 + + +--- !Question +question: M w A h GBA H R g? (Mit welchen Akronymen hadert Generalbundesanwalt Harald Range gelegentlich?) +answers: + - false: CIA und AIC + - false: BND und NPD + - true: NSA und NASA + - false: ISS und ISIS +tier: 6 +game_round: 1 + +--- !Question +question: Wie lange brauchte die Verwaltung der Stadt Dresden um die Datenbasis der Freifunk-Hotspots im Themenstadtplan zu aktualisieren? +answers: + - false: 24 Stunden + - true: 48 Stunden + - false: 2 Wochen + - false: 2 Monate +tier: 7 +game_round: 1 + +--- !Question +question: Auf welche verschluesselung verweisen die Macher von TrueCrypt als "sichere" Alternative? +answers: + - false: FileVault (Apple) + - false: SafeGuard (Sophos) + - false: Luks (u. a. Debian) + - true: BitLocker (Microsoft) +tier: 8 +game_round: 1 + +--- !Question +question: Was ist das besondere an dieser Schriftart? +answers: + - true: stammt vom Schild eines Obdachlosen + - false: gewann den Nerdcore fuer hervorragende Typografie + - false: naechste iOS Standardschrift + - false: reduziert die Kreditwuerdigkeit, da er von einer Gambling-Seite installiert wird +tier: 9 +game_round: 1 + +--- !Question +question: Wer speichert wann du und was du spielst, zum Beispiel Spiele wie Angry Birds und WoW? +answers: + - false: GCHQ + - false: C3D2 + - false: BND + - true: NSA +tier: 10 +game_round: 1 + +--- !Question +question: Wieviele Gaeste waren auf dem 30c3? +answers: + - false: 1337 + - false: 8080 + - false: 4223 + - true: over 9000 +tier: 1 +game_round: 2 + +--- !Question +question: Welche Hackergruppe speiste 2007 eine Atombombenexplosion in den Stream einer Webcam ein, welche gerade Live in einer TV-Sendung namens Panorama zu sehen war? +answers: + - false: Anonymous + - false: LulzSec + - false: ScriptKiddiz + - true: Ztohoven +tier: 2 +game_round: 2 + +--- !Question +question: Welcher Inhalt wird fuer private Haushalte in Großbritannien automatisch gefiltert und von wem? +answers: + - false: Flugblaetter theisistischer Sekten, von der Kirche + - true: Pornografie, vom Interprovider + - false: Streptokokken, vom Wasserwerk + - false: Werbung fuer Fremdangebote, vom Mobilfunknetzbetreiber +tier: 3 +game_round: 2 + +--- !Question +question: Wie nenn die NSA Angriffe ueber fingierte Hardware wie USB-Geraete oder Monitorkabel? +answers: + - false: Tim Access Operations + - false: Easy Access Operations + - true: Tailored Access Operations + - false: Suitable Access Operations +tier: 4 +game_round: 2 + +--- !Question +question: Auf welche Absicherungstechnik plant die Bundesregierung demnaechst zurueck zu greifen um ihre Dokumentenerzeugnisse zu sichern? +answers: + - false: Voynich-Chiffre + - false: Enigma + - true: Schreibmaschine + - false: Stenographie +tier: 5 +game_round: 2 + +--- !Question +question: Als was stuft die NSA jeden TOR-Nutzer automatisch ein? +answers: + - true: Extremist + - false: Terrorist + - false: Torrorist + - false: Zwiebelfreund +tier: 6 +game_round: 2 + +--- !Question +question: Als Gregor Gysi dem Bundestagspraesident Norbert Lammert erklaert, dass auch dieser von der NSA abgehoert wird, entgegnete dieser Ja, aber im Unterschied zu Ihnen... +answers: + - false: war ich nicht in der SED + - true: trage ich es mit Fassung + - false: verschluessel ich Mails mit 2048 Bit + - false: ist die NSA Affaere fuer mich beendet. +tier: 7 +game_round: 2 + +--- !Question +question: Wie heisst der neue EU Minister fuer Digitales? +answers: + - false: Karl Theodor von Guttenberg + - false: Roland Koch + - true: Guenther Oettinger + - false: Jan Philipp Albrecht +tier: 8 +game_round: 2 + +--- !Question +question: Wer betreibt KEINE Glasfasernetze der Bundeswehr? +answers: + - true: Telekom + - false: KPN + - false: Interoute + - false: GasLINE +comment: Interroute ist bekannt aus den Snowden Dokumenten und arbeitet eng mit dem GCHQ zusammen +tier: 9 +game_round: 2 + +--- !Question +question: Was entgegnete das Bundeskartellamt der VG Media im Kartellverfahren gegen Google? +answers: + - false: Stimmt. + - false: Die Vorwuerfe werden geprueft + - false: Es erteilt keine Auskunft. + - true: Ihr schaut selber nach Kartell aus. +comment: Gnihihihihihi. +tier: 10 +game_round: 2 + +--- !Question +question: Von wie vielen Tieren gibt es Selfies in der Wikipedia? +answers: + - false: 1 + - true: 5 + - false: 6 + - false: 9 +tier: 11 +game_round: 2 +comment: DER Affe, Elefant, Otter, Irgendwas, ... + +--- !Question +question: Wie viele Seiten umfasst das Freihandelsabkommen CETA? +answers: + - false: 572 + - true: 1602 + - false: 1702 + - false: 12302 +tier: 1 +game_round: 3 +comment: Aktuelle Leak bei Netzpolitik.org erschienen + +--- !Question +question: Wer bekam den LAME EXCUSE PWNIE 2014? +answers: + - true: AVG + - false: Avira + - false: AMG + - false: IBM +tier: 2 +game_round: 3 +comment: Gegen Angriffe von innen heraus sind die meisten LANs nicht als Sicher einzustufen. Anmeldung am Server war durch manipulierten Client moeglich. + +--- !Question +question: Wie viel Prozent aller Server im Internet waren von Heartbleed betroffen? +answers: + - true: 17 Prozent + - false: 23 Prozent + - false: 42 Prozent + - false: 98 Prozent +tier: 3 +game_round: 3 +comment: Quelle WP Heartbleed Eintrag + +--- !Question +question: Welcher Regierungschef kritisierte kuerzlich die Internetzensur im eigenen Land? +answers: + - false: David Cameron + - true: Hassan Rohani + - false: Angela Merkel + - false: Li Keqiang +tier: 4 +game_round: 3 +comment: Hoffe es folgen Taten... + +--- !Question +question: Welche politische Reaktion gegenueber der USA zog die Bundesregierung nach dem Handygateskandal in Betracht? +answers: + - false: Botschafter ausweisen + - false: Kuendigung SWIFT + - true: sichere elektrische Kommunikation zum Thema machen + - false: Freihandelsabkommen aussetzen +tier: 5 +game_round: 3 +comment: s Dokument Netzpolitik + +--- !Question +question: Wieviele Asteroiden sind nach den Monty Pythons benannt? +answers: + - false: 5 + - false: 7 + - false: 12 + - true: 13 +tier: 6 +game_round: 3 +comment: Namen raussuchen! + +--- !Question +question: Was bot die Berliner Polizei nicht zum Kinderfest an? +answers: + - false: bla + - false: blub + - true: blabb + - false: Wasserwerfer fahren +tier: 7 +game_round: 3 +comment: BILDER! + +--- !Question +question: Die Zeit des General Purpose Backofens ist vorbei. Welches Gericht koennte man im iOfen nicht backen? +answers: + - false: Kartoffelgratin + - false: Pommes + - true: Lasagne + - false: Himmel und Erde +tier: 1 +game_round: 4 +comment: Als letzte Frage, You Dont Know Bernd Test + diff --git a/data.ds2014/questions.yaml b/data.ds2014/questions.yaml new file mode 100644 index 0000000..dea0345 --- /dev/null +++ b/data.ds2014/questions.yaml @@ -0,0 +1,187 @@ +#--- !Question +#question: What are users in Facebook called? +#answers: +# - false: Hostage +# - false: Victims +# - true: Target +# - false: Product +#tier: 2 +#game_round: 1 +#media: +# question: +# - pix/facebook.jpg +# - pix/facebook-jail.png +# explanation: +# - videos/big-buck-bunny_trailer.webm + + !Question +question: Wie hat das FBI nach eigenen Angaben die Silkroad Seite hops genommen? +answers: + - false: Werbung geschaltet + - false: die NSA um Hilfe gefragt + - true: die Captcha Funktion angegriffen + - false: Ross Ulbricht hat sich gestellt +tier: 1 +game_round: 1 +comment: Test + + !Question +question: Suzan G. LeVine, die US-Botschafter in der Schweiz, schor ihren Amtseid auf +answers: + - false: einem iPad + - false: der Bibel + - false: der Schweizer Verfassung + - true: einem Kindle +tier: 2 +game_round: 1 + + !Question +question: Was muss in einer SMS stehen um ein WIKO Android Smartphone zum Reboot zu zwingen? +answers: + - false: reboot + - true: \= + - false: ; shutdown -r now \n + - false: 6662342 +tier: 3 +game_round: 1 + + !Question +question: Was verloste die sächsische Polizei als Preis ihres WM-Tippspiels? +answers: + - false: eine Nacht in der Ausnüchterungszelle (mit Frühstück) + - false: einen Kanister Pfefferspray + - true: Fahrt mit dem Wasserwerfer + - false: bei der nächsten Anti-Nazi Demo am 13. Februar ohne Platzverweis eine Sitzblockade machen zu dürfen +tier: 4 +game_round: 1 + + !Question +question: Wie wiele Stille SMS wurden 2013 von der Berliner Polizei versendet? +answers: + - true: 73.000 + - false: 145.000 + - true: 250.000 + - false: 310.000 +tier: 5 +game_round: 1 + + + !Question +question: M w A h GBA H R g? (Mit welchen Akronymen hadert Generalbundesanwalt Harald Range gelegentlich?) +answers: + - false: CIA und AIC + - false: BND und NPD + - true: NSA und NASA + - false: ISS und ISIS +tier: 6 +game_round: 1 + + !Question +question: Wie lange brauchte die Verwaltung der Stadt Dresden um die Datenbasis der Freifunk-Hotspots im Themenstadtplan zu aktualisieren? +answers: + - false: 24 Stunden + - true: 48 Stunden + - false: 2 Wochen + - false: 2 Monate +tier: 7 +game_round: 1 + + !Question +question: Auf welche verschlüsselung verweisen die Macher von TrueCrypt als "sichere" Alternative? +answers: + - false: FileVault (Apple) + - false: SafeGuard (Sophos) + - false: Luks (u. a. Debian) + - true: BitLocker (Microsoft) +tier: 8 +game_round: 1 + + !Question +question: Was ist das besondere an dieser Schriftart? +answers: + - true: stammt vom Schild eines Obdachlosen + - false: gewann den Nerdcore für hervorragende Typografie + - false: nächste iOS Standardschrift + - false: reduziert die Kreditwürdigkeit, da er von einer Gambling-Seite installiert wird +tier: 9 +game_round: 1 + + !Question +question: Wer speichert wann du und was du spielst, zum Beispiel Spiele wie Angry Birds und WoW? +answers: + - false: GCHQ + - false: C3D2 + - false: BND + - true: NSA +tier: 10 +game_round: 1 + + !Question +question: Wieviele Gäste waren auf dem 30c3? +answers: + - false: 1337 + - false: 8080 + - false: 4223 + - true: over 9000 +tier: 1 +game_round: 2 + + !Question +question: Welche Hackergruppe speiste 2007 eine Atombombenexplosion in den Stream einer Webcam ein, welche gerade Live in einer TV-Sendung namens Panorama zu sehen war? +answers: + - false: Anonymous + - false: LulzSec + - false: ScriptKiddiz + - true: Ztohoven +tier: 2 +game_round: 2 + + !Question +question: Welcher Inhalt wird für private Haushalte in Großbritannien automatisch gefiltert und von wem? +answers: + - false: Flugblätter theisistischer Sekten, von der Kirche + - true: Pornografie, vom Interprovider + - false: Streptokokken, vom Wasserwerk + - false: Werbung für Fremdangebote, vom Mobilfunknetzbetreiber +tier: 3 +game_round: 2 + + !Question +question: Wie nenn die NSA Angriffe über fingierte Hardware wie USB-Geräte oder Monitorkabel? +answers: + - false: Tim Access Operations + - false: Easy Access Operations + - true: Tailored Access Operations + - false: Suitable Access Operations +tier: 3 +game_round: 2 + + !Question +question: Auf welche Absicherungstechnik plant die Bundesregierung demnächst zurück zu greifen um ihre Dokumentenerzeugnisse zu sichern? +answers: + - false: Voynich-Chiffre + - false: Enigma + - true: Schreibmaschine + - false: Stenographie +tier: 4 +game_round: 2 + + !Question +question: Als was stuft die NSA jeden TOR-Nutzer automatisch ein? +answers: + - true: Extremist + - false: Terrorist + - false: Torrorist + - false: Zwiebelfreund +tier: 5 +game_round: 2 + + !Question +question: Als Gregor Gysi dem Bundestagspräsident Norbert Lammert erklärt, dass auch dieser von der NSA abgehört wird, entgegnete dieser "Ja, aber im Unterschied zu Ihnen..." +answers: + - false: war ich nicht in der SED + - true: trage ich es mit Fassung + - false: verschlüssel ich Mails mit 2048 Bit + - false: ist die NSA Affäre für mich beendet. +tier: 6 +game_round: 2 diff --git a/data.ds2014/questions2json.py b/data.ds2014/questions2json.py new file mode 100755 index 0000000..d769dbb --- /dev/null +++ b/data.ds2014/questions2json.py @@ -0,0 +1,404 @@ +#!/usr/bin/env python + +# -*- coding: utf-8 -*- + +""" +Convert questions for the famous Penta News Game Show from +some yaml format to json. + +It's just a helper to write the questions in a more human +readeable format assuming yaml is more human readable + +Note: + - Media files are looked for relative to the questions file + - Media files are expected relative to the generated json files + +TODO: + * Add own constructor to Question() / nice to have + * Use import logging for debug logging +""" + +__author__ = "Frank Becker " +__version__ = "0.0.2" +__date__ = "Fri 18 Nov 2011 18:10:44 CET" +__copyright__ = "Copyright (c) 2011 Frank Becker" +__license__ = "Python" + +import os +import sys +import random +import json +from reportlab.lib.pagesizes import A5, LETTER, landscape, portrait +from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Image +from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle +from reportlab.lib.units import inch, cm +from reportlab.platypus.flowables import PageBreak +from optparse import OptionParser + +try: + import yaml +except ImportError: + print 'You need to install PyYAML first. E. g. "pip install pyyaml"' + + +class Question(yaml.YAMLObject): + """Represents a question + """ + yaml_tag = u"!Question" + web_root = "data" + + # Generate random points in range of points_per_round + gen_random_points = True + points_per_round = { + 1: (1, 100), + 2: (100, 1000), + 3: (10000, 100000), + 4: (5, 42), + 5: (13, 80), + } + + # {round_no1: [tier1, tier2, ...], round_no2: [tier1, ...]} + registered_questions = {} + + def __init__(self, question=u"", tier=0, answers=[], game_round=0, + media=("", "", ""), media_path="data", web_root="data"): + """docstring for __init__ + @question - the Question + @rank - number of the question in the game + @game_round - number of the round in the game + @answers - list of answers, assumed are 4 + @media - (media show at question time, media shown at answer time, + media shown at resolution time) + @media_path - path to the media files + """ + self.question = question + self.answers = answers + self.tier = tier + self.game_round = game_round + self.media = media + self.media_path = media_path + self.web_root = web_root + + def __type_by_extension(self, media_file): + """returns the media type looked up by it's extension + FIXME (a8): maybe use file magic in the future + + @media_file - path to the media file + """ + media_types = dict( + video = ('webm'), + image = ('png', 'jpg', 'gif'), + ) + if not os.path.isfile(media_file): + raise IOError("The file {0} does not exist.".format(media_file,)) + ext = media_file.rsplit('.', 1)[1] + for k, v in media_types.items(): + if ext in v: + return k + raise KeyError("Media type for {0} not found".format(media_file,)) + + def __repr__(self): + """docstring for __repr__""" + return "%s(%r)" % (self.__class__.__name__, self.question) + + def _get_points(self, game_round, tier): + """returns the points by game_round/tier combo""" + + points_fixed = { + 1: 100, + 2: 150, + 3: 225, + 4: 337, + 5: 506, + 6: 759, + 7: 1139, + 8: 1709, + 9: 2563, + 10: 3844, + 11: 5555, + 12: 7531, + } + + if not self.gen_random_points: + return points_fixed.get(tier, 0) + + range = self.points_per_round.get(game_round) + points = random.randint(*range) + return points + + @property + def as_dict(self): + """dump data suiteable for json conversion""" + + data = {} + data['text'] = self.question + data['tier'] = self._get_points(int(self.game_round), int(self.tier)) + try: + data['source'] = self.source + except AttributeError: + data['source'] = False + print self.question + print self.answers + data['answers'] = [ + {'text': answer[False]} if answer.has_key(False) \ + else {'text': answer[True], 'right': True} \ + for answer in self.answers + ] + if hasattr(self, 'media'): + def gen_questions(): + q_data = {} + for f in self.media['question']: + q_data[self.__type_by_extension( + os.path.sep.join(os.path.join([self.media_path, f])) + )] = os.sep.join([self.web_root, f]) + return q_data + def gen_explanation(): + """Sorry, hacky. Quick fix required only 1st element is taken""" + f = self.media['explanation'][0] + k = self.__type_by_extension(os.path.sep.join( + os.path.join([self.media_path, f]))) + v = [os.sep.join([self.web_root, expl]) \ + for expl in self.media['explanation']] + if v: + v = v[0] + else: + v = "" + return {'explanation': {k: v}} + #): os.sep.join([self.web_root, f]) + + #[os.sep.join([self.web_root, expl]) \ + # for expl in self.media['explanation']]} + def k_not_found(): + raise KeyError("Media keyword not found") + + for k in self.media.keys(): + m_data = dict( + question = gen_questions, + explanation= gen_explanation, + k_not_found = "lambda x: pass", + ).get(k, 'k_not_found')() + for key, value in m_data.items(): + data[key] = value + return data + + @property + def as_pdf_dict(self): + """Return full data set. Includes comment field""" + data = self.as_dict + try: + data['comment'] = self.comment + except AttributeError: + data['comment'] = "" + + return data + + + @classmethod + def get_points(cls): + """docstring for get_points""" + for key in sorted(cls.points.keys()): + yield cls.points[key] + + @staticmethod + def register_question(obj): + """register object in class so no question with the + same tier/round combo can exist""" + if Question.registered_questions.has_key(obj.game_round) and \ + obj.tier in Question.registered_questions[obj.game_round]: + raise IndexError("Slot for Question {0} is alredy taken".format( + obj.question,)) + elif Question.registered_questions.has_key(obj.game_round): + Question.registered_questions[obj.game_round].append(obj.tier) + else: + Question.registered_questions[obj.game_round] = [obj.tier] + + +def init_parser(): + """Read command line options + + returns: + options:dict -- config options + """ + parser = OptionParser() + + parser.add_option( + "-d", + "--debug", + dest="debug", + help="Toggle debugging", + action="store_true", + default=False, + ) + + parser.add_option( + "-f", + "--questions-file", + dest="file", + help=("Use this file instead of the default " + "questions.yaml"), + metavar="FILE", + default="questions.yaml" + ) + + parser.add_option( + "-p", + "--generate-pdf", + dest="pdf", + help=("Generate the speaker PDF"), + action="store_true", + default=False, + ) + + parser.add_option( + "-v", + "--version", + dest="version", + help="Show program version", + action="store_true", + default=False, + ) + + options = parser.parse_args()[0] + return options + +def questions_per_round(questions, game_round=None): + """docstring for questions_per_round""" + return [q for q in questions if q.game_round == game_round] + +def write_json_file(questions): + """docstring for write_json_file""" + game_round = questions[0].game_round + file_name = 'round_{0}.json'.format(game_round) + fh = open(file_name, 'w') + fh.writelines(json.dumps([q.as_dict for q in questions], indent=2)) + +def gen_pdf(questions, game_rounds): + """generate speaker PDF""" + + styles = getSampleStyleSheet() + doc = SimpleDocTemplate("pngs-speaker.pdf") + doc.pagesize = landscape(A5) + style = styles["Normal"] + page_elements = [] + for round in game_rounds: + for num, question in enumerate( + questions_per_round(questions, game_round=round)): + q_data = question.as_pdf_dict + page_elements.append( + Paragraph("Game Round: {0}".format(round), + style) + ) + page_elements.append(Spacer(0, 0.1*cm)) + page_elements.append( + Paragraph( + "Question {0}: {1}" + "".format(num + 1, q_data['text'].encode('utf-8')), + style) + ) + page_elements.append(Spacer(0, 0.2*cm)) + page_elements.append( + Paragraph("Comment: {0}".format(q_data.get('comment').encode('utf-8')), + style) + ) + page_elements.append(Spacer(0, 0.2*cm)) + page_elements.append( + Paragraph("Answers:", + style) + ) + page_elements.append( + Paragraph("* " + "
* ".join([unicode(t['text']) for t in q_data['answers']]), + style) + ) + page_elements.append( + Paragraph("Points: {0}".format(q_data.get('tier')), + style) + ) + page_elements.append(PageBreak()) + doc.build(page_elements) + return + + Story = [Spacer(0, 1*cm)] + p = Paragraph("Blubber1", styles["Normal"]) + Story.append(p) + p = Paragraph("Blubber2", styles["Normal"]) + Story.append(p) + Story.append(Spacer(10, 5*cm)) + p = Paragraph("Blubber3", styles["Normal"]) + Story.append(p) + #doc.build(Story, onFirstPage=myFirstPage, onLaterPages=myLaterPages) + doc.build(Story) + +def gen_answers_html(questions, game_rounds): + """generate html""" + fh = open("answers.html", 'w') + html_header = """ + + + + + + """ + html_footer = """ + + + + """ + #fh.write(html_header) + fh.write('\n') + #fh.write(html_footer) + fh.close() + +def main(): + """docstring for main""" + + options = init_parser() + if options.version: + print "Version: {0}".format(__version__,) + sys.exit() + + if options.file: + questions_fh = open(options.file) + else: + questions_fh = open('questions.yaml') + + questions = [] + for q in yaml.load_all(questions_fh.read()): + #FIXME (fb@alien8.de) 11-11-18 23:16:34 use yaml constructor + # yaml.add_constructor + Question.register_question(q) + if options.file: + q.media_path = os.path.abspath(os.path.dirname(options.file)) + questions.append(q) + if options.debug: + print Question.registered_questions + print [q.media for q in questions] + + game_rounds = sorted(Question.registered_questions.keys()) + for r in game_rounds: + write_json_file(questions_per_round(questions, game_round=r)) + if options.debug: + print "Written file for game round: {0}".format(r) + + if options.pdf: + gen_pdf(questions, game_rounds) + + #gen_answers_html(questions, game_rounds) + +if __name__ == '__main__': + main() + +# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4 fileencoding=utf-8 : + diff --git a/data.ds2014/round_1.json b/data.ds2014/round_1.json new file mode 100644 index 0000000..2325448 --- /dev/null +++ b/data.ds2014/round_1.json @@ -0,0 +1,203 @@ +[ + { + "tier": 4, + "text": "Wie hat das FBI nach eigenen Angaben die Silkroad Seite hops genommen?", + "answers": [ + { + "text": "Werbung geschaltet" + }, + { + "text": "die NSA um Hilfe gefragt" + }, + { + "text": "die Captcha Funktion angegriffen", + "right": true + }, + { + "text": "Ross Ulbricht hat sich gestellt" + } + ], + "source": false + }, + { + "tier": 92, + "text": "Suzan G. LeVine, die US-Botschafter in der Schweiz, schor ihren Amtseid auf", + "answers": [ + { + "text": "einem iPad" + }, + { + "text": "der Bibel" + }, + { + "text": "der Schweizer Verfassung" + }, + { + "text": "einem Kindle", + "right": true + } + ], + "source": false + }, + { + "tier": 64, + "text": "Was muss in einer SMS stehen um ein WIKO Android Smartphone zum Reboot zu zwingen?", + "answers": [ + { + "text": "\\!reboot" + }, + { + "text": "\\=", + "right": true + }, + { + "text": "\\]; shutdown -r now \\n" + }, + { + "text": 6662342 + } + ], + "source": false + }, + { + "tier": 28, + "text": "Was verloste die saechsische Polizei als Preis ihres WM-Tippspiels?", + "answers": [ + { + "text": "eine Nacht in der Ausnuechterungszelle (mit Fruehstueck)" + }, + { + "text": "einen Kanister Pfefferspray" + }, + { + "text": "Fahrt mit dem Wasserwerfer", + "right": true + }, + { + "text": "bei der naechsten Anti-Nazi Demo am 13. Februar ohne Platzverweis eine Sitzblockade machen zu duerfen" + } + ], + "source": false + }, + { + "tier": 66, + "text": "Wie wiele Stille SMS wurden 2013 von der Berliner Polizei versendet?", + "answers": [ + { + "text": 73.0, + "right": true + }, + { + "text": 145.0 + }, + { + "text": 250.0, + "right": true + }, + { + "text": 310.0 + } + ], + "source": false + }, + { + "tier": 63, + "text": "M w A h GBA H R g? (Mit welchen Akronymen hadert Generalbundesanwalt Harald Range gelegentlich?)", + "answers": [ + { + "text": "CIA und AIC" + }, + { + "text": "BND und NPD" + }, + { + "text": "NSA und NASA", + "right": true + }, + { + "text": "ISS und ISIS" + } + ], + "source": false + }, + { + "tier": 11, + "text": "Wie lange brauchte die Verwaltung der Stadt Dresden um die Datenbasis der Freifunk-Hotspots im Themenstadtplan zu aktualisieren?", + "answers": [ + { + "text": "24 Stunden" + }, + { + "text": "48 Stunden", + "right": true + }, + { + "text": "2 Wochen" + }, + { + "text": "2 Monate" + } + ], + "source": false + }, + { + "tier": 53, + "text": "Auf welche verschluesselung verweisen die Macher von TrueCrypt als \"sichere\" Alternative?", + "answers": [ + { + "text": "FileVault (Apple)" + }, + { + "text": "SafeGuard (Sophos)" + }, + { + "text": "Luks (u. a. Debian)" + }, + { + "text": "BitLocker (Microsoft)", + "right": true + } + ], + "source": false + }, + { + "tier": 4, + "text": "Was ist das besondere an dieser Schriftart?", + "answers": [ + { + "text": "stammt vom Schild eines Obdachlosen", + "right": true + }, + { + "text": "gewann den Nerdcore fuer hervorragende Typografie" + }, + { + "text": "naechste iOS Standardschrift" + }, + { + "text": "reduziert die Kreditwuerdigkeit, da er von einer Gambling-Seite installiert wird" + } + ], + "source": false + }, + { + "tier": 53, + "text": "Wer speichert wann du und was du spielst, zum Beispiel Spiele wie Angry Birds und WoW?", + "answers": [ + { + "text": "GCHQ" + }, + { + "text": "C3D2" + }, + { + "text": "BND" + }, + { + "text": "NSA", + "right": true + } + ], + "source": false + } +] \ No newline at end of file diff --git a/data.ds2014/round_2.json b/data.ds2014/round_2.json new file mode 100644 index 0000000..64baa1e --- /dev/null +++ b/data.ds2014/round_2.json @@ -0,0 +1,222 @@ +[ + { + "tier": 202, + "text": "Wieviele Gaeste waren auf dem 30c3?", + "answers": [ + { + "text": 1337 + }, + { + "text": 8080 + }, + { + "text": 4223 + }, + { + "text": "over 9000", + "right": true + } + ], + "source": false + }, + { + "tier": 742, + "text": "Welche Hackergruppe speiste 2007 eine Atombombenexplosion in den Stream einer Webcam ein, welche gerade Live in einer TV-Sendung namens Panorama zu sehen war?", + "answers": [ + { + "text": "Anonymous" + }, + { + "text": "LulzSec" + }, + { + "text": "ScriptKiddiz" + }, + { + "text": "Ztohoven", + "right": true + } + ], + "source": false + }, + { + "tier": 344, + "text": "Welcher Inhalt wird fuer private Haushalte in Gro\u00dfbritannien automatisch gefiltert und von wem?", + "answers": [ + { + "text": "Flugblaetter theisistischer Sekten, von der Kirche" + }, + { + "text": "Pornografie, vom Interprovider", + "right": true + }, + { + "text": "Streptokokken, vom Wasserwerk" + }, + { + "text": "Werbung fuer Fremdangebote, vom Mobilfunknetzbetreiber" + } + ], + "source": false + }, + { + "tier": 247, + "text": "Wie nenn die NSA Angriffe ueber fingierte Hardware wie USB-Geraete oder Monitorkabel?", + "answers": [ + { + "text": "Tim Access Operations" + }, + { + "text": "Easy Access Operations" + }, + { + "text": "Tailored Access Operations", + "right": true + }, + { + "text": "Suitable Access Operations" + } + ], + "source": false + }, + { + "tier": 113, + "text": "Auf welche Absicherungstechnik plant die Bundesregierung demnaechst zurueck zu greifen um ihre Dokumentenerzeugnisse zu sichern?", + "answers": [ + { + "text": "Voynich-Chiffre" + }, + { + "text": "Enigma" + }, + { + "text": "Schreibmaschine", + "right": true + }, + { + "text": "Stenographie" + } + ], + "source": false + }, + { + "tier": 697, + "text": "Als was stuft die NSA jeden TOR-Nutzer automatisch ein?", + "answers": [ + { + "text": "Extremist", + "right": true + }, + { + "text": "Terrorist" + }, + { + "text": "Torrorist" + }, + { + "text": "Zwiebelfreund" + } + ], + "source": false + }, + { + "tier": 631, + "text": "Als Gregor Gysi dem Bundestagspraesident Norbert Lammert erklaert, dass auch dieser von der NSA abgehoert wird, entgegnete dieser Ja, aber im Unterschied zu Ihnen...", + "answers": [ + { + "text": "war ich nicht in der SED" + }, + { + "text": "trage ich es mit Fassung", + "right": true + }, + { + "text": "verschluessel ich Mails mit 2048 Bit" + }, + { + "text": "ist die NSA Affaere fuer mich beendet." + } + ], + "source": false + }, + { + "tier": 123, + "text": "Wie heisst der neue EU Minister fuer Digitales?", + "answers": [ + { + "text": "Karl Theodor von Guttenberg" + }, + { + "text": "Roland Koch" + }, + { + "text": "Guenther Oettinger", + "right": true + }, + { + "text": "Jan Philipp Albrecht" + } + ], + "source": false + }, + { + "tier": 570, + "text": "Wer betreibt KEINE Glasfasernetze der Bundeswehr?", + "answers": [ + { + "text": "Telekom", + "right": true + }, + { + "text": "KPN" + }, + { + "text": "Interoute" + }, + { + "text": "GasLINE" + } + ], + "source": false + }, + { + "tier": 532, + "text": "Was entgegnete das Bundeskartellamt der VG Media im Kartellverfahren gegen Google?", + "answers": [ + { + "text": "Stimmt." + }, + { + "text": "Die Vorwuerfe werden geprueft" + }, + { + "text": "Es erteilt keine Auskunft." + }, + { + "text": "Ihr schaut selber nach Kartell aus.", + "right": true + } + ], + "source": false + }, + { + "tier": 202, + "text": "Von wie vielen Tieren gibt es Selfies in der Wikipedia?", + "answers": [ + { + "text": 1 + }, + { + "text": 5, + "right": true + }, + { + "text": 6 + }, + { + "text": 9 + } + ], + "source": false + } +] \ No newline at end of file diff --git a/data.ds2014/round_3.json b/data.ds2014/round_3.json new file mode 100644 index 0000000..1970019 --- /dev/null +++ b/data.ds2014/round_3.json @@ -0,0 +1,142 @@ +[ + { + "tier": 14400, + "text": "Wie viele Seiten umfasst das Freihandelsabkommen CETA?", + "answers": [ + { + "text": 572 + }, + { + "text": 1602, + "right": true + }, + { + "text": 1702 + }, + { + "text": 12302 + } + ], + "source": false + }, + { + "tier": 88074, + "text": "Wer bekam den LAME EXCUSE PWNIE 2014?", + "answers": [ + { + "text": "AVG", + "right": true + }, + { + "text": "Avira" + }, + { + "text": "AMG" + }, + { + "text": "IBM" + } + ], + "source": false + }, + { + "tier": 44847, + "text": "Wie viel Prozent aller Server im Internet waren von Heartbleed betroffen?", + "answers": [ + { + "text": "17 Prozent", + "right": true + }, + { + "text": "23 Prozent" + }, + { + "text": "42 Prozent" + }, + { + "text": "98 Prozent" + } + ], + "source": false + }, + { + "tier": 32554, + "text": "Welcher Regierungschef kritisierte kuerzlich die Internetzensur im eigenen Land?", + "answers": [ + { + "text": "David Cameron" + }, + { + "text": "Hassan Rohani", + "right": true + }, + { + "text": "Angela Merkel" + }, + { + "text": "Li Keqiang" + } + ], + "source": false + }, + { + "tier": 94543, + "text": "Welche politische Reaktion gegenueber der USA zog die Bundesregierung nach dem Handygateskandal in Betracht?", + "answers": [ + { + "text": "Botschafter ausweisen" + }, + { + "text": "Kuendigung SWIFT" + }, + { + "text": "sichere elektrische Kommunikation zum Thema machen", + "right": true + }, + { + "text": "Freihandelsabkommen aussetzen" + } + ], + "source": false + }, + { + "tier": 69547, + "text": "Wieviele Asteroiden sind nach den Monty Pythons benannt?", + "answers": [ + { + "text": 5 + }, + { + "text": 7 + }, + { + "text": 12 + }, + { + "text": 13, + "right": true + } + ], + "source": false + }, + { + "tier": 42479, + "text": "Was bot die Berliner Polizei nicht zum Kinderfest an?", + "answers": [ + { + "text": "bla" + }, + { + "text": "blub" + }, + { + "text": "blabb", + "right": true + }, + { + "text": "Wasserwerfer fahren" + } + ], + "source": false + } +] \ No newline at end of file diff --git a/data.ds2014/round_4.json b/data.ds2014/round_4.json new file mode 100644 index 0000000..9c24949 --- /dev/null +++ b/data.ds2014/round_4.json @@ -0,0 +1,22 @@ +[ + { + "tier": 38, + "text": "Die Zeit des General Purpose Backofens ist vorbei. Welches Gericht koennte man im iOfen nicht backen?", + "answers": [ + { + "text": "Kartoffelgratin" + }, + { + "text": "Pommes" + }, + { + "text": "Lasagne", + "right": true + }, + { + "text": "Himmel und Erde" + } + ], + "source": false + } +] \ No newline at end of file