개인 키를로드 할 수 없습니다. (PEM 루틴 : PEM_read_bio : no start line : pem_lib.c : 648 : 예상 : ANY PRIVATE KEY)
PEM 형식의 개인 키 파일 인 .key 파일이 있습니다. 이 파일을 만들지 않았지만 어딘가에서 가져 왔습니다.
아래 명령과 같은 openssl 도구로 MD5 해시를보고 싶었습니다.
openssl rsa -in server.key -modulus -noout
그러나 이것은 아래의 오류를 생성합니다.
unable to load Private Key
13440:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib.c:648:Expecting: ANY PRIVATE KEY
다음은 .key 파일의 asn1parse입니다.
openssl asn1parse -in server.key
0:d=0 hl=4 l= 603 cons: SEQUENCE
4:d=1 hl=2 l= 1 prim: INTEGER :00
7:d=1 hl=3 l= 129 prim: INTEGER :C141201603899993919CBAA56985E9C7
C6A2AF713A02F5FE88D38CEFBED9304599689280B84B0AB577A9719CA20DDA1246A894AF397A2C57
EE5A582B036CC367E3667454DCD82DBDBF187C35FE39F61C71B517DDDF576F5471B4EC2E045E0F9D
619F5616C4E832F00CBD0DBF41B4BA3CBC4B4B603AE1FE61965917DA732E0DEF
139:d=1 hl=2 l= 3 prim: INTEGER :010001
144:d=1 hl=3 l= 128 prim: INTEGER :1687B9AE67562CEDEBDD7A531B84CDB7
093CE138519B93C34B7F626076FF0A262B16EA71904ACB6251A39307C04ADE202055BA13DD9F1539
6123EE408183361A9BC08B9413FA360EA928E48CC3F52B33ACF2980758F02BA2139F652F30A257C2
2E45D7C25835FC4D22B9ECECC12AB632318D4F47E1EBDAD9781B96BCFF03A2D1
...
더 시도 할 수있는 것이 있습니까?
PEM 파일의 머리글과 바닥 글을 다음과 같이 변경했습니다.
-----BEGIN RSA PRIVATE KEY-----
과
-----END RSA PRIVATE KEY-----
마지막으로 작동합니다!
Notepad ++에서 키 파일을 열고 인코딩을 확인합니다. UTF-8-BOM으로 표시되면 UTF-8로 변경하십시오. 파일을 저장하고 다시 시도하십시오.
.key 파일에 잘못된 문자가 있습니다. 다음과 같이 .key 파일을 확인할 수 있습니다.
# file server.key
"server.key : UTF-8 유니 코드 (BOM 포함) 텍스트"출력은 키 파일이 아니라 일반 텍스트임을 의미합니다. 올바른 출력은 "server.key : PEM RSA 개인 키"여야합니다.
아래 명령을 사용하여 잘못된 문자를 제거하십시오.
# tail -c +4 server.key > new_server.key
new_server.key가 정확해야합니다.
자세한 내용을 보려면 여기 를 클릭 하십시오 . 게시물에 감사드립니다.
> I have a .key file which is PEM formatted private key file.
> ...
> Here's some asn1parse of the .key file...
괜찮아 보이는 것은 PEM 인코딩 asn1parse
이 아니라고 믿게 만듭니다.
더 시도 할 수있는 것이 있습니까?
ASN.1로 보이므로 다음을 시도하십시오.
$ openssl rsa -in server.key -inform DER -modulus -noout
-inform DER
인코딩간에 전환 하려면 을 확인하세요.
.key 파일의 시작 부분에있는 공백을 제거하십시오.
CA 인증서 만들기
c:\mycert>openssl genrsa -out privateKey.pem 4096
c:\mycert>openssl req -new -x509 -nodes -days 3600 -key privateKey.pem -out caKey.pem
저는 Windows 10을 사용 중이며 Windows1252 인코딩으로 키를 저장 했으며 저에게 효과적 이었습니다. 또 다른 StackOverflow 질문에서 일부 사람들은 BOM 이있는 UTF-8로 이것을 수정했습니다 .
즉, 파일 인코딩 일 수 있습니다.
cetificate 봇을 사용하지 않는 이유
yum 설치 epel 릴리스
yum certbot-nginx 설치
인증서 얻기
certbot --nginx -d example.com -d www.example.com
'programing' 카테고리의 다른 글
마스터에 병합 할 때 첫 번째 분기가 스쿼시 된 후 분기의 분기 병합 (0) | 2020.12.05 |
---|---|
PHP에서 정규식 컴파일 (0) | 2020.12.05 |
Android Studio에서 이전 캐럿 위치로 이동하는 방법 (0) | 2020.12.04 |
Maven의 종속성 jar 파일 목록 (0) | 2020.12.04 |
3D 포인트 클라우드에서 표면 재구성을위한 강력한 알고리즘? (0) | 2020.12.04 |