JKS/BKS 키 스토어와 같은 키 스토어 비밀번호의 의미는 정확히 무엇입니까?자바 키 스토어 암호는 무의미한가요?
필자는 편집기로 파일을 열고 모든 항목을 passwordcheck없이 새 파일에 복사 할 수 있기 때문에 분명히 보안을위한 것이 아닙니다. 암호로 보호 된 Keystore 내부의 데이터는 암호화되지 않습니다!
이 비밀번호는 무엇을 보호합니까? 그것은 단지 노예 같은 개발자들을위한 것 같습니다 ...
JKS/BKS 키 스토어와 같은 키 스토어 비밀번호의 의미는 정확히 무엇입니까?자바 키 스토어 암호는 무의미한가요?
필자는 편집기로 파일을 열고 모든 항목을 passwordcheck없이 새 파일에 복사 할 수 있기 때문에 분명히 보안을위한 것이 아닙니다. 암호로 보호 된 Keystore 내부의 데이터는 암호화되지 않습니다!
이 비밀번호는 무엇을 보호합니까? 그것은 단지 노예 같은 개발자들을위한 것 같습니다 ...
JKS 또는 BKS 키 저장소에서 암호는 의미가 없지만 가정 할 수도 없습니다.
키 스토어의 데이터를 암호화하지 않거나 키 스토어의 무결성을 확인하는 방식으로 데이터를 암호화하지 않습니다. 패스워드를 모르면, 보통의 유저가 발견하지 않고 키스트 아를 변경할 수 없습니다 (통상, 「Keystore가 변경되었거나 패스워드가 잘못되었다」라고 말하는 툴에 의한)
키 저장소 유형 (예 : Keystore.BouncyCastle)은 키 저장소 비밀번호가 검사 및 변조를 방지합니다.
키 스토어에 "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);
JKS 키 저장소는 이진 저장되고 그 내용이 암호를 사용하여 암호화 열쇠로. 암호 없이는 아무도 내용에 액세스 할 수 없습니다. 암호는 상점의 내용을 불법적 인 액세스 및 조작으로부터 보호하기위한 것입니다. 일부 편집기에서는 암호화 된 컨텐츠를 열 수 있지만 이해할 수는 없습니다.
보안을 유지하거나 비밀번호 저장을 해제 할 수있는 암호문을 사용자에게 요청하지 않는 한 안전하게 비밀번호를 로컬에 저장하고 액세스 할 수있는 실제적인 방법은 없습니다. – WhyNotHugo
네,하지만 뭐라고하고 싶습니까? 내 개인 키는 KEYPAIR 암호로 암호화되어 보호되므로 안전합니다. keystorepassword가 있는지 여부에 관계없이 다른 모든 내용을 일반 텍스트로 읽을 수 있습니다. – billdoor
실제로 액세스 할 수 있도록 비밀번호를 제공해야합니다. 그게 내 요점이야. 암호 저장에도 동일하게 적용됩니다. 여전히 마스터 암호가 필요합니다. – WhyNotHugo