Çoğu kişi ilk kez bir QR koduyla karşılaştığında, onu hiç düşünmeden tarar. İşe yarıyor. Devam ediyorlar. Ancak onlara, bir telefon kamerasının siyah beyaz noktalardan oluşan bir kareye nasıl bakıp milisaniyeler içinde bir URL'yi, Wi-Fi şifresini veya tren biletini kodladığını nasıl bildiğini sorsanız çoğu insanın hiçbir fikri olmayacaktır. Bir teknolojiyi kullanmak ile onu anlamak arasındaki uçurum, bence tüm ilginç güvenlik risklerinin saklandığı yer.

Bu kılavuz resmin tamamını açıklıyor: QR kodlarını çalıştıran mühendislik, onları dayanıklı kılan hata düzeltme sistemi, yanlış kullanıldığında onları tehlikeli hale getiren güvenlik riskleri ve güvenilir şekilde çalışan bir QR kodu ile mümkün olan en kötü anda başarısız olan bir QR kodu arasındaki farkı yaratan pratik seçimler.

Aslında QR Kodu Nedir? QR kodu (Hızlı Yanıt kodu), verileri hem yatay hem de dikey olarak kodlayan siyah ve beyaz karelerden oluşan bir ızgara olan iki boyutlu bir matris barkoddur. Bu iki boyutlu yapı, QR kodlarına, verileri yalnızca tek bir yatay eksen boyunca kodlayan geleneksel tek boyutlu barkodlara kıyasla önemli depolama avantajı sağlayan şeydir.

Bir süpermarket ürününde bulduğunuz UPC-A gibi tek boyutlu bir barkod, yaklaşık 12 rakamı kodlar. Eşdeğer fiziksel boyuttaki bir QR kodu, en fazla 7.089 sayısal karakter, 4.296 alfasayısal karakter veya 2.953 bayt ikili veri tutabilir. Bu, aynı fiziksel ayak izinde depolama kapasitesinin yaklaşık 300 katı anlamına gelir.

Toyota'nın bir yan kuruluşu olan Denso Wave, 1994 yılında montaj hattındaki araç parçalarını takip etmek için QR kodları geliştirdi. "Hızlı Yanıt" adı tarama hızına atıfta bulunuyordu; kodlar mevcut barkod sistemlerinden çok daha hızlı okunabiliyordu. Var oldukları ilk on yılda QR kodları neredeyse yalnızca endüstriyel bir lojistik aracıydı. Sonunda onları her yerde hazır hale getirecek akıllı telefonlar henüz mevcut değildi.

Her QR Kodunun Altı Yapısal Unsuru

Boyutu veya içeriği ne olursa olsun her QR kodu aynı yapısal anatomiye sahiptir:

1. Bulucu Desenleri

Kodun üç köşesindeki üç büyük kare (dördüncü köşe değil; bu kasıtlıdır). Bunlar, herhangi bir tarayıcının, hangi açıdan bakıldığından bağımsız olarak kodun varlığını, yönünü ve boyutunu anında tanımlamasına olanak tanır. Bir QR tarayıcı önce bu üç kareyi tanımlar, ardından kodun geri kalanının geometrisini konumlarından hesaplar.

2. Hizalama Desenleri

Daha büyük QR kodlarının veri alanı içinde görünen daha küçük kareler. Tarayıcının görüntü bozulmasını düzeltmesine yardımcı olurlar; özellikle bir kod belirli bir açıyla fotoğraflandığında, kavisli bir yüzeye basıldığında veya hafifçe kırıştığında kullanışlıdır. Daha küçük QR kodlarının (sürüm 1-6) hizalama düzenleri yoktur; bunlara yalnızca ızgara yeterince büyük olduğunda ve bozulmanın anlamlı bir sorun haline gelmesi durumunda ihtiyaç duyulur.

3. Zamanlama Desenleri

