2012-06-19 2 views
-4

자바에서 base64 형식으로 바이트 배열을 변환하려고합니다.
내 문제는 sun.misc.BASE64Decoder를 사용할 수 없습니까? 어떤 대안이 있습니까?base64를 사용하여 암호화하고 암호를 해독하는 방법은 무엇입니까?

byte[] buf = new byte[] { 0x12, 0x23 }; 
String s = new sun.misc.BASE64Encoder().encode(buf); 
+0

이 코드의 문제점은 무엇입니까? 그것은 작동하지 ... –

+2

귀하의 질문은 완전히 불분명하다. "Base64가 내 프로그램을 지원하지 않습니다"는 의미는 무엇입니까? 너 뭐하려고? base64는 바이너리 데이터를 텍스트로 표현하는 방법 일뿐입니다. (암호화가 전혀 아닙니다.) http://tinyurl.com/so-hints –

+0

답변보기 http://stackoverflow.com/questions/469695/decode-base64-data-in-java – YMomb

답변

0

나는이 라이브러리를 사용하는 것이 좋습니다 : MigBase64

이처럼 사용

byte [] buf = new byte[]{0x12, 0x23}; 
String s = Base64.encode(buf); 
+0

오류가 발생했습니다. Error는 Base64를 확인할 수 없습니다. – Jahir

+0

http://migbase64.sourceforge.net/에서 다운로드하고 jar를 클래스 경로에 추가해야합니다. – Subin

+0

실제로는 jar 파일이 아닙니다. 단지 소스 파일 일뿐입니다. – rtheunissen

0
  1. Base64로 암호화 기술이 아니다. 이것은 단지 인코딩 메커니즘 일뿐입니다. 암호화를 찾고 있다면 잘못된 트리를 짖고있는 것입니다.

  2. import sun.misc.BASE64Decoder은 '헤더 파일'이 아니며 가져 오기 명령문입니다. Sun/Oracle 이외의 JDK를 사용하는 경우 컴파일되지 않을 수 있습니다. 그것은주의해야 할 경고를 줄 수 있습니다. 실제로 어떤 문제를 말하지 않았습니까? 더 이상 논평하는 것은 불가능합니다.

+0

감사. 이 문을 가져옵니다. 오류 메시지가 나타납니다. '액세스 제한 : 필요한 라이브러리 C : \ Program Files \ Java \ jre6 \ lib \ rt.jar에 대한 제한으로 인해 BASE64Decoder에 액세스 할 수 없습니다.' – Jahir

+0

@Jahir 그래서 (a) adjust IDE가이를 오류로 처리하지 않거나 (b) Apache와 같은 다른 Base-64 인코더를 사용하십시오. – EJP

관련 문제