① 怎樣根據已有的公鑰和私鑰生成數字證書
openssl genrsa -des3 -out server.key 1024
運行時來會提示輸入密碼,此密碼用源於加密key文件(參數des3便是指加密演算法,當然也可以選用其他你認為安全的演算法.),以後每當需讀取此文件(通過openssl提供的命令或API)都需輸入口令.如果覺得不方便,也可以去除這個口令,但一定要採取其他的保護措施!
去除key文件口令的命令:
openssl rsa -in server.key -out server.key!
② 如何生成用於SSL/TLS的數字證書
建議你這樣試試看:
目前項目需要SSL證書的域名列好。
淘寶中找到Gworg,選擇對應的SSL證書,通常用的是通配符或者多域名。
將域名發送給Gworg,並且根據提示完成域名DNS解析認證。
下載證書解壓後,使用對應的環境證書配置到伺服器。
這樣做的好處:中間交易更安全,快速簽發省心省力,Gworg注冊更有保障。
注意事項:申請SSL證書必須確定域名可以正常解析,簽發好的證書,無法變更域名。
③ cer數字證書如何生成
internat選項>>內容>>證書>>導出>>下一步>>不需要導出私鑰,下一步>>第1個,下一步>>輸入文件名,下一步>>完成
OK
④ 數字證書生成集中生成模式與什麼模式
這個證書集中生成模式是什麼模式?這個證書集中生成模式是什麼模式?
⑤ 如何辦理數字證書
不知道您說的數字證書是不是SSL證書,如果是,它的申請步驟如下:
第一步:將CSR提交回到代理商答
CSR(Certificate Signing Request)文件必須由用戶自己生成,也可以利用在線CSR生成工具。選擇要申請的產品,提交一個新的訂單,並將製作好的CSR文件提交。
第二步 資料提交到CA
當收到您的訂單和CSR後,如果是域名驗證型證書(DV SSL證書),在域名驗證之後10分鍾左右就可頒發證書,若是其他類型證書則是需要通過CA機構進行驗證之後才可頒發。
第三步 發送驗證郵件到管理員郵箱
權威CA機構獲得資料後,將發送一封確認信到管理員郵箱,信中將包含一個 對應的鏈接過去。每一個訂單,都有一個唯一的PIN以做驗證用。
第四步 郵件驗證
點擊確認信中的鏈接,可以訪問到CA機構驗證網站,在驗證網站,可以看到該訂單的申請資料,然後點擊」I Approve」完成郵件驗證。
第五步 頒發證書
在用戶完成郵件驗證之後,CA機構會將證書通過郵件方式發送到申請人自己的郵箱,當用戶收到證書後直接安裝就可以了。若安裝存在問題,我們是提供免費證書安裝服務的。
⑥ ssl數字證書可以自己生成嗎
您好!
SSL證書可以自己申請,當然他不會被瀏覽器信任。所以正確途徑登陸Gworg申請SSL數字證書,確保瀏覽器信任,比如:網路搜索、360搜索打開網站顯示信任一樣。申請方法:網頁鏈接
⑦ 如何用makecert生成數字證書!
證書創建工具 (Makecert.exe)
.NET Framework 2.0
其他版本
24(共 31)對本文的評價是有幫助 - 評價此主題
證書創建工具生成僅用於測試目的的 X.509 證書。它創建用於數字簽名的公鑰和私鑰對,並將其存儲在證書文件中。此工具還將密鑰對與指定發行者的名稱相關聯,並創建一個 X.509 證書,該證書將用戶指定的名稱綁定到密鑰對的公共部分。
Makecert.exe 包含基本選項和擴展選項。基本選項是最常用於創建證書的選項。擴展選項提供更多的靈活性。
一定不要將此工具生成的證書私鑰存儲在 .snk 文件中。如果需要存儲私鑰,則應使用密鑰容器。有關如何在密鑰容器中存儲私鑰的更多信息,請參見如何:將非對稱密鑰存儲在密鑰容器中。
警告
應使用證書存儲區來安全地存儲證書。此工具使用的 .snk 文件以不受保護的方式存儲私鑰。創建或導入 .snk 文件時,在使用期間應注意保證其安全,並在使用後將其移除。
makecert [options] outputCertificateFile
參數
說明
outputCertificateFile
測試 X.509 證書要寫入的 .cer 文件的名稱。
基本選項
選項
說明
-n x509name
指定主題的證書名稱。此名稱必須符合 X.500 標准。最簡單的方法是在雙引號中指定此名稱,並加上前綴 CN=;例如,"CN=myName"。
-pe
將所生成的私鑰標記為可導出。這樣可將私鑰包括在證書中。
-sk keyname
指定主題的密鑰容器位置,該位置包含私鑰。如果密鑰容器不存在,系統將創建一個。
-sr location
指定主題的證書存儲位置。Location 可以是 currentuser(默認值)或 localmachine。
-ss store
指定主題的證書存儲名稱,輸出證書即存儲在那裡。
-# number
指定一個介於 1 和 2,147,483,647 之間的序列號。默認值是由 Makecert.exe 生成的唯一值。
-$ authority
指定證書的簽名許可權,必須設置為 commercial(對於商業軟體發行者使用的證書)或 indivial(對於個人軟體發行者使用的證書)。
-?
顯示此工具的命令語法和基本選項列表。
-!
顯示此工具的命令語法和擴展選項列表。
擴展選項
選項
說明
-a algorithm
指定簽名演算法。必須是 md5(默認值)或 sha1。
-b mm/dd/yyyy
指定有效期的開始時間。默認為證書的創建日期。
-cy certType
指定證書類型。有效值是 end(對於最終實體)和 authority(對於證書頒發機構)。
-d name
顯示主題的名稱。
-e mm/dd/yyyy
指定有效期的結束時間。默認為 12/31/2039 11:59:59 GMT。
-eku oid[,oid]
將用逗號分隔的增強型密鑰用法對象標識符 (OID) 列表插入到證書中。
-h number
指定此證書下面的樹的最大高度。
-ic file
指定頒發者的證書文件。
-ik keyName
指定頒發者的密鑰容器名稱。
-iky keytype
指定頒發者的密鑰類型,必須是 signature、exchange 或一個表示提供程序類型的整數。默認情況下,可傳入 1 表示交換密鑰,傳入 2 表示簽名密鑰。
-in name
指定頒發者的證書公用名稱。
-ip provider
指定頒發者的 CryptoAPI 提供程序名稱。
-ir location
指定頒發者的證書存儲位置。Location 可以是 currentuser(默認值)或 localmachine。
-is store
指定頒發者的證書存儲名稱。
-iv pvkFile
指定頒發者的 .pvk 私鑰文件。
-iy pvkFile
指定頒發者的 CryptoAPI 提供程序類型。
-l link
到策略信息的鏈接(例如,一個 URL)。
-m number
以月為單位指定證書有效期的持續時間。
-nscp
包括 Netscape 客戶端身份驗證擴展。
-r
創建自簽署證書。
-sc file
指定主題的證書文件。
-sky keytype
指定主題的密鑰類型,必須是 signature、exchange 或一個表示提供程序類型的整數。默認情況下,可傳入 1 表示交換密鑰,傳入 2 表示簽名密鑰。
-sp provider
指定主題的 CryptoAPI 提供程序名稱。
-sv pvkFile
指定主題的 .pvk 私鑰文件。如果該文件不存在,系統將創建一個。
-sy type
指定主題的 CryptoAPI 提供程序類型。
示例
下面的命令創建了一個由默認測試根頒發的測試證書並將其寫入 testCert.cer。
makecert testCert.cer
下面的命令創建了一個由默認測試根頒發的證書並將其保存到證書存儲區。
makecert -ss testCertStore
下面的命令創建了一個由默認測試根頒發的證書並將其保存到證書存儲區。它將證書顯式地放入 currentuser 存儲區。
makecert -ss testCertStore -sr currentuser
下面的命令使用主題的密鑰容器和證書主題的 X.500 名稱創建一個測試證書,並將其寫入 textXYZ.cer。
makecert -sk XYZ -n "CN=XYZ Company" testXYZ.cer
下面的命令創建了一個由默認測試根頒發的證書和一個 .pvk 文件,並將此證書同時輸出到存儲區和該文件。
makecert -sv testCert.pvk -ss testCertStore testCert.cer
下面的命令創建了一個由默認測試根頒發的證書和一個密鑰容器,並將此證書同時輸出到存儲區和該文件。
makecert -sk myTestKey -ss testCertStore testCert.cer
下面的命令創建一個自我簽署的證書,指定使用者名稱為「CN=XYZ Company」,指定有效期的起始和結束時間,將密鑰放入 my 存儲區,指定並交換密鑰,並且使私鑰可導出。
makecert -r -pe -n "CN=XYZ Company" -b 01/01/2005 -e 01/01/2010 -sky exchange -ss my
下面的命令創建了一些證書並將它們保存到存儲區。第一個命令使用默認測試根創建了一個證書並將其保存到存儲區。第二個命令使用新創建的證書創建了另一個證書,並將第二個證書保存到另一個存儲區。
makecert -sk myTestKey -ss testCertStore
makecert -is testCertStore -ss anotherTestStore
下面的命令創建了一些證書並將它們保存到存儲區。第一個命令將證書保存到 my 存儲區。第二個命令使用新創建的證書創建了另一個證書。因為 my 存儲區中存在多個證書,所以第二個命令使用公用名稱來標識第一個證書。
makecert -sk myTestKey -n "CN=XXZZYY" -ss my
makecert -is my -in "XXZZYY" -ss anotherTestStore
下面的命令創建了一些證書並將它們保存到文件和存儲區。第一個命令使用默認測試根創建了一個證書並將其保存到 my 存儲區和一個文件。第二個命令使用新創建的 testCert.cer 證書創建了另一個證書。因為 my 存儲區中存在多個證書,所以第二個命令使用證書文件名來唯一標識第一個證書。
makecert -sk myTestKey -n "CN=XXZZYY" -ss my testCert.cer
makecert -is my -ic testCert.cer -ss anotherTestStore
請參見
參考
.NET Framework 工具
發行者證書測試工具 (Cert2spc.exe)
SDK 命令提示
⑧ c#如何生成數字證書
using System;using System.Collections;using System.IdentityModel.Tokens;using System.Security.Cryptography.X509Certificates;// in BouncyCastle.Crypto.dllusing Org.BouncyCastle.X509;using Org.BouncyCastle.Math;using Org.BouncyCastle.Asn1;using Org.BouncyCastle.Crypto;using Org.BouncyCastle.Security;using Org.BouncyCastle.Asn1.X509;using Org.BouncyCastle.Crypto.Prng;using Org.BouncyCastle.Crypto.Generators;namespace ConsoleApplication1
{ class Program
{ static void Main(string[] args)
{ string password = "V3ry_S3kr37;-)"; string signatureAlgorithm = "SHA1WithRSA"; // Generate RSA key pair
var rsaGenerator = new RsaKeyPairGenerator(); var randomGenerator = new CryptoApiRandomGenerator(); var secureRandom = new SecureRandom(randomGenerator); var keyParameters = new KeyGenerationParameters(secureRandom, 1024);
rsaGenerator.Init(keyParameters); var keyPair = rsaGenerator.GenerateKeyPair(); // Generate certificate
var attributes = new Hashtable();
attributes[X509Name.E] = "[email protected]";//設置dn信息的郵箱地址
attributes[X509Name.CN] = "www.yi.com";//設置證書的用戶,也就是頒發給誰
attributes[X509Name.O] = "Company yi.";//設置證書的辦法者
attributes[X509Name.C] = "Zh";//證書的語言
//這里是證書頒發者的信息 var ordering = new ArrayList();
ordering.Add(X509Name.E);
ordering.Add(X509Name.CN);
ordering.Add(X509Name.O);
ordering.Add(X509Name.C); var certificateGenerator = new X509V3CertificateGenerator();
//設置證書序列化號
certificateGenerator.SetSerialNumber(BigInteger.ProbablePrime(120, new Random()));
//設置頒發者dn信息
certificateGenerator.SetIssuerDN(new X509Name(ordering, attributes));
//設置證書生效時間
certificateGenerator.SetNotBefore(DateTime.Today.Subtract(new TimeSpan(1, 0, 0, 0)));
//設置證書失效時間
certificateGenerator.SetNotAfter(DateTime.Today.AddDays(365));
//設置接受者dn信息
certificateGenerator.SetSubjectDN(new X509Name(ordering, attributes));
//設置證書的公鑰
certificateGenerator.SetPublicKey(keyPair.Public);
//設置證書的加密演算法
certificateGenerator.SetSignatureAlgorithm(signatureAlgorithm);
certificateGenerator.AddExtension(X509Extensions.BasicConstraints, true, new BasicConstraints(false));
certificateGenerator.AddExtension(X509Extensions.AuthorityKeyIdentifier, true, new AuthorityKeyIdentifier(SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(keyPair.Public))); // Key usage: Client authentication
certificateGenerator.AddExtension(X509Extensions.ExtendedKeyUsage.Id, false, new ExtendedKeyUsage(new ArrayList() { new DerObjectIdentifier("1.3.6.1.5.5.7.3.2") })); //創建證書,如果需要cer格式的證書,到這里就可以了。如果是pfx格式的就需要加上訪問密碼 var x509Certificate = certificateGenerator.Generate(keyPair.Private); byte[] pkcs12Bytes = DotNetUtilities.ToX509Certificate(x509Certificate).Export(X509ContentType.Pkcs12, password); var certificate = new X509Certificate2(pkcs12Bytes, password); // Derive security token and use it
var x509Token = new X509SecurityToken(certificate);
}
}
}
⑨ 如何利用keytool工具生成數字證書
查看JDK1.6是否安裝,出現如下界面說明JDK已經安裝