欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用 certutil 实现 Hex2Bin 和 Base64 加解密的方法

程序员文章站 2022-06-17 13:27:51
应用到: windows server 2003, windows server 2003 r2, windows server 2003 with sp1, window...

应用到: windows server 2003, windows server 2003 r2, windows server 2003 with sp1, windows server 2003 with sp2
certutil

certutil.exe 是作为 windows server 2003 家族中证书服务的一部分进行安装的命令行程序。
您还可以通过下载并安装 windows server 2003 管理工具包来获取 certutil.exe (http://go.microsoft.com/fwlink/?linkid=8136)(页面可能为英文)。
可使用 certutil.exe 转储并显示证书颁发机构 (ca) 配置信息,配置“证书服务”,备份和恢复 ca 组件,还可验证证书、密钥对和证书链。

更详细的资料可以参考这篇文章:https://technet.microsoft.com/zh-cn/library/cc773087(ws.10).aspx


certutil 是 vista 和 win7 自带自带的外部命令,实际上是用于管理证书的,但也有“歪门邪道”的用法
举个例子:

@echo off

echo 48 65 6c 6c 6f 2c 57 6f 72 6c 64 21 >hex.txt
::生成 hex.txt,机器码对应的内容是 hallo world!

certutil -decodehex hex.txt bin.txt
::hex2bin

certutil -encode bin.txt encode.txt
::base64_encode

certutil -decode encode.txt decode.txt
::base64_decode

pause

系统帮助如下:
动词:
-dump -- 转储配置信息或文件
-asn -- 分析 asn.1 文件

-decodehex -- 解码十六进制编码的文件
-decode -- 解码 base64 编码的文件
-encode -- 将文件编码为 base64

-deny -- 拒绝挂起的申请
-resubmit -- 重新提交挂起的申请
-setattributes -- 为挂起申请设置属性
-setextension -- 为挂起申请设置扩展
-revoke -- 吊销证书
-isvalid -- 显示当前证书部署

-getconfig -- 获取默认配置字符串
-ping -- ping active directory 证书服务申请接口
-pingadmin -- ping active directory 证书服务管理接口
-cainfo -- 显示 ca 信息
-ca.cert -- 检索 ca 的证书
-ca.chain -- 检索 ca 的证书链
-getcrl -- 获取 crl
-crl -- 发布新的 crl [或仅增量 crl]
-shutdown -- 关闭 active directory 证书服务

-installcert -- 安装证书颁发机构证书
-renewcert -- 续订证书颁发机构证书

-schema -- 转储证书架构
-view -- 转储证书视图
-db -- 转储原始数据库
-deleterow -- 删除服务器数据库行

-backup -- 备份 active directory 证书服务
-backupdb -- 备份 active directory 证书服务数据库
-backupkey -- 备份 active directory 证书服务证书和私钥
-restore -- 还原 active directory 证书服务
-restoredb -- 还原 active directory 证书服务数据库
-restorekey -- 还原 active directory 证书服务证书和私钥
-importpfx -- 导入证书和私钥
-dynamicfilelist -- 显示动态文件列表
-databaselocations -- 显示数据库位置
-hashfile -- 通过文件生成并显示加密哈希

-store -- 转储证书存储
-addstore -- 将证书添加到存储
-delstore -- 从存储删除证书
-verifystore -- 验证存储中的证书
-repairstore -- 修复密钥关联,或者更新证书属性或密钥安全描述符
-viewstore -- 转储证书存储
-viewdelstore -- 从存储删除证书

-dspublish -- 将证书或 crl 发布到 active directory

-adtemplate -- 显示 ad 模板
-template -- 显示注册策略模板
-templatecas -- 显示模板的 ca
-catemplates -- 显示 ca 的模板
-enrollmentserverurl -- 显示、添加或删除与 ca 关联的注册服务器 url
-adca -- 显示 ad ca
-ca -- 显示注册策略 ca
-policy -- 显示注册策略
-policycache -- 显示或删除注册策略缓存项目
-credstore -- 显示、添加或删除凭据存储项目
-installdefaulttemplates -- 安装默认的证书模板
-urlcache -- 显示或删除 url 缓存项目
-pulse -- 暂停自动注册事件
-machineinfo -- 显示 active directory 计算机对象信息
-dcinfo -- 显示域控制器信息
-entinfo -- 显示企业信息
-tcainfo -- 显示 ca 信息
-scinfo -- 显示智能卡信息

-scroots -- 管理智能卡根证书

-verifykeys -- 验证公/私钥集
-verify -- 验证证书,crl 或链
-sign -- 重新签名 crl 或证书

-vroot -- 创建/删除 web 虚拟根和文件共享
-vocsproot -- 创建/删除 ocsp web proxy 的 web 虚拟根
-addenrollmentserver -- 添加注册服务器应用程序
-deleteenrollmentserver -- 删除注册服务器应用程序
-oid -- 显示 objectid 或设置显示名称
-error -- 显示错误代码消息文本
-getreg -- 显示注册表值
-setreg -- 设置注册表值
-delreg -- 删除注册表值

-importkms -- 为密钥存档导入用户密钥和证书到服务器数据库
-importcert -- 将证书文件导入数据库
-getkey -- 检索存档的私钥恢复点
-recoverkey -- 恢复存档的私钥
-mergepfx -- 合并 pfx 文件
-convertepf -- 将 pfx 文件转换为 epf 文件
-? -- 显示该用法消息


certutil -? -- 显示动词列表(命名列表)
certutil -dump -? -- 显示 "dump" 动词的帮助文本
certutil -v -? -- 显示所有动词的所有帮助文本