当前位置: 首页 > news >正文

万州医院网站建设看广告赚佣金平台

万州医院网站建设,看广告赚佣金平台,wordpress主题框架,网站别名文章目录 openssl3.2 - 检查rsa证书和私钥是否匹配(快速手搓一个工具)概述效果笔记编程环境界面控件的设置增加文件拖拽的类RSA证书和key是否匹配的实现在程序中加入环境变量备注备注END openssl3.2 - 检查rsa证书和私钥是否匹配(快速手搓一个工具) 概述 在学习openssl官方的… 文章目录 openssl3.2 - 检查rsa证书和私钥是否匹配(快速手搓一个工具)概述效果笔记编程环境界面控件的设置增加文件拖拽的类RSA证书和key是否匹配的实现在程序中加入环境变量备注备注END openssl3.2 - 检查rsa证书和私钥是否匹配(快速手搓一个工具) 概述 在学习openssl官方的/test/certs的脚本实现, 做到第30个脚本实验时, 发现根CA证书和key不匹配. 估计做实验时, 遇到脚本需要的文件, 就随便拷贝一个同名的文件过来, 导致证书和key不是一个脚本产生的, 所以不匹配 就想从前面的实验中, 找出匹配的证书和key来做实验, 肯定有啊. 这事应该openssl编程就能做到. 不过时间紧, 先不用openssl编程来做. 看有没有简单暴力的方法. 在网上找到如下2个openssl命令, 可以输出证书和key的模块信息. // 打印X509证书的模块信息 openssl x509 -inform PEM -modulus -in ca-cert.pem -noout// 打印rsa私钥的模块信息 openssl rsa -inform PEM -modulus -in ca-key.pem -noout这2个命令输出的都是文本信息, 如果这2个文本信息相同, 则说明这2个证书和私钥是匹配的 按照这个原理, 手工输入命令, 然后人肉比对. 原始操作就是这样的, 就可以知道一对证书和key是否匹配. 可以重定向为文件(e.g. openssl x509 -inform PEM -modulus -in ca-cert.pem -noout cert_info.txt) 然后用win10自带的FC.exe 就可以比较2个文件是否相同(e.g. fc file_a file_b), 如果fc返回0, 这2个文件就是相同的. 但是作为研发, 能用程序做的, 绝对不可能用人工操作来折磨自己, 那肯定不能够啊. 用了一个小时, 手搓了一个原始工具来干活. 效果 笔记 编程环境 vs2019 vc MFC Dialog模板 界面控件的设置 对话框设置为可以接收文件. 2个编辑框(证书和key), 也设置为可以接收文件. 增加文件拖拽的类 从CEdit继承一个类CDropEdit(用类向导很方便), 加入拖拽消息处理(用类向导加入消息处理), 框架代码不用自己写. #pragma once #include afxwin.h class CDropEdit :public CEdit { public:DECLARE_MESSAGE_MAP()afx_msg void OnDropFiles(HDROP hDropInfo); }; #include pch.h #include CDropEdit.h BEGIN_MESSAGE_MAP(CDropEdit, CEdit)ON_WM_DROPFILES() END_MESSAGE_MAP()void CDropEdit::OnDropFiles(HDROP hDropInfo) {// TODO: 在此添加消息处理程序代码和/或调用默认值// 拖拽实现很多, 可以参考msdn, 我就直接用下面这位同学分享的片段// https://blog.csdn.net/wrl112/article/details/120335725TCHAR szTmp[MAX_PATH * 2];CString strVal;unsigned int nRet 0, nInx 0;do {nRet ::DragQueryFile(hDropInfo, nInx, szTmp, sizeof(szTmp));if (nRet 0) {strVal szTmp;}else {}break;} while (1);::DragFinish(hDropInfo);SetWindowText(strVal);CEdit::OnDropFiles(hDropInfo); } RSA证书和key是否匹配的实现 #include stringstd::string my_W2A(std::wstring str) {USES_CONVERSION;std::string str_rc W2A(str.c_str());return str_rc; }void CCertKeyMatchDlg::OnBnClickedButtonMatch() {// TODO: 在此添加控件通知处理程序代码CString csFileA;CString csFileB;CString csTmp;std::string strFileA;std::string strFileB;char szBuf[10 * 1024];int i_rc 0;do {this-SetWindowTextW(_T());m_EditFileA.GetWindowText(csFileA);m_EditFileB.GetWindowText(csFileB);if ((csFileA.GetLength() 0) || (csFileB.GetLength() 0)){TRACE(_T(文件名必须都不为空));break;}strFileA my_W2A((LPCWSTR)csFileA);strFileB my_W2A((LPCWSTR)csFileB);/*// 打印X509证书的模块信息openssl x509 -inform PEM -modulus -in ca-cert.pem -noout// 打印rsa私钥的模块信息openssl rsa -inform PEM -modulus -in ca-key.pem -noout*/sprintf(szBuf, openssl x509 -inform PEM -modulus -in %s -noout cert_info.txt, strFileA.c_str());i_rc system(szBuf);_ASSERT(0 i_rc);sprintf(szBuf, openssl rsa -inform PEM -modulus -in %s -noout key_info.txt, strFileB.c_str());i_rc system(szBuf);_ASSERT(0 i_rc);i_rc system(fc cert_info.txt key_info.txt);csTmp.Format(_T(证书和私钥%s), (0 i_rc) ? _T(匹配) : _T(不匹配));this-SetWindowTextW(csTmp);} while (false);}void CCertKeyMatchDlg::OnDropFiles(HDROP hDropInfo) {// TODO: 在此添加消息处理程序代码和/或调用默认值CDialogEx::OnDropFiles(hDropInfo); } 在程序中加入环境变量 在对话框初始化时, 加入了openssl的path, 除非必要, 不污染环境变量. BOOL CCertKeyMatchDlg::OnInitDialog() { // ...// TODO: 在此添加额外的初始化代码char* psz_env_buf new char[1024 * 1024];if (NULL ! psz_env_buf){char* psz_env getenv(path);// ::SetEnvironmentStrings()sprintf(psz_env_buf, path%s;%s, C:\\openssl_3d2\\bin, psz_env);int i_rc _putenv(psz_env_buf);_ASSERT(0 i_rc);delete[]psz_env_buf;}return TRUE; // 除非将焦点设置到控件否则返回 TRUE }加入环境变量后, 调用程序时, 就不用写全路径, 就可以调用openssl.exe了. 备注 感觉自己还挺机智的:P 备注 因为cert和key的pem是成对的, 用everything看一下, 将cert.pem列出来, 然后进入对应目录找一下是否有对应的key.pem, 最好从生成时间早的目录找, 然后用这个工具比对. 很快就找出来了. END
http://www.dnsts.com.cn/news/186084.html

