Package com.openstego.desktop
Class OpenStego
java.lang.Object
com.openstego.desktop.OpenStego
This is the main class for OpenStego. It includes the
main(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.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionOpenStego
(OpenStegoPlugin plugin) Constructor using the default configurationOpenStego
(OpenStegoPlugin plugin, OpenStegoConfig config) Constructor usingOpenStegoConfig
objectOpenStego
(OpenStegoPlugin plugin, Map<String, String> propMap) Constructor with configuration data in the form ofMap
-
Method Summary
Modifier and TypeMethodDescriptiondouble
Method to check the correlation for the given image and the original signaturedouble
Method to check the correlation for the given image and the original signature (alternate API)byte[]
Method to embed the message data into the cover databyte[]
Method to embed the message data into the cover data (alternate API)byte[]
Method to embed the watermark signature data into the cover databyte[]
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[]
extractMark
(byte[] stegoData, String stegoFileName, byte[] origSigData) Method to extract the watermark data from stego databyte[]
extractMark
(File stegoFile, File origSigFile) Method to extract the watermark data from stego data (alternate API)byte[]
Method to generate the signature data using the given pluginGet 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[]
Method to get difference between original cover file and the stegged filestatic void
Main method for calling openstego from command line.
-
Field Details
-
NAMESPACE
Constant for the namespace for labels- See Also:
-
-
Constructor Details
-
OpenStego
Constructor using the default configuration- Parameters:
plugin
- Stego plugin to use- Throws:
OpenStegoException
-
OpenStego
Constructor usingOpenStegoConfig
object- Parameters:
plugin
- Stego plugin to useconfig
- OpenStegoConfig object with configuration data- Throws:
OpenStegoException
-
OpenStego
Constructor with configuration data in the form ofMap
- Parameters:
plugin
- Plugin objectpropMap
- Map containing the configuration data- Throws:
OpenStegoException
-
-
Method Details
-
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
-
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
-
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
-
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
-
extractData
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
-
extractData
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
-
extractMark
public byte[] extractMark(byte[] stegoData, String stegoFileName, byte[] origSigData) throws OpenStegoException Method to extract the watermark data from stego data- Parameters:
stegoData
- Stego data from which the watermark needs to be extractedstegoFileName
- Name of the stego fileorigSigData
- Original signature data- Returns:
- Extracted watermark
- Throws:
OpenStegoException
-
extractMark
Method to extract the watermark data from stego data (alternate API)- Parameters:
stegoFile
- Stego file from which watermark needs to be extractedorigSigFile
- Original signature file- Returns:
- Extracted watermark
- Throws:
OpenStegoException
-
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
-
checkMark
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
-
generateSignature
Method to generate the signature data using the given plugin- Returns:
- Signature data
- Throws:
OpenStegoException
-
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
-
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
-
getConfig
Get method for configuration data- Returns:
- Configuration data
-
main
Main method for calling openstego from command line.- Parameters:
args
- Command line arguments
-