Exemple #1
0
def extractMSG(path2Image, path2Video):
    # Extract from picture
    im = cv.LoadImage(path2Image)
    steg = LSBSteg(im)
    s = steg.unhideText()

    tmpFile = open("tmp/PositionsList.txt", "w")
    tmpFile.write(s)
    tmpFile.close()

    #Read Video file frames
    absPath = path2Video
    vidcap = cv2.VideoCapture(absPath)

    count = 0
    success, image = vidcap.read()
    while success:
        success, image = vidcap.read()
        cv2.imwrite("tmp/frame%d.jpg" % count, image)     # save frame as JPEG file
        count += 1

    # extract message from frames
    fNum = 0
    secMSG = ""
    for line in open("tmp/PositionsList.txt"):
        word = int(line.strip())
        if word != -1:
            cPos = word - fNum
            imgName = "tmp/frame%d.jpg" % fNum
            try:
                imageFile = imgName
                data = open(imageFile, "rb").read()
            except IOError:
                print "Image file %s not found" % imageFile
                raise SystemExit

        msgOrd = data[cPos]
        secMSG = secMSG + msgOrd
        #fNum = fNum + 1
        fNum = (fNum + 1) % count

    #shutil.rmtree('tmp')
    return secMSG
Exemple #2
0
    def do_POST(self):
        if self.path == "/send":
            form = cgi.FieldStorage(fp=self.rfile,
                                    headers=self.headers,
                                    environ={
                                        'REQUEST_METHOD':
                                        'POST',
                                        'CONTENT_TYPE':
                                        self.headers['Content-Type'],
                                    })

            option = form["option"].value
            #filename = form['file'].filename
            #print filename
            hash = random.getrandbits(128)
            msg = ""
            if option == "encodeText":
                print "encodeText"
                filename = form['file1'].filename
                hash = str(random.getrandbits(128))
                encodeText = form["encodeText"].value
                data = form['file1'].file.read()
                print encodeText
                open("tmp/%s_%s" % (hash, filename), "wb").write(data)
                carrier = cv.LoadImage("tmp/%s_%s" % (hash, filename))
                steg = LSBSteg(carrier)
                steg.hideText(encodeText)
                steg.saveImage(("tmp/%s_%s_out.png" % (hash, filename)))
                msg = "<html><head></head><body>Thanks, <a href='tmp/%s_%s_out.png'>Download Your Encode Image</a></body><html>" % (
                    hash, filename)
            elif option == "decodeText":
                print "decodeText"
                filename = form['file1'].filename
                data = form['file1'].file.read()
                print filename
                hash = str(random.getrandbits(128))
                open("tmp/%s_%s" % (hash, filename), "wb").write(data)
                im = cv.LoadImage("tmp/%s_%s" % (hash, filename))
                steg = LSBSteg(im)
                unhideText = steg.unhideText()
                print unhideText
                #print steg.unhideText()
                msg = "<html><head></head><body>Thanks, your texts is : %s</body><html>" % unhideText
            elif option == "encodeImage":
                print "encodeImage"
                filename1 = form['file1'].filename
                filename2 = form['file2'].filename
                print filename1
                print filename2
                hash1 = str(random.getrandbits(128))
                hash2 = str(random.getrandbits(128))
                data = form['file1'].file.read()
                open("tmp/%s_%s" % (hash1, filename1), "wb").write(data)
                data = form['file2'].file.read()
                open("tmp/%s_%s" % (hash2, filename2), "wb").write(data)

                imagetohide = cv.LoadImage("tmp/%s_%s" % (hash1, filename1))
                carrier = cv.LoadImage("tmp/%s_%s" % (hash2, filename2))

                steg = LSBSteg(carrier)
                steg.hideImage(imagetohide)
                #steg.saveImage(("tmp/%s_%s_out.png"%(hash1,filename1)))

                #msg = "<html><head></head><body>Thanks, <a href='tmp/%s_%s_out.png'>Download Your Encode Image</a></body><html>"%(hash1,filename1)
            elif option == "decodeImage":
                print "decodeImage"

            #print hide("tmp/%s"%filename,encodeText)
            self.send_response(200)
            self.end_headers()
            #self.wfile.write("Thanks %s !" % form["your_name"].value)
            self.wfile.write(msg)
            return
Exemple #3
0
def unhide_text(in_img):
    im = cv.imread(in_img)
    steg = LSBSteg(im)
    print(steg.unhideText())
