Shamir'in Sır Paylaşım Planı

Bir banka kasasını güvence altına almanız gereken bir senaryoyu düşünün. İşinizin ilk gününde size verilen anahtar olmadan kesinlikle zaptedilemez kabul edilir. Amacınız anahtarı güvenli bir şekilde saklamaktır.

Diyelim ki, gerektiğinde depolamaya erişim sağlayarak anahtarı her zaman yanınızda tutmaya karar verdiniz. Ancak böyle bir çözümün pratikte pek iyi ölçeklenmediğini hemen fark edeceksiniz, çünkü depolamayı her açtığınızda fiziksel varlığınız gerekli olacaktır. Peki ya sana söz verilen tatil? Üstelik soru daha da korkutucu: Ya tek anahtarınızı kaybederseniz?

Tatilinizi aklınızda tutarak anahtarın bir kopyasını alıp onu başka bir çalışana emanet etmeye karar veriyorsunuz. Ancak bunun da ideal olmadığını anlıyorsunuz. Anahtar sayısını iki katına çıkararak anahtar hırsızlığı olasılığını da iki katına çıkarırsınız.

Çaresizlik içinde kopyayı yok edersiniz ve orijinal anahtarı ikiye bölmeye karar verirsiniz. Şimdi, anahtarı almak ve kasayı açmak için anahtar parçalarına sahip iki güvenilir kişinin fiziksel olarak orada olması gerektiğini düşünürsünüz. Bu, bir hırsızın iki parçayı çalması gerektiği anlamına gelir ki bu, bir anahtarı çalmaktan iki kat daha zordur. Ancak çok geçmeden bu planın tek bir anahtardan çok daha iyi olmadığını anlarsınız çünkü birisi anahtarın yarısını kaybederse anahtarın tamamı kurtarılamaz.

Sorun bir dizi ek anahtar ve kilitle çözülebilir, ancak bu yaklaşım hızlı bir şekilde gerekli olacaktır. çok anahtarlar ve kilitler. Güvenliğin tamamen tek bir kişiye bağlı olmaması için ideal tasarımın anahtarı paylaşmak olduğuna karar veriyorsunuz. Ayrıca, bir parça kaybolursa (veya bir kişi tatile çıkarsa) anahtarın tamamının işlevsel kalması için parça sayısı için bir eşik olması gerektiği sonucuna varırsınız.

Bir sır nasıl paylaşılır

Bu tür bir anahtar yönetim şeması, Adi Shamir tarafından 1979'da çalışmasını yayınladığında düşünülmüştü. "Bir sır nasıl paylaşılır". Makale kısaca sözde açıklıyor Shamir'in Sır Paylaşım Planı Gizli bir değeri (şifreleme anahtarı gibi) verimli bir şekilde bölmek için eşik şeması Shamir'in Sır Paylaşım Planı parçalar. O zaman, ne zaman ve yalnızca en azından ne zaman Shamir'in Sır Paylaşım Planı arasında Shamir'in Sır Paylaşım Planı parçalar monte edildiğinde sırrı kolayca geri yükleyebilirsiniz Shamir'in Sır Paylaşım Planı.

Güvenlik açısından bakıldığında, bu planın önemli bir özelliği, saldırganın en azından bilgi sahibi olmadığı sürece kesinlikle hiçbir şey bilmemesidir. Shamir'in Sır Paylaşım Planı parçalar. Varlığı bile Shamir'in Sır Paylaşım Planı parçalar herhangi bir bilgi vermemelidir. Biz bu mülk diyoruz anlamsal güvenlik.

Polinom enterpolasyonu

Shamir eşik şeması Shamir'in Sır Paylaşım Planı konsept etrafında inşa edilmiş polinom enterpolasyonu. Bu kavrama aşina değilseniz, aslında oldukça basittir. Aslında, eğer bir grafik üzerinde noktalar çizdiyseniz ve bunları çizgiler veya eğrilerle birleştirdiyseniz, bunu zaten kullanmışsınız demektir!

Shamir'in Sır Paylaşım Planı
İki noktadan sınırsız sayıda 2. derece polinom çizebilirsiniz. Bunlardan tek olanı seçmek için üçüncü bir noktaya ihtiyacınız vardır. İllüstrasyon: Vikipedi

