ट्रांसपोजिशन सिफर
ट्रांसपोज़िशन सिफर एक क्रिप्टोग्राफिक एल्गोरिथ्म है जहाँ प्लेनेट में अल्फाबेट्स के क्रम को सिफर टेक्स्ट बनाने के लिए फिर से व्यवस्थित किया जाता है। इस प्रक्रिया में, वास्तविक सादे पाठ अक्षर शामिल नहीं हैं।
उदाहरण
एक ट्रांसपोज़ेशन सिफर के लिए एक सरल उदाहरण है columnar transposition cipherजहाँ सादे पाठ में प्रत्येक वर्ण क्षैतिज रूप से निर्दिष्ट वर्णमाला चौड़ाई के साथ लिखा गया है। सिफर को लंबवत लिखा जाता है, जो एक पूरी तरह से अलग सिफर टेक्स्ट बनाता है।
सादे पाठ पर विचार करें hello world, और हमें नीचे दिखाए अनुसार सरल स्तंभ ट्रांसपोज़िशन तकनीक लागू करें
सादे पाठ वर्ण क्षैतिज रूप से रखे गए हैं और सिफर पाठ को ऊर्ध्वाधर प्रारूप के साथ बनाया गया है : holewdlo lr. अब, रिसीवर को सिफर टेक्स्ट को प्लेन टेक्स्ट को डिक्रिप्ट करने के लिए उसी टेबल का उपयोग करना होगा।
कोड
निम्नलिखित कार्यक्रम कोड स्तंभ पारगमन तकनीक के बुनियादी कार्यान्वयन को प्रदर्शित करता है -
def split_len(seq, length):
return [seq[i:i + length] for i in range(0, len(seq), length)]
def encode(key, plaintext):
order = {
int(val): num for num, val in enumerate(key)
}
ciphertext = ''
for index in sorted(order.keys()):
for part in split_len(plaintext, len(key)):
try:ciphertext += part[order[index]]
except IndexError:
continue
return ciphertext
print(encode('3214', 'HELLO'))
व्याख्या
फ़ंक्शन का उपयोग करना split_len(), हम सादे पाठ वर्णों को विभाजित कर सकते हैं, जिन्हें स्तंभ या पंक्ति प्रारूप में रखा जा सकता है।
encode विधि स्तंभों की संख्या निर्दिष्ट करने के साथ मुख्य पाठ बनाने में मदद करती है और प्रत्येक स्तंभ के माध्यम से वर्णों को पढ़कर सिफर पाठ को प्रिंट करती है।
उत्पादन
स्तंभ प्रत्यारोपण तकनीक के बुनियादी कार्यान्वयन के लिए प्रोग्राम कोड निम्नलिखित आउटपुट देता है -
Note- क्रिप्टोकरंसी का प्रदर्शन होने पर क्रिप्टोकरंसीज ने क्रिप्टो सुरक्षा में एक महत्वपूर्ण सुधार देखा। उन्होंने यह भी कहा कि एक ही ट्रांसपोज़ेशन सिफर का उपयोग करके सिफर टेक्स्ट को फिर से एन्क्रिप्ट करना बेहतर सुरक्षा बनाता है।