İçeriğe geç
Muhammet Şafak
en
Kapak görseli — telefonda BLUETOOTH RSSI: -58 dBm, STATUS: VERIFIED PRESENT ve LOCK THRESHOLD / SIGNAL DROP (BUFFERED) çizgili grafik; dizüstünde SignalLock: ACTIVE rozeti
Güvenlik & doğrulanabilirlik Ürün oldu

Bluetooth yakınlığıyla ekran kilidi: 'var/yok' yetmiyor

Yanındaki cihaz uzaklaşınca bilgisayarı kilitleyen yakınlık kilidi; menü çubuğu uygulaması SignalLock'a dönüştü.

Şu an ne yapıyor

Yanındaki cihaz uzaklaşınca macOS ekranını kilitliyor; karar ham "var/yok" sinyaline değil bir yakınlık değerlendirmesine dayandığı için sinyal dalgalanması yanlış kilit üretmiyor. Menü çubuğu uygulaması yayında, indirilip kullanılabilir.

Başlangıç
Mart 2026 — Mayıs 2026
Labs’tan çıkış

Tür

Açık kaynak

Teknolojiler

Swift SwiftUI CoreBluetooth CoreLocation C# .NET 8

Bu iş ürüne dönüştü:

SignalLock

Bluetooth cihazı menzilde mi diye sormak kolay; cevabın doğru olması ayrı iş. Ham “var/yok” sinyali saniyede birkaç kez yalan söylüyor ve her yalan bir yanlış kilit demek.

”Var/yok” yalan söylüyor

Ortak çalışma alanında kilitlenmemiş bir Mac gizlilik riski; kilitlemeyi hatırlamak da kullanıcının işi olmamalı. Denenen çözüm: kullanıcının zaten yanında taşıdığı bir Bluetooth cihazını (iPhone, Apple Watch, AirPods, BLE etiketi) güvenilir cihaz saymak ve menzil dışına çıkınca ekranı kilitlemek.

İşin asıl konusu sinyalin kendisi oldu. Bluetooth sinyali doğası gereği dalgalanıyor; cihaz masanın üstünde dururken bile birkaç örneklemede kayboluyor. Düz görünürlüğe bakan bir kilit, kullanıcı yerinde otururken ekranı kilitliyor.

Görünürlük yerine yakınlık değerlendirmesi

Uygulamanın çekirdeği düz görünürlük yerine bir yakınlık değerlendirmesi üzerine kuruldu: yumuşatılmış RSSI sinyal gücü ile son görülme zaman damgası birlikte okunuyor. RSSI eşiği, uzaklaşma gecikmesi ve yumuşatma penceresi kullanıcı tarafından ayarlanabiliyor; varsayılanlar yanlış kilidi en aza indirecek biçimde bilinçli olarak temkinli seçildi.

macOS tarafı Swift/SwiftUI + CoreBluetooth, Windows tarafı C#/.NET 8. İki ayrı yerel sürüm, aynı algoritmayı ve aynı yapılandırma modelini paylaşıyor.

Ağa hiç çıkmamak

Bu tür bir araç için bulut en kolay yol: cihaz eşleştirmesini sunucuda tut, ayarları senkronla, “masamı bul” gibi özellikler ekle. Hepsi bir hesap sistemi ve bir arka uç demek.

Seçilen kısıt bunun tersi: uygulama hiçbir ağ isteği yapmıyor. Arka uç sunucu, bulut senkronizasyonu, hesap, telemetri, analitik yok; konum servisleri kullanılmıyor ve bütün ayarlar yalnızca kullanıcının kendi makinesinde duruyor.

Bedeli açık — cihazlar arası senkronizasyon yok, uzaktan yönetim yok, kullanım verisi olmadığı için varsayılan eşikler ölçümle değil muhafazakâr tercihle belirlenmiş durumda. Karşılığında ekranını kilitlemek isteyen kullanıcı, bunun için yanındaki telefonun kimliğini bir sunucuya vermek zorunda kalmıyor. Bir güvenlik aracı için doğru takas bu.

İki kod tabanı, tek algoritma

Sıfır ağ kararının ikinci sonucu platform tarafında. Ağa çıkmayan, sürekli Bluetooth tarayan ve ekran kilidini tetikleyen bir uygulama, çalıştığı işletim sisteminin en alt katmanlarına dokunuyor: macOS’ta CoreBluetooth ve kilit API’si, Windows’ta kendi Bluetooth yığını ve oturum yönetimi.

Tek bir çapraz platform kabuğu iki sürümü tek kod tabanında tutardı. Bedeli, o kabuğun altındaki platform farkını yine de yazmak ve üstüne bir çalışma zamanı taşımak olurdu — menü çubuğunda oturan, sürekli açık kalan bir araç için ağır bir fatura.

Seçilen yol iki ayrı yerel sürüm oldu: macOS için Swift/SwiftUI, Windows için .NET 8. Paylaşılan şey kod değil, yakınlık algoritmasının ve yapılandırma modelinin kendisi — eşikler, gecikme ve yumuşatma penceresi iki tarafta aynı anlama geliyor. Bakım yüzeyi ikiye çıkıyor, davranış tek kalıyor.

Menü çubuğuna giden yol

Menü çubuğu uygulaması olarak yayınlandı; ürün sayfası ve indirmesi kendi alan adında. Ayrıntısı portfolyoda.

Etiketler: #bluetooth#macos#guvenlik
Paylaş:

Diğer Kayıtlar

Tüm kayıtlar

Kaydırmalı doğru/yanlış bilgi yarışması; asıl mesele oyun değil, istemcinin ürettiği skoru imzayla doğrulanabilir kılmak.

Şu an ne yapıyor

Kaydırmalı doğru/yanlış bilgi yarışması bir mobil uygulama olarak çekirdek döngüsüyle uçtan uca çalışıyor; skoru istemci üretse de server_nonce ve HMAC imzasıyla sunucu tarafında doğrulanıyor. swipenor.com uygulamanın tanıtım sayfasıdır, oyunun kendisi değil.

Mobil uygulama Laravel PHP PostgreSQL +6 daha
Temmuz 2026 — Devam ediyor

Üretim veritabanına giden ad-hoc SQL'i onaya, maskelemeye ve değiştirilemez bir ize bağlayan self-hosted portal; QueryProxy ürününe dönüştü.

Şu an ne yapıyor

Geliştiricinin yazdığı SQL'i üretim veritabanında doğrudan değil, bir onaydan geçirerek çalıştırıyor; sonuçlar diske yazılırken maskeleniyor ve her istek değiştirilemez bir kayda düşüyor. Prod erişimi tek kişide toplanmış ekipler kurabilir.

Açık kaynak Web uygulaması PHP Laravel Livewire +5 daha
Eylül 2026 — Eylül 2026

480 altıgende 60 turda biten, tarayıcıda çevrimdışı çalışan zarsız strateji oyunu çekirdeği; Regnarium olarak yayına çıktı.

Şu an ne yapıyor

480 altıgenlik haritada azami 60 turda biten bir 4X eli yürütüyor; kurallar, harita üretimi ve rakip yapay zekâ tek bir saf TypeScript çekirdeğinde, savaş zarsız. Elinde yarım saati olan ve strateji oynamak isteyen herkes tarayıcıdan açabilir.

Web uygulaması TypeScript Next.js React +2 daha
Eylül 2026 — Eylül 2026

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi