마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

두개의 로그값이 다른데 어떻게 해주어야 할까요 ㅜ 도와주세요

0 추천

 

안녕하세요 ㅠ  두개의 로그값의 값이 달라서 질문이 있습니다.

질문의 내용은 아래와 같습니다.

 

아래의 encryptedMsg2의 값과, encrypt2의 값이 다릅니다.

encryptedMsg2는 String형 변수이고, encrypt2는 byte형 변수입니다.

암호화가 되어서, encryptedMsg2에 넣고 그 값을, dataOutputStream.write의 인자값인 바이트로

보내기 위해서, 바이트로 바꾸어서 encrypt2에 넣어서 보내려고 하는데, 최종적으로 encryptedMsg2의 값과 encrypt2의 값이 같아야 하는데, 아래의 사진과 같이 두개의 로그값이 다르게 찍힙니다 ㅜㅜ 어떻게 해야 두 값이 같게 될까요 도움 부탁드립니다 ㅠㅠ

 

 try {
                    encryptedMsg2 = AESCrypt.encrypt(password, str2);
                    Log.e("Encrypt2",encryptedMsg2);

                }catch (GeneralSecurityException e){
                    //handle error
                }

                encrypt2 = encryptedMsg2.getBytes();
                Log.e("EEEEE",encrypt2.toString());
                dataOutputStream.write(encrypt2);

 

그리고 if문안의 값은 위와 같습니다. 맨 마지막줄은, outputStream.write에 버퍼를 써주어야 전송을 하기에, 처음에 암호화를 해서, encryptedMsg2에 넣어주고, 그것을 다시 버퍼형태로 바꿔서 encrypt2에 넣고, 그것을 보내는 것입니다.

그런데, encryptedMsg2와 encrypt2의 값이 같아야 하는데. 위와같이 사진에서 나오듯이 다른데.. ㅜ 어떻게 해야할까요 흑 ㅠ

Kind카인드 (3,600 포인트) 님이 2017년 5월 22일 질문

2개의 답변

0 추천
위에 데이터를 getBytes 한다고 해서 내용물이 변하진 않습니다. 타입 변경 정도니깐요

new String(encrypt2, "UTF-8"); 을 출력해보세요
aucd29 (218,390 포인트) 님이 2017년 5월 23일 답변
흑 ㅠ 답변 감사합니다.

너무 어렵네요 ㅠㅜ..

그렇다면, 타입이 꺠지지 않는 선에서, String이 담겨있는 값의 encryptedMsg2 를  
dataOutputStream으로 보내려면 어떻게 보내야 할까요 ㅠㅠ
0 추천

두번째 로그의 값을 encrypt2.toString() 로 하셨는데, 

toString() 메소드를 따로 재정의 하지않는 이상 저 값은 해당 오브젝트의 주소값을 찍어줍니다.

갈무리 (12,430 포인트) 님이 2017년 5월 23일 답변
흑 ㅠ 답변 감사합니다.

너무 어렵네요 ㅠㅜ..

그렇다면, 타입이 꺠지지 않는 선에서, String이 담겨있는 값의 encryptedMsg2 를  
dataOutputStream으로 보내려면 어떻게 보내야 할까요 ㅠㅠ ㅜ
...