Bulucu desenleri birbirine bağlayan alternatif siyah beyaz satırlar ve sütunlar. Tarayıcıya üzerinde çalışabileceği bir referans ızgarası vererek, görüntü hafifçe çarpık olsa veya bireysel karelerin keskin bir şekilde tanımlanmadığı bir çözünürlükte olsa bile her veri modülünün konumunu doğru bir şekilde haritalandırmasına yardımcı olur.

4. Format Bilgisi

Bulucu modellerine bitişik bantlar halinde kodlanan format bilgisi, tarayıcıya hangi hata düzeltme seviyesinin kullanımda olduğunu ve hangi veri maskesi modelinin uygulandığını bildirir. Her bulucu düzeninin her iki tarafında bir kez olmak üzere iki kez depolanır, böylece kısmen gizlenmiş bir kodun kodu yine de doğru şekilde çözülebilir.

5. Veri Modülleri

Gerçek kodlanmış içerik, kalan ızgaraya belirli bir zikzak düzeniyle yayılır. Veriler dört moddan birinde kodlanır: sayısal (sayılar için en verimli olanı), alfanümerik (harfler, sayılar ve küçük bir simge kümesi), ikili (URL'ler dahil herhangi bir bayt verisi) veya kanji (Japonca karakter kodlaması). Günlük hayatta kullanılan QR kodlarının çoğu ikili modu kullanır, bu nedenle hangi karakterleri içerdiğine bakılmaksızın herhangi bir URL'yi kodlayabilirler.

6. Sessiz Bölge

Kodun tamamını çevreleyen boş beyaz kenarlık. Dekoratif değil, yapısal olarak gerekli. Bu olmadan tarayıcı, kodun nerede bittiğini ve çevresindeki içeriğin nerede başladığını belirleyemez. Gerekli minimum, her tarafta dört modül genişliğidir. Kötü uygulanan birçok QR kodu (özellikle kenar boşlukları yetersiz basılanlar) bu sessiz bölgeye uyulmadığı için başarısız oluyor.

Reed-Solomon Hata Düzeltmesi: Hasarlı QR Kodları Neden Hala Çalışıyor

Bu, QR kod mühendisliğinin gerçekten etkileyici bulduğum kısmı. QR kodları Reed-Solomon hata düzeltmesini kullanır; bu, NASA'nın derin uzay iletişimleri için geliştirdiği matematiksel algoritmanın aynısıdır; burada bir sinyal milyarlarca kilometre yol alabilir ve kozmik girişim nedeniyle bozularak ulaşabilir.

Dört hata düzeltme düzeyi vardır:

  • Seviye L (Düşük) — kod sözcüklerinin %7'sine kadar kurtarır. Belirli bir veri yükü için en küçük QR kodunu üretir.
  • Seviye M (Orta) — %15'e kadar iyileşme sağlar. Mantıklı genel amaçlı varsayılan.
  • Seviye Q (Çeyrek) — %25'e kadar iyileşme sağlar. Kullanım sırasında kısmen gizlenebilecek kodlar için daha iyidir.
  • Seviye H (Yüksek) — %30'a kadar iyileşme sağlar. Kodun üzerine logo yerleştirmek istediğinizde standart seçimdir.

Pratik sonuç: Bir QR kodunu fiziksel olarak yok edebilir veya %30'a kadarını (logo, leke, çizik veya kasıtlı hasarla) kapatabilirsiniz ve kod yine de doğru şekilde tarama yapar. Bu sonradan eklenen bir özellik değildir; orijinal standartta pişirilir. Markalı QR kodlarının işe yaramasının nedeni de budur. Bir şirket logosunu bir QR kodunun ortasına yerleştirdiğinde, kasıtlı olarak koda "zarar veriyor" ve eksik verileri yeniden oluşturmak için H Düzeyi hata düzeltmesine güveniyor. Tarayıcı, logoyu bozuk bir bölge olarak görür ve onu çevreleyen modüllerde depolanan gereksiz verileri kullanarak doldurur.

PHP_CTA_PLACEHOLDER

Bir Telefon Kamerası QR Kodunu Gerçekte Nasıl Okur?

Size anlık gibi gelen tarama işlemi aslında saniyeden çok kısa bir sürede çalışan hassas, çok aşamalı bir görüntü işleme hattıdır:

  1. Görüntü yakalama — Kamera sürekli olarak kareleri yakalar. Tarayıcı yazılımı, QR kod yapılarını arayarak her kareyi analiz eder.
  2. İkilileştirme — Görüntü, uyarlanabilir eşikleme kullanılarak saf siyah beyaza dönüştürülür. Bu, normalde kodu okunamaz hale getirecek ışık, kontrast ve gölge değişikliklerini ortadan kaldırır.
  3. Finder modeli tespiti — Algoritma, bulucu modelini tanımlayan koyu:açık:karanlık:açık:karanlık modüllerinin karakteristik 1:1:3:1:1 oranını arar. Bunlardan üçünün doğru geometrik ilişkide bulunması, bir QR kodunun mevcut olduğunu doğrular.
  4. Perspektif düzeltme — Yazılım, bulucu modellerinin konumlarını (ve daha büyük kodlar için hizalama modellerini) kullanarak, bozuk görüntüyü kare ızgaraya düzleştirmek için bir dönüşüm matrisi hesaplar.
  5. Modül örnekleme — Her ızgara konumu, koyu veya açık modül olup olmadığını belirlemek için örneklenir ve tüm kodun ikili matrisini oluşturur.
  6. Biçim kod çözme — Hata düzeltme düzeyini ve veri maskesini belirlemek için biçim bilgi modülleri okunur.
  7. Veri maskesini kaldırma — QR kodları, geniş tekdüze alanları (güvenilir bir şekilde taranması daha zor olan) önlemek için sekiz veri maskeleme modelinden birini uygular. Maske, kod çözmeden önce tersine çevrilir.
  8. Reed-Solomon hata düzeltmesi — Bozuk kod sözcükleri tespit edilir ve düzeltilir.
  9. Veri kodunu çözme — Düzeltilen ikili veriler nihai çıktıya dönüştürülür: bir URL, metin dizesi, kişi kartı veya kodun içerdiği her şey.

İyi bir kameraya ve QR Tarayıcı Yapay Zekasına sahip modern bir akıllı telefonda, tüm bu süreç genellikle 200 milisaniyeden kısa sürer. Yetersiz ışık koşullarında veya hasarlı kodla yazılım, pozlama parametrelerini ayarlayarak, farklı ikilileştirme eşiklerini deneyerek ek geçişler gerçekleştirir ve bu da bir veya iki saniye daha ekleyebilir. qrscanner.akstool.com gibi iyi tasarlanmış bir tarayıcı bu uç durumları otomatik olarak ele alır.

Kimsenin Hakkında Yeterince Konuşmadığı Güvenlik Sorunu

QR kodlarıyla ilgili rahatsız edici gerçek şu: QR kodları, kimlik avı için mükemmel bir saldırı vektörü haline geldi ve çoğu insanın hiçbir fikri yok. Bu tekniğe "quishing" (QR kodu kimlik avı) denir ve QR kodları opak olduğu için tam olarak çalışır; kodladıkları şeyi taramadan önce okuyamazsınız.

Kötü amaçlı bir QR kodu, meşru bir QR koduyla aynı görünür. Saldırgan, kötü amaçlı kodunu içeren bir çıkartma yazdırabilir ve bunu meşru bir QR kodunun üzerine (parkmetreye, restoran masasına, hastane check-in posterine veya konser salonu girişine) yerleştirebilir. Kurban, resmi kod olduğuna inandığı kodu tarar ve bir kimlik avı sayfasına, kötü amaçlı yazılım indirmeye veya sahte ödeme portalına yönlendirilir.

Bu sorunun boyutu, QR kodlarının çok çeşitli mekanlarda varsayılan temassız etkileşim mekanizması haline geldiği 2020'den bu yana önemli ölçüde arttı. Siber güvenlik araştırmacılarına göre QR kimlik avı saldırıları 2021 ile 2023 arasında %400'ün üzerinde arttı.

QR Tarayıcı Yapay Zekası gibi gizliliğe öncelik veren bir tarayıcı bu durumu şu şekilde hafifletir:

  • Tarayıcıda herhangi bir işlem yapılmadan önce kodu çözülmüş URL'yi görüntüleyerek size alanı inceleme şansı verir
  • Her şey cihazda işleniyor; hiçbir tarama içeriği, günlüğe kaydedilebilecekleri harici sunuculara iletilmiyor
  • Tarama geçmişini, ihlal edilebilecek herhangi bir bulut arka ucunda saklamamak

Herhangi bir QR tarayıcıya sorulacak doğru soru "hızlı tarama yapıyor mu?" değildir. ama "tarama verilerime ne olacak?" Taradığınız her URL'yi günlüğe kaydeden ve bunu kimliğinizle ilişkilendiren bir tarayıcı, gerçek anlamda bir gözetim aracıdır.

İş Amaçlı Kullanım Örnekleri: QR Kodlarının Aslında İyi Olduğu Şeyler

Tüm QR kodu kullanım durumları eşit şekilde oluşturulmamıştır. Bazıları mükemmel. Bazıları yanlış yönlendiriliyor. Yıllardır her ikisini de gördükten sonra dürüst değerlendirmem şu şekilde:

Gerçekten faydalı:

  • Wi-Fi paylaşımı — Wi-Fi QR kodu neredeyse her durumda şifreden gerçekten daha iyidir. Misafirlerin karmaşık bir şifre yazmalarına gerek yoktur, bunu halka açık alanda yüksek sesle söylemenize gerek yoktur ve şifreyi değiştirmeniz durumunda kodu yeniden oluşturabilirsiniz. QR Tarayıcı Yapay Zekası ile nasıl oluşturulacağını görün.
  • Kişi kartları (vCard'lar) — İletişim bilgilerinizi kodlayan bir QR kodu oluşturmak, birisinin kartvizitteki telefon numarasını doğru şekilde yazmasını beklemekten çok daha güvenilirdir. Tek bir tarama, kişiyi doğrudan telefonuna kaydeder.
  • Etkinlik girişi — QR kodları, yüksek iş hacmi durumlarında kimlik kanıtı veya rezervasyon onayı olarak iyi çalışır. Bir tarayıcı kodu okur; bir arka uç bunu doğrular. Hızlı, ölçeklenebilir ve makul hata oranlarına sahip.
  • Ürün bilgileri — Fiziksel bir ürünü ayrıntılı bir dijital sayfaya, kullanım kılavuzuna veya video eğitimine bağlamak meşru ve kullanıcı dostu bir kullanım örneğidir.

Genellikle yanlış yönlendirilir:

  • Reklam panolarındaki QR kodları — Birinden telefonunu güvenli bir şekilde çıkarmasını, kilidini açmasını, kamerayı açmasını ve saatte 60 mil hızla kod taramasını istemek, iyi tasarlanmış bir kullanıcı deneyimi değildir.
  • E-postadaki QR kodları — Birisi e-postanızı telefonunda okuyorsa, aynı cihazla QR kodunu tarayamaz. Ve eğer masaüstündeyse sürtünme bir bağlantıdan daha yüksektir.
  • Kullanılabilirliğin yerine geçen QR kodları — Bilgi için alanınız olmadığı için bir şeye QR kodu yerleştirmek iyi tasarımla aynı şey değildir.
php echo inline_tool_cta('qr-scanner', 'QR Tarayıcı AI', 'https://play.google.com/store/apps/details?id=com.akstool.qr.scanner', 'Wi-Fi, vCard'lar, URL'ler ve daha fazlası için doğrudan QR Tarayıcı AI'dan QR kodları oluşturun. Filigran yok. Boyut sınırı yok. Ücretsiz.'); ?

Bir QR Kodunu Baskıda Gerçekte Çalıştıran Nedir?

QR kodu oluşturmak önemsiz bir işlemdir. Bir kartviziti, ürün etiketini veya geniş formatlı bir posteri güvenilir bir şekilde tarayan bir kart oluşturmak biraz daha fazla düşünmeyi gerektirir.

  • Baskı için dijital, yüksek çözünürlüklü PNG için SVG kullanın. 300×300 piksel PNG, ekranda kabul edilebilir görünecektir ancak 3 cm × 3 cm boyutunda yazdırıldığında pikselli olacak ve muhtemelen taranamayacaktır. Baskıda kullanmak için bir SVG (vektör formatı) edinin; kalite kaybı olmadan ölçeklenir.
  • Minimum boyut 2 cm × 2 cm'dir. Bunun altında çoğu telefon kamerası, özellikle standart aydınlatma koşullarında güvenilir kod çözme için yeterli ayrıntıyı yakalamakta zorlanır.
  • Açık arka plan üzerinde koyu renkli modüller. Bu standarttır. Karanlıkta beyaza çevirmek işe yarayabilir ancak güvenilirliği azaltır. Bazı tarayıcı uygulamaları bunu desteklemez ve kontrast gereksinimleri daha katıdır.
  • Sessiz bölgeyi koruyun. Dört tarafın etrafında dört modül genişliğinde beyaz alan. İki değil. Bir değil. Dört.
  • Yazdırmadan önce test edin. Büyük bir baskı işlemine başlamadan önce QR kodunuzu iki farklı telefondaki üç farklı uygulamayla tarayın. Sizin telefonunuzda çalışan bir şey başka birinin telefonunda çalışmayabilir.
  • Logo eklerken hata düzeltme Düzeyi H'yi kullanın. Ortaya bir logo koymak istiyorsanız (ki bu bazı modülleri engeller), Düzey H size maksimum %30 veri yeniden yapılandırma toleransı verir.

QR kodları altyapı olarak istikrar kazandı. Artık yeni bir şey değiller ve bir yere gitmiyorlar. Dikkate değer birkaç trend var:

Dinamik QR kodları (nihai hedef yerine bir yönlendirme URL'sini kodlayan ve kodu yeniden yazdırmadan hedefin değiştirilmesine olanak tanıyan kodlar) pazarlama kullanım örnekleri için standart uygulama haline geldi. Kod her zaman aynı kısa URL'ye işaret eder; URL'nin hedefinin gerçek zamanlı olarak güncellenebilmesi.

Ödemelerde QR kodları — halihazırda Çin'de (WeChat Pay, Alipay) ve Hindistan'da (UPI) baskındır; QR tabanlı ödemeler, Barclays'in Pingit'i ve çeşitli temassız POS entegrasyonları gibi planlar aracılığıyla Birleşik Krallık'ta giderek yaygınlaşıyor.

Güvenlik incelemesi — saldırıları bastırma saldırıları arttıkça tarayıcı uygulamaları üzerinde alan adı güvenliği kontrolleri yapma baskısı da artıyor. Bunun farklılaştırıcı bir unsur olmaktan ziyade standart bir özellik beklentisi olmasını bekleyin.

QR kodu güvenliğiyle ilgili en güncel tavsiyeler için bilmeniz gereken QR kodu güvenlik riskleri hakkındaki kılavuzumuza bakın. Android'de QR kodları oluşturmak ve taramak için QR Scanner AI, önerdiğimiz araç olmaya devam ediyor.

Daha fazla kılavuz için QR Kodları kategorisinin tamamını keşfedin veya en son makaleler için blog'a göz atın.