이의 내가 파이썬 문자열이 있다고 가정 해 봅시다 : 첫 번째 줄, 줄 바꿈을 제거한 후파이썬 문자열 (SHA)에서 공개 키를 가져옵니다
string_full = """
-----BEGIN CERTIFICATE-----
GIBBERISH................
......................
........................
-----END CERTIFICATE-----
"""
을, 그리고 마지막 줄 내가 이런 걸 가지고 :
string = """ GIBBERISH .................................. """
을
내가하려는 것은 해당 인증서에서 공개 키를 가져 오는 것입니다.
나는이 post을보고 있었지만 문자열은 string_full
으로 형식화되어야하지만 실제 문제는 내가 사용자가 업로드 한 파일 (장고)에서 해당 행을 읽었 음을 알 수 있지만이 파일은 멕시코 정부에 의해 구조화 된 경우 string
과 같이 문자열에서 공용 키를 계산하는 것이 정말 쉽습니다. a 아이디어가 있습니까? 나는 을 구현하는 M2Crypto
lib를보고 있었지만 요청에서만 작동하며 외부 서버에서이 요청을받을 방법이 없습니다.
도움을 주시면 감사하겠습니다.
답변의 첫 번째 옵션 (openssl)을 사용하면 완벽하게 작동합니다. 내일 아침 OpenSSL Python 라이브러리를 사용해 보겠습니다. 난 그냥 궁금 해서요, 서명의 의미는 무엇입니까? OpenSSL.crypto.verify (인증서, 서명, 데이터, 'sha256') 이전에 얻은 공개 키를 참조하고 있습니까? [문서] (http://pythonhosted.org/pyOpenSSL/api/crypto.html)도 도움이되지 못했습니다 : ( @ JasonPap에게 감사드립니다.이 게시물은 정말 유용했습니다! –
@Jose_Sunstrider 답변을 업데이트했습니다. – JasonPap
업데이트 해 주셔서 감사합니다. 설명서를 다시 읽었을 때 서명에 대한 몇 가지 정보를 발견했습니다. '서명은 서명 자체를 제공하는 str 인스턴스입니다 .' 나는 지난 밤에 그것을 놓쳤습니다. 나중에 참조 할 수 있도록 문자열은 바이트로 인코딩 된 문자열이어야합니다. –