Gekissimo.net - Opi ansaitsemaan rahaa webilläsi Internetissä!

Kuinka kommunikoida salaa SteganoGANin kanssa?

Seuraava artikkeli auttaa sinua: Kuinka kommunikoida salaa SteganoGANin kanssa?

Steganografia on termi, jota käytetään viittaamaan salaiseen viestintään, joka on prosessi, jossa piilotetaan eräänlainen tieto viestintävälineeseen. Syväoppimista käytetään myös tällä alalla tehokkaiden ja turvallisten sovellusten kehittämiseen, kun viestinnän oletetaan tapahtuvan kuvien kautta. Tässä artikkelissa keskustelemme steganografiasta ja siitä, miten sitä käytetään nykyään viimeisimmän kehityksen kanssa. Myöhemmin keskustelemme SteganoGANista, joka on työkalu, joka tekee steganografia kuville. Seuraavassa on tärkeimmät kohdat, joista keskustellaan tässä artikkelissa.

Sisällysluettelo

  1. Steganografian ymmärtäminen
  2. Miten se toteutetaan?
  3. Miten SteganoGAN toimii?
  4. SteganoGANin käyttöönotto

Keskustellaan ensin steganografiasta.

Steganografian ymmärtäminen

Steganografia on käytäntö salaisen viestin kätkemiseksi julkisen sisällön sisään tai jopa päälle. Se jokin voi olla mitä haluat sen olevan. Monet esimerkit steganografiasta ovat nykyään salaisen tekstin upottaminen kuvan sisään. Vaihtoehtoisesti voit piilottaa salaisen viestin tai komentosarjan Word- tai Excel-asiakirjaan.

Steganografian tarkoitus on salata ja pettää. Se on eräänlainen piiloviestintä, jossa viestit piilotetaan millä tahansa välineellä. Se ei ole salaustyyppi, koska se ei sisällä tietojen salausta tai avaimen käyttöä. Sen sijaan se on eräänlainen tietojen piilottaminen, joka voidaan toteuttaa mielikuvituksellisilla tavoilla.

Miten se toteutetaan?

Tiedot salataan tai obfusoidaan jollain muulla tavalla ennen kuin ne ruiskutetaan tietoihin, jotka ovat osa tiettyä tiedostotyyppiä, kuten JPEG-kuva-, ääni- tai videotiedosto, käyttämällä erityistä algoritmia nykyisessä digitaalisessa steganografiassa. Piilotettu viesti voidaan lisätä tavallisiin datatiedostoihin monin eri tavoin.

Yksi tapa on peittää data bitteiksi, jotka edustavat samoja väripikseleitä kuvatiedoston rivillä. Kun salattua dataa käytetään huomaamattomasti redundanttiseen dataan, tuloksena on kuvatiedosto, joka näyttää identtiseltä alkuperäisen kuvan kanssa, mutta sisältää normaalin, salaamattoman datan “kohinakuvioita”.

Yksi yleinen steganografian sovellus on vesileiman käyttö, joka on tavaramerkki tai muu tunnistetieto, joka on haudattu multimedia- tai muihin sisältötiedostoihin. Vesileima on Internet-julkaisijoiden käyttämä menetelmä luvatta ladattujen mediasisältöjen alkuperän määrittämiseen.

🔥 Empfohlen:  TopCashback-arvostelu: Onko se laillista?

Yksi yleisin steganografian sovellus on vesileiman lisääminen – tuotemerkki tai muu tunnistetieto, joka on piilotettu multimedia- tai muihin sisältötiedostoihin. Vesileima on verkkojulkaisijoiden yleisesti käyttämä tekniikka tunnistaakseen ilman lupaa jaetun mediasisällön lähteen.

Miten SteganoGAN toimii?

Perinteiset kuvasteganografiatekniikat ovat tehokkaita vain noin 0,4 bitin suhteelliseen hyötykuormaan pikseliä kohti. Heillä on tapana tuoda esiin tämän rajan yli olevia esineitä, jotka voidaan helposti havaita automaattisilla stegaanalyysitekniikoilla ja vaikeissa olosuhteissa ihmissilmällä.

STEGANOGAN on vallankumouksellinen päästä päähän -malli kuvasteganografialle, joka hyödyntää nykyistä syvää oppimista. Se käyttää tiheitä yhteyksiä, joiden on osoitettu parantavan suorituskykyä vähentämällä katoavaa gradienttiongelmaa.

Useita häviötoimintoja käytetään kontradiktorisessa koulutuskehyksessä kooderin, dekooderin ja kriittisten verkkojen optimoimiseksi samanaikaisesti. Havaitsemme, että menetelmämme upottaa onnistuneesti mielivaltaisia ​​tietoja erilaisista luonnonmaisemista saatuihin kansikuviin ja saavuttaa huippuluokan upotusnopeuden, 4,4 bittiä pikseliä kohden.

Steganografia sisältää yksinkertaisimmillaan vain kaksi toimintoa: koodaus ja dekoodaus. Koodausprosessi luo steganografisen kuvan kansikuvasta ja binäärisanomasta. Dekoodaustoiminto hakee binääriviestin steganografisesta kuvasta.

SteganoGANin käyttöönotto