Derecesi bir olan bir polinomu düşünün, Shamir'in Sır Paylaşım Planı. Bu fonksiyonu bir grafik üzerinde çizmek istiyorsanız kaç noktaya ihtiyacınız var? Bunun bir doğru oluşturan doğrusal bir fonksiyon olduğunu ve bu nedenle en az iki noktaya ihtiyaç duyduğunu biliyoruz. Daha sonra ikinci dereceden bir polinom fonksiyonunu düşünün, Shamir'in Sır Paylaşım Planı. Bu ikinci dereceden bir fonksiyon olduğundan grafiği çizmek için en az üç nokta gereklidir. Üçüncü dereceli bir polinoma ne dersiniz? En az dört puan. Ve benzeri.

Bu özellik hakkında gerçekten harika olan şey, polinom fonksiyonunun derecesi göz önüne alındığında ve en azından Shamir'in Sır Paylaşım Planı Bu polinom fonksiyonu için ek noktalar türetebiliriz. Bu ek noktaların ekstrapolasyonunu diyoruz. polinom enterpolasyonu.

Bir sır uydurmak

Shamir'in zekice planının burada devreye girdiğini zaten fark etmiş olabilirsiniz. Hadi sırrımızı söyleyelim Shamir'in Sır Paylaşım Planı - Mı Shamir'in Sır Paylaşım Planı. Dönebiliriz Shamir'in Sır Paylaşım Planı grafikte bir noktaya Shamir'in Sır Paylaşım Planı ve dereceli bir polinom fonksiyonu bulun Shamir'in Sır Paylaşım Planıbu noktayı tatmin ediyor. Bunu hatırlayalım Shamir'in Sır Paylaşım Planı gerekli parçaların eşiğimiz olacaktır, dolayısıyla eşiği üç parçaya ayarlarsak, ikinci dereceli bir polinom fonksiyonu seçmeliyiz.

Polinomumuz şu forma sahip olacak: Shamir'in Sır Paylaşım PlanıNerede Shamir'in Sır Paylaşım Planı и Shamir'in Sır Paylaşım Planı — rastgele seçilmiş pozitif tam sayılar. Sadece dereceli bir polinom inşa ediyoruz Shamir'in Sır Paylaşım Planıburada serbest katsayı Shamir'in Sır Paylaşım Planı - Bu bizim sırrımız Shamir'in Sır Paylaşım Planıve sonrakilerin her biri için Shamir'in Sır Paylaşım Planı terimlerinde rastgele seçilmiş bir pozitif katsayı vardır. Orijinal örneğe dönersek ve şunu varsayarsak Shamir'in Sır Paylaşım Planı, sonra fonksiyonu elde ederiz Shamir'in Sır Paylaşım Planı.

Bu noktada bağlanarak parçalar oluşturabiliriz. Shamir'in Sır Paylaşım Planı benzersiz tamsayılar Shamir'in Sır Paylaşım PlanıNerede Shamir'in Sır Paylaşım Planı (çünkü bu bizim sırrımız). Bu örnekte, dört parçayı üç eşikle dağıtmak istiyoruz, böylece rastgele noktalar üretiyoruz Shamir'in Sır Paylaşım Planı ve anahtarın koruyucuları olan dört güvenilir kişiden her birine bir puan gönderin. Bunu da insanlara bildiriyoruz Shamir'in Sır Paylaşım Planı, çünkü bu kamuya açık bilgi olarak kabul edilir ve kurtarma için gereklidir Shamir'in Sır Paylaşım Planı.

Sırrı kurtarmak

Polinom enterpolasyonu kavramını ve bunun Shamir'in eşik şemasının temelini nasıl oluşturduğunu daha önce tartışmıştık. Shamir'in Sır Paylaşım Planı. Dört mütevelliden herhangi üçü eski durumuna dönmek istediğinde Shamir'in Sır Paylaşım Planı, yalnızca enterpolasyon yapmaları gerekir Shamir'in Sır Paylaşım Planı kendine özgü noktalarıyla. Bunu yapmak için puanlarını belirleyebilirler. Shamir'in Sır Paylaşım Planı ve aşağıdaki formülü kullanarak Lagrange enterpolasyon polinomunu hesaplayın. Eğer programlama sizin için matematikten daha anlaşılırsa pi aslında bir operatördür for, tüm sonuçları çarpar ve sigma for, bu da her şeyi topluyor.

Shamir'in Sır Paylaşım Planı

Shamir'in Sır Paylaşım Planı

at Shamir'in Sır Paylaşım Planı bunu şu şekilde çözebilir ve orijinal polinom fonksiyonumuzu döndürebiliriz:

Shamir'in Sır Paylaşım Planı

Çünkü bunu biliyoruz Shamir'in Sır Paylaşım Planı, iyileşmek Shamir'in Sır Paylaşım Planı basitçe yapılır:

Shamir'in Sır Paylaşım Planı

Güvenli olmayan tamsayı aritmetiği kullanma

