RSA 개인 키 암호는 내부에서 어떻게 작동합니까?
RSA 개인 키에는 누군가가 개인 키 파일을 사용하는 경우에 대비하여 2 차 보안을 제공하기위한 "패스 프레이즈"가 할당 될 수 있습니다.
암호 보안 계층은 어떻게 구현됩니까?
ssh-keygen은 OpenSSL을 사용하여 RSA 키를 생성하고 PEM 형식으로 저장합니다. 당신이 말하는 암호화는 PEM에만 해당됩니다. 키 파일을 보면
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,5B01E932988DC66B
EPESt4ZVIrxnQXxxWWVa7cCR+vgNZ/4vTu4mdq6pjaW7jMZoB8HV+mA745mQkQw7
i+YtdVs/JqOeyGiw/3McxYYKZTlhyh7MvfIr1n8ZdZmcjQz+oFqMxChFU3r8BGgA
"DEK-Info"헤더에는 암호를 알고있는 한 키를 해독하는 데 필요한 모든 정보가 있습니다. "DES-EDE3-CBC"는 Triple DES (EDE 모드에서)를 의미합니다. CBC는 연결 모드입니다. 16 진수는 CBC에 필요한 초기 벡터입니다.
PEM은 매우 오래된 형식이므로 DES / TripleDES 만 지원합니다. AES 및 Blowfish는 나중에 추가되었지만 모든 구현에서 지원되지는 않습니다. 내 ssh (OpenSSH 5.2)는 DES 및 TripleDES 만 지원합니다.
암호는 대칭 암호 (일반적으로 DES 또는 3DES)를 사용하여 RSA 키가 포함 된 파일을 암호화하는 데 사용되는 키입니다. 공개 키 암호화에 키를 사용하려면 먼저 암호 해독 키를 사용하여 파일의 암호를 해독해야합니다. ssh는 암호를 요청하여 자동으로 수행합니다.
누군가 키의 파일을 보유하고 있다면 파일을 암호화하는 데 사용 된 암호를 알지 못하면 사용할 수 없습니다.
범용 파일 시스템에 저장된 개인 키 (변조 방지, 특수 목적 하드웨어 토큰과 반대)는 보호되지 않으면 쉽게 도난 당할 수 있습니다. 파일 시스템 권한은 충분 해 보일 수 있지만 특히 공격자가 시스템에 물리적으로 액세스 할 수있는 경우에는 종종 우회 될 수 있습니다.
좋은 암호를 입력 한 강력한 대칭 암호는이를 방지하는 데 도움이됩니다. 좋은 RSA 개인 키는 기억하기에는 너무 길지만 (어쨌든 저에게는) 훨씬 작은 대칭 키가 동일한 수준의 보안을 제공 할 수 있습니다. 두뇌에 저장된 상대적으로 짧은 대칭 키는 디스크에 저장된 큰 개인 키를 보호하는 데 사용됩니다.
'Nice programing' 카테고리의 다른 글
동일한 폴더에 go 파일 가져 오기 (0) | 2020.12.01 |
---|---|
LocalDate 인스턴스를 비교하는 방법 Java 8 (0) | 2020.12.01 |
언제 IORef를 사용해도 괜찮습니까? (0) | 2020.12.01 |
자바 스크립트로 현재 페이지의 모든 쿠키를 나열하려면 어떻게해야합니까? (0) | 2020.12.01 |
속성 / 함수 단계 (F11)가 예상대로 작동하지 않습니다. (0) | 2020.12.01 |