2012-08-06 11 views
8

आरएसए अधिकतम ब्लॉक आकार, जिसे मैं एक चक्र में एन्क्रिप्ट कर सकता हूं, और 4096 कुंजी आकार के साथ आरएसए एल्गोरिदम की अधिकतम गति क्या है?क्या आरएसए अधिकतम ब्लॉक आकार एन्कोड करने के लिए?

उत्तर

13

लेनस्ट्रा के अद्यतन समीकरणों के मुताबिक उपलब्ध on this site, 4096 बिट आरएसए कुंजी का सुरक्षा स्तर क्रिप्टोग्राफ़िक हैश से मेल खाता है जो कम से कम 248 बिट्स लंबा है, उदाहरण के लिए SHA-256।

यदि आप आरएसए ओएईपी (और आपको चाहिए) का उपयोग करते हैं, तो आप जिस डेटा को सबसे ज्यादा एन्क्रिप्ट कर सकते हैं, वह modulus size - 2 - 2*hash size है, जो 446 बाइट्स है।

आरएसए पीकेसीएस # 1 v1.5 के साथ आप modulus size - 11 बाइट्स पर एन्क्रिप्ट कर सकते हैं, लेकिन आरएसए पीकेसीएस # 1 v1.5 कम सुरक्षा प्रदान करता है (यह पर्याप्त रूप से सुरक्षित नहीं है, और यादृच्छिक पैडिंग बाइट्स की न्यूनतम संख्या को बढ़ाया जाना चाहिए कम से कम 16 बाइट्स)।

यदि आपको अधिक डेटा एन्क्रिप्ट करने की आवश्यकता है तो आपको इसे आसानी से काटना नहीं चाहिए और प्रत्येक ब्लॉक पर आरएसए कई बार उपयोग नहीं करना चाहिए। यह एक सुरक्षा दोष है। आपको एक अलग दृष्टिकोण लेना चाहिए, अधिक सटीक:

  1. यादृच्छिक 128 बिट सममित कुंजी का चयन करें।
  2. अपने डेटा को एन्क्रिप्ट करने के लिए ऑपरेशन के प्रमाणीकृत मोड का उपयोग करें (उदा। एईएस-128 जीसीएम)।
  3. आरएसए ओएईपी का उपयोग करके सममित कुंजी को एन्क्रिप्ट करें।

आरएसए एन्क्रिप्शन (डिक्रिप्शन के विपरीत) बहुत तेज़ है, लेकिन समय वास्तव में पुस्तकालय और आपके द्वारा उपयोग किए जाने वाले प्लेटफॉर्म पर निर्भर है। कुछ संदर्भ के लिए, cryptopp library's website देखें।

+2

@owlstead उपयोग करने के लिए सही क्रिया के बारे में अच्छा बिंदु, मैंने जवाब संपादित किया। आरएसए एन्क्रिप्शन द्वारा संरक्षित सममित कुंजी की अखंडता के लिए, ओएईपी पहले ही ईमानदारी प्रदान करता है। मेरी राय में, यह भी आवश्यक नहीं है, प्रमाणीकरण मोड (जो एक मैक एम्बेड करता है) के कारण बाद में उपयोग किया जाता है। शायद आप प्रामाणिकता का मतलब है (जो यह योजना प्रदान नहीं करता है)? – SquareRootOfTwentyThree

+0

नहीं, मेरा मतलब अखंडता था। लेकिन मैं इस अर्थ में उलझन में था कि ओएईपी पर पैडिंग ऑरैकल हमले केवल साइड चैनल हमलों * के रूप में संभव हैं, दूसरे शब्दों में, कार्यान्वयन पर हमले। –

+0

@SquareRootOfTwentyThree: क्या आपके पास कोई संदर्भ है जो बताता है ** क्यों ** अधिकतम आकार 'मॉड्यूलस आकार - 2 - 2 * हैश आकार' है? – eckes

संबंधित मुद्दे