2012-08-22 6 views
16

JKS/BKS 키 스토어와 같은 키 스토어 비밀번호의 의미는 정확히 무엇입니까?자바 키 스토어 암호는 무의미한가요?

필자는 편집기로 파일을 열고 모든 항목을 passwordcheck없이 새 파일에 복사 할 수 있기 때문에 분명히 보안을위한 것이 아닙니다. 암호로 보호 된 Keystore 내부의 데이터는 암호화되지 않습니다!

이 비밀번호는 무엇을 보호합니까? 그것은 단지 노예 같은 개발자들을위한 것 같습니다 ...

+0

보안을 유지하거나 비밀번호 저장을 해제 할 수있는 암호문을 사용자에게 요청하지 않는 한 안전하게 비밀번호를 로컬에 저장하고 액세스 할 수있는 실제적인 방법은 없습니다. – WhyNotHugo

+0

네,하지만 뭐라고하고 싶습니까? 내 개인 키는 KEYPAIR 암호로 암호화되어 보호되므로 안전합니다. keystorepassword가 있는지 여부에 관계없이 다른 모든 내용을 일반 텍스트로 읽을 수 있습니다. – billdoor

+1

실제로 액세스 할 수 있도록 비밀번호를 제공해야합니다. 그게 내 요점이야. 암호 저장에도 동일하게 적용됩니다. 여전히 마스터 암호가 필요합니다. – WhyNotHugo

답변

4

JKS 또는 BKS 키 저장소에서 암호는 의미가 없지만 가정 할 수도 없습니다.

키 스토어의 데이터를 암호화하지 않거나 키 스토어의 무결성을 확인하는 방식으로 데이터를 암호화하지 않습니다. 패스워드를 모르면, 보통의 유저가 발견하지 않고 키스트 아를 변경할 수 없습니다 (통상, 「Keystore가 변경되었거나 패스워드가 잘못되었다」라고 말하는 툴에 의한)

키 저장소 유형 (예 : Keystore.BouncyCastle)은 키 저장소 비밀번호가 검사 및 변조를 방지합니다.

8

키 스토어에 "This is my sentence"라는 문자열을 저장하고 메모장으로 열면 암호문 "blabla"가 보입니다. "blabla"를 다른 파일에 복사하고 일반 텍스트를 찾을 수 있다고 주장하면 "blabla"입니다.이 파일은 분명히 틀린 것이므로 비밀번호로 복구 할 때까지 원래의 pliant-ext를 알지 못합니다.

==을 편집 DigestInputStream가 서명을 생성하고있는 경우 하나의보고 acutal하는 비교 src

636 if (password != null) { 
637  md = getPreKeyedHash(password); 
638  dis = new DataInputStream(new DigestInputStream(stream, md)); 
639 } 

JKS 키 저장소

는 키 저장 암호가 무결성을 검증하는데 사용된다 == 수정 됨.

BouncyCastle 키스트 UBER 전체 키스트 SHA1 그리고 twofish에 기초 PBE 암호화,보다 안전 (PBEWithSHAAndTwofish-CBC)

 Cipher cipher = this.makePBECipher(cipherAlg, Cipher.DECRYPT_MODE, password, salt, iterationCount); 
     CipherInputStream cIn = new CipherInputStream(dIn, cipher); 

     Digest dig = new SHA1Digest(); 
     DigestInputStream dgIn = new DigestInputStream(cIn, dig); 

     this.loadStore(dgIn); 
+0

방금 ​​키 저장소에서 certificateData를 crt 파일로 복사했습니다. 작동합니다. 물론 암호로 보호 된 키 쌍을 보호 된 키 저장소에 액세스 할 수는 없지만 키 저장소가 아닌 키 쌍의 암호로 암호화되어 있습니다. – billdoor

+1

공개 키가 공개되어 중요 데이터가 아닙니다 –

+1

어쨌든 키 저장소 암호의 목적은 무엇입니까? 해당 키 쌍의 암호가 키 쌍을 보호하지만 키 저장소의 어떤 정보가 키 저장소 암호로 보호되어 있습니까? – gkuzmin

-1

JKS 키 저장소는 이진 저장되고 그 내용이 암호를 사용하여 암호화 열쇠로. 암호 없이는 아무도 내용에 액세스 할 수 없습니다. 암호는 상점의 내용을 불법적 인 액세스 및 조작으로부터 보호하기위한 것입니다. 일부 편집기에서는 암호화 된 컨텐츠를 열 수 있지만 이해할 수는 없습니다.

+0

은 이해가가는 것처럼 보이지만, 나는 내용에 접근 할 수있다. (그들에게 의미가있다.) – billdoor

+1

쓸만한 자료를 얻을 수 없다. 암호 보호는 또한 상점 조작을 방지합니다. – Drona

+1

다른 시간 동안 : 나는 사용할 수있는 데이터를 가져 오지 만, 키 저장소가 조작되지 않도록합니다! 고맙습니다! – billdoor

관련 문제