ATtiny85 Şifre Üretici Nedir? Nasıl Yapılır?
Günümüz dijital dünyasında güvenlik her zamankinden daha önemli hale geldi, ATtiny85 şifre üretici sayesinde karmaşık ve güçlü şifreler oluşturmak, kişisel verilerimizin korunması açısından kritik ve kolay bir rol oynuyor. İşte bu noktada devreye giren küçük ama etkili bir çözüm olan ATtiny85 şifre üretici’nin kaynak kodlarını ve bağlantı şemasını detaylı şekilde anlatacağız.
ATtiny85 Nedir?
ATtiny85, Atmel tarafından üretilen ve günümüzde Microchip Technology çatısı altında geliştirilen, düşük güç tüketimli, 8-bit bir mikrodenetleyicidir. Küçük boyutu ve uygun fiyatı sayesinde pek çok elektronik projede tercih edilmektedir. Özellikle IoT projeleri, basit otomasyon sistemleri ve taşınabilir cihazlar için idealdir.
ATtiny85’in Temel Özellikleri:
- 8 KB Flash hafıza
- 512 Byte SRAM
- 6 pinli DIP yapısı
- 20 MHz’e kadar saat frekansı
- Düşük güç tüketimi
- I2C, SPI ve PWM desteği
Bu özellikleriyle ATtiny85, güçlü bir mikrodenetleyici olmasa da, belirli görevler için oldukça yeterlidir. İşte şifre üretici projesi de bu görevlerden biri.
ATtiny85 Şifre Üretici Projesi Nedir?
ATtiny85 şifre üretici, fiziksel bir cihaz yardımıyla rastgele şifreler oluşturmanıza olanak tanır. Özellikle internet ortamında parola yöneticisi kullanmak istemeyen ya da her şifreyi ayrı ayrı oluşturmak isteyen kullanıcılar için pratik bir çözümdür.
Bu cihaz genellikle bir butonla çalışır ve her basıldığında yeni bir şifre üretip, USB HID özelliğiyle bilgisayara otomatik olarak yazar. Böylece hem hızlı hem de güvenli bir şekilde güçlü şifreler elde edebilirsiniz.
Projenin Faydaları
1. Güvenlik
Dijital parola yöneticilerinin aksine, fiziksel bir cihaz şifrelerinizi çevrimdışı olarak üretir. Bu sayede herhangi bir çevrim içi saldırıya karşı daha güvenlidir.
2. Taşınabilirlik
ATtiny85’in kompakt yapısı sayesinde projeniz cebinizde bile taşıyabileceğiniz boyutta olur.
3. Kişiselleştirilebilirlik
Kendi algoritmanızı yazabilir, şifre uzunluğunu belirleyebilir veya sembol kullanımı gibi detayları özelleştirebilirsiniz.
4. Ekonomiklik
Arduino gibi daha büyük platformlara göre maliyeti çok düşüktür. Ucuz bir USB konnektör, birkaç direnç ve ATtiny85 ile projeyi tamamlayabilirsiniz.
ATtiny85 Şifre Üretici Nasıl Yapılır?
Gerekli Malzemeler:
- ATtiny85 mikrodenetleyici
- USB erkek konnektör (veya Micro USB breakout board)
- Push button (buton)
- 3D yazıcıdan çıkartılmış kasa (isteğe bağlı)
- 10K direnç
- Yazılım için Arduino IDE
- Programlama için USBasp veya Arduino as ISP
Devre Şeması:
Oldukça basit bir bağlantı söz konusu. Buton bir pine bağlanır (örneğin PB2), USB veri hatları PB0 ve PB2’ye bağlanarak HID klavye işlevi sağlanır.
Yazılım:
Arduino IDE üzerinden Digispark USB library gibi kütüphaneler kullanılarak HID fonksiyonları aktif edilir. Kod, belirli bir algoritma kullanarak rastgele karakterler üretir ve bilgisayara yazdırır.
#include <DigiKeyboard.h>
void setup() {
pinMode(1, INPUT_PULLUP); // PB1 artık buton pini
}
void loop() {
if (digitalRead(1) == LOW) {
delay(300); // Buton debouncing
generatePassword();
}
}
void generatePassword() {
const char charset[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";
for (int i = 0; i < 12; i++) {
char c = charset[random(sizeof(charset) - 1)];
DigiKeyboard.print(c);
}
DigiKeyboard.sendKeyStroke(KEY_ENTER);
}
Kodun Ürettiği Şifre Örnekleri
Kodun içinde şu karakter kümesi tanımlı:
const char charset[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";
Bu karakter kümesinden rastgele 12 karakter seçiliyor. Her tuşa basıldığında, bilgisayara klavye gibi davranarak bu 12 karakteri yazıyor ve ardından Enter tuşuna basıyor.
Örnek Şifre Çıktıları:
Her seferinde farklı olabilir ama yapay olarak örnek verecek olursak:
xA7b!DqP#t2M
9gV@Rm$1LkzB
*BqZ7hT!mUe5
P3&kLmN!tYw#
Bu şifreler doğrudan bilgisayarınızın açık olan pencersine (örneğin bir not defteri ya da giriş formu) yazılır.
Pin Bağlantıları:
Bileşen | ATtiny85 Pini | Fonksiyon |
---|---|---|
USB D+ | PB0 (pin 5) | USB veri hattı + |
USB D− | PB2 (pin 7) | USB veri hattı − |
Buton | PB1 (pin 6) | Buton girişi |
10K Direnç | PB1 ile VCC | Pull-up için |
VCC | Pin 8 | 5V |
GND | Pin 4 | Toprak hattı |
Not: USB hattı doğrudan ATtiny85’e bağlanmazsa çalışmaz. V-USB veya Digispark board kullanmak çok daha kolaydır.

Devreyi Anlamak İçin Küçük Notlar:
- Buton bağlantısı: ATtiny85’in PB2 (D2) pinine bağlı. Butona bastığında pin LOW olur ve şifre üretimi başlar.
- USB bağlantısı: V-USB veya Digispark bootloader sayesinde ATtiny85, bilgisayara klavye gibi davranabilir. Bunun için PB0 ve PB2 pinleri USB veri hatları olarak kullanılır.
- Pull-up direnci: PB2 pininde bir buton olduğu için yanlış tetiklenmeyi önlemek amacıyla dahili veya harici bir pull-up gerekir. Kodda
INPUT_PULLUP
ile dahili pull-up aktif edilmiş.
Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.