powershell 查看并存储文件的数字签名

需求分析

今天突然有一个查看某个文件夹下某个特定数字签名的需求,于是便想着使用Powershell实现一下。
在实现之前,我们可以先简化一下需求,将需求改为:查看某个文件的数字签名

实现过程

使用搜索引擎

这个就比较复杂和坑了。
1.首先我搜索了powershell获取文件数字签名 ,找到了PowerShell 技能连载 - 检查数字签名 | 叹为观止这篇文章
2.然后发现他给出的代码是弹出数字签名的框来,就是下面这个。我就寻思着我想要的是文本输出而不是图形化输出啊。然后我就看了看他的输出函数是[Security.Cryptography.x509Certificates.X509Certificate2UI]::DisplayCertificate($signerCert),这是个啥呢,于是我把[]里的东西搜索了一下,找到了微软官网,才知道是个win API。
在这里插入图片描述
3.在该页面上我了解到那原来是调用了X509Certificate2UI.DisplayCertificate Method这个函数,函数参数是X509Certificate2对象
4.随后我又在第一次打开的api页面上看了看,发现这个X509Certificate2类有很多方法和属性,里面和可能有我想要的东西。
5.于是,我又搜啊搜,最后通过关键字powershell获取文件证书搜到了这个PowerShell 技能连载 - 读取 PFX 证书 。仔细阅读后发现里面的$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2这句创建对象对我十分有帮助,我照着这个写了一个,在微软网站查看该类的方法发现toString的输出是满足要求的。通过toString的输出我也进一步了解到其SubjectNameIssuerName属性是我想要的内容。最后编写代码即可。
找到内容(这个比较耗时)并编写完大概花了俩小时(中间也洗了洗衣服啥的),时间有点长…

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值