Ejemplo n.º 1
0
def run_encode(args):
    print "[Stegan] Encoding %s inside %s" % (args['payload'], args['container'])
    
    try:
        payload = Payload.fromFile(args['payload'])
        
        if audio.fileType(args['container']) == "mp3":
            wavpath = mp3.decode(args['container'])
            container = WaveFile.fromFile(wavpath)
        else:
            container = WaveFile.fromFile(args['container'])
        
        
        if audio.fileType(args['trojan']) == 'mp3':
            tempfile = args['trojan'].replace('.mp3', '.wav')

            trojan = WaveFile.emptyFile(tempfile, container.header)
            fft_encode.encode(payload, container, trojan)

            mp3path = mp3.encode(tempfile, args['trojan'])
        else:
            trojan = WaveFile.emptyFile(args['trojan'], container.header)
            fft_encode.encode(payload, container, trojan)
        
    except Exception as e:
        print "[Stegan] There was an error while encoding"
        print "[Stegan] %s" % e
Ejemplo n.º 2
0
def run_decode(args):
    print "[Stegan] Decoding from %s" % (args['trojan'])
    
    try:
        if audio.fileType(args['trojan']) == 'mp3':
            wavpath = mp3.decode(args['trojan'])
            trojan = WaveFile.fromFile(wavpath)
        else:
            trojan = WaveFile.fromFile(args['trojan'])

        payload = Payload.openFile(args['payload'])
            
        fft_encode.decode(trojan, payload)
        
    except Exception as e:
        print "[Stegan] There was an error while decoding"
        print "[Stegan] %s" % e