XNSim/XNSignature/test_verify.cpp

51 lines
1.4 KiB
C++

#include "XNSignatureVerify.h"
#include <iostream>
#include <fstream>
/**
* @brief 创建测试文件
* @param filename 文件名
* @param content 文件内容
*/
void createTestFile(const char *filename, const char *content)
{
std::ofstream file(filename);
if (file.is_open()) {
file << content;
file.close();
std::cout << "测试文件创建成功: " << filename << std::endl;
} else {
std::cerr << "无法创建测试文件: " << filename << std::endl;
}
}
/**
* @brief 主测试函数
*/
int main()
{
std::cout << "=== XNSignature 验证库测试程序 ===" << std::endl;
// 测试文件路径
const char *testFile = "test_document.txt";
const char *publicKeyFile = "public_key.pem";
const char *signatureFile = "test_document.txt.sig";
// 创建测试文件
//createTestFile(testFile, "这是一个测试文档,用于验证数字签名功能。\n包含一些重要信息。");
std::cout << "\n1. 验证数字签名..." << std::endl;
int verifyResult = verifySignature(testFile, publicKeyFile, signatureFile);
if (verifyResult == 0) {
std::cout << "签名验证成功!" << std::endl;
} else if (verifyResult == -1) {
std::cout << "签名验证失败!" << std::endl;
} else {
std::cout << "验证过程中发生错误!" << std::endl;
}
std::cout << "\n2. 验证完成" << std::endl;
std::cout << "\n=== 测试完成 ===" << std::endl;
return 0;
}