Passkeys, eliptik eğri kriptografi kullanımı sayesinde kripto cüzdanları oluşturmak ve güvenli bir şekilde saklamak için de kullanılabilen güvenli ve kullanıcı dostu bir kimlik doğrulama yaklaşımıdır.
Bu yazıda, nasıl geçiş anahtarlarının çalıştığını kapsayacağız, kripto cüzdanlar için geçiş anahtarlarını kullanmanın risklerini keşfedeceğiz ve hesap soyutlamasının akıllı sözleşmelerle birleştirildiğinde geçiş anahtarlarının nasıl kullanılmasını sağladığına dair ayrıntılara inceleyeceğiz.
Passkeys, kullanıcıların hassas şifreleri depolamalarını veya herhangi bir giriş ayrıntısını hatırlamalarını gerektirmeksizin bir uygulamaya giriş yapmaları için basit ve güvenli bir yöntemdir. Bunun yerine, kullanıcılar, Yüz Kimliği veya Dokunmatik Kimlik gibi tanıdık yöntemler kullanarak hesaplar oluştururlar ve erişirler.
Bu, hassas kimlik bilgilerini hiçbir zaman depolamadan, yetkilendirilmiş bir şekilde uygulamalara kolayca giriş yapmayı ve etkileşimde bulunmayı, veri ihlallerine ve balık tutma gibi yaygın saldırı vektörlerine karşı sorunsuz bir deneyim ve ek güvenlik sağlar.
Çoğu cihazda, iPhone gibi, şifreler, Gate.io adlı özel donanımda saklanır.Güvenli Enclave; Ana işlemci bile tehlikeye atılsa bile hassas verileri korumak için tasarlanmış, izole edilmiş bir ortam.
Passkey'ler kullanıraçık anahtarlı şifrelemekullanıcının cihazında iki anahtardan oluşan bir genel-özel anahtar çifti oluşturmak için
Böyle blockchain cüzdanlarıÖzel anahtar, bir geçiş anahtarının mesajları ve işlemleri imzalamak için kullanılabilir ve bu işlemler blok zincirinde durum değişiklikleri yapmak için gönderilebilir.
Bir işlemi bir geçiş anahtarının özel anahtarıyla imzalamak için işlem güvenli donanıma gönderilir, burada imzalanır ve elde edilen imza çıktı olarak verilir. Bu süreç boyunca, ne sahip ne de uygulama geliştiricisi özel anahtara erişim sahibi olur; yalnızca üretilen imzaları alırlar.
Bu, kullanıcı için gelişmiş güvenlik sağlar, çünkü özel anahtar genellikle uygulamanın belleğine yüklenmez, böylece potansiyel saldırılara karşı maruz kalma riski azalır. Örneğin, iPhone'da kullanıcı, anahtarın arabirim tarafından erişilemeyen özel donanımda oluşturulduğu ve depolandığı için bile ayarlarındaki parola değerine erişemez.
Passkey'ler ve kripto cüzdanlar, genel-özel anahtar çiftleri oluşturmak için eliptik eğri kriptografisinin aynı temel teknolojisini paylaşırlar. Blok zinciri uygulama geliştiricileri, kullanıcılar için güçlü bir UX ile güvenli uygulama içi cüzdanlar oluşturmak için passkey'lerden yararlanabilirler.
Ancak, blockchain hesapları için passkey kullanırken karmaşıklık oluşturan önemli bir fark vardır; passkey'ler blockchain hesaplarından farklı bir eliptik eğri kullanır.
Apple, Android ve WebAuthn tüm geçiş anahtarları için secp256r1 (AKA P-256) eğrisini kullanırken, blockchain hesapları secp256k1 eliptik eğrisini kullanır.
Bu, bir geçiş anahtarının özel anahtarı tarafından imzalanan işlemlerin Ethereum veya Abstract gibi blok zincirleri tarafından anlaşılmadığı (ve bu nedenle reddedildiği) anlamına gelir. Blok zincirlerinin varsayılan beklentisi, işlemin secp256k1 eğrisi üzerinde oluşturulan bir anahtar çifti tarafından imzalandığıdır.
Düzenli (EOA) cüzdanlar k1 eğrisi üzerinde oluşturulduğundan, akıllı sözleşme cüzdanları gereklidir, çünkü passkey'ler tarafından oluşturulan özel anahtarlarla imzalanan işlemleri doğrulayan özel mantık içerebilir ve işlem yürütme izni verir.
Bitcoin, şifreleme işlemleri için secp256k1 eğrisini kullanan ilk kripto para oldu. Bu, Ethereum ve diğer EVM tabanlı zincirlerin hesaplar için k1 varyasyonunu kullanmasının standartını belirledi.
Eğri'nin k1 varyasyonu da secp256r1'i biraz daha karmaşık hale getiren ek katsayılar gibi bazı özelliklere sahip değildir, bu da secp256k1'in anahtar oluşturma, imza oluşturma ve doğrulama için hesaplama açısından daha verimli olduğu anlamına gelir.
Herhangi bir doğrudan zayıflık bulunmasa da, Bitcoin'in daha yaygın olarak benimsenen r1 eğrisi yerine k1'i kullanmayı tercih etmesinin nedeni, NSA gibi hükümet kurumlarının NIST tarafından onaylanan kriptografik standartların geliştirilmesindeki rolü göz önüne alındığında, gizlice bir arka kapı oluşturma potansiyeline karşı önlem almaktır.
Akıllı sözleşme cüzdanları (örneğin, Gate.io tarafından desteklenenler gibi)Abstract’ın yerel hesap soyutlaması) EVM'nin yürütebileceği r1 eğrisinde oluşturulan bir özel anahtar tarafından imzalanan mesajlar için imza doğrulaması dahil olmak üzere keyfi mantık içerebilir.
Açık kaynaklı kütüphaneler, Gate.io gibiDaimo’nun açık kaynaklı P256 doğrulayıcısıSolidity ile yazılan akıllı sözleşmeler içinde secp256r1 eğrisindeki imzaları doğrulamak için inşa edildim.
Ethereum'da, bu, akıllı sözleşmelerle kullanabileceğiniz anlamına gelir.ERC-4337 hesap soyutlama standardıKullanıcı İşlemi'nin r1 imzasını doğrulamak içinvalidateUserOp
akıllı sözleşme cüzdanının işlevi.
Gate.ioyerel hesap soyutlamasıAkıllı sözleşme cüzdanının, geçiş anahtarının özel anahtarı ile imzalanmış mesaj olarak ayarlanmış imza alanıyla işlemler göndermesine olanak sağlar. İşlemi gönderen hesap, r1 imzalarını doğrulamak için mantık içeren bir akıllı sözleşme ise (parantez içinde belirtilen}doğrulama işlemi
işlevi), işlem kabul edilir.
Akıllı sözleşme cüzdanları, işlevselliğini yönetmek ve kontrol etmek için kod kullanır (bir akıllı sözleşme şeklinde), bu da onlara kurtarma modülleri, çoklu onaylayıcılar, harcama sınırları, oturum anahtarları ve daha fazlası dahil olmak üzere özel özellikler ekleyebilmeleri anlamına gelir.
Akıllı sözleşme cüzdanları, geleneksel EOA (Dışarıdan Sahipli Hesaplar) cüzdanlardan daha fazla esneklik sunar ve keyfi EVM kodunu içerebildikleri için r1 eliptik eğrisinde oluşturulan anahtar çiftlerinden imzaları doğrulama (yani işlemleri yetkilendirme) gücüne sahiptir.
R1 eğrisindeki imzaların doğrulanması, Ethereum veya Abstract gibi blok zincirleri için yerleşik değildir, bu nedenle bu doğrulamanın yapılması hesaplama açısından pahalıdır; r1 imzalarını doğrulamak için gaz maliyetlerinin k1 imzalarına göre önemli ölçüde artması (yaklaşık 100 kat daha pahalı)
RIP-7212 (Rollup İyileştirme Önerisi), r1 eğrisinde daha fazla gaz verimli imza doğrulaması için Ethereum L2'lerine önceden derlenmiş akıllı bir sözleşmenin eklenmesini önermektedir. Bu henüz Ethereum'da dahil edilmemiş olsa da, Abstract gibi EVM-uyumlu ölçeklendirme çözümleri bunu zaten uyguladı ve r1 imza doğrulamaları için %100 oranında gaz azaltma sağladı.
Passkey cüzdanlarının dezavantajı, bunların yalnızca bir alan adına bağlı olmasıdır. Örneğin, some-domain.com üzerinde bir cüzdan oluşturursanız, passkey'iniz (ve dolayısıyla cüzdanınız) yalnızca bu belirli alan adına bağlanabilir.
Bu, bilerek bir tasarım tercihidir ve balık avı saldırılarını önlemek içindir, ancak kendini saklama değerlendiren kullanıcılar için büyük bir kusur oluşturur, çünkü cüzdanınız doğrudan bir uygulamaya bağlıdır, yani:
Bu nedenlerle, anahtar cüzdanları küçük miktarlarda paralar için veya başlangıç kullanıcılarını ilk kripto deneyimlerine taşımak için en uygun olanlardır, ta ki kendilerini koruma cüzdanları hakkında daha bilgili hale gelene kadar.
Bu, geçiş anahtarınızı nasıl yedeklemeyi seçtiğinize bağlıdır. Bulutta (örneğin Apple Keychain gibi) geçiş anahtarınızı yedeklemek için birkaç seçenek vardır, böylece orijinalini kaybetseniz bile diğer cihazlarda erişilebilir olur.
Özel anahtar, Güvenli Kasa'da olduğu için hiçbir zaman cihazda okunamaz. Ancak, biyometrik verilerinize erişimleri varsa, pas anahtarınız/cüzdanınızın kontrolüne sahipmiş gibi işlemler gerçekleştirebilirler.
Hayır. Biyometrik verileriniz herhangi bir yere gönderilmez; cihazınızda kalır. Biyometrik verileriniz sadece anahtarı "açmak" için kullanılır.
Passkeys, eliptik eğri kriptografi kullanımı sayesinde kripto cüzdanları oluşturmak ve güvenli bir şekilde saklamak için de kullanılabilen güvenli ve kullanıcı dostu bir kimlik doğrulama yaklaşımıdır.
Bu yazıda, nasıl geçiş anahtarlarının çalıştığını kapsayacağız, kripto cüzdanlar için geçiş anahtarlarını kullanmanın risklerini keşfedeceğiz ve hesap soyutlamasının akıllı sözleşmelerle birleştirildiğinde geçiş anahtarlarının nasıl kullanılmasını sağladığına dair ayrıntılara inceleyeceğiz.
Passkeys, kullanıcıların hassas şifreleri depolamalarını veya herhangi bir giriş ayrıntısını hatırlamalarını gerektirmeksizin bir uygulamaya giriş yapmaları için basit ve güvenli bir yöntemdir. Bunun yerine, kullanıcılar, Yüz Kimliği veya Dokunmatik Kimlik gibi tanıdık yöntemler kullanarak hesaplar oluştururlar ve erişirler.
Bu, hassas kimlik bilgilerini hiçbir zaman depolamadan, yetkilendirilmiş bir şekilde uygulamalara kolayca giriş yapmayı ve etkileşimde bulunmayı, veri ihlallerine ve balık tutma gibi yaygın saldırı vektörlerine karşı sorunsuz bir deneyim ve ek güvenlik sağlar.
Çoğu cihazda, iPhone gibi, şifreler, Gate.io adlı özel donanımda saklanır.Güvenli Enclave; Ana işlemci bile tehlikeye atılsa bile hassas verileri korumak için tasarlanmış, izole edilmiş bir ortam.
Passkey'ler kullanıraçık anahtarlı şifrelemekullanıcının cihazında iki anahtardan oluşan bir genel-özel anahtar çifti oluşturmak için
Böyle blockchain cüzdanlarıÖzel anahtar, bir geçiş anahtarının mesajları ve işlemleri imzalamak için kullanılabilir ve bu işlemler blok zincirinde durum değişiklikleri yapmak için gönderilebilir.
Bir işlemi bir geçiş anahtarının özel anahtarıyla imzalamak için işlem güvenli donanıma gönderilir, burada imzalanır ve elde edilen imza çıktı olarak verilir. Bu süreç boyunca, ne sahip ne de uygulama geliştiricisi özel anahtara erişim sahibi olur; yalnızca üretilen imzaları alırlar.
Bu, kullanıcı için gelişmiş güvenlik sağlar, çünkü özel anahtar genellikle uygulamanın belleğine yüklenmez, böylece potansiyel saldırılara karşı maruz kalma riski azalır. Örneğin, iPhone'da kullanıcı, anahtarın arabirim tarafından erişilemeyen özel donanımda oluşturulduğu ve depolandığı için bile ayarlarındaki parola değerine erişemez.
Passkey'ler ve kripto cüzdanlar, genel-özel anahtar çiftleri oluşturmak için eliptik eğri kriptografisinin aynı temel teknolojisini paylaşırlar. Blok zinciri uygulama geliştiricileri, kullanıcılar için güçlü bir UX ile güvenli uygulama içi cüzdanlar oluşturmak için passkey'lerden yararlanabilirler.
Ancak, blockchain hesapları için passkey kullanırken karmaşıklık oluşturan önemli bir fark vardır; passkey'ler blockchain hesaplarından farklı bir eliptik eğri kullanır.
Apple, Android ve WebAuthn tüm geçiş anahtarları için secp256r1 (AKA P-256) eğrisini kullanırken, blockchain hesapları secp256k1 eliptik eğrisini kullanır.
Bu, bir geçiş anahtarının özel anahtarı tarafından imzalanan işlemlerin Ethereum veya Abstract gibi blok zincirleri tarafından anlaşılmadığı (ve bu nedenle reddedildiği) anlamına gelir. Blok zincirlerinin varsayılan beklentisi, işlemin secp256k1 eğrisi üzerinde oluşturulan bir anahtar çifti tarafından imzalandığıdır.
Düzenli (EOA) cüzdanlar k1 eğrisi üzerinde oluşturulduğundan, akıllı sözleşme cüzdanları gereklidir, çünkü passkey'ler tarafından oluşturulan özel anahtarlarla imzalanan işlemleri doğrulayan özel mantık içerebilir ve işlem yürütme izni verir.
Bitcoin, şifreleme işlemleri için secp256k1 eğrisini kullanan ilk kripto para oldu. Bu, Ethereum ve diğer EVM tabanlı zincirlerin hesaplar için k1 varyasyonunu kullanmasının standartını belirledi.
Eğri'nin k1 varyasyonu da secp256r1'i biraz daha karmaşık hale getiren ek katsayılar gibi bazı özelliklere sahip değildir, bu da secp256k1'in anahtar oluşturma, imza oluşturma ve doğrulama için hesaplama açısından daha verimli olduğu anlamına gelir.
Herhangi bir doğrudan zayıflık bulunmasa da, Bitcoin'in daha yaygın olarak benimsenen r1 eğrisi yerine k1'i kullanmayı tercih etmesinin nedeni, NSA gibi hükümet kurumlarının NIST tarafından onaylanan kriptografik standartların geliştirilmesindeki rolü göz önüne alındığında, gizlice bir arka kapı oluşturma potansiyeline karşı önlem almaktır.
Akıllı sözleşme cüzdanları (örneğin, Gate.io tarafından desteklenenler gibi)Abstract’ın yerel hesap soyutlaması) EVM'nin yürütebileceği r1 eğrisinde oluşturulan bir özel anahtar tarafından imzalanan mesajlar için imza doğrulaması dahil olmak üzere keyfi mantık içerebilir.
Açık kaynaklı kütüphaneler, Gate.io gibiDaimo’nun açık kaynaklı P256 doğrulayıcısıSolidity ile yazılan akıllı sözleşmeler içinde secp256r1 eğrisindeki imzaları doğrulamak için inşa edildim.
Ethereum'da, bu, akıllı sözleşmelerle kullanabileceğiniz anlamına gelir.ERC-4337 hesap soyutlama standardıKullanıcı İşlemi'nin r1 imzasını doğrulamak içinvalidateUserOp
akıllı sözleşme cüzdanının işlevi.
Gate.ioyerel hesap soyutlamasıAkıllı sözleşme cüzdanının, geçiş anahtarının özel anahtarı ile imzalanmış mesaj olarak ayarlanmış imza alanıyla işlemler göndermesine olanak sağlar. İşlemi gönderen hesap, r1 imzalarını doğrulamak için mantık içeren bir akıllı sözleşme ise (parantez içinde belirtilen}doğrulama işlemi
işlevi), işlem kabul edilir.
Akıllı sözleşme cüzdanları, işlevselliğini yönetmek ve kontrol etmek için kod kullanır (bir akıllı sözleşme şeklinde), bu da onlara kurtarma modülleri, çoklu onaylayıcılar, harcama sınırları, oturum anahtarları ve daha fazlası dahil olmak üzere özel özellikler ekleyebilmeleri anlamına gelir.
Akıllı sözleşme cüzdanları, geleneksel EOA (Dışarıdan Sahipli Hesaplar) cüzdanlardan daha fazla esneklik sunar ve keyfi EVM kodunu içerebildikleri için r1 eliptik eğrisinde oluşturulan anahtar çiftlerinden imzaları doğrulama (yani işlemleri yetkilendirme) gücüne sahiptir.
R1 eğrisindeki imzaların doğrulanması, Ethereum veya Abstract gibi blok zincirleri için yerleşik değildir, bu nedenle bu doğrulamanın yapılması hesaplama açısından pahalıdır; r1 imzalarını doğrulamak için gaz maliyetlerinin k1 imzalarına göre önemli ölçüde artması (yaklaşık 100 kat daha pahalı)
RIP-7212 (Rollup İyileştirme Önerisi), r1 eğrisinde daha fazla gaz verimli imza doğrulaması için Ethereum L2'lerine önceden derlenmiş akıllı bir sözleşmenin eklenmesini önermektedir. Bu henüz Ethereum'da dahil edilmemiş olsa da, Abstract gibi EVM-uyumlu ölçeklendirme çözümleri bunu zaten uyguladı ve r1 imza doğrulamaları için %100 oranında gaz azaltma sağladı.
Passkey cüzdanlarının dezavantajı, bunların yalnızca bir alan adına bağlı olmasıdır. Örneğin, some-domain.com üzerinde bir cüzdan oluşturursanız, passkey'iniz (ve dolayısıyla cüzdanınız) yalnızca bu belirli alan adına bağlanabilir.
Bu, bilerek bir tasarım tercihidir ve balık avı saldırılarını önlemek içindir, ancak kendini saklama değerlendiren kullanıcılar için büyük bir kusur oluşturur, çünkü cüzdanınız doğrudan bir uygulamaya bağlıdır, yani:
Bu nedenlerle, anahtar cüzdanları küçük miktarlarda paralar için veya başlangıç kullanıcılarını ilk kripto deneyimlerine taşımak için en uygun olanlardır, ta ki kendilerini koruma cüzdanları hakkında daha bilgili hale gelene kadar.
Bu, geçiş anahtarınızı nasıl yedeklemeyi seçtiğinize bağlıdır. Bulutta (örneğin Apple Keychain gibi) geçiş anahtarınızı yedeklemek için birkaç seçenek vardır, böylece orijinalini kaybetseniz bile diğer cihazlarda erişilebilir olur.
Özel anahtar, Güvenli Kasa'da olduğu için hiçbir zaman cihazda okunamaz. Ancak, biyometrik verilerinize erişimleri varsa, pas anahtarınız/cüzdanınızın kontrolüne sahipmiş gibi işlemler gerçekleştirebilirler.
Hayır. Biyometrik verileriniz herhangi bir yere gönderilmez; cihazınızda kalır. Biyometrik verileriniz sadece anahtarı "açmak" için kullanılır.