Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
steganographer — Python में स्टेग्नोग्राफी | इमेज फाइलों में फ़ाइलों या डेटा को छिपाएं | Kitploit
उपकरण/GitHubGitHub/priyansh-anand/steganographer
एन्क्रिप्शन/डिक्रिप्शन उपकरणडेटा निष्कासनस्टेग्नोग्राफीलर्निंग और शिक्षा
GitHubpriyansh-anand/steganographer

steganographer

Python में स्टेग्नोग्राफी | इमेज फाइलों में फ़ाइलों या डेटा को छिपाएं

रिपॉजिटरी देखें
1693484 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

पायथन में स्टेग्नोग्राफी

यह स्क्रिप्ट फ़ाइलों को इमेज के अंदर छिपाएगी और संशोधित इमेज को डिस्क पर सहेजेगी

इमेज के अंदर छिपाई जा सकने वाली फ़ाइल का अधिकतम आकार इमेज के आयामों पर निर्भर करता है।

root@kitploit:~
max_file_size = ( height_of_image * width_of_image * 6 / 8 ) bytes

'100k words.txt' को 'original_image.png' में छिपाया गया है जिसका नाम 'image_with_100k words.png' रखा गया है। जाएँ और जाँचें कि क्या आप इन दोनों इमेज के बीच अंतर देख सकते हैं। आप इस मॉड्यूल का उपयोग 'image_with_100k words.png' से '100k words.txt' निकालने के लिए कर सकते हैं।

उदाहरण

मूल इमेज मूल इमेज

संशोधित इमेज संशोधित इमेज

इस इमेज में 100k शब्द (एक टेक्स्ट फ़ाइल) छिपे हुए हैं!

यह कैसे काम करता है?

यह एक सरल सिद्धांत पर आधारित है कि यदि हम प्रत्येक पिक्सेल के LSB (लिस्ट सिग्निफिकेंट बिट्स) को बदलते हैं, तो परिवर्तन महत्वपूर्ण नहीं होगा और आँखों से ध्यान नहीं दिया जाएगा।

इसलिए, यह मॉड्यूल छिपाई जाने वाली फ़ाइल से 2 बिट डेटा लेता है और एक पिक्सेल के अंतिम 2 बिट्स को उन 2 बिट्स से बदल देता है, और फिर अगले पिक्सेल पर चला जाता है। पिक्सेल में अधिकतम परिवर्तन 4 यूनिट हो सकता है, और PNG इमेज में मानों की सीमा (0,255) है, इसलिए यह परिवर्तन महत्वपूर्ण नहीं होगा।

PNG इमेज में, प्रत्येक पिक्सेल में 3 चैनल होते हैं: लाल, हरा और नीला। (कुछ PNG इमेज में 1 या 4 चैनल होते हैं, लेकिन यह प्रोग्राम उन्हें 3 चैनलों में बदल देगा।) एक सामान्य पिक्सेल PNG इमेज में इस तरह दिखता है:

root@kitploit:~
a_pixel = (17,32,11)     # (RED, GREEN, BLUE)

तो, हम एक पिक्सेल में 3 गुना 2 बिट बचा सकते हैं, यानी प्रति पिक्सेल 6 बिट। यह हमें फ़ाइल आकार की ऊपरी सीमा तक ले जाता है, जिसे एक इमेज में छिपाया जा सकता है:

root@kitploit:~
max_file_size = ( height_of_image * width_of_image * 6 / 8 ) bytes

आइए एक उदाहरण लेकर समझते हैं। छिपाया जाने वाला डेटा है:

root@kitploit:~
binary_data = 0b100111

आइए पहले दो बिट लें और उन्हें हमारे 'a_pixel' के RED चैनल से बदलें।

root@kitploit:~
a_pixel = (0b10001, 0b100000, 0b1011)   # बाइनरी प्रतिनिधित्व a_pixel मानों का
# आइए a_pixel के RED चैनल को बदलें
# 0b10001 -> 0b10010  ( पहले 2 बिट 10 हैं )
a_pixel = (0b10010, 0b100000, 0b1011)  # संशोधित पिक्सेल

आइए फिर से binary_data से 2 बिट लें और GREEN चैनल के अंतिम 2 बिट्स को उनसे बदलें।

root@kitploit:~
a_pixel = (0b10010, 0b100000, 0b1011)
# आइए a_pixel के GREEN चैनल को बदलें
# 0b100000 -> 0b100001  ( 2 बिट 01 हैं )
a_pixel = (0b10010, 0b100001, 0b1011)  # संशोधित पिक्सेल

आइए इसे BLUE चैनल के साथ एक बार और करें और हम कर लेंगे।

root@kitploit:~
a_pixel = (0b10010, 0b100001, 0b1011)
# आइए a_pixel के BLUE चैनल को बदलें
# 0b1011 -> 0b1011  ( 2 बिट 11 हैं ); ध्यान दें कि इस बार मान नहीं बदला
a_pixel = (0b10010, 0b100001, 0b1011)  # इस बार पिक्सेल संशोधित नहीं हुआ

तो, हमने अपना 6 बिट संदेश एक पिक्सेल में छिपा दिया है, आइए पिक्सेल में हुए परिवर्तनों को देखें:

root@kitploit:~
a_pixel             = (0b10001, 0b100000, 0b1011) = (17, 32, 11)
a_pixel_with_data   = (0b10010, 0b100001, 0b1011) = (18, 33, 11)

जैसा कि हम देख सकते हैं कि परिवर्तन पिक्सेल स्तर पर भी ध्यान देने योग्य नहीं है। मॉड्यूल इसे तब तक दोहराता है जब तक हमारा सारा डेटा इमेज में सहेज नहीं जाता।

रॉ इमेज में छिपा डेटा

नोट: फोटो में शोर बढ़ जाता है और यदि हम किसी फोटो संपादन सॉफ्टवेयर का उपयोग करके इसकी तुलना मूल इमेज से करते हैं, तो इस इमेज में मूल इमेज की तुलना में बहुत अधिक शोर होगा।

इस समस्या का समाधान: मूल इमेज को इंटरनेट पर कभी अपलोड/शेयर न करें।

करने के लिए कार्य

  • JPEG इमेज के लिए समर्थन जोड़ें
  • निकाली जाने वाली फ़ाइल के नाम का स्वतः पता लगाना जोड़ें

लाइसेंस

MIT

मुफ्त सॉफ्टवेयर, बहुत बढ़िया!

टूल डाउनलोड करें