署名と検証
http://eternalwindows.jp/crypto/cng/cng06.html
にあるサンプルの
status = BCryptOpenAlgorithmProvider(&hAlg, BCRYPT_ECDSA_P256_ALGORITHM, NULL, 0);
if (!NT_SUCCESS(status))
return ;
if (bSign) {
if (ImportKeyData(hAlg, szPrivKeyFileName,BCRYPT_ECCPRIVATE_BLOB, &hKey)) {
if (SignData(hKey, szFileName, (LPBYTE)szData, sizeof(szData))) {
MessageBox(TEXT("署名をしました。"));
BCryptDestroyKey(hKey);
}
}
}
else {
if (ImportKeyData(hAlg, szPubKeyFileName, BCRYPT_ECCPUBLIC_BLOB, &hKey)) {
if (VerifyData(hKey, szFileName, &lpData, &dwDataSize)) {
MessageBox( (LPTSTR)lpData);
HeapFree(GetProcessHeap(), 0, lpData);
BCryptDestroyKey(hKey);
}
}
}
の部分を、書き換えて
status = BCryptOpenAlgorithmProvider(&hAlg, BCRYPT_RSA_SIGN_ALGORITHM , NULL, 0);
if (!NT_SUCCESS(status))
return ;
if (bSign) {
if (ImportKeyData(hAlg, szPrivKeyFileName, BCRYPT_RSAPRIVATE_BLOB, &hKey)) {
if (SignData(hKey, szFileName, (LPBYTE)szData, sizeof(szData))) {
MessageBox(TEXT("署名をしました。"));
BCryptDestroyKey(hKey);
}
}
}
else {
if (ImportKeyData(hAlg, szPubKeyFileName, BCRYPT_RSAPUBLIC_BLOB, &hKey)) {
if (VerifyData(hKey, szFileName, &lpData, &dwDataSize)) {
MessageBox( (LPTSTR)lpData);
HeapFree(GetProcessHeap(), 0, lpData);
BCryptDestroyKey(hKey);
}
}
}
としたのですが、
知識不足で動きません。
どのような資料を調べたらよいのでしょうか?
アドバイスお願いいたします。
お礼
回答ありがとうございます。 日経平均がこうなったらという発想は、 ノーマルを購入してすぐに思いました。 ノーマルについていて然るべき機能だったと思います。 確かに、順張りは難しいですね。 逆張りほどではないにしてもそれなりに 試して見ましたが、、。イグジット条件が 逆張りとは違うので今回の並行稼動は 渡りに船なのですが。 ただ、今回のコンボにAdvanceの分割投入の機能が ついていなかったのが不満です。 検証くんはいっきにフラッグが信用枠いっぱいまで 起ちますから、一月のようにフラッグが起ってから まだじりじり下がる展開になったときの怖さと いったら耐え難いと思います。 幸いわたしのストラテジーはかなり深めらしく 保田くんよりも一日遅く起ちましたが、、。 でもカーブフッティングの可能性もあります。 今回活動いったん停止らしいですが、、。 また帰ってくると思いますよ。すぐに、、。 それにこの分割投入の機能がないと 怖くて怖くて、、。 ヒントもたくさんあったので 順張り、逆張りのスイッチ手法で いくしかないですね。 斉藤正章氏を参考にします。 さっそくDVDを取り寄せします。