2017-12-08 5 views
0

해독 할 필요가있는 'filename.txt.pgp'라는 PGP 파일이 있습니다. 명령 줄에서 암호 해독을 실행하면 암호 만 묻습니다. 나는 gpg 명령을 사용합니다 :암호문이 PGP로 암호화 된 파일을 Java에서만 암호로 복호화하십시오.

gpg filename.txt.pgp 

암호가 충분하고 파일이 암호 해독되었습니다. 나는 그 내용을 읽을 수 있습니다.

이제 Java로 유틸리티를 만들어야합니다. 연구 결과 Bouncy Castle 도서관이 최선의 선택임을 알게되었습니다. 하지만 Java의 모든 예제에서는 필자가 가지고 있지 않은 공용/개인 키 파일을 사용할 수 있습니다.

암호만으로 PGP 파일의 암호를 해독하는 Java의 예를 들어 주시겠습니까?

감사합니다.

+0

PGP는 공개/개인 키가 들어있는 키 링 개념을 사용합니다. 비밀번호를 사용하여 Bouncy Castle API를 통해 키 링에 액세스하고 Bouncy Castle API를 통해 관련 키를 검색하고 마지막으로 Bouncy Castle API를 통해 파일을 해독하고 해독합니다. Google은 https://stackoverflow.com/questions/6987699/pgp-encryption-and-decryption-using-bouncycastle-c-sharp와 같은 많은 예제로 연결될 수 있습니다. – Rob

+0

FTP에서 파일을 받고 있는데 암호 만 알고 있습니다. 나는 열쇠 고리가 없다. 따라서 공용/개인 키가 없습니다. 암호를 공개 키로 사용할 수 있습니까? – Igor

+0

pgp 파일의 암호를 해독하는 경우 상대방에게 공개 키를 제공하고 개인 키가 키 링에 있음을 의미합니다 (명령 줄 도구가 암호 만 사용하는 이유). 홈 디렉토리에서 ".gnupg"라는 디렉토리를 찾습니다. gpg가 키 링을 저장하는 기본 위치입니다. – Rob

답변

1

Bouncy Castle 사이트의 문서 섹션을 보면 "... 테스트 패키지를 패키지로보고 ..."라고 말하면서 농담을하지 않습니다.

Bouncy Castle에서 jar 파일을 보면 디렉토리 아래에 "PBEFileProcessor"이라는 클래스 파일이 있으며 해당 라이브러리를 사용할 때 비밀번호 기반 암호화가 적용됩니다.

Github 레포에서 같은 파일에 대해 link입니다.

관련 문제