이동: 암호화된 PKCS8 키를 해독하는 동안 "No DEK-Info header in block" 오류 발생
암호화된 PKCS8 개인 키를 해독하려고 할 때 Go에서는 "x509: 블록에 DEK-Info 헤더가 없습니다."라는 오류 메시지가 나타날 수 있습니다. 이 오류는 제공된 블록에 키 복호화에 필수적인 DEK-Info 헤더가 포함되어 있지 않음을 나타냅니다.
문제는 표준 Go 라이브러리가 복호화를 위한 기본 기능을 제공하지 않는다는 것입니다. 암호화된 PKCS8 키. 이 문제를 해결하려면 타사 라이브러리나 사용자 정의 코드를 활용할 수 있습니다.
암호화된 PKCS8 파일을 처리할 수 있는 적합한 라이브러리는 다음과 같습니다: https://github.com/youmark/pkcs8/blob/master/pkcs8. go#L103
pkcs8 패키지를 코드에 통합하면 다음 코드 조각을 사용하여 암호화된 PKCS8 개인 키를 성공적으로 해독할 수 있습니다.
<code class="go">import "github.com/youmark/pkcs8" func DecryptPKCS8Key(key []byte, password string) ([]byte, error) { block, _ := pem.Decode(key) return pkcs8.Decrypt(block.Bytes, []byte(password)) }</code>
이 코드 조각은 pkcs8 패키지를 사용하여 암호화된 PKCS8 키를 해독합니다. 첫 번째 매개변수는 인코딩된 키 데이터이고, 두 번째 매개변수는 키를 암호화하는 데 사용되는 비밀번호입니다.
위 내용은 Go에서 암호화된 PKCS8 키를 해독하는 방법: \"블록에 DEK-Info 헤더 없음\" 오류 해결 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!