31 Aralık 2025 - Bağımsız QR Kod Doğrulama Sistemi
Her sertifika benzersiz QR kod içerecek
QR kod okunduğunda üyelik bilgileri doğrulanacak
Sertifika sahibi değiştirilemez şekilde DB'ye kaydedilecek
Doğrulama geçmişi tutulacak (kim, ne zaman okudu)
Premium Üye
Sertifika İndir
DB'ye Kaydet
PDF + QR
QR Tara
/verify/{code}
Doğrulama Sayfası
| Kolon | Tip | Açıklama |
|---|---|---|
id |
bigint | Primary key |
user_id |
bigint | Sertifika sahibi (değiştirilemez) |
subscription_id |
bigint | İlgili abonelik |
certificate_code |
varchar(32) | Benzersiz kod (MZB-XXXX-XXXX) |
qr_hash |
varchar(64) | QR için şifreli hash (SHA-256) |
member_name |
varchar | Üye adı (snapshot - değişmez) |
member_email |
varchar | Üye email (snapshot) |
membership_start |
date | Üyelik başlangıç tarihi |
membership_end |
date | Üyelik bitiş tarihi |
plan_name |
varchar | Plan adı (snapshot) |
issued_at |
datetime | Sertifika oluşturulma tarihi |
is_valid |
boolean | Geçerli mi? (iptal edilebilir) |
metadata |
json | Ek bilgiler |
| Kolon | Tip | Açıklama |
|---|---|---|
id |
bigint | Primary key |
certificate_id |
bigint | Hangi sertifika doğrulandı |
verified_at |
datetime | Doğrulama zamanı |
ip_address |
varchar | Doğrulayan IP |
user_agent |
text | Tarayıcı bilgisi |
is_valid |
boolean | Doğrulama sonucu |
certificate_code üretqr_hash oluşturmuzibu.com/verify/{qr_hash}
/verify/{hash} açılırDeğiştirilemez, tahmin edilemez hash:
qr_hash = SHA256(user_id + subscription_id + certificate_code + secret_key + issued_at)
secret_key .env'de saklanır, hash kırılamaz
user_id ve bilgiler snapshot olarak saklanır
SHA-256 + secret key ile kırılamaz
Her tarama kaydedilir (IP, tarih)
Admin gerekirse sertifikayı iptal edebilir
Bu sertifika doğrulanmıştır
Ad Soyad: Ahmet Yılmaz
Üyelik: 01.01.2025 - 01.01.2026
Plan: Yıllık Premium
Sertifika No: MZB-2025-A1B2
Bu sertifika bulunamadı veya iptal edilmiş
Sertifika sahte olabilir veya süresi dolmuş olabilir.
Premium Üyelik Sertifikası
Bu belge,
[Ad Soyad]
kişisinin Muzibu Premium üyesi olduğunu tasdik eder.
Üyelik Başlangıç
[01.01.2025]
Geçerlilik Tarihi
[01.01.2026]
Plan
[Yıllık Premium]
Sertifika No
[MZB-2025-XXXX]
Doğrulama için tarayın
Düzenlenme:
[31.12.2025]
Bu sertifikayı doğrulamak için QR kodu tarayın veya muzibu.com/verify adresini ziyaret edin.
certificates + certificate_verifications tabloları
database/migrations/tenant/create_certificates_table.php
Certificate model, CertificateService (hash, QR, PDF)
Modules/Subscription/app/Models/Certificate.php
Modules/Subscription/app/Services/CertificateService.php
Sertifika blade template + QR kod entegrasyonu
Modules/Subscription/resources/views/certificate/template.blade.php
İndirme + Doğrulama endpoint'leri
GET /my-certificate → PDF indir
GET /verify/{hash} → Doğrulama sayfası (public)
Public sayfa: Geçerli/Geçersiz sonuç gösterimi
resources/views/themes/muzibu/certificate/verify.blade.php
"Sertifikamı İndir" butonu + varsa mevcut sertifikayı göster
simplesoftwareio/simple-qrcode
Laravel için QR kod oluşturma paketi
CERTIFICATE_SECRET_KEY=...
Hash oluşturma için gizli anahtar