ciyidogan commited on
Commit
2892894
·
verified ·
1 Parent(s): 9c7e4cd

Delete encryption_utils.py

Browse files
Files changed (1) hide show
  1. encryption_utils.py +0 -88
encryption_utils.py DELETED
@@ -1,88 +0,0 @@
1
- """
2
- Flare – Fernet şifreleme yardımcıları
3
- - encrypt(): düz string → "enc:<blob>"
4
- - decrypt(): enc:<blob> → düz string (veya enc: yoksa aynen döner)
5
- Anahtar: FLARE_TOKEN_KEY (32-bayt, base64, URL-safe)
6
- """
7
-
8
- import os
9
- from typing import Optional
10
- from cryptography.fernet import Fernet, InvalidToken
11
- from logger import log_error, log_warning
12
-
13
- _ENV_KEY = "FLARE_TOKEN_KEY"
14
-
15
- def _get_key() -> Fernet:
16
- """Get encryption key with better error messages"""
17
- # Direkt environment variable kullan
18
- key = os.getenv(_ENV_KEY)
19
-
20
- # .env dosyasından yüklemeyi dene
21
- if not key:
22
- try:
23
- from dotenv import load_dotenv
24
- load_dotenv()
25
- key = os.getenv(_ENV_KEY)
26
- except ImportError:
27
- pass
28
-
29
- if not key:
30
- error_msg = (
31
- f"{_ENV_KEY} ortam değişkeni tanımlanmadı. "
32
- f"Lütfen 32-byte base64 key oluşturun: python generate_key.py"
33
- )
34
- log_error(error_msg)
35
- raise RuntimeError(error_msg)
36
-
37
- # Key formatını kontrol et
38
- try:
39
- return Fernet(key.encode())
40
- except Exception as e:
41
- error_msg = (
42
- f"{_ENV_KEY} geçersiz format. "
43
- f"32-byte base64 URL-safe key olmalı. "
44
- f"Yeni key için: python generate_key.py"
45
- )
46
- log_error(error_msg, error=str(e))
47
- raise RuntimeError(error_msg)
48
-
49
- def encrypt(plain: str) -> str:
50
- """düz string → enc:..."""
51
- if not plain:
52
- log_warning("Empty string passed to encrypt")
53
- return ""
54
-
55
- try:
56
- f = _get_key()
57
- encrypted = f.encrypt(plain.encode()).decode()
58
- return "enc:" + encrypted
59
- except Exception as e:
60
- log_error("Encryption failed", error=str(e))
61
- raise
62
-
63
- def decrypt(value: Optional[str]) -> Optional[str]:
64
- """enc:... ise çözer, değilse aynen döndürür"""
65
- if value is None or not isinstance(value, str):
66
- return value
67
-
68
- if not value.startswith("enc:"):
69
- return value
70
-
71
- token = value.split("enc:", 1)[1]
72
-
73
- try:
74
- f = _get_key()
75
- decrypted = f.decrypt(token.encode()).decode()
76
- return decrypted
77
- except InvalidToken:
78
- error_msg = (
79
- "Şifre çözme başarısız. Muhtemel sebepler:\n"
80
- "1. FLARE_TOKEN_KEY değişti\n"
81
- "2. Şifreli veri bozuldu\n"
82
- "3. Farklı bir key ile şifrelendi"
83
- )
84
- log_error(error_msg)
85
- raise RuntimeError(error_msg)
86
- except Exception as e:
87
- log_error("Decryption error", error=str(e))
88
- raise