Her ne kadar Shamir'in temel fikrini başarıyla uygulamış olsak da Shamir'in Sır Paylaşım PlanıŞu ana kadar görmezden geldiğimiz bir sorunla karşı karşıyayız. Polinom fonksiyonumuz güvenli olmayan tamsayı aritmetiği kullanıyor. Bir saldırganın fonksiyonumuzun grafiğinde elde ettiği her ek puan için, diğer noktalar için daha az olasılık bulunduğunu unutmayın. Tamsayı aritmetiğini kullanarak bir polinom fonksiyonu için artan sayıda nokta çizdiğinizde bunu kendi gözlerinizle görebilirsiniz. Bu, belirtilen güvenlik hedefimize ters etki yapar çünkü saldırganın en azından bilgi sahibi olana kadar kesinlikle hiçbir şey bilmemesi gerekir. Shamir'in Sır Paylaşım Planı parça.

Tamsayı aritmetik devresinin ne kadar zayıf olduğunu göstermek için bir saldırganın iki puan elde ettiği bir senaryoyu düşünün. Shamir'in Sır Paylaşım Planı ve kamuya açık bilgileri biliyor Shamir'in Sır Paylaşım Planı. Bu bilgiden şu sonucu çıkarabilir Shamir'in Sır Paylaşım Planıikiye eşit ve bilinen değerleri formüle yerleştir Shamir'in Sır Paylaşım Planı и Shamir'in Sır Paylaşım Planı.

Shamir'in Sır Paylaşım Planı

Saldırgan daha sonra bulabilir Shamir'in Sır Paylaşım Planı, sayma Shamir'in Sır Paylaşım Planı:

Shamir'in Sır Paylaşım Planı

Tanımladığımızdan beri Shamir'in Sır Paylaşım Planı Rastgele seçilen pozitif tam sayılar olduğundan sınırlı sayıda olası vardır. Shamir'in Sır Paylaşım Planı. Bir saldırgan bu bilgiyi kullanarak şu sonucu çıkarabilir: Shamir'in Sır Paylaşım Planı, çünkü 5'ten büyük herhangi bir şey işe yarayacaktır Shamir'in Sır Paylaşım Planı olumsuz. Biz belirlediğimiz için bu doğru çıkıyor Shamir'in Sır Paylaşım Planı

Saldırgan daha sonra olası değerleri hesaplayabilir Shamir'in Sır Paylaşım Planıyerine Shamir'in Sır Paylaşım Planı в Shamir'in Sır Paylaşım Planı:

Shamir'in Sır Paylaşım Planı

Sınırlı seçeneklerle Shamir'in Sır Paylaşım Planı değerleri seçmenin ve kontrol etmenin ne kadar kolay olduğu anlaşılıyor Shamir'in Sır Paylaşım Planı. Burada sadece beş seçenek var.

Sorunu güvenli olmayan tamsayı aritmetiğiyle çözme

Bu güvenlik açığını ortadan kaldırmak için Shamir, modüler aritmetik kullanılmasını öneriyor. Shamir'in Sır Paylaşım Planı üzerinde Shamir'in Sır Paylaşım PlanıNerede Shamir'in Sır Paylaşım Planı и Shamir'in Sır Paylaşım Planı — tüm asal sayılar kümesi.

