Package com.openstego.desktop
Class OpenStego
- java.lang.Object
-
- com.openstego.desktop.OpenStego
-
public class OpenStego extends Object
This is the main class for OpenStego. It includes themain(String[])
method which provides the command line interface for the tool. It also has API methods which can be used by external programs when using OpenStego as a library.
-
-
Constructor Summary
Constructors Constructor Description OpenStego(OpenStegoPlugin<?> plugin, OpenStegoConfig config)
Constructor usingOpenStegoConfig
object
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description double
checkMark(byte[] stegoData, String stegoFileName, byte[] origSigData)
Method to check the correlation for the given image and the original signaturedouble
checkMark(File stegoFile, File origSigFile)
Method to check the correlation for the given image and the original signature (alternate API)byte[]
embedData(byte[] msg, String msgFileName, byte[] cover, String coverFileName, String stegoFileName)
Method to embed the message data into the cover databyte[]
embedData(File msgFile, File coverFile, String stegoFileName)
Method to embed the message data into the cover data (alternate API)byte[]
embedMark(byte[] sig, String sigFileName, byte[] cover, String coverFileName, String stegoFileName)
Method to embed the watermark signature data into the cover databyte[]
embedMark(File sigFile, File coverFile, String stegoFileName)
Method to embed the watermark signature data into the cover data (alternate API)List<?>
extractData(byte[] stegoData, String stegoFileName)
Method to extract the message data from stego dataList<?>
extractData(File stegoFile)
Method to extract the message data from stego data (alternate API)byte[]
generateSignature()
Method to generate the signature data using the given pluginOpenStegoConfig
getConfig()
Get method for configuration databyte[]
getDiff(byte[] stegoData, String stegoFileName, byte[] coverData, String coverFileName, String diffFileName)
Method to get difference between original cover file and the stegged filebyte[]
getDiff(File stegoFile, File coverFile, String diffFileName)
Method to get difference between original cover file and the stegged filestatic void
main(String[] args)
Main method for calling openstego from command line.
-
-
-
Field Detail
-
NAMESPACE
public static final String NAMESPACE
Constant for the namespace for labels- See Also:
- Constant Field Values
-
-
Constructor Detail
-
OpenStego
public OpenStego(OpenStegoPlugin<?> plugin, OpenStegoConfig config) throws OpenStegoException
Constructor usingOpenStegoConfig
object- Parameters:
plugin
- Stego plugin to useconfig
- OpenStegoConfig object with configuration data- Throws:
OpenStegoException
- Processing issues
-
-
Method Detail
-
embedData
public byte[] embedData(byte[] msg, String msgFileName, byte[] cover, String coverFileName, String stegoFileName) throws OpenStegoException
Method to embed the message data into the cover data- Parameters:
msg
- Message data to be embeddedmsgFileName
- Name of the message filecover
- Cover data into which message data needs to be embeddedcoverFileName
- Name of the cover filestegoFileName
- Name of the output stego file- Returns:
- Stego data containing the embedded message
- Throws:
OpenStegoException
- Processing issues
-
embedData
public byte[] embedData(File msgFile, File coverFile, String stegoFileName) throws OpenStegoException
Method to embed the message data into the cover data (alternate API)- Parameters:
msgFile
- File containing the message data to be embeddedcoverFile
- Cover file into which data needs to be embeddedstegoFileName
- Name of the output stego file- Returns:
- Stego data containing the embedded message
- Throws:
OpenStegoException
- Processing issues
-
embedMark
public byte[] embedMark(byte[] sig, String sigFileName, byte[] cover, String coverFileName, String stegoFileName) throws OpenStegoException
Method to embed the watermark signature data into the cover data- Parameters:
sig
- Signature data to be embeddedsigFileName
- Name of the signature filecover
- Cover data into which signature data needs to be embeddedcoverFileName
- Name of the cover filestegoFileName
- Name of the output stego file- Returns:
- Stego data containing the embedded signature
- Throws:
OpenStegoException
- Processing issues
-
embedMark
public byte[] embedMark(File sigFile, File coverFile, String stegoFileName) throws OpenStegoException
Method to embed the watermark signature data into the cover data (alternate API)- Parameters:
sigFile
- File containing the signature data to be embeddedcoverFile
- Cover file into which data needs to be embeddedstegoFileName
- Name of the output stego file- Returns:
- Stego data containing the embedded signature
- Throws:
OpenStegoException
- Processing issues
-
extractData
public List<?> extractData(byte[] stegoData, String stegoFileName) throws OpenStegoException
Method to extract the message data from stego data- Parameters:
stegoData
- Stego data from which the message needs to be extractedstegoFileName
- Name of the stego file- Returns:
- Extracted message (List's first element is filename and second element is the message as byte array)
- Throws:
OpenStegoException
- Processing issues
-
extractData
public List<?> extractData(File stegoFile) throws OpenStegoException
Method to extract the message data from stego data (alternate API)- Parameters:
stegoFile
- Stego file from which message needs to be extracted- Returns:
- Extracted message (List's first element is filename and second element is the message as byte array)
- Throws:
OpenStegoException
- Processing issues
-
checkMark
public double checkMark(byte[] stegoData, String stegoFileName, byte[] origSigData) throws OpenStegoException
Method to check the correlation for the given image and the original signature- Parameters:
stegoData
- Stego data containing the watermarkstegoFileName
- Name of the stego fileorigSigData
- Original signature data- Returns:
- Correlation
- Throws:
OpenStegoException
- Processing issues
-
checkMark
public double checkMark(File stegoFile, File origSigFile) throws OpenStegoException
Method to check the correlation for the given image and the original signature (alternate API)- Parameters:
stegoFile
- Stego file from which watermark needs to be extractedorigSigFile
- Original signature file- Returns:
- Correlation
- Throws:
OpenStegoException
- Processing issues
-
generateSignature
public byte[] generateSignature() throws OpenStegoException
Method to generate the signature data using the given plugin- Returns:
- Signature data
- Throws:
OpenStegoException
- Processing issues
-
getDiff
public byte[] getDiff(byte[] stegoData, String stegoFileName, byte[] coverData, String coverFileName, String diffFileName) throws OpenStegoException
Method to get difference between original cover file and the stegged file- Parameters:
stegoData
- Stego data containing the embedded datastegoFileName
- Name of the stego filecoverData
- Original cover datacoverFileName
- Name of the cover filediffFileName
- Name of the output difference file- Returns:
- Difference data
- Throws:
OpenStegoException
- Processing issues
-
getDiff
public byte[] getDiff(File stegoFile, File coverFile, String diffFileName) throws OpenStegoException
Method to get difference between original cover file and the stegged file- Parameters:
stegoFile
- Stego file containing the embedded datacoverFile
- Original cover filediffFileName
- Name of the output difference file- Returns:
- Difference data
- Throws:
OpenStegoException
- Processing issues
-
getConfig
public OpenStegoConfig getConfig()
Get method for configuration data- Returns:
- Configuration data
-
main
public static void main(String[] args)
Main method for calling openstego from command line.- Parameters:
args
- Command line arguments
-
-