विषयसूची:
- आपूर्ति
- चरण 1: स्टेग्नोग्राफ़ी क्या है
- चरण 2: कंप्यूटर पर टेक्स्ट कैसे एन्कोड किया जाता है
- चरण 3: कार्यक्रम कैसे काम करता है
- चरण 4: निष्कर्ष
वीडियो: यह पीएनजी है सीक्रेट कम्पार्टमेंट: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-31 10:20
आपकी चुनौती, प्रिय पाठक, यह पता लगाना है कि आउटपुट.पीएनजी छवि में कौन सा संदेश छिपा है जो मैंने आपके लिए जीथब पर डाला है। संदेश निकालने के लिए आप वहां MessageHider कोड का उपयोग कर सकते हैं। यदि आप भ्रमित हैं, तो कृपया नीचे टिप्पणी करें और मैं उत्तर पाने में आपकी सहायता करूंगा! आप अभी पढ़ना बंद भी कर सकते हैं, बस जीथब पर जाएं, कोड प्राप्त करें, और स्टेग्नोग्राफ़ी करना शुरू करें। बहुत हो गया, लेकिन कृपया बने रहें और मैं आपको और बताऊंगा।
यहां दो तस्वीरें समान दिखती हैं लेकिन वे नहीं हैं ये ग्रीनमैन.पीएनजी और आउटपुट.पीएनजी छवियां हैं जिन्हें मैंने ऊपर लिंक किया है। छवियों में से एक हरे आदमी की सिर्फ एक उबाऊ तस्वीर है। दूसरे में एक संदेश होता है, जो छवि के पिक्सेल में छिपा होता है।
यह निर्देशयोग्य एक महान youtube वीडियो से प्रेरित है। एक दिन देर रात इस वीडियो को देखने और एक उन्नत जावा प्रोग्रामिंग कक्षा के लिए एक अच्छे व्याख्यान और मध्यावधि परीक्षा के बारे में सोचने के लिए संघर्ष करने के बाद, इस परियोजना का जन्म हुआ। ऊपर दिए गए चित्र, इस निर्देश में वर्णित कोड के साथ, जीथब पर मुफ्त हैं।
आपूर्ति
आपको एक कंप्यूटर की आवश्यकता होगी और आपको यह जानना होगा कि जावा प्रोग्राम को कैसे संकलित और चलाना है। यह प्रोग्राम सिर्फ दो छोटी फाइलें हैं और आपको इसे कमांड लाइन पर चलाना होगा।
चरण 1: स्टेग्नोग्राफ़ी क्या है
आपको मेरे द्वारा पिछले चरण में लिंक किया गया youtube वीडियो देखना चाहिए, लेकिन यहाँ सारांश है:
यदि आपको किसी मित्र को गुप्त संदेश छिपाने की आवश्यकता है, तो ऐसा करने का एक अच्छा तरीका स्टेग्नोग्राफ़ी है। छवि स्टेग्नोग्राफ़ी का विचार सरल है; कंप्यूटर चित्र पिक्सेल से बने होते हैं, और प्रत्येक पिक्सेल लाल, हरे और नीले रंग का संयोजन होता है। कई कंप्यूटर छवि प्रारूपों में प्रत्येक पिक्सेल में लाल, हरे और नीले रंग की मात्रा को 0-127 से मान के रूप में व्यक्त किया जाता है। इसलिए, उदाहरण के लिए, एक बहुत ही लाल पिक्सेल में 127 का लाल मान और शून्य का हरा और नीला मान होगा। चाल यह है: १२६ की लाल तीव्रता १२७ की लाल तीव्रता (मानव आँख के लिए) से अप्रभेद्य है। और इसलिए प्रत्येक लाल पिक्सेल में प्लस या माइनस एक के साथ फ़िदा होकर हम बिट्स को पिक्सेल में छिपा सकते हैं। यदि हम बिट्स को वापस इकट्ठा करने का एक गुप्त तरीका ढूंढते हैं, तो हम उस डेटा को पुनः प्राप्त कर सकते हैं जिसे हमने छवि में छिपाया था!
रचनात्मक बनो! स्टेग्नोग्राफ़ी किसी भी डिजिटल मीडिया से की जा सकती है! उदाहरण के लिए आप संगीत या वीडियो फ़ाइलों में बिट्स के साथ खेल सकते हैं, लेकिन इसके लिए आपको इस निर्देश के दायरे से बाहर और अधिक शोध करने की आवश्यकता है।
चरण 2: कंप्यूटर पर टेक्स्ट कैसे एन्कोड किया जाता है
यहां जो कुछ भी होता है, उसे समझने के लिए सीएस में डिग्री या शौक़ीन जुनून की आवश्यकता हो सकती है। कंप्यूटर डेटा को बिट्स में 1s और 0s के रूप में स्टोर करते हैं। इन 1s और 0s को आम तौर पर 8 के बंच में समूहीकृत किया जाता है और इन्हें "बाइट्स" कहा जाता है। जैसा कि यहां बताया गया है और यहां कुछ तरीके हैं जिनसे हम कंप्यूटर को बाइट्स को टेक्स्ट के रूप में व्याख्या करने के लिए कह सकते हैं। इस स्टेग्नोग्राफ़ी व्याख्यान/निर्देश का अधिकतम लाभ उठाने के लिए आपको कमोबेश ASCII और UTF8 को समझने की आवश्यकता है। बाइट्स की श्रृंखला में भाषा डेटा को एन्कोड करने के ये दो सामान्य तरीके हैं।
एक बार जब आप इस विषय के बारे में एक विचार प्राप्त कर लेंगे तो आप इसे समझेंगे: ASCII और UTF8 में "द" शब्द निम्नलिखित बाइट्स (हेक्स में) 0x74 0x68 0x65 द्वारा दर्शाया गया है। बाइनरी में, ये बाइट्स हैं: 01110100b 01101000b 01101101b
इसके अलावा, आप समझेंगे कि UTF8 में मुस्कुराते हुए चेहरे वाले इमोजी को निम्नलिखित बाइट्स (हेक्स में) 0xF0 0x9F 0x98 0x80 द्वारा दर्शाया जाता है। बाइनरी में ये बाइट 11110000b 10011111b 10011000b 10000000b हैं।
किसी भी घटना में आप संलग्न स्क्रीनशॉट में देखेंगे कि मेरा कंप्यूटर इन बाइट्स के साथ कुछ कर रहा है। मैंने उन्हें प्रोग्राम आउटपुट में तीरों और एक बड़े "लुक!" के साथ हाइलाइट किया है।
चरण 3: कार्यक्रम कैसे काम करता है
जीथब से प्रोग्राम को कंपाइल करना आसान है। यहां पहले पन्ने पर दिखाए गए रेपो प्राप्त करें और फिर
प्रोग्राम कमांड लाइन से इस तरह चलाया जाता है: जावा मुख्य इनपुट.पीएनजी "संदेश मैं छिपाना चाहता हूं"
संलग्न उदाहरणों में आप देखेंगे कि मैंने java Main Greenman-p.webp
आप वही काम करेंगे।
यदि आप Main.java देखते हैं तो आप देखेंगे कि ऐसा होता है:
- कार्यक्रम छवि को 2D सरणी में पढ़ता है
- प्रोग्राम आपके द्वारा दिए गए संदेश को बाइट सरणी में बदल देता है (बाइट )
- प्रोग्राम तब छवि सरणी में संदेश बाइट्स को छिपाने के लिए MessageHider क्लास का उपयोग करता है।
- प्रोग्राम तब छवि 2d सरणी को एक फ़ाइल (output.png) में छुपा डेटा के साथ लिखता है। यदि आप इस छवि को देखते हैं तो यह मूल से अप्रभेद्य है
- प्रोग्राम तब output-p.webp" />
जैसा कि हम उम्मीद करते हैं, कोड बहुत अधिक काम करता है।
चरण 4: निष्कर्ष
इसलिए मैंने आपको कुछ वर्किंग कोड, सबूत दिया है कि यह एक छवि के रूप में काम करता है, और कुछ व्याख्यान नोट्स जो मैं अपने विश्वविद्यालय के छात्रों को देता हूं। मैंने आपको एक चुनौती भी दी थी! मैंने कोड लिखने और व्याख्यान नोट्स तैयार करने में कुछ घंटे बिताए, इसलिए मुझे खेद है कि इस निर्देशयोग्य में कई चित्र नहीं हैं। अगर आपको लगता है कि स्टेग्नोग्राफ़ी दिलचस्प है तो कृपया मेरी चुनौती स्वीकार करें!
सिफारिश की:
हैट नॉट हैट - उन लोगों के लिए एक हैट जो वास्तव में टोपी नहीं पहनते हैं, लेकिन एक हैट अनुभव चाहते हैं: 8 कदम
हैट नॉट हैट - उन लोगों के लिए एक हैट जो वास्तव में टोपी नहीं पहनते हैं, लेकिन एक टोपी अनुभव चाहते हैं: मैंने हमेशा कामना की है कि मैं एक टोपी वाला व्यक्ति बन सकता हूं, लेकिन मुझे कभी ऐसी टोपी नहीं मिली जो मेरे लिए काम करे। यह "हैट नॉट हैट," या फासिनेटर जैसा कि इसे कहा जाता है, मेरी टोपी की समस्या का एक ऊपरी-क्रस्टी समाधान है जिसमें मैं केंटकी डर्बी में भाग ले सकता हूं, vacu
क्या आप जानते हैं कि आपके पौधे कैसा महसूस कर रहे हैं? [कण+यूबिडॉट्स]: ६ कदम
क्या आप जानते हैं कि आपके पौधे कैसा महसूस कर रहे हैं? [पार्टिकल+यूबिडॉट्स]: बाहर घूमने और मिट्टी को संभालने की जगह कुछ भी नहीं ले सकता है, लेकिन आज की तकनीक ने मिट्टी की दूर से निगरानी करना और मेरी मानवीय संवेदनाओं को मापने योग्य मापदंडों को ट्रैक करना संभव बना दिया है। SHT10 जैसी मिट्टी की जांच अब बेहद सटीक है और
गुप्त कम्पार्टमेंट मिनी दराज: 5 कदम
गुप्त कम्पार्टमेंट मिनी दराज: यह निर्देश आपको दिखाएगा कि मैंने एक गुप्त डिब्बे के साथ एक दराज की अलमारी कैसे बनाई। मैं मुख्य रूप से मेरे द्वारा किए गए कार्यों का वर्णन करने के लिए छोटे विवरणों का उपयोग करूंगा
लगभग किसी भी (हाहा) वेबसाइट से संगीत कैसे प्राप्त करें (जब तक आप इसे सुन सकते हैं आप इसे प्राप्त कर सकते हैं ठीक है अगर यह फ्लैश में एम्बेड किया गया है तो आप शायद नहीं कर पाएंगे) संपादित !!!!! जोड़ी गई जानकारी: 4 कदम
लगभग किसी भी (हाहा) वेबसाइट से संगीत कैसे प्राप्त करें (जब तक आप इसे सुन सकते हैं आप इसे प्राप्त कर सकते हैं … ठीक है अगर यह फ्लैश में एम्बेड किया गया है तो आप शायद नहीं कर पाएंगे) संपादित !!!!! जोड़ी गई जानकारी: यदि आप कभी किसी वेबसाइट पर जाते हैं और यह एक गाना बजाता है जो आपको पसंद है और आप इसे चाहते हैं तो यहां आपके लिए निर्देश है कि अगर आप कुछ गड़बड़ करते हैं तो मेरी गलती नहीं है (ऐसा ही होगा यदि आप बिना किसी कारण के सामान हटाना शुरू कर देते हैं) ) ive संगीत प्राप्त करने में सक्षम है
जब आप दौड़ते हैं तो बिजली कैसे बनाते हैं !: 4 कदम
जब आप दौड़ते हैं तो बिजली कैसे बनाते हैं !: क्या आप नहीं चाहते कि जब आप दौड़ते हैं तो गतिज ऊर्जा अन्य चीजों से जुड़ी हो सकती है? अच्छी तरह से पता कर सकते हैं! यह एक विचार है जो मुझे डेली प्लैनेट से मिला है। उनका रास्ता बेहतर था, लेकिन मैं अपना बनाना चाहता था