Skip to content

Commit 1e842ab

Browse files
committed
Add secrets
1 parent a4432e8 commit 1e842ab

9 files changed

Lines changed: 64 additions & 0 deletions

‎module_secrets/__init__.py‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"""Generate secure random numbers for managing secrets"""

‎module_secrets/secrets_compare.py‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
a = "123"
5+
b = "456"
6+
7+
r = secrets.compare_digest(a, b)
8+
print(r)
9+
10+
a = "123"
11+
b = "123"
12+
r = secrets.compare_digest(a, b)
13+
print(r)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import secrets
2+
import string
3+
4+
if __name__ == "__main__":
5+
alphabet = string.ascii_letters + string.digits
6+
password = "".join(secrets.choice(alphabet) for i in range(8))
7+
print(password)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import secrets
2+
import string
3+
4+
if __name__ == "__main__":
5+
alphabet = string.ascii_letters + string.digits
6+
while True:
7+
print("gen password")
8+
password = "".join(secrets.choice(alphabet) for i in range(10))
9+
if (
10+
any(c.islower() for c in password)
11+
and any(c.isupper() for c in password)
12+
and sum(c.isdigit() for c in password) >= 3
13+
):
14+
break
15+
16+
print(password)
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
print(secrets.randbelow(1000))

‎module_secrets/secrets_randbits.py‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
print(secrets.randbits(16))

‎module_secrets/secrets_temp_url.py‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
url = "https://example.com/reset=" + secrets.token_urlsafe()
5+
print(url)

‎module_secrets/secrets_token.py‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
print(secrets.token_bytes(nbytes=16))
5+
print(secrets.token_hex(nbytes=16))
6+
print(secrets.token_urlsafe(nbytes=16))
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import secrets
2+
3+
if __name__ == "__main__":
4+
with open("/usr/share/dict/words") as f:
5+
words = [word.strip() for word in f]
6+
password = " ".join(secrets.choice(words) for i in range(4))
7+
8+
print(password)

0 commit comments

Comments
 (0)