

Mnemonic phrase, unutulan bir bilgiyi hatırlamak için uygulanan hafıza yardım yöntemidir. Bir şey unutulduğunda onu hatırlatacak olan bir kısaltma, cümle, şarkı ya da tekerlemeyi ipucu olarak kullanmaktır.
Mail şifresi oluşturma sırasında, şifreyi unutma ihtimaline karşılık, hatırlatmaya yardımcı olacak bir fotoğraf ya da kelime belirlenmesi, anımsatıcı ifade için iyi bir örnektir. Bu sayede şifre unutulduğunda gizli soru ya da gizli fotoğraf seçeneği ile şifre hatırlanabilir.
Blokzincirde mnemonic phrase
Blokzincirde mnemonic phrase kullanılması sadece kripto cüzdanlarda görülür. Kripto cüzdanlara genellikle minimum 12 karakterli kelime öbeğinden oluşan şifrelerle giriş yapılır. Bu şifrenin unutulması durumunda yeni şifre alınması söz konusu değildir. Bu yüzden şifrenin güvenli bir şekilde saklanması gerekir.
Şifreyi direkt olarak saklamak yerine, onu çağrıştıran bir ifade oluşturulabilir. Şifreyi hatırlatacak ipuçlarından oluşan kelimelerin yer aldığı bir cümle yazılabilir. Bu ipuçları sadece şifre sahibi tarafından bilinen ve başkası tarafından çözülemeyecek şekilde olmalıdır. Aksi takdirde, cüzdandaki kripto paralar çalınabilir.
Şifreyi unutma dışında cüzdanın saklandığı bilgisayar bozulabilir, çalınabilir ya da kaybolabilir. Bu durumda yine cüzdanı kurtarmak için anımsatıcı ifadeye ihtiyaç duyulur. Oluşturulan anımsatıcı cümleler sayesinde cüzdan kurtarılabilir.
Ethereum ekosisteminde mnemonic phrase, genellikle BIP 32 spesifikasyonuna uygun şekilde yaratılır. Yani; anımsatıcı ifade, BIP 32 İngilizce kelime listesinden rastgele seçilen 24 kelime ile oluşturulur. Bazen daha kolay hatırlanması için bu kelime sayısı 12 ile sınırlandırılabilir.
Mnemonic phrase ne işe yarar?
Mnemonic phrase, bir cüzdanın özel anahtarlarını yeniden türetmenizi sağlayan ana yedektir. Cihazınızı kaybettiğinizde veya değiştirdiğinizde bu kelimeleri uyumlu bir cüzdana girerek tüm hesaplarınıza yeniden erişebilirsiniz. Kelimelerin kendisi kripto varlığı saklamaz, yalnızca varlıklara erişim yetkisi veren anahtarların üretilmesini sağlar.
Bitcoin, Ethereum veya Solana gibi ağlarda varlıklar blokzincir üzerinde tutulur. Cüzdan uygulaması ise yalnızca bu varlıklara erişim sağlayan özel anahtarları saklar. Mnemonic phrase, bu özel anahtarların tamamını tek bir noktadan yeniden üretebilen bir ana anahtar (master key) gibi çalışır. Telefonunuz kırılsa veya bilgisayarınız arızalansa dahi aynı ifadeyi yeni bir cihaza girdiğinizde cüzdanınız eksiksiz biçimde geri gelir.
Bu noktada önemli bir ayrım vardır. Mnemonic phrase bir cüzdan şifresi veya PIN değildir. Şifre genellikle yalnızca cihazın kilidini açar. Mnemonic phrase ise cüzdanın tamamını farklı bir cihazda yeniden kurabilecek tek yedektir.
Mnemonic phrase oluşturma süreci: BIP-39 standardı
Mnemonic phrase rastgele üretilmiş bir kelime dizisi değildir. Belirli bir matematiksel sürecin çıktısıdır ve bu süreç 2013 yılında yayımlanan BIP-39 standardıyla tanımlanır. Cüzdan yazılımı önce güçlü bir rastgelelik kaynağından entropi üretir.
Entropiye bir checksum eklenir ve ortaya çıkan bit dizisi 11 bitlik parçalara bölünür. Her parça 2048 kelimelik standart bir listeden bir kelimeye karşılık gelir. 128 bit entropi 12 kelimelik, 256 bit entropi ise 24 kelimelik bir mnemonic phrase oluşturur. Standart ayrıca 15, 18 ve 21 kelimelik seçenekleri de tanımlar.
Kelimeler daha sonra PBKDF2 adlı bir fonksiyonla 512 bitlik bir seed’e dönüştürülür. Bu seed, BIP-32 gibi hiyerarşik deterministik cüzdan standartları aracılığıyla farklı hesaplar, adresler ve özel anahtarlar üretmek için kullanılır. Bu hiyerarşik yapı, tek bir seed’den sınırsız sayıda anahtar türetilmesine imkân tanır.
2048 kelimelik liste rastgele derlenmiş değildir. Yazım hatalarını en aza indirmek için her kelimenin ilk dört harfi listedeki diğer kelimelerden ayırt edilebilir olacak şekilde seçilir. “Build” ve “built” veya “woman” ve “women” gibi birbirine çok yakın kelime çiftleri listeye alınmaz. Çünkü bu tür çiftler hem hatırlamayı zorlaştırır hem de elle yazarken hata riskini artırır. Liste ayrıca alfabetik sıralanır. Böylece bir cüzdan yazılımı girilen kelimeyi hızlıca doğrulayabilir.
Mnemonic phrase ile private key arasındaki fark
Private key, tek bir kripto adresini veya hesabını kontrol eden tekil bir anahtardır. Mnemonic phrase ise bu anahtarların tamamını tek bir yerden türetebilen ana yedektir. Bir mnemonic phrase kaybedilirse tüm hesaplara erişim gider. Tek bir private key kaybedilirse yalnızca o adrese bağlı varlıklar etkilenir. Aradaki farkı şöyle özetlenebilir:
- Kapsam: Private key tek bir adresi kontrol eder; mnemonic phrase cüzdandaki tüm hesapları ve adresleri kapsar.
- Format: Private key uzun bir onaltılık (hex) karakter dizisidir; mnemonic phrase 12-24 kelimelik okunabilir bir listedir.
- Yedekleme: Her private key için ayrı yedek gerekir; tek bir mnemonic phrase tüm cüzdanı kapsar.
- Kayıp etkisi: Bir private key kaybedildiğinde yalnızca ilgili adres etkilenir; mnemonic phrase kaybedildiğinde cüzdanın tamamına erişim gider.
Mnemonic phrase ve seed phrase arasındaki terminolojik fark
Günlük kullanımda mnemonic phrase ve seed phrase terimleri genellikle birbirinin yerine kullanılır. Türkçe kaynaklarda her ikisi de kurtarma ifadesi veya tohum ifadesi olarak geçebilir. Teknik terminolojide ise ince bir ayrım bulunur.
Mnemonic phrase, BIP-39 kelime listesinden seçilen kelime dizisinin kendisidir. Seed ise bu kelime dizisinin PBKDF2 fonksiyonuyla dönüştürülmüş 512 bitlik hâlidir. Yani mnemonic phrase, seed’in insan tarafından okunabilir kaynağıdır. Seed ise cüzdanın anahtarları türetmek için gerçekte kullandığı ikili veridir.
12 ve 24 kelimelik mnemonic phrase karşılaştırması
12 kelimelik bir mnemonic phrase 128 bit entropiye, 24 kelimelik bir mnemonic phrase ise 256 bit entropiye dayanır. Bit sayısı arttıkça olası kombinasyon sayısı katlanarak büyür. Bu nedenle 24 kelimelik bir ifadenin teorik güvenlik seviyesi 12 kelimeliye göre çok daha yüksektir.
Ancak 24 kelime her durumda iki kat güvenli olmayabilir. Pratikte güvenliği belirleyen asıl unsur kelime sayısından çok ifadenin nasıl saklandığıdır. Ekran görüntüsü alınmış 24 kelimelik bir ifade, kağıda yazılıp kasada saklanan 12 kelimelik bir ifadeden çok daha risklidir.
Bazı cüzdanlar 15, 18 veya 21 kelimelik seçenekleri de destekler. Hangi uzunluğun kullanılacağı genellikle cüzdan yazılımı tarafından belirlenir ve kullanıcı bu seçimi çoğunlukla değiştiremez.
BIP-39 standardı, kelimelerin üzerine isteğe bağlı bir passphrase (bazen 25. kelime olarak anılır) eklenmesine de izin verir. Bu ek katman, mnemonic phrase’i ele geçiren bir kişinin bile passphrase’i bilmeden cüzdana erişememesini sağlar. Ancak passphrase unutulursa doğru 12 veya 24 kelimeye sahip olmak tek başına yetmez. Bu nedenle passphrase kullanımı yalnızca ileri düzey kullanıcılara önerilir.
