Two possible answers.
If you want to follow the path, try this to resolve NoClassDefFoundError . The eclipse Android app has been updated and now the app crashes when trying to execute
You can use JSch instead. I have reliable work on android. Securing RSA encryption before generating public / private keys
Edit: Here is an example of using JSch to generate RSA keyboard keys. I think this is PKCS # 1, but I'm not familiar enough with the standard. the corresponding javadoc is what I'm leaving.
public boolean registerKeyPair(JSch jSch) { new File(getRootFolder().getAbsolutePath() + "/.ssh").mkdirs(); File privateKey = new File(getRootFolder().getAbsolutePath() + "/.ssh/id_rsa"); File publicKey = new File(getRootFolder().getAbsolutePath() + "/.ssh/id_rsa.pub"); if (!privateKey.exists() || !publicKey.exists()) { try { KeyPair keyPair = KeyPair.genKeyPair(jSch, KeyPair.RSA); keyPair.writePrivateKey(privateKey.getAbsolutePath()); keyPair.writePublicKey(publicKey.getAbsolutePath(), "Machine Shop"); return true; } catch (JSchException e) { Log.e("genKeyPair(RSA)", Log.getStackTraceString(e)); } catch (FileNotFoundException e) { Log.e("genKeyPair(RSA)", Log.getStackTraceString(e)); } catch (IOException e) { Log.e("genKeyPair(RSA)", Log.getStackTraceString(e)); } return false; } try { jSch.addIdentity(privateKey.getAbsolutePath()); return true; } catch (JSchException e) { Log.w("jSch.addIdentity", Log.getStackTraceString(e)); return false; } }
Edit: Assuming Eclipse. Include the jar jar file in your build path, preferably as a local jar (say, in the lib folder). Be sure to check it on the "Order and Export" tab.
Update your project.
source share