相关文章:

  • 养生类网站源码做十个网站
  • 西安高端网站定制上海软装设计公司排名
  • 学做婴儿衣服网站好网络营销策略的概念有哪些
  • 如何用ps做网站图标PHP网站建设项目经验
  • 手机怎么登录自己做的网站一般通过面试多久上班
  • 番禺区网站设计招聘工作
  • 北京网站建设备案代理无忧代理 在线
  • 免费网站建设工具网络营销策划书包括哪些内容
  • 天津建筑网站建设网站栅格化怎么做
  • 湖北 网站 备案 时间南京门户网站制作
  • 网页游戏网站4399音乐网站是否可以做浅度链接
  • 山东省建设局网站重庆律师网站建设
  • 网站首页横版图怎么做WordPress 熊掌号模板
  • 阿里云 企业网站手机软件开发工具
  • 易语言如何做代刷网站wordpress 上传图片不显示
  • 土巴兔网站开发深圳商标设计公司vi设计
  • o2o网站建设新闻wordpress设置固定链接后
  • 洛阳市涧西区建设局网站做物流的都是上什么网站
  • 网页开发和网站开发一样吗公司起名打分最准的免费网站
  • 百度站长平台删站门头沟做网站公司
  • 收废品做网站怎么做网站建设山东聚搜网络一x
  • 织梦网站install用visual做网站
  • 制作网站高手网站建设管理工作总结
  • 南通网站建设解决方案商业网站开发教程
  • 广州注册公司核名在哪个网站seo网站查询工具
  • 阿里云从哪里建设网站做相似网站
  • 怎么用php语言做网站招聘网站开发设计文档
  • 网站关键词排名软件推荐免费下载简历模板网站
  • 满洲里做网站东莞做网站优化的公司
  • 网站建设案例方案广东电子商务网站建设价格