Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Ano ang Steganography
- Hakbang 2: Paano Naka-encode ang Teksto sa Mga Computer
- Hakbang 3: Paano Gumagana ang Program
- Hakbang 4: Konklusyon
Video: Ang PNG na Ito ay Lihim na Kompartimento: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-31 10:25
Ang iyong hamon, mahal na mambabasa, ay upang malaman kung anong mensahe ang nakatago sa output-p.webp
Ang dalawang larawan dito ay magkapareho ngunit ang mga ito ay hindi Ito ang mga greenman-p.webp
Ang itinuturo na ito ay inspirasyon ng isang mahusay na video sa youtube. Matapos mapanood ang video na ito nang gabing isang araw at nagpupumilit na mag-isip ng isang cool na panayam at pagsusulit sa midterm para sa isang advanced na klase sa pagprograma ng Java, ipinanganak ang proyektong ito. Ang mga imahe sa itaas, kasama ang code na inilarawan sa itinuturo na ito, ay libre sa Github.
Mga gamit
Kakailanganin mo ang isang computer at malalaman mo kung paano mag-ipon at magpatakbo ng isang programa sa Java. Ang program na ito ay dalawang maikling file lamang at kakailanganin mong patakbuhin ito sa linya ng utos.
Hakbang 1: Ano ang Steganography
Dapat mong panoorin ang video ng youtube na na-link ko sa nakaraang hakbang, ngunit narito ang buod:
Kung kailangan mong itago ang isang lihim na mensahe sa isang kaibigan, ang isang cool na paraan upang gawin ito ay sa Steganography. Ang ideya ng imaheng Steganography ay simple; Ang mga imahe ng computer ay gawa sa mga pixel, at ang bawat pixel ay isang kumbinasyon ng pula, berde, at asul. Sa maraming mga format ng imahe ng computer ang mga bilang ng pula, berde, at asul sa bawat pixel ay ipinapakita bilang mga halagang 0-127. Kaya, halimbawa, ang isang pulang pulang pixel ay magkakaroon ng pulang halaga ng 127 at berde at asul na mga halaga na zero. Ang lansihin ay ito: ang isang pulang intensidad na 126 ay hindi mailalarawan mula sa isang pulang intensidad na 127 (sa isang mata ng tao). At sa pamamagitan ng pagkalikot ng plus o minus isa sa bawat pulang pixel maaari nating maitago ang mga piraso sa mga pixel. Kung makahanap kami ng isang palihim na paraan upang makalikom ang mga piraso, maaari naming makuha ang data na nakuha namin sa imahe!
Maging malikhain! Maaaring gawin ang steganography sa anumang digital media! Maaari mong i-play ang mga piraso sa mga file ng musika o video bilang halimbawa, ngunit nangangailangan ito sa iyo na gumawa ng mas maraming pananaliksik sa labas ng saklaw ng itinuturo na ito.
Hakbang 2: Paano Naka-encode ang Teksto sa Mga Computer
Ang sumusunod dito ay maaaring mangailangan ng isang degree sa CS o ng maraming libangan ng libangan upang maunawaan. Ang mga computer ay nag-iimbak ng data sa mga piraso bilang 1s at 0. Ang mga 1 at 0 na ito ay karaniwang pinangkat sa mga bungkos ng 8 at tinukoy bilang "bytes". Tulad ng ipinaliwanag dito at dito may ilang mga paraan na maaari nating sabihin sa isang computer na bigyang kahulugan ang mga byte bilang teksto. Upang masulit ang panayam ng steganography na ito / nagtuturo kailangan mo upang higit o mas kaunting maunawaan ang ASCII at UTF8. Ito ang dalawang karaniwang paraan upang ma-encode ang data ng wika sa isang serye ng mga byte.
Kapag mayroon kang ideya tungkol sa paksang ito mauunawaan mo ito: Sa ASCII at UTF8 ang salitang "the" ay kinakatawan ng mga sumusunod na byte (sa hex) 0x74 0x68 0x65. Sa binary, ang mga byte na ito ay: 01110100b 01101000b 01101101b
Bukod dito, mauunawaan mo na sa UTF8 ang isang Grinning Face Emoji ay kinakatawan ng mga sumusunod na byte (sa hex) 0xF0 0x9F 0x98 0x80. Sa binary ang mga byte na ito ay 11110000b 10011111b 10011000b 10000000b.
Sa anumang kaganapan makikita mo sa nakalakip na screenshot na ang aking computer ay may ginagawa sa mga byte na ito. Na-highlight ko ang mga ito sa output ng programa gamit ang mga arrow at isang malaking "TINGNAN!".
Hakbang 3: Paano Gumagana ang Program
Ang pag-iipon ng programa mula sa github ay madali. Ipakita ang repo sa harap na pahina dito at pagkatapos
Ang programa ay pinapatakbo tulad nito mula sa linya ng utos: java Pangunahing input-p.webp
sa mga nakalakip na halimbawa makikita mo na nagpatakbo ako ng java Main greenman-p.webp
Gagawin mo ang parehong bagay.
Kung titingnan mo ang Main.java makikita mo na ito ang nangyayari:
- Binabasa ng programa ang imahe sa isang 2D array
- Ginagawa ng programa ang mensahe na iyong ibinigay sa isang byte array (byte )
- Gumagamit ang programa ng isang klase ng MessageHider upang maitago ang mga byte ng mensahe sa larawang imahen.
- Sinusulat ng programa ang imahe na 2d array sa isang file (output.png) na may nakatagong data sa loob. Kung titingnan mo ang imaheng ito hindi ito makikilala mula sa orihinal
- Pagkatapos ay binabasa ng programa ang output-p.webp" />
Napakahusay na gumagana ang code ayon sa inaasahan namin.
Hakbang 4: Konklusyon
Kaya't binigyan ko kayo ng ilang working code, patunay na gumagana ito sa anyo ng isang imahe, at ilang tala ng panayam na ibinibigay ko sa aking mga estudyante sa unibersidad. Binigyan din kita ng hamon! Gumugol ako ng ilang oras sa pagsulat ng code at paghahanda ng mga tala ng panayam kaya't humihingi ako ng pasensya na ang itinuro na ito ay walang maraming mga larawan. Kung sa tingin mo ay nakakainteres ang steganography mangyaring tanggapin ang aking hamon!
Inirerekumendang:
Mirror sa Pagkilala sa Mukha Na May Lihim na Kompartimento: 15 Hakbang (na may Mga Larawan)
Mukha ng Pagkilala sa Salamin Sa Lihim na Kompartimento: Palagi akong naintriga ng mga malikhaing lihim na kompartamento na ginamit sa mga kwento, pelikula, at iba pa. Kaya, nang makita ko ang Lihim na Kompartamento ng Paligsahan nagpasya akong mag-eksperimento sa ideya mismo at gumawa ng isang ordinaryong salamin na naghahanap ng isang
Magaling: ang Itakda Ito at Kalimutan Ito Studio Mas malinis: 10 Hakbang (na may Mga Larawan)
Magaling: ang Itakda Ito at Kalimutan Ito Studio Mas malinis: Ni: Evan Guan, Terence Lo at Wilson Yang Panimula & MotivationSweepy ang studio cleaner ay dinisenyo bilang tugon sa magulong kalagayan ng studio ng arkitektura na naiwan ng mga barbaric na mag-aaral. Pagod na sa kung gaano magulo ang studio sa panahon ng revi
Nike LED Swoosh! Ito ay Isang Mahusay na Dekorasyon para sa isang Silid. Ito ang Iisang Proyekto na Maaaring Ulitin ng Lahat .: 5 Mga Hakbang
Nike LED Swoosh! Ito ay Isang Mahusay na Dekorasyon para sa isang Silid. Ito ang Isang proyekto na Maaring Ulitin ng Lahat .: Mga tool -tape sukat-birador -solding iron-coping saw-electric drill-sandpaperSupplies -LED strip (RGB) 5m-LED Controller -Power Supply 12V 4A-timber 50-50-1500 2x-timber 20-20-3000 2x-playwud 500-1000mm-screws (45mm) 150x-screws (35mm) 30x-scr
Panoorin ito ng Raspberry Pi Oled Clock Pakinggan Ito at Pakiramdam Ito: 5 Hakbang (na may Mga Larawan)
Panoorin ito ng Raspberry Pi Oled Clock Naririnig Ito at Nararamdaman Ito: Ito ay isang matalinong orasan na nagpapakita ng oras sa isang OLED display at maaari mo ring marinig ang oras sa iba't ibang agwat ng oras na tutulong para sa bulag at binabago din nito ang humantong kulay sa oras tulad ng ilaw sa takipsilim na ilaw sa gabi ay nagiging kulay kahel sa dilaw at tulad ng
DIY USB-C hanggang MMCX Headphone Cable (Kung Hindi Mo Ito Maibibili, Buuin Ito!): 4 na Hakbang
DIY USB-C to MMCX Headphone Cable (Kung Hindi Mo Ito Mababili, Buuin Ito!): Matapos ang labis na pagkabigo ay hindi matagumpay na subukan na makahanap ng isang solusyon sa USB-C para sa aking mga high-end na earphone na may mga detachable na konektor ng MMCX, nagpasya akong piraso sama-sama ang isang cable gamit ang muling nilalayon na USB-C digital-to-analog converter at isang 3.5 mm sa MMCX cable