2016-09-28 5 views
0

피하기 위해 선택해야하는 EC 암호 - 약한 경우에는 secp160k1 곡선.햇볕에 Eliptic 곡선을 제한 JSSE (JDK 1.8)

내가 어떤 상황, 알고리즘과 키 크기에

+0

이 사용자가 여기에 같은 질문을했기 때문에이 질문을 주제와 관련이없는 것으로 보았습니다 : http://security.stackexchange.com/questions/138111/restrict-eliptic-curve-in-sun-jsse-jdk -18 그리고 더 낫다. – jmingov

+0

@jmingov 그것은 여기에 더 잘 맞는 것 같습니다. JCA에는, 특정의 알고리즘을 무효로하거나, 시큐러티 나 암호화에 일반적으로 관련하지 않는, 런타임 고유의 열쇠 길이를 제한하는기구가 있습니다. 나는 다른 하나를 닫을 것이다. – erickson

+0

@erickson ok 메이트, 당신의 보스 : p는 다른 하나를 닫으려고합니다. br – jmingov

답변

2

는 JRE에 java.security 파일을 사용하여 제한 할 수 있습니다 JCA 공급자로 SunEC와 JDK 1.8를 사용하고 있지만, 사용 EC 곡선을 제한 할 수있는 방법이없는 방법.

그러나 키를 생성 할 때 허용하는 커브를 지정하면 키 동의를 해당 커브로 효과적으로 제한 할 수 있습니다. 특정 커브가 허용되지 않으면 키 쌍을 지원하지 않아야합니다.

+0

그 구성 옵션을 찾으려면 어떻게 허용 곡선을 지정해야합니까? 나는 jdk.tls.disabledAlgorithms = EC 키 사이즈 <112를 피곤했지만 도움이되지 않았다. – user1493834

+0

@ user1493834 죄송 합니다만, 질문 본문 외부의 "JSSE"를 간과하고 직접 KeyAgreement를 사용하려고 생각하고있었습니다. java.security 파일을 통해 특정 커브를 거부 할 수는 없지만 더 긴 키를 요구할 수 있어야합니다. 그러나 비트 단위의 실제 키 크기가 지정되어야하며 유효 강도는 지정되어서는 안됩니다. 따라서 EC 키의 경우 160 비트 키를 모두 비활성화하려면 224가 아니라 112를 지정해야합니다. 기회가 있으면 시도해보십시오. 테스트 서버를 설치하거나 온라인으로 찾을 시간이 있다면 실험 해 보겠습니다. – erickson

+0

구성이 tomcat 8.0x에서 작동하지 않았습니다. 서버가 여전히 크기가 약한 162 커브를 지원하지만 동일한 jdk 1.8 및 동일한 자체 서명 된 cert와 함께 tomcat 8.5.5에서 동일한 암호 집합을 확인했습니다. 나는 그것이 더 강한 커브 (256 이상)만을 존중한다는 것을 알 수 있습니다. 나는 아직 해결책을 찾고있다. – user1493834

관련 문제