Käyttääksemme SteganoGANia meidän on asennettava SteganoGAN pipin tai lähteen kautta kloonaamalla arkisto, ja meidän on myös käytettävä tietojoukkoa GAN:in kouluttamiseen. Tietojoukkoa voidaan käyttää arkistosta käsin. Hakemistossa on shell-tiedosto SteganoGAN/research/data/download.sh suorittamalla tämän tiedoston voimme ladata div2K- ja MS COCO -tietojoukon. Jompikumpi näistä tietojoukoista vaaditaan tässä koulutuksessa. Olen käyttänyt div2k-tietojoukkoa. Voimme ladata vain div2k-tietojoukon kommentoimalla MS COCO:n komentosarjaa .sh-tiedostoon ja ajamalla se tallennuksen jälkeen seuraavasti.

# ladataan tietojoukkoa! /content/SteganoGAN/research/data/download.sh # arkkitehtuurin asennus ! pip asennus steganogan

Tuodaan riippuvuudet.

steganoganista tuonti SteganoGAN osoitteesta steganogan.critics tuonti BasicCritic steganoganista.decoders tuonti DenseDecoder steganoganista.encoders tuonti DenseEncoder steganoganista.loader tuonti DataLoader tuonti numpy as np

Ensimmäinen tuonti on SteganoGAN-kääreluokka, joka luo arkkitehtuurin, kouluttaa arkkitehtuurin, lataa aiemmin koulutetun mallin ja lopuksi ja mikä tärkeintä suorittaa koodaus- ja dekoodaustoiminnot.

🔥 Empfohlen:  Mikä on automatisoitu markkinointi & Kuinka se toimii? (+4 parasta automaattista työkalua!)

Seuraavat kaksi tuontia koskevat enkooderin ja dekooderin arkkitehtuuria. Periaatteessa jokaiselle on kolme mallia, nimittäin Basic, Residual ja Dense. Ja tällä hetkellä toteutusosa tukee Basic- ja Dense-arkkitehtuuria.

Seuraava tuonti koskee tiedonlataajaa. Tätä toimintoa käytetään datajoukon lataamiseen hakemistosta ja lisäksi voit asettaa pari parametria, kuten käytettävien kuvien lukumäärä, sekoitus jne.

Nyt kun tietojoukko on ladattu yllä olevalla shell-komennolla, voimme ladata sen käyttämällä Data Loader -toimintoa. Tietojoukko ladataan oletuksena kahteen jakoon, ja tässä validoinnissa käytämme näitä kahta.

juna = DataLoader(‘div2k/train/’, limit=np.inf, shuffle=True, batch_size=4) validointi = DataLoader(‘div2k/val/’, limit=np.inf, shuffle=True, batch_size=4)

Nyt se on siinä, voimme nyt suoraan käyttää SteganoGANin kääreluokkaa arkkitehtuurin luomiseen alla olevan kuvan mukaisesti.

#käytä kääreluokkaa steganogan = SteganoGAN(1, DenseEncoder, DenseDecoder, BasicCritic, hidden_size=32, cuda=True, verbose=True)

Yllä olevassa määritelmässä olemme käyttäneet BasicCritic-funktiota, joka on eräänlainen arviointifunktio, joka tarkistaa, onko tietty kuva stenografinen vai ei.

Nyt voimme aloittaa harjoittelun. Tämän mallin kouluttamiseksi meidän tarvitsee vain kutsua .fit-menetelmää, kuten teemme tavallisilla ML-algoritmeilla toimittamalla koulutus- ja validointitiedot.

# juna steganogan.fit(juna, validointi, aikakaudet=5)

Koulutuksen päätyttyä voimme käyttää enkooderi- ja dekooderitoimintoja. Tässä enkooderitoimintoa käytetään ottamaan kolme argumenttia, nimittäin syöttökuvan, tulosteen kuvan nimen ja polun sekä välitettävän merkkijonon tai tekstiviestin.

Tässä on kuva, jota käytämme.

# encoding steganogan.encode(‘/content/artillery.png’,’output.png’,’Tulta reikään!’)

Vastaavasti dekoodaustoiminto ottaa vain luodun kuvan ja tulostaa yllä koodatun viestin.

# dekoodaus steganogan.decode(‘/content/output.png’)

Lähtö: Tuli reikään!

Ja tässä tulostekuva.

Koodattu kuva näyttää samalta kuin alkuperäinen kuva, kuten voimme nähdä yllä. Uteliaisuuden vuoksi voimme tarkistaa näiden kahden kuvan välisen eron käyttämällä OpenCV:tä seuraavasti.

tuonti cv2 osoitteesta google.colab.patches import cv2_imshow # lataa alkuperäinen kuva alkuperäinen = cv2.imread(‘/content/artillery.png’, cv2.COLOR_BGR2RGB) # ladattu koodattu kuva koodattu = cv2.imread(‘/content/output.png ‘, cv2.COLOR_BGR2RGB) # vähennä kaksi eroa = cv2.subtract(alkuperäinen, koodattu) # saada tulos cv2_imshow(ero)

🔥 Empfohlen:  Kuinka ansaita rahaa matkailuautossa matkustaessasi

Tässä tulos,

Täysin musta kuva johtaa siihen, että kuvien välillä ei ole mitään eroa.

Viimeiset sanat

Tämän artikkelin kautta olemme oppineet steganografiasta, joka on pohjimmiltaan tekniikka, jolla voidaan välittää jonkinlaista tietoa erikseen osapuolten välillä. Kuvasteganografiaa varten olemme nähneet python-pohjaisen työkalun nimeltä SteganoGAN, joka voi koodata mielivaltaisen viestin kuvaan ja hakea sen, ja koko prosessin aikana emme näe kuvassa mitään muutoksia.

Viitteet