Ejemplo n.º 1
0
    def test_with_location_of_image_as_argument(self):
        messages_to_hide = ["Hello World!"]

        for message in messages_to_hide:
            outputBytes = io.BytesIO()
            bytes_image = lsbset.hide(
                "./tests/sample-files/20160505T130442.jpg", message,
                generators.identity())
            bytes_image.save(outputBytes, "PNG")
            outputBytes.seek(0)

            clear_message = lsbset.reveal(outputBytes, generators.identity())

            self.assertEqual(message, clear_message)
Ejemplo n.º 2
0
 def test_with_too_long_message(self):
     with open("./tests/sample-files/lorem_ipsum.txt") as f:
         message = f.read()
     message += message * 2
     with self.assertRaises(Exception):
         lsbset.hide("./tests/sample-files/Lenna.png", message,
                     generators.identity())
Ejemplo n.º 3
0
 def test_with_too_long_message(self):
     with open("./tests/sample-files/lorem_ipsum.txt") as f:
         message = f.read()
     message += message*2
     with self.assertRaises(Exception):
         lsbset.hide("./tests/sample-files/Lenna.png", message,
                                 generators.identity())
Ejemplo n.º 4
0
 def test_identity(self):
     """Test the identity generator.
     """
     self.assertEqual(
         tuple(itertools.islice(generators.identity(), 15)),
         (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14),
     )
Ejemplo n.º 5
0
    def test_hide_and_reveal_with_bad_generator(self):
        message_to_hide = "Hello World!"
        secret = lsbset.hide("./tests/sample-files/Lenna.png", message_to_hide,
                             generators.eratosthenes())
        secret.save("./image.png")

        with self.assertRaises(IndexError):
            clear_message = lsbset.reveal("./image.png", generators.identity())
Ejemplo n.º 6
0
    def test_hide_and_reveal_with_bad_generator(self):
        message_to_hide = "Hello World!"
        secret = lsbset.hide("./tests/sample-files/Lenna.png", message_to_hide,
                                    generators.eratosthenes())
        secret.save("./image.png")

        with self.assertRaises(IndexError):
            clear_message = lsbset.reveal("./image.png", generators.identity())
Ejemplo n.º 7
0
path_output = '{}output'.format(path)

fname = 'cat.2.png'
z = eda.JointImageAnalyser(path_cover + fname, path_stego + fname)

# plot cover and stego images side by side.
z.plot_images()

# plot difference between cover and stego images.
z.plot_difference()

# plot colour channels of cover and stego images.
z.plot_rgb_components()

# Reveal and show hidden image
z.reveal_image(generators.identity(), show=True)

# Plot wavelet decomposition for a colour channel
eda.plot_wavelet_decomposition(z.I[:, :, 0])

# generate set of histogram/kde plots
eda.generate_feature_distplots(
    filepath_train='{}data/features/train_lenna_identity.csv'.format(path),
    path_output=path_output,
    normalise=False
)

# generate set of histograms
eda.generate_feature_histograms(
    filepath_train='{}data/features/train_lenna_identity.csv'.format(path),
    path_output=path_output,