Exemple #4
0
from LSBSteg import LSBSteg
import cv2.cv as cv
import sys

im = cv.LoadImage("res.png")
steg = LSBSteg(im)
print "Text value:", steg.unhideText()
Exemple #5
0
__author__ = 'root'

from LSBSteg import LSBSteg
import cv2
import numpy as np

im = cv2.imread('toomuchgreen.png')
steg = LSBSteg(im)
#dec = steg.unhideImage()
#cv2.imwrite('recovered', dec)
dec = steg.unhideText()
print dec
def retrieve_data(img):
    print img
    im = cv.LoadImage(img)
    steg = LSBSteg(im)
    return steg.unhideText()
Exemple #7
0
import cv
from LSBSteg import LSBSteg

import sys
imagename = sys.argv[1]

im = cv.LoadImage(imagename)
steg = LSBSteg(im)
print steg.unhideText()
from LSBSteg import LSBSteg
import cv
from sys import argv
#Hide
string = "Hello there"
carrier = cv.LoadImage(argv[1])
steg = LSBSteg(carrier)
steg.hideText(string)
steg.saveImage("hidden.png")

#retrieve
im = cv.LoadImage("hidden.png")
steg2 = LSBSteg(im)
print steg2.unhideText()
def retrieve_data(img):
    print img
    im = cv.LoadImage(img)
    steg = LSBSteg(im)
    return steg.unhideText()
	def do_POST(self):
		if self.path=="/send":
			form = cgi.FieldStorage(
				fp=self.rfile,
				headers=self.headers,
				environ={'REQUEST_METHOD':'POST',
		                 'CONTENT_TYPE':self.headers['Content-Type'],
			})

			option = form["option"].value
			#filename = form['file'].filename
			#print filename
			hash = random.getrandbits(128)
			msg=""
			if option == "encodeText" :
				print "encodeText"
				filename = form['file1'].filename
				hash = str(random.getrandbits(128))
				encodeText = form["encodeText"].value
				data = form['file1'].file.read()
				print encodeText
				open("tmp/%s_%s"%(hash,filename), "wb").write(data)
				carrier = cv.LoadImage("tmp/%s_%s"%(hash,filename))
				steg = LSBSteg(carrier)
				steg.hideText(encodeText)
				steg.saveImage(("tmp/%s_%s_out.png"%(hash,filename)))
				msg = "<html><head></head><body>Thanks, <a href='tmp/%s_%s_out.png'>Download Your Encode Image</a></body><html>"%(hash,filename)
			elif option == "decodeText":
				print "decodeText"
				filename = form['file1'].filename
				data = form['file1'].file.read()
				print filename
				hash = str(random.getrandbits(128))
				open("tmp/%s_%s"%(hash,filename), "wb").write(data)
				im = cv.LoadImage("tmp/%s_%s"%(hash,filename))
				steg = LSBSteg(im)
				unhideText = steg.unhideText()
				print unhideText
				#print steg.unhideText()
				msg = "<html><head></head><body>Thanks, your texts is : %s</body><html>"%unhideText
			elif option == "encodeImage":
				print "encodeImage"
				filename1 = form['file1'].filename
				filename2 = form['file2'].filename
				print filename1
				print filename2
				hash1 = str(random.getrandbits(128))
				hash2 = str(random.getrandbits(128))
				data = form['file1'].file.read()
				open("tmp/%s_%s"%(hash1,filename1), "wb").write(data)
				data = form['file2'].file.read()
				open("tmp/%s_%s"%(hash2,filename2), "wb").write(data)

				imagetohide = cv.LoadImage("tmp/%s_%s"%(hash1,filename1))
				carrier = cv.LoadImage("tmp/%s_%s"%(hash2,filename2))

				steg = LSBSteg(carrier)
				steg.hideImage(imagetohide)
				#steg.saveImage(("tmp/%s_%s_out.png"%(hash1,filename1)))

				#msg = "<html><head></head><body>Thanks, <a href='tmp/%s_%s_out.png'>Download Your Encode Image</a></body><html>"%(hash1,filename1)
			elif option == "decodeImage":
				print "decodeImage"


			#print hide("tmp/%s"%filename,encodeText)
			self.send_response(200)
			self.end_headers()
			#self.wfile.write("Thanks %s !" % form["your_name"].value)
			self.wfile.write(msg)
			return