negの一部はOpenSSLで確実を取りました。そこは引くだけなので、使い方が違うのかな。

AI-NFT

schnorr署名の導入のうち、eに対するnegの過程で、libsecp256k1のnegが上手く作用しないため、暫定的な処置としてその部分だけOpenSSLで代用する内容となりました。

計算の内容はシンプルで、単に値を入れてnegしてから加法、つまり引き算しているだけなのですが、その値が合っていない状況です。たしかに、位数に対するnegなので、その桁は最大値に近いです。それとも正規化されている状態からnegして引いているなども考えられますが、その場合はassertで止まるので、問題なさそうです。

とりあえず、OpenSSLでは正常に動作するため、この計算自体は合っております。これで様子をみながら実装し、negできたら、そちらに置き換える戦略でいきます。

タイトルとURLをコピーしました