certificate怎么创建
创建X509证书方法较多,在Windows 环境下大致总结了几中办法,
1) 通过CA获取证书,
2) 通过微软提供的makecert 工具得到测试证书
3) 编程的方法创建,.Net提供了 X509Certificate2 类,该类可以用于创建证书,但只能从RawData中创建,创建后无法修改除FriendlyName以外的任何属性。
我在互联网上找了很久,始终没有找到完全通过程序创建自定义的证书的方法。
后来想了一个折中办法,就是用程序调用 makecert.exe 先生成一个证书,证书的一些参数如Subject,有效期,序列号等可以通过参数传入,然后把生成的证书文件读到Rawdata中,得到X509Certificate2 类型的证书对象。
当然这种方法确实比较笨,必须要依赖外部进程。
等后面有时间的话,我还是想按照X509 V3 标准,自己创建RawData,然后生成证书,这样应该是比较灵活的做法。
不知道网友们有没有什么更好的方法来创建一个自定义的证书。
通过 makecert.exe 创建X509证书的代码如下,供大家参考
static object semObj = new object();
///
/// 自定义的证书信息
///
public class T_CertInfo
{
public String FriendlyN...创建X509证书方法较多,在Windows 环境下大致总结了几中办法,
1) 通过CA获取证书,
2) 通过微软提供的makecert 工具得到测试证书
3) 编程的方法创建,.Net提供了 X509Certificate2 类,该类可以用于创建证书,但只能从RawData中创建,创建后无法修改除FriendlyName以外的任何属性。
我在互联网上找了很久,始终没有找到完全通过程序创建自定义的证书的方法。
后来想了一个折中办法,就是用程序调用 makecert.exe 先生成一个证书,证书的一些参数如Subject,有效期,序列号等可以通过参数传入,然后把生成的证书文件读到Rawdata中,得到X509Certificate2 类型的证书对象。
当然这种方法确实比较笨,必须要依赖外部进程。
等后面有时间的话,我还是想按照X509 V3 标准,自己创建RawData,然后生成证书,这样应该是比较灵活的做法。
不知道网友们有没有什么更好的方法来创建一个自定义的证书。
通过 makecert.exe 创建X509证书的代码如下,供大家参考
static object semObj = new object();
///
/// 自定义的证书信息
///
public class T_CertInfo
{
public String FriendlyName;
public String Subject;
public DateTime BeginDate;
public DateTime EndDate;
public int SerialNumber;
}
///
/// 生成X509证书
///
///
makecert进程的目录
///
证书文件临时目录
///
证书信息
///
public static X509Certificate2 CreateCertificate(String makecrtPath, String crtPath,
T_CertInfo certInfo)
{
Debug.Assert(certInfo != null);
Debug.Assert(certInfo.Subject != null);
string MakeCert = makecrtPath + "makecert.exe";
string fileName = crtPath + "cer";
string userName = Guid.NewGuid().ToString();
StringBuilder arguments = new StringBuilder();
arguments.AppendFormat("-r -n "{0}" -ss my -sr currentuser -sky exchange ",
certInfo.Subject);
if (certInfo.SerialNumber > 0)
{
arguments.AppendFormat("-# {0} ", certInfo.SerialNumber);
}
arguments.AppendFormat("-b {0} ", certInfo.BeginDate.ToString(@"MM/dd/yyyy"));
arguments.AppendFormat("-e {0} ", certInfo.EndDate.ToString(@"MM/dd/yyyy"));
arguments.AppendFormat(""{0}"", fileName);
CERTIFICATION 和 certificate 的区别
certificate是具体的,证明书,证书;V 发给……证明书
certification是抽象的,证明
certify证明,保证
名词和动词的联系:
1. 有些可以加词尾 -er/-or 变成指执行某一特殊动作的人
farm——farmer 农民/农夫
sing——singer 歌手
travel——traveler 旅行者
drive——driver 驾驶员
player 比赛者/选手
play——cleaner 清洁工人
run——runner 奔跑者/信使
win——winner 优胜者
writer 作者/作家
write——diver 潜水者
wait——waiter 侍者/服务员
paint——painter 画家/画匠
rob——robber 强盗
surf——surfer 冲浪者
own——owner 所有者/业主
explore——explorer 探险家
visit——visitor 访问者/来宾
invent——inventer 发明人
think——thinker 思想家
heal——healer 医治人
discuss——discusser 论述者/讨论者
describe——describer 描述者/制图人
2. 以下的都可以加词尾 -ing “行为、状态、情况”等抽象名词
farming 农事 singing 歌声 traveling 旅行状态 driving 操纵行为 playing 游戏/运动 cleaning 清洁处理 running 奔跑/运转状态 winning 胜利情况 writing 作品 diving 跳水行为 waiting 等待状态 painting 油画 robbing 回采煤柱 surfing 冲浪游戏 exploring 扫描 visiting 访问行为
3. 以下的通过加不同的派生手段变为名词:
invent——invention 发明
die——death 死亡
active——act 举动/行为
please——pleasure 愉快的事
think——thought 思想
heal——healing 康复
decide——decision 决定
discuss——discussion 讨论
confident——confidence 信心
describe——description 描写/记述
名词和动词的区别和联系:
1.词形不变,词性改变。
例如:
work, study, water, plant等可以用作动词,也可以用作名词。
2. 一些动词在词尾加上-er或-or之后就变成了表示“某一类人”的名词。
例如:
work—worker, teach—teacher, sing—singer, jump—jumper, play—player, learn—learner, visit—visitor, invent—inventor等。
注意:
1)以不发音的e结尾的动词,在词尾加-r。
例如:drive—driver, write—writer等。
2)以重读闭音节结尾,且末尾只有一个辅音字母的动词,应双写末尾的辅音字母,再加-er。
例如:run—runner, win—winner, begin—beginner等。
3. 在动词词尾加-ing变成名词(方法与动词变为现在分词的方法相同)。
例如:
meet—meeting, build—building, wait—waiting, wash—washing, swim—swimming, shop—shopping, begin—beginning等。
certificate; diploma 和Master的区别是什么?
证书(certificate)
文凭﹙diploma)?
而master意为硕士,故在此延展为学位(degree)
证书通常指的是因参加某项考试、检定或训练所获得的执照或结业证书,没有学位。
至于文凭和学位两者的区别则是,一般大学以下学历(如大专)并没有学位的称呼,
因此所获得的毕业证明,即称为文凭;
学位则是指大学及研究所毕业,方能依其主修的科系取得相关的学位。
最简单的解释:
diploma毕业证,?
certificate结业证?
如,有人参加专业技能培训,发得只能是结业证,不是毕业证。
文凭的性质
国民系列是指纳入国家教育计划里的教育系列,主管部门是国家教育部,国家承认学历。
在中国高等教育学生信息网上查询,
包括普通高等教育、成人高等教育、电大、夜大、高等教育自学考试(高自考)等;
非国民教育系列指民办高等院校,依照中华人民共和国教育法和民办教育促进法,依法向学生颁发的证书。