Auth_TypeKeyに再チャレンジ。
bcmathも、gmpもPHPから使えないのではAuth_TypeKeyが使えないじゃないの!ってことで、それでも諦めずになんとかしようとしてみています。
とりあえず、両方とも使えないと、結果的に_dsa_verifyが呼ばれるんで、それをちょっと勝手に実装。つまり、verifyの部分だけ自分でどーにかすればいいことになる。
function _dsa_verify_ ($message, $sig, $key){ // return true; echo "<pre>"; echo "message: " . $message . "<br>"; echo "sig: " . $sig . "<br>"; echo "key: "; print_r($key); echo "</pre>"; $p = $key['p']; $g = $key['g']; $q = $key['q']; $pub_key = $key['pub_key']; //$ext_command = "perl test.pl $p $g $q $pub_key"; $ext_command = "perl test.pl"; $result = exec($ext_command, $output, $retval); echo print_r($result,1); echo "<br>"; echo print_r($output,1); echo "<br>"; echo print_r($retval,1); return false; }
なんとか、keyとsigとmsgを渡してやれば、Crypt::DSAを使ったコマンドでverifyしてくれるんじゃなかろうかと実験。
とりあえずexecのところでコケる。(escapeshallargsしなさいとかそこらへんは後回し)
これセーフモードだからとか、そこらへんの理由なんだろうか・・・悔しい。