ciyidogan commited on
Commit
41622e0
·
verified ·
1 Parent(s): 9ca22c9

Create encription_utils.py

Browse files
Files changed (1) hide show
  1. encription_utils.py +29 -0
encription_utils.py ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """
2
+ Flare – Fernet şifreleme yardımcıları
3
+ """
4
+
5
+ import base64, os
6
+ from cryptography.fernet import Fernet, InvalidToken
7
+
8
+ _ENV_KEY = "FLARE_TOKEN_KEY"
9
+
10
+ def _get_key() -> Fernet:
11
+ key = os.getenv(_ENV_KEY)
12
+ if not key:
13
+ raise RuntimeError(f"{_ENV_KEY} environment variable not set")
14
+ return Fernet(key.encode())
15
+
16
+ def encrypt(plain: str) -> str:
17
+ f = _get_key()
18
+ token = f.encrypt(plain.encode()).decode()
19
+ return f"enc:{token}"
20
+
21
+ def decrypt(enc_value: str) -> str:
22
+ if not enc_value.startswith("enc:"):
23
+ return enc_value # düz metin
24
+ token = enc_value.split("enc:", 1)[1]
25
+ f = _get_key()
26
+ try:
27
+ return f.decrypt(token.encode()).decode()
28
+ except InvalidToken:
29
+ raise RuntimeError("Invalid encryption key or token")