(转) C#如何验证一个PE文件的数字签名是否正确(1)

本文转自 http://www.blogbus.com/softone-logs/105678346.html

作者:Eckel Chung blog地址:http://softone.blogbus.com/  转载请保留

—————————————————————————

(1)前言

和网上大量的讨论如何制作数字签名和验证数字签名的文章本同,本文使用微软自带的API进行PE文件数字签名有效性的验证,使用语言C#。

我们可以在windows系统下直接右键查看某个PE文件数字签名的有效性,如下图:

数字签名        这让我们想到,微软必然自带了对PE文件数字签名的验证办法,经过查找资料,确定其来自下图所示的dll文件里的WinVerifyTrust函数。

wintrust.dll      该函数在C#里的调用原型如下:

 

关于这个函数的使用,可以查看MSDN上的说明

(2) 构建将要用到的数据结构

根据微软官方材料,我们在使用这个函数前还得先准备几个数据结构:

阅读全文

树莓派在 shell 下自动挂载 usb 移动存储设备

新建usb存储脚本

输入以下内容

阅读全文

Debian Linux shell 高亮显示

编辑登录用户的 ~/.bashrc 文件,  每个用户的 ~ 目录可能不同. 用 echo ~ 即可显示实际目录.

阅读全文

Linux VPS 性能测试工具 UnixBench 脚本

将下面这段保存为 test.sh , 并输入 ./test.sh 即可自动下载安装 UnixBench 进行性能测试.

阅读全文

CentOS 安装 phpMyAdmin

安装 phpMyAdmin

如果已经将PHP更新到5.2.x,可以自行安装phpMyAdmin最新版3.x。
phpMyAdmin是一款MySQL数据库web化的管理工具。

现在我们配置下phpMyAdmin。我们改下Apache的配置文件,使的phpMyAdmin不单单是本机访问。 如下所示:

注释或删除本地ip限制. 如下

阅读全文