4
SSH 로그인을 위해 공개/개인 RSA 키를 생성하려면 내 앱이 필요한 프로젝트에서 작업하고 있습니다.Android에서 SSH 로그인을위한 RSA 개인/공개 키 쌍 생성
: 나는 로그 캣이를 인쇄 할 때 내가 좋아하는 뭔가를 찾기 위해 키를 기대하고 때private void createKeyTest()
{
try
{
KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(2048);
KeyPair keyPair = kpg.genKeyPair();
byte[] pri = keyPair.getPrivate().getEncoded();
byte[] pub = keyPair.getPublic().getEncoded();
String privateKey = new String(pri);
String publicKey = new String(pub);
Log.d("SSHKeyManager", "Private Key: " + privateKey);
Log.d("SSHLeyManager", "Public Key: " + publicKey);
}
catch (NoSuchAlgorithmException ex)
{
Log.e("SSHKeyManager", ex.toString());
}
내가 아닌 임의 텍스트 문자를 얻을 :
나는 열쇠를 얻기 위해 지금까지 다음과 같은 코드가 있습니다
-----BEGIN RSA PRIVATE KEY-----
MIIEoQIBAAKCAQEAm8QDThbuEjAbQxbsdDltL2xdFkQOep3L0wseSJAxmDuvH6yB
9I2fEEmF+dcVoNo2DGCDZMw7EgdFsfQZNF+PzKdZwtvSUTDW/TmMHWux2wYimNU3
jhQ3kfxGmiLgMJHQHWLkESwd06rCr7s1yOnPObdPjTybt7Odbp9bu+E59U10Ri3W
JFxIhi9uYQvpRn4LT/VIfH/KBdglpbD9xBAneVbKFXW7....
-----END RSA PRIVATE KEY-----
도움을 주셔서 감사합니다.
당신이 올바르게'--- ---'섹션에 포함 된 문자열을 받고 있는지 생각 해 봤나 : 여기
는 bouncycastle 예입니다? –
일부 바이트 배열의'new String()'은 바이트의 Base-64 인코딩 (또는 RSA 파일에 사용되는 인코딩)을 제공하지 않습니다. – CommonsWare
아, 예, 잊어 버렸습니다. 64 인코딩을 시도했지만, 문자열은 항상 리눅스 커널에서 ssh-keygen -t rsa 명령을 사용하여 생성했을 때보 다 훨씬 짧습니다. – Boardy