Modüler aritmetiğin nasıl çalıştığını hemen hatırlayalım. İbreli bir saat tanıdık bir kavramdır. O bir saat kullanıyor Shamir'in Sır Paylaşım Planı. Akrep on ikiyi geçer geçmez bire döner. Bu sistemin ilginç bir özelliği, sadece saate bakarak akrebin kaç devir yaptığını çıkaramamamızdır. Ancak akrebin 12'yi dört kez geçtiğini biliyorsak, geçen saat sayısını basit bir formül kullanarak tamamen belirleyebiliriz. Shamir'in Sır Paylaşım PlanıNerede Shamir'in Sır Paylaşım Planı bölenimiz (burada Shamir'in Sır Paylaşım Planı), Shamir'in Sır Paylaşım Planı katsayıdır (bölenin orijinal sayıya kalansız kaç kez girdiği, burada Shamir'in Sır Paylaşım Planı), Ve Shamir'in Sır Paylaşım Planı genellikle modulo operatör çağrısını döndüren geri kalan kısımdır (burada Shamir'in Sır Paylaşım Planı). Tüm bu değerleri bilmek denklemi çözmemizi sağlar Shamir'in Sır Paylaşım Planı, ancak katsayıyı kaçırırsak hiçbir zaman orijinal değeri geri yükleyemeyiz.

Şemayı önceki örneğimize uygulayarak ve şunu kullanarak, bunun şemamızın güvenliğini nasıl artırdığını gösterebiliriz. Shamir'in Sır Paylaşım Planı. Yeni polinom fonksiyonumuz Shamir'in Sır Paylaşım Planıve yeni noktalar Shamir'in Sır Paylaşım Planı. Artık anahtar koruyucular fonksiyonumuzu yeniden yapılandırmak için bir kez daha polinom enterpolasyonunu kullanabilirler, ancak bu sefer toplama ve çarpma işlemlerine modulo indirgeme eşlik etmelidir Shamir'in Sır Paylaşım Planı (Örneğin Shamir'in Sır Paylaşım Planı).

Bu yeni örneği kullanarak, saldırganın bu yeni noktalardan ikisini öğrendiğini varsayalım: Shamir'in Sır Paylaşım Planıve kamuya açık bilgiler Shamir'in Sır Paylaşım Planı. Bu kez saldırgan, sahip olduğu tüm bilgilere dayanarak aşağıdaki işlevleri çıktı olarak verir: Shamir'in Sır Paylaşım Planı tüm pozitif tam sayıların kümesidir ve Shamir'in Sır Paylaşım Planı modül katsayısını temsil eder Shamir'in Sır Paylaşım Planı.

Shamir'in Sır Paylaşım Planı

Şimdi saldırganımız tekrar buluyor Shamir'in Sır Paylaşım Planı, Hesaplanıyor Shamir'in Sır Paylaşım Planı:

Shamir'in Sır Paylaşım Planı

Sonra tekrar dener Shamir'in Sır Paylaşım Planıyerine Shamir'in Sır Paylaşım Planı в Shamir'in Sır Paylaşım Planı:

Shamir'in Sır Paylaşım Planı

Bu sefer ciddi bir sorunu var. Formülde eksik değerler Shamir'in Sır Paylaşım Planı, Shamir'in Sır Paylaşım Planı и Shamir'in Sır Paylaşım Planı. Bu değişkenlerin sonsuz sayıda kombinasyonu olduğundan herhangi bir ek bilgi elde edemez.

Güvenlik Hususları

Shamir'in gizli paylaşım planı şunu gösteriyor bilgi teorisi açısından güvenlik. Bu, matematiğin sınırsız bilgi işlem gücüne sahip bir saldırgana karşı bile dayanıklı olduğu anlamına gelir. Ancak devrede hala bilinen birkaç sorun bulunmaktadır.

Örneğin Shamir'in planı şunu yaratmıyor: kontrol edilecek parçalaryani insanlar sahte parçaları özgürce sunabilir ve doğru sırrın kurtarılmasına müdahale edebilir. Yeterli bilgiye sahip düşmanca bir parça saklayıcısı, değişiklik yaparak başka bir parça bile üretebilir. Shamir'in Sır Paylaşım Planı kendi takdirinize bağlı olarak. Bu sorun kullanılarak çözüldü doğrulanabilir gizli paylaşım şemalarıFeldman'ın planı gibi.

Diğer bir sorun ise herhangi bir parçanın uzunluğunun karşılık gelen sırrın uzunluğuna eşit olması, dolayısıyla sırrın uzunluğunun belirlenmesinin kolay olmasıdır. Bu sorun önemsiz şeylerle çözülebilir dolgu malzemesi sabit bir uzunluğa kadar rastgele sayılarla sır.

Son olarak, güvenlik endişelerimizin tasarımın ötesine geçebileceğini unutmamak önemlidir. Gerçek dünyadaki kriptografik uygulamalar için, genellikle bir saldırganın uygulama yürütme süresi, önbellekleme, çökmeler vb. gibi konulardan yararlı bilgiler elde etmeye çalıştığı yan kanal saldırıları tehdidi vardır. Bu bir endişe ise, geliştirme sırasında işlevler ve sabit zamanlı aramalar gibi koruyucu önlemlerin kullanılması, belleğin diske kaydedilmesinin önlenmesi ve bu makalenin kapsamı dışında kalan diğer bazı hususlara dikkatli bir şekilde dikkat edilmelidir.

Demo

Üzerinde Bu sayfa Shamir'in gizli paylaşım planının interaktif bir gösterimi var. Kütüphaneye dayalı gösteri ssss-jskendisi de popüler programın JavaScript bağlantı noktasıdır ssss. Büyük değerlerin hesaplanmasına dikkat edin Shamir'in Sır Paylaşım Planı, Shamir'in Sır Paylaşım Planı и Shamir'in Sır Paylaşım Planı biraz zaman alabilir.

Kaynak: habr.com

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster