Untitled
unknown
plain_text
a year ago
1.7 kB
8
Indexable
import sqlite3
# Povezivanje na bazu podataka
conn = sqlite3.connect('bank.db')
cursor = conn.cursor()
# Kreiranje tabele Klijenti
cursor.execute('''
CREATE TABLE IF NOT EXISTS Klijenti (
id INTEGER PRIMARY KEY,
ime_prezime TEXT,
broj_racuna TEXT,
sifra TEXT,
token TEXT
)
''')
# Umetanje tri proizvoljna korisnika
users = [
(1, 'Petar Petrovic', '1234567890', 'password1', ''),
(2, 'Ana Anic', '0987654321', 'password2', ''),
(3, 'Jovan Jovanovic', '1122334455', 'password3', '')
]
cursor.executemany('INSERT OR IGNORE INTO Klijenti VALUES (?, ?, ?, ?, ?)', users)
conn.commit()
conn.close()
import sqlite3
import jwt
from datetime import datetime, timedelta
# Tajni ključ za generisanje tokena
secret_key = 'tajni_kljuc'
# Funkcija za kreiranje tokena
def create_token(username):
return jwt.encode({'username': username, 'exp': datetime.utcnow() + timedelta(seconds=45)}, secret_key, algorithm='HS256')
# Povezivanje na bazu podataka
conn = sqlite3.connect('bank.db')
cursor = conn.cursor()
# Unos broja računa i šifre
broj_racuna = input("Unesite broj računa: ")
sifra = input("Unesite šifru: ")
# Provera da li klijent postoji u bazi
cursor.execute('SELECT * FROM Klijenti WHERE broj_racuna=? AND sifra=?', (broj_racuna, sifra))
klijent = cursor.fetchone()
if klijent:
# Generisanje tokena
token = create_token(klijent[1])
# Ažuriranje tokena u bazi
cursor.execute('UPDATE Klijenti SET token=? WHERE id=?', (token, klijent[0]))
conn.commit()
print(f"Uspešan pristup. Vaš token je: {token}")
else:
print("Greška: Neispravan broj računa ili šifra.")
conn.close()Editor is loading...
Leave a Comment