1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
#!/usr/bin/python3
import random
import sqlite3
SCREENS = 2622
AVERAGE_SCREENS_PER_CINEMA = 4
def name(min_len=12, max_len=20):
return ''.join(random.choices("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ", k=random.randint(min_len, max_len)))
def email():
return name(4, 8) + "@" + name(5, 10) + ".com"
def certificate():
return """-----BEGIN CERTIFICATE-----
MIIEZDCCA0ygAwIBAgIBBTANBgkqhkiG9w0BAQsFADB9MRYwFAYDVQQKEw1kY3Bv
bWF0aWMuY29tMRYwFAYDVQQLEw1kY3BvbWF0aWMuY29tMSQwIgYDVQQDExsuZGNw
b21hdGljLnNtcHRlLTQzMC0yLlJPT1QxJTAjBgNVBC4THEhRTDR1ODV6OHFaSjBP
ZWJLbndIWkdSTndFUT0wHhcNMjQxMjIwMTQyMzM3WhcNMzQxMjE4MTQyMzM3WjB9
MRYwFAYDVQQKEw1kY3BvbWF0aWMuY29tMRYwFAYDVQQLEw1kY3BvbWF0aWMuY29t
MSQwIgYDVQQDExsuZGNwb21hdGljLnNtcHRlLTQzMC0yLlJPT1QxJTAjBgNVBC4T
HEhRTDR1ODV6OHFaSjBPZWJLbndIWkdSTndFUT0wggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQDGAvpPyIQ8BWBYZqqimNR8tpFMvPFlk+UkB0BlO+mt8rfi
tpkYVxZuvpsRCBqK9pEYvUnybp2bQHJCuG2lvAp1MTvn9t0TyON5w5BXbxyMKg8f
EvEKZvWsgCSupMw7TWvRebYidj7y51XmKF+p4vq9BOyV54MNPGwZWP1UVw6nJMr2
/jw1TR+iURdVYtQKMMc6jQp59EhE2FMpTGAe47LK/gSwZvsiXz9tJIf2xd6IELeA
CZ7D7eMe4TtApbYZofpIdEcOQye+O1Brl3UhsJJOAVrlAN8ya4P6IaSP20kMrFij
vZFfT8CuWXsg68JwiMLWJKFPvvixSPWImZVf8g3NAgMBAAGjge4wgeswEgYDVR0T
AQH/BAgwBgEB/wIBAzALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFB0C+LvOc/KmSdDn
myp8B2RkTcBEMIGoBgNVHSMEgaAwgZ2AFB0C+LvOc/KmSdDnmyp8B2RkTcBEoYGB
pH8wfTEWMBQGA1UEChMNZGNwb21hdGljLmNvbTEWMBQGA1UECxMNZGNwb21hdGlj
LmNvbTEkMCIGA1UEAxMbLmRjcG9tYXRpYy5zbXB0ZS00MzAtMi5ST09UMSUwIwYD
VQQuExxIUUw0dTg1ejhxWkowT2ViS253SFpHUk53RVE9ggEFMA0GCSqGSIb3DQEB
CwUAA4IBAQCrJuN+Bdzvj9m5MBNYjgCkmuvVQsGMvwQOIm38PN94hbrmxCNMWJTF
r9MYLKT7wqcdKTw9QvW0g5pjbywXdHCSObgDUsON8nOrIzTsX0bUomD+C6Ohga9P
ep/49aw8CH4yypW/0NUKnqz0+JVMOYsz5wOzIdoQpNggToJXfM08W0m2pIrTrR4+
8rMnp3g2WF8Td+NDIiP23M2FJB2/c0WvoaT++TAVTaBxL1mbCHcxeVN0nyWnBskA
WLqdsVYYC3fKvvcP3Kopbyz7qDN2tE4Ei82PtGQ8WwU+Pt7qI8YMEi6HqfCFmBlj
rb1igF89Id53udux1MaUBdeBnQjG+9Aj
-----END CERTIFICATE-----"""
con = sqlite3.connect("test.db")
cur = con.cursor()
cur.execute("CREATE TABLE cinemas (id INTEGER PRIMARY KEY, name TEXT, emails TEXT, notes TEXT, utc_offset_hour INTEGER, utc_offset_minute INTEGER)")
cur.execute("CREATE TABLE screens (id INTEGER PRIMARY KEY, cinema INTEGER, name TEXT, notes TEXT, recipient TEXT, recipient_file TEXT)")
cur.execute("CREATE TABLE trusted_devices (id INTEGER PRIMARY KEY, screen INTEGER, certificate_or_thumbprint TEXT)")
while SCREENS > 0:
cur.execute(
"INSERT INTO cinemas (name, emails, notes, utc_offset_hour, utc_offset_minute) VALUES (?, ?, ?, ?, ?)",
(name(), email(), "", 0, 0)
)
cinema_id = cur.lastrowid
for i in range(0, AVERAGE_SCREENS_PER_CINEMA + random.randint(-2, 2)):
cur.execute(
"INSERT INTO screens (cinema, name, notes, recipient, recipient_file) VALUES(?, ?, ?, ?, ?)",
(cinema_id, name(), "", certificate(), "")
)
SCREENS -= 1
con.commit()
con.close()
|