Skip to content

222rot/SafePrompt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ SafePrompt

Website prezentare SafePrompt este un MVP (Minimum Viable Product) open-source conceput pentru a preveni scurgerea datelor sensibile (PII, chei de acces, secrete comerciale) către platformele publice de inteligență artificială precum ChatGPT, Gemini, Claude sau DeepSeek.

Proiectul acționează ca un scut local: o extensie de browser interceptează textul, îl trimite unui backend local pentru anonimizare și îl înlocuiește direct în interfață înainte ca acesta să fie trimis către serverele AI.

Funcționalități Principale

  • Sanitizare cu Honeytokens: Înlocuiește datele reale cu valori sintetice care respectă formatul original pentru a nu distruge contextul tehnic al promptului:
    • Chei AWS (ex. AKIA...)
    • Chei de API și parole (ex. sk_live_...)
    • IBAN-uri internaționale (păstrează prefixul țării pentru context local)
  • Redactare PII (Date Personale):
    • Nume complete (Redactare prin etichetă)
    • Adrese de Email (Redactare prin eticheta)
    • Numere de Telefon (naționale și internaționale)
    • Coduri Numerice Personale (CNP)
  • Regula lui Charon (Analiza Entropiei): Calculează entropia Shannon pentru fiecare cuvânt. Orice șir > 15 caractere cu entropie > 4.2 este eliminat sub eticheta [HIGH_ENTROPY_REDACTED], blocând parole complexe sau token-uri necunoscute.
  • Abstracția Codului ( Abstract): Elimină logica internă a funcțiilor și claselor, trimițând doar semnăturile și structura pentru a proteja algoritmii proprietari.
  • Audit de Securitate: Salvează statistici detaliate în activity_log.txt pentru fiecare scanare.

Arhitectură

  1. Frontend: Extensie de browser (JavaScript) compatibilă cu Chrome/Brave, optimizată pentru aplicații React și elemente contenteditable.
  2. Backend: API FastAPI (Python) containerizat, care procesează cererile pe localhost:8000.

Instalare și Rulare

1. Pornirea Serverului (Docker)

Deschide un terminal în folderul proiectului și rulează:

# Construirea imaginii
sudo docker build -t safeprompt-server .

# Pornirea containerului cu sincronizarea logurilor
sudo docker run -d -p 8000:8000 -v "$(pwd):/app" --name safeprompt-container safeprompt-server
### 2. Instalarea Extensiei în Browser
* **Accesează** `chrome://extensions/` în browser (Chrome, Brave, Edge).
* **Activează** *Developer mode* 
* **Apasă** pe *Load unpacked* și selectează folderul extenstion.

## Utilizare
1. **Deschide** ChatGPT, Gemini sau Claude.
2. Vei observa butoanele ** Sanitize** și ** Abstract** deasupra zonei de scriere.
3. **Scrie** promptul care conține date sensibile sau cod sursă.
4. **Apasă** butonul de sanitizare; textul va fi rescris instantaneu în variantă sigură.
5. **Apasă** *Enter* pentru a comunica cu AI-ul în siguranță.

##  Securitate și Limitări
* **Procesare Locală:** Datele nu părăsesc niciodată mașina ta în formă brută; sanitizarea se face pe `127.0.0.1`.
* **Limită Payload:** API-ul limitează cererile la 50.000 de caractere pentru a preveni atacurile de tip ReDoS (Regular Expression Denial of Service).
* **Atenție:** Entropia este calculată pe cuvinte continue (`\S+`). Datele sensibile scrise cu spații deliberate (ex: `P a s s w o r d`) pot eluda filtrele automate în versiunea actuală (MVP).

About

SafePrompt este un MVP care ruleaza local pe masina ta si principalul scop este sa elimine datele cu caracter sensibil din prompturile trimise inteligentei artificiale

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors