tetsunosukeのnotebook

tetsunosukeのメモです

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しなさいとかそこらへんは後回し)

これセーフモードだからとか、そこらへんの理由なんだろうか・・・悔しい。