0

I am developing a multi-platform application which will use the "F5 Steganography" to hide a message inside a JPG image captured from the device's camera. Currently my objectives are to make an android application and desktop Java application. I have found the jar file of "F5 Steganography" from here I have successfully implemented the library in Java desktop application but the problem is coming in android implementation. I have imported the jar file in the android project but in the embedding and extraction of the message, I am facing issues on android.

  • Extract issue

On Extract, the issue I am facing now is that the imported library is using "sun.security.provider.SecureRandom" but android is unable to find it. here is log-cat error:

10-06 22:25:44.324: E/dalvikvm(32150): Could not find class 'sun.security.provider.SecureRandom', referenced from method crypt.F5Random.<init>

Now I am guessing that android is not supporting the "sun.security.provider.SecureRandom" library, if it is so, the what should I do? Can I import the library manually? P.S I don't want to change anything in "F5 Steganography" library code due to the fact it is being used as it is on Java platform. Here is the code for reference:

public void clk1(View v){
    EditText eto=(EditText) findViewById(R.id.editText2);
    EditText ett=(EditText) findViewById(R.id.editText3);
    Extract e=new Extract();
    String information[] = new String[5];
    information[0]="-p";
    information[1]="123";
    information[2]="-e";
    information[3]=ett.getText().toString();
    information[4]=eto.getText().toString();
    e.main(information);
}
  • Embed Issue

On Embed, I am facing an issue similar to before. Error is saying that it could not find the "james.JpegEncoder" class in the library, yet it is present there as seen in the attached image.

Here is log-cat trace:

10-06 23:00:39.678: E/dalvikvm(410): Could not find class 'james.JpegEncoder', referenced from method main.Embed.main

Here is the code for reference:

public void clk0(View v){
    EditText eto=(EditText) findViewById(R.id.editText2);
    EditText ett=(EditText) findViewById(R.id.editText3);
    EditText eti=(EditText) findViewById(R.id.editText1);
    Embed e=new Embed();
    String information[] = new String[8];
    information[0]="-e";
    information[1]=ett.getText().toString();
    information[2]="-p";
    information[3]="123";
    information[4]="-q";
    information[5]="100";
    information[6]=eti.getText().toString();
    information[7]=eto.getText().toString();
    e.main(information);
}

What should I do to counter this problem? I have reached here after solving many issues but got stuck here. I have searched through the Internet and could not find a proper solution even remotely relating to my issue.

4

1 回答 1

0

如果您想在 Android 中使用您提到的工具(https://code.google.com/p/f5-steganography),您必须从 sun 导入一些库或在您的项目中包含 sun.security 中的以下类.提供者:

这篇文章有点旧,但可能会在未来对其他人有所帮助......我只是尝试过自己并且像魅力一样工作:)

于 2014-06-07T19:55:04.933 回答