2013-02-20 9 views
1

간단한 테스트를 코딩했지만 공개 키 대신 전체 인증서를 사용하고 있기 때문에 "Unverified"라고 추측합니다. 어떤 방법으로 공개 키를 얻을 수 있습니까?Crypt_RSA를 사용하여 공개 키를 얻는 방법

$rsa = new Crypt_RSA(); 
$rsa->setPassword('here I include password'); 
$rsa->loadKey(file_get_contents('i.pem')); // private key 
$plaintext = 'abc'; 
$rsa->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1); 
$signature = $rsa->sign($plaintext); 
//now the verification 
$rsa->loadKey(file_get_contents('instancia_ope.crt')); //here maybe WRONG 
echo $rsa->verify($plaintext, $signature) ? 'Verified' : 'Unverified'; 
+0

라인을 시도, – user1873420

+0

패키지를 언급 ​​해주십시오 공개 키 파일을 나타냅니다 http://stackoverflow.com/questions/14991887/ 공개 키를 가진 비밀 키를 얻는 방법 – SteAp

+0

SteAP, 제목에 의미가 있습니까? 또는 어디에, 어떤 패키지가 있습니까? – user1873420

답변

1

아 죄송 당신의 검증은, 어쩌면 잘못된 // 여기에이

$rsa->loadKey($rsa->getPublicKey()); 
echo $rsa->verify($plaintext, $signature) ? 'Verified' : 'Unverified'; 
+0

으로 마이그레이션되었습니다. 내 코드에서 언급 한 $ encrypted_text는 무엇입니까? $ signature 변수? 명확히 해줘서 고마워. – user1873420