




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 . . 2/48安全中間件二次開發(fā)手冊(cè)Copyright 2003 Shanghai wellhope Information Technology Co.,Ltd. All Rights Reserved目錄 TOC o 1-4 h z HYPERLINK l _Toc1255278631引言 PAGEREF _Toc125527863 h 4HYPERLINK l _Toc1255278641.1編寫目的 PAGEREF _Toc125527864 h 4HYPERLINK l _Toc1255278651.2項(xiàng)目背景 PAGEREF _Toc125527865 h 4HYPERLINK
2、 l _Toc1255278661.3術(shù)語和縮寫詞 PAGEREF _Toc125527866 h 5HYPERLINK l _Toc1255278671.4遵循標(biāo)準(zhǔn) PAGEREF _Toc125527867 h 5HYPERLINK l _Toc1255278682系統(tǒng)概述 PAGEREF _Toc125527868 h 7HYPERLINK l _Toc1255278692.1功能 PAGEREF _Toc125527869 h 8HYPERLINK l _Toc1255278702.2性能 PAGEREF _Toc125527870 h 9HYPERLINK l _Toc1255278
3、71精度 PAGEREF _Toc125527871 h 9HYPERLINK l _Toc125527872時(shí)間特性 PAGEREF _Toc125527872 h 9HYPERLINK l _Toc125527873靈活性 PAGEREF _Toc125527873 h 9HYPERLINK l _Toc1255278743運(yùn)行環(huán)境 PAGEREF _Toc125527874 h 10HYPERLINK l _Toc1255278753.1硬件系統(tǒng) PAGEREF _Toc125527875 h 10HYPERLINK l _Toc1255278763.2支撐軟件 PAGEREF _Toc
4、125527876 h 10HYPERLINK l _Toc1255278774開發(fā)說明 PAGEREF _Toc125527877 h 10HYPERLINK l _Toc1255278784.1客戶端描述 PAGEREF _Toc125527878 h 11HYPERLINK l _Toc1255278794.1.1APP客戶端控件接口說明 PAGEREF _Toc125527879 h 11HYPERLINK l _Toc1255278804.1.1.1AtvInit PAGEREF _Toc125527880 h 11HYPERLINK l _Toc1255278814.1.1.2At
5、vEnd PAGEREF _Toc125527881 h 11HYPERLINK l _Toc1255278824.1.1.3SetHardWare PAGEREF _Toc125527882 h 12HYPERLINK l _Toc1255278834.1.1.4Login PAGEREF _Toc125527883 h 12HYPERLINK l _Toc1255278844.1.1.5ChangeLoginPin PAGEREF _Toc125527884 h 12HYPERLINK l _Toc1255278854.1.1.6Logout PAGEREF _Toc125527885 h
6、 13HYPERLINK l _Toc1255278864.1.1.7GetCert PAGEREF _Toc125527886 h 13HYPERLINK l _Toc1255278874.1.1.8CheckCert PAGEREF _Toc125527887 h 13HYPERLINK l _Toc1255278884.1.1.9GetCertInfo PAGEREF _Toc125527888 h 14HYPERLINK l _Toc1255278894.1.1.10SealEnvelope PAGEREF _Toc125527889 h 15HYPERLINK l _Toc12552
7、78904.1.1.11SealEnvelopeEx PAGEREF _Toc125527890 h 16HYPERLINK l _Toc1255278914.1.1.12OpenEnvelope PAGEREF _Toc125527891 h 17HYPERLINK l _Toc1255278924.1.1.13SignData PAGEREF _Toc125527892 h 17HYPERLINK l _Toc1255278934.1.1.14SignDataEx PAGEREF _Toc125527893 h 18HYPERLINK l _Toc1255278944.1.1.15Veri
8、fySign PAGEREF _Toc125527894 h 18HYPERLINK l _Toc1255278954.1.1.16GenRandom PAGEREF _Toc125527895 h 19HYPERLINK l _Toc1255278964.1.1.17HashData PAGEREF _Toc125527896 h 19HYPERLINK l _Toc1255278974.1.1.18SymmEncrypt PAGEREF _Toc125527897 h 20HYPERLINK l _Toc1255278984.1.1.19SymmDecrypt PAGEREF _Toc12
9、5527898 h 20HYPERLINK l _Toc1255278994.1.1.20GetCertFromLDAP PAGEREF _Toc125527899 h 21HYPERLINK l _Toc1255279004.1.1.21GetAndSaveCRL PAGEREF _Toc125527900 h 21HYPERLINK l _Toc1255279014.1.1.22ReadFromFile PAGEREF _Toc125527901 h 22HYPERLINK l _Toc1255279024.1.1.23WriteToFile PAGEREF _Toc125527902 h
10、 22HYPERLINK l _Toc1255279034.1.1.24GetStamp PAGEREF _Toc125527903 h 22HYPERLINK l _Toc1255279044.1.1.25VerifyStamp PAGEREF _Toc125527904 h 23HYPERLINK l _Toc1255279054.1.1.26GetAlgoFromPA PAGEREF _Toc125527905 h 23HYPERLINK l _Toc1255279064.1.1.27Base64Encode PAGEREF _Toc125527906 h 24HYPERLINK l _
11、Toc1255279074.1.1.28Base64Decode PAGEREF _Toc125527907 h 24HYPERLINK l _Toc1255279084.1.1.29GetParamValue PAGEREF _Toc125527908 h 25HYPERLINK l _Toc1255279094.2服務(wù)端描述 PAGEREF _Toc125527909 h 25HYPERLINK l _Toc1255279104.2.1 APP應(yīng)用服務(wù)器端JAVA接口 PAGEREF _Toc125527910 h 25HYPERLINK l _Toc1255279114.2.1.1 re
12、lease PAGEREF _Toc125527911 h 25HYPERLINK l _Toc1255279124.2.1.2GetCurStatus PAGEREF _Toc125527912 h 25HYPERLINK l _Toc1255279134.2.1.3AdvBase64Encode PAGEREF _Toc125527913 h 26HYPERLINK l _Toc1255279144.2.1.4 AdvBase64Decode PAGEREF _Toc125527914 h 26HYPERLINK l _Toc1255279154.2.1.5AdvGetCert PAGER
13、EF _Toc125527915 h 26HYPERLINK l _Toc1255279164.2.1.6AdvCheckCert PAGEREF _Toc125527916 h 26HYPERLINK l _Toc1255279174.2.1.7AdvGetCertInfo PAGEREF _Toc125527917 h 27HYPERLINK l _Toc1255279184.2.1.8AdvSealEnvelope PAGEREF _Toc125527918 h 28HYPERLINK l _Toc1255279194.2.1.9 AdvSealEnvelopeEx PAGEREF _T
14、oc125527919 h 29HYPERLINK l _Toc1255279204.2.1.10 AdvOpenEnvelope PAGEREF _Toc125527920 h 30HYPERLINK l _Toc1255279214.2.1.11 AdvSignData PAGEREF _Toc125527921 h 30HYPERLINK l _Toc1255279224.2.1.12 AdvSignDataEx PAGEREF _Toc125527922 h 31HYPERLINK l _Toc1255279234.2.1.13 AdvVerifySign PAGEREF _Toc12
15、5527923 h 31HYPERLINK l _Toc1255279244.2.1.14 AdvGenRandom PAGEREF _Toc125527924 h 32HYPERLINK l _Toc1255279254.2.1.15 AdvHashData PAGEREF _Toc125527925 h 32HYPERLINK l _Toc1255279264.2.1.16 AdvSymmEncrypt PAGEREF _Toc125527926 h 33HYPERLINK l _Toc1255279274.2.1.17 AdvSymmDecrypt PAGEREF _Toc1255279
16、27 h 33HYPERLINK l _Toc1255279284.2.1.18 AdvGetCertFromLDAP PAGEREF _Toc125527928 h 34HYPERLINK l _Toc1255279294.2.1.19 AdvGetCRLFromLDAP PAGEREF _Toc125527929 h 34HYPERLINK l _Toc1255279304.2.1.20 AdvUploadCRL PAGEREF _Toc125527930 h 35HYPERLINK l _Toc1255279314.2.1.21 AdvReadFromFile PAGEREF _Toc1
17、25527931 h 35HYPERLINK l _Toc1255279324.2.1.22 AdvWriteToFile PAGEREF _Toc125527932 h 35HYPERLINK l _Toc1255279334.2.1.23 AdvGetStamp PAGEREF _Toc125527933 h 36HYPERLINK l _Toc1255279344.2.1.24 AdvVerifyStamp PAGEREF _Toc125527934 h 36HYPERLINK l _Toc1255279354.2.1.25 AdvGetAlgoFromPA PAGEREF _Toc12
18、5527935 h 36HYPERLINK l _Toc1255279364.2.1.26 AdvGetAttrCertInfo PAGEREF _Toc125527936 h 37HYPERLINK l _Toc1255279374.2.1.27 AdvGetPACertInfo PAGEREF _Toc125527937 h 37HYPERLINK l _Toc1255279384.2.1.28 AdvGetAttrCertListFromLDAP PAGEREF _Toc125527938 h 38HYPERLINK l _Toc1255279395應(yīng)用開發(fā)實(shí)例 PAGEREF _Toc
19、125527939 h 39HYPERLINK l _Toc1255279405.1身份認(rèn)證參考模型 PAGEREF _Toc125527940 h 40HYPERLINK l _Toc1255279415.2加解密功能參考模型 PAGEREF _Toc125527941 h 43HYPERLINK l _Toc1255279425.3簽名驗(yàn)簽功能參考模型 PAGEREF _Toc125527942 h 44引言編寫目的該文檔主要規(guī)了PKI安全中間件的功能接口定義。在整個(gè)PKI體系中,安全中間件的作用非常關(guān)鍵,它通過調(diào)用底層的WHCSP與證書管理器等,封裝了一系列PKI應(yīng)用接口,滿足上層PKI
20、具體應(yīng)用的需要。本標(biāo)準(zhǔn)適用于PKI上層應(yīng)用的需求,主要為CA系統(tǒng)。適用對(duì)象為所有采用安全中間件的系統(tǒng)開發(fā)人員。項(xiàng)目背景高級(jí)密碼服務(wù),顧名思義,是為用戶提供相對(duì)高級(jí)和抽象的密碼服務(wù),而不是像底層的CSP和硬件加密算法那樣,提供比較低級(jí)和具體的密碼服務(wù)。一般來說,高級(jí)的密碼服務(wù)應(yīng)該能夠讓不懂加密、解密和簽名、驗(yàn)簽等概念的用戶也能夠透明的使用,也就是說把密碼學(xué)算法的細(xì)節(jié)給屏蔽掉了。術(shù)語和縮寫詞縮寫、術(shù)語解 釋PKI公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure)CSPCryptographic Service Provider(密碼服務(wù)提供者)CRL證書撤消列表( Certific
21、ate Revocation List )一個(gè)標(biāo)記一系列不再被證書發(fā)布者所信任的證書的簽名列表(通稱黑)。LDAP目錄查詢協(xié)議( Lightweight Directory Access Protocol )本設(shè)計(jì)指輕型目錄訪問協(xié)議LDAP。用戶可使用LDAP協(xié)議,通過網(wǎng)絡(luò)到目錄服務(wù)器查詢系統(tǒng)中的證書或證書撤消列表。OCSP在線證書狀態(tài)查詢協(xié)議(Online Certificate Status Protocol)用戶可使用OCSP協(xié)議,通過網(wǎng)絡(luò)到OCSP服務(wù)器實(shí)時(shí)查詢系統(tǒng)中證書的當(dāng)前有效/無效狀態(tài)。遵循標(biāo)準(zhǔn)列出參考資料,如:RFC 2459 PKIX PKIX證書和CRL概要IETF: PK
22、IX證書策略和證書實(shí)踐框架IETF:RFC 2510: CMP(證書管理協(xié)議)RFC 2797: CMC(CMS上的證書管理消息)RFC 2511: CRMF(證書請(qǐng)求消息格式) X.208 抽象語法符號(hào)1 描述(ASN.1) X.209 抽象語法符號(hào)1 基本編碼規(guī)說明(ASN.1) X.680 信息技術(shù)抽象語法符號(hào)1 (ASN.1)基本符號(hào)規(guī)X.681 信息技術(shù)抽象語法符號(hào)1 (ASN.1)信息目標(biāo)規(guī)X.682 信息技術(shù)抽象語法符號(hào)1 (ASN.1)強(qiáng)制規(guī)X.690 信息技術(shù)ASN.1 編碼規(guī)則基本編碼規(guī)則(BER), 規(guī)編碼規(guī)則(CER)和主要編碼規(guī)則(DER) X.509v4 信息技術(shù)開
23、放式系統(tǒng)互連目錄:公鑰和屬性證書框架X.500 開放式系統(tǒng)互連目錄:概念,模型和服務(wù)概述LDAP 輕目錄訪問協(xié)議:由ISO于1997年12月發(fā)布。PKCS#1 (v1.5) RSA密碼算法PKCS#5 (v2.0) 基于口令的密碼標(biāo)準(zhǔn)PKCS#6 (v1.5)擴(kuò)展的數(shù)字證書語法標(biāo)準(zhǔn)PKCS#7 (v1.5) 密文消息語法標(biāo)準(zhǔn)PKCS#8 (v1.5) 私鑰信息語法標(biāo)準(zhǔn)PKCS#9 (v2.0)可選擇的屬性類型PKCS#10 (v1.5)數(shù)字證書申請(qǐng)語法標(biāo)準(zhǔn)PKCS#11硬件密碼設(shè)備接口標(biāo)準(zhǔn)PKCS#12 (v1.0)個(gè)人信息交換語法PKCS#15 (v1.1)多個(gè)應(yīng)用訪問標(biāo)準(zhǔn)X.509 開放式
24、系統(tǒng)互連目錄:公鑰和授權(quán)證書框架ITU-T X.500 開放式系統(tǒng)互連目錄:概念,模型和服務(wù)概述CORBA(公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu))v2.4系統(tǒng)概述在PKI體系結(jié)構(gòu)中見上圖,安全中間件總攬了證書管理器和CSP的所有功能。它在PC端和PKI服務(wù)器端都是直接面向最終用戶的調(diào)用接口,因此,它必須能夠屏蔽掉PC端和PKI服務(wù)器端的不同情況。安全中間件是為用戶提供相對(duì)高級(jí)和抽象的密碼服務(wù),而不是像底層的CSP和硬件加密算法那樣,提供比較低級(jí)和具體的密碼服務(wù)。一般來說,安全中間件服務(wù)應(yīng)該能夠讓不懂加密、解密和簽名、驗(yàn)簽等概念的用戶也能夠透明的使用,也就是說把密碼學(xué)算法的細(xì)節(jié)給屏蔽掉了。功能抽象的算法服務(wù)
25、對(duì)指定的明文進(jìn)行加密的功能,包括口令加密、對(duì)稱密鑰加密和公開密鑰加密。對(duì)指定的密文進(jìn)行解密的功能,包括對(duì)稱密鑰解密和公開密鑰解密。對(duì)指定的明文進(jìn)行簽名的功能。對(duì)指定的簽名進(jìn)行驗(yàn)簽的功能封裝PKCS7數(shù)字信封解開PKCS7數(shù)字信封對(duì)明文進(jìn)行散列。產(chǎn)生隨機(jī)數(shù)。抽象的證書服務(wù)根據(jù)標(biāo)簽得到證書驗(yàn)證證書的有效性生成PKCS10格式的證書請(qǐng)求文件輸入綁定的證書和私鑰。私鑰和口令保護(hù)服務(wù)檢查私鑰口令更改私鑰口令檢查PIN更改PIN編碼服務(wù)ASE64的編碼功能BASE64的解碼功能性能精度TSP響應(yīng)時(shí)間1s;OCSP響應(yīng)時(shí)間1s;LDAP服務(wù)單元響應(yīng)速度0.5s時(shí)間特性客戶端RSA簽名2次/秒驗(yàn)簽5次/秒服務(wù)
26、器端RSA簽名20次/秒驗(yàn)簽100次/秒靈活性可以靈活支持多種硬件介質(zhì)和硬件加密卡;可以提供C/C+、Java、C#等應(yīng)用接口;一套軟件結(jié)構(gòu)可以同時(shí)為CA和應(yīng)用提供服務(wù);可以支持33算法、RC4算法、DES/3DES算法;運(yùn)行環(huán)境硬件系統(tǒng)適用于各種PC兼容機(jī)、服務(wù)器、小型機(jī)等等支撐軟件WINDOWS 2000,WindowsXP,LINUX(RedHat9.0與Advanced Server2.1)開發(fā)說明描述系統(tǒng)為二次開發(fā)工作提供的接口、約束等。安全中間件分為客戶端和服務(wù)端2部分,安全中間件客戶端主要的功能是在客戶端通過對(duì)硬件存儲(chǔ)介質(zhì)的操作完成一些密碼運(yùn)算。服務(wù)端主要是通過調(diào)用密碼服務(wù)器為應(yīng)
27、用服務(wù)提供所需的密碼服務(wù)??蛻舳撕头?wù)端產(chǎn)的數(shù)據(jù)格式都采用國(guó)際同意標(biāo)準(zhǔn)。服務(wù)端可以運(yùn)算客戶端產(chǎn)生的數(shù)據(jù),客戶端也可以運(yùn)算服務(wù)端產(chǎn)生的數(shù)據(jù)。主要用的功能為客戶端進(jìn)行簽名、加密,服務(wù)端驗(yàn)簽、解密或服務(wù)端簽名、加密,客戶端驗(yàn)簽、解密。客戶端與服務(wù)端的數(shù)據(jù)傳輸可以由應(yīng)用開發(fā)靈活處理,但要保證在傳輸前后數(shù)據(jù)的格式不發(fā)生變化。通過安全中間件提供的抽象密碼服務(wù),為應(yīng)用開發(fā)提供性,完整性,不可抵賴性方面的支持。完成身份認(rèn)證,電子印章,責(zé)任認(rèn)定,密文傳輸?shù)葢?yīng)用服務(wù)。客戶端描述客戶端主要設(shè)備是硬件存儲(chǔ)介質(zhì)E-Key,E-Key做為數(shù)字證書的存儲(chǔ)設(shè)備主要存儲(chǔ)用戶的簽名私鑰,加密私鑰,簽名證書,加密證書。通過調(diào)用客戶
28、端控件可以使用E-Key完成簽名,加密等密碼服務(wù)。4.1.1APP客戶端控件接口說明AtvInit功能簡(jiǎn)介控件初始化。讀取客戶端證書載體信息與其它初始化工作。調(diào)用一些主要功能接口前必須先調(diào)用本接口。接口名稱int AtvInit()參數(shù)說明入?yún)⒄f明無出參說明無返回值成功,則返回0失敗,則返回錯(cuò)誤號(hào),錯(cuò)誤號(hào)小于0AtvEnd功能簡(jiǎn)介進(jìn)行開發(fā)包函數(shù)庫調(diào)用完畢后部存儲(chǔ)區(qū)的清除工作。接口名稱int AtvEnd();參數(shù)說明入?yún)⒄f明無出參說明無返回值成功,則返回0失敗,則返回錯(cuò)誤號(hào),小于0SetHardWare功能簡(jiǎn)介設(shè)置客戶端硬件設(shè)備類型。接口名稱BOOL SetHardWare(long hard
29、wareType);參數(shù)說明入?yún)⒄f明hardwareTypeIN:客戶端硬件設(shè)備類型目前支持:1軟件摸擬實(shí)現(xiàn)2加密卡實(shí)現(xiàn)3SIM卡實(shí)現(xiàn)4 EKEY實(shí)現(xiàn)出參說明無返回值成功,則返回TRUE失敗,則返回FALSELogin功能簡(jiǎn)介登錄客戶端硬件設(shè)備。接口名稱BOOL Login(int loginType, BSTR loginPin);參數(shù)說明入?yún)⒄f明loginTypeIN:用戶登陸類型,此處用戶請(qǐng)輸入1loginPinIN:用戶登陸PIN碼出參說明無返回值成功,則返回TRUE失敗,則返回FALSE說明調(diào)用本接口時(shí),如果loginPin輸入為”空,則會(huì)彈出輸入口令對(duì)話框;如果不為空,則不會(huì)彈出,
30、只返回登錄是否成功。ChangeLoginPin功能簡(jiǎn)介修改客戶端用戶登陸PIN碼。接口名稱BOOL ChangeLoginPin(BSTR keyLabel,BSTR oldPasswd,BSTR newPasswd);參數(shù)說明入?yún)⒄f明keyLabelIN: 私鑰標(biāo)簽,此處請(qǐng)傳入“wellhope”oldPasswdIN: 舊的用戶登陸口令newPasswdIN:新的用戶登陸口令 出參說明無返回值成功,則返回TRUE失敗,則返回FALSELogout功能簡(jiǎn)介退出客戶端硬件登錄。接口名稱BOOL Logout();參數(shù)說明入?yún)⒄f明無出參說明無返回值成功,則返回TRUE失敗,則返回FALSEGe
31、tCert功能簡(jiǎn)介根據(jù)證書標(biāo)簽和證書類型讀取客戶端用戶證書。證書標(biāo)簽寫在配置文件中,見前面Client.conf配置文件。接口名稱BSTR GetCert(int certType);參數(shù)說明入?yún)⒄f明certTypeIN:證書類型 1 加密證書 2 簽名證書出參說明無返回值返回編碼后的證書信息。CheckCert功能簡(jiǎn)介驗(yàn)證證書的有效性。在驗(yàn)證過程中會(huì)連接到OCSP服務(wù)器上進(jìn)行證書的驗(yàn)證。接口名稱BOOL CheckCert(BSTR i_inCert);參數(shù)說明入?yún)⒄f明i_inCertIN:待驗(yàn)證的證書,已編碼。出參說明無返回值成功,則返回TRUE失敗,則返回FALSEGetCertInfo
32、功能簡(jiǎn)介解析證書信息,并以XML字符串格式返回接口名稱BSTR GetCertInfo(BSTR i_inCert);參數(shù)說明入?yún)⒄f明i_inCertIN:待解析的證書,已編碼。出參說明無返回值返回采用XML標(biāo)準(zhǔn)結(jié)構(gòu)的證書信息。舉例30042SHA1RSACNShanghaiZhangjiangShanghai wellhope E-Bussiness Certificate AuthorityWELLHOPE自然人CA2003年08月21日2004年08月21日CNShanghaiZhangjiangwellhopeinfosecuser5100f34d52b7fb481752a506905
33、e5b8a0698994dc3104fc8f7d1180912c6087dee594225d4ba1946dfad58598859d3501e59fc9cbd86b50c79b2ce09630fed4896651b54c37ae98855545c1434f9f4a15e3a15e9b09997b03af16c7465f816bfe2b1a49821a0090e283f82ebf2ed7daa2e76a5ada469a14e78108dde58ac13b826fb0203010001SealEnvelope功能簡(jiǎn)介數(shù)字信封加密。部的處理過程是首先隨機(jī)生成一對(duì)稱密鑰(由入口參數(shù)指定其算法或者通過P
34、A確定),然后用此對(duì)稱密鑰加密輸入的數(shù)據(jù),最后用公鑰加密產(chǎn)生的此對(duì)稱密鑰。這是我們推薦的一種對(duì)數(shù)據(jù)進(jìn)行加密的方法,因?yàn)樗粌H保證了加密的高效性(對(duì)稱密鑰的快速加密),還保證了加密的高強(qiáng)度性(公鑰的強(qiáng)加密)。此函數(shù)的加密輸出結(jié)果遵循PKCS#7的編碼標(biāo)準(zhǔn)(EnvelopedData)。接口名稱BSTR SealEnvelope( BSTR i_encCert,long i_symmAlgo,BSTR i_inData);參數(shù)說明入?yún)⒄f明i_encCertIN: 用于加密的數(shù)字證書,已編過碼。i_symmAlgoIN:信封中所用對(duì)稱算法標(biāo)識(shí)。取值如下: CALG_RC4 = 26625CALG_3
35、DES = 26115CALG_33 = 9viaPA = 0,說明加密過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_inDataIN:輸入原文信息,如是二進(jìn)制數(shù)據(jù)則已編過碼。出參說明無返回值輸出的已編碼的密文結(jié)果。SealEnvelopeEx功能簡(jiǎn)介用多證書批量生成數(shù)字信封。此函數(shù)的加密輸出結(jié)果遵循PKCS#7的編碼標(biāo)準(zhǔn)(EnvelopedData)。接口名稱BSTR SealEnvelopeEx(BSTR i_encCert, long i_certsize, long i_symmAlgo,BSTR i_inData);參數(shù)說明入?yún)⒄f明i_encCertIN:用于加密的
36、數(shù)字證書,已編過碼,多個(gè)證書間以“”隔開。i_certsizeIN: 保留參數(shù)i_symmAlgoIN:信封中所用對(duì)稱算法標(biāo)識(shí)。CALG_RC4 = 26625CALG_3DES = 26115CALG_33 = 9viaPA = 0,說明加密過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_inDataIN:輸入原文信息,如是二進(jìn)制數(shù)據(jù)則已編過碼。出參說明無返回值輸出的已編碼的密文結(jié)果。OpenEnvelope功能簡(jiǎn)介解析數(shù)字信封私鑰標(biāo)簽在配置文件中定義,運(yùn)行時(shí)彈出輸入框提示用戶輸入私鑰保護(hù)口令。接口名稱BSTR OpenEnvelope(BSTR i_inData);參數(shù)說明
37、入?yún)⒄f明i_inDataIN:輸入已編碼的信封數(shù)據(jù)。出參說明無返回值輸出原文信息, 如是二進(jìn)制數(shù)據(jù)則已編過碼。SignData功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)字簽名。私鑰標(biāo)簽在配置文件中定義,運(yùn)行時(shí)彈出輸入框提示用戶輸入私鑰保護(hù)口令。接口名稱BSTR SignData(BSTR i_inData,int i_algoType,int i_signType);參數(shù)說明入?yún)⒄f明i_inDataIN:輸入的待簽名數(shù)據(jù),二進(jìn)制數(shù)據(jù)需要做編碼處理。i_algoTypeIN:簽名算法取值如:32772 sha1RSA32771 md5RSAsha1RSA、md5RSA說明簽名采用的是何種摘要算法簽名算法i_sig
38、nTypeIN:簽名值類型取值:0不包含原文的純簽名 1包含原文的PKCS7格式數(shù)據(jù)出參說明無返回值輸出的已編碼的簽名數(shù)據(jù)。SignDataEx功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)字簽名。私鑰標(biāo)簽在配置文件中定義,運(yùn)行時(shí)彈出輸入框提示用戶輸入私鑰保護(hù)口令。接口名稱BSTR SignData(BSTR i_sigCert,BSTR i_inData,int i_algoType,int i_signType);參數(shù)說明入?yún)⒄f明i_sigCertIN:通信對(duì)方的證書,當(dāng)需要通過PA獲取簽名算法時(shí)需輸入i_inDataIN:輸入的待簽名數(shù)據(jù),二進(jìn)制數(shù)據(jù)需要做編碼處理。i_algoTypeIN:簽名算法取值如:3
39、2772 sha1RSA32771 md5RSA0 viaPA等sha1RSA、md5RSA說明簽名采用的是何種摘要算法簽名算法viaPA = 0,說明簽名過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_signTypeIN:簽名值類型取值:0不包含原文的純簽名 1包含原文的符合PKCS7格式的數(shù)據(jù)出參說明無返回值輸出的已編碼的簽名數(shù)據(jù)。VerifySign功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)字簽名的驗(yàn)證接口名稱BOOL VerifySign( BSTR i_checkCert, BSTR i_clearText,BSTR i_signature,int i_algoType,int i_
40、signType);參數(shù)說明入?yún)⒄f明i_checkCert IN:驗(yàn)證所用的證書。i_clearText IN:簽名的原文。如簽名值包含原文,置空即可。i_signature IN:待驗(yàn)證的簽名數(shù)據(jù)。i_algoTypeIN:簽名算法。如簽名值不符合PKCS7標(biāo)準(zhǔn),需要輸入簽名算法。取值如:32772 sha1RSA32771 md5RSA0 viaPA等sha1RSA、md5RSA說明簽名采用的是何種摘要算法簽名算法viaPA參數(shù)說明簽名過程將連接到PA(策略中心)獲取相應(yīng)的簽名參數(shù)進(jìn)行后續(xù)的工作。i_signTypeIN:簽名值類型取值:0不包含原文(純簽名值)1包含原文的符合PKCS7格
41、式的數(shù)據(jù)出參說明無返回值TRUE:成功FALSE:失敗說明目前的用法是:當(dāng)驗(yàn)證純簽名值時(shí),需要輸入簽名算法或者通過策略解析器獲取匹配算法;當(dāng)驗(yàn)證PKCS7格式的簽名容時(shí),由于本身自帶了簽名算法,因此沒有必要再次調(diào)用相應(yīng)的策略解析器了。GenRandom功能簡(jiǎn)介生成一定長(zhǎng)度的隨機(jī)數(shù)/對(duì)稱密鑰。接口名稱BSTR GenRandom(int len);參數(shù)說明入?yún)⒄f明lenIN:指定的長(zhǎng)度(字節(jié)數(shù))。出參說明無返回值輸出已編碼的隨機(jī)數(shù)/對(duì)稱密鑰。HashData功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行哈希運(yùn)算。接口名稱BSTR HashData( int hashAlgo,BSTR inData );參數(shù)說明入?yún)⒄f明
42、hashAlgoIN: 哈希算法標(biāo)識(shí) ALGO_SHA1 32772 ALGO_MD5 32771inDataIN: 輸入數(shù)據(jù)信息,如是二進(jìn)制數(shù)據(jù)則已編碼。出參說明無返回值返回編碼后的哈希值。SymmEncrypt功能簡(jiǎn)介用指定產(chǎn)生的對(duì)稱密鑰KEY來加密數(shù)據(jù)。接口名稱BSTR SymmEncrypt(long i_symmAlgo,BSTR i_symmkey,BSTR i_indata);參數(shù)說明入?yún)⒄f明i_symmAlgoIN:對(duì)稱算法標(biāo)識(shí)。 例如: CALG_RC4 = 26625CALG_3DES = 26115CALG_33 = 9i_symmKeyIN:對(duì)稱密鑰,已編碼。i_inD
43、ataIN: 輸入的原文,二進(jìn)制數(shù)據(jù)流先編碼。出參說明無返回值輸出已編碼后的密文。SymmDecrypt功能簡(jiǎn)介用指定產(chǎn)生的對(duì)稱密鑰KEY來解密密文數(shù)據(jù)。接口名稱BSTR SymmDecrypt(long i_symmAlgo,BSTR i_symmkey,BSTR i_indata);參數(shù)說明入?yún)⒄f明i_symmAlgoIN:對(duì)稱算法標(biāo)識(shí)。 例如: CALG_RC4 = 26625CALG_3DES = 26115CALG_33 = 9i_symmKeyIN:對(duì)稱密鑰,已編碼。i_inDataIN:輸入的密文,已編碼。出參說明無返回值輸出解密后的原文,如是二進(jìn)制數(shù)據(jù)則已編碼。GetCertF
44、romLDAP功能簡(jiǎn)介從LDAP服務(wù)器查詢和獲取用戶證書。接口名稱BSTR GetCertFromLDAP(long i_searchType, long i_certType, BSTR i_searchValue);參數(shù)說明入?yún)⒄f明i_searchTypeIN:查找類型取值圍為 1 按用戶ID查詢 2 按用戶地址查詢 3 按證書ID查詢i_certTypeIN: 證書類型取值圍為 1 加密證書 2 簽名證書此參數(shù)對(duì)于按證書ID查詢無效i_searchValueIN:查詢字符串信息當(dāng)searchType取值為1時(shí),此參數(shù)為用戶ID字符串當(dāng)searchType取值為2時(shí),此參數(shù)為用戶字符串當(dāng)s
45、earchType取值為3時(shí),此參數(shù)為證書ID字符串出參說明無返回值輸出已編碼后的證書信息。GetAndSaveCRL功能簡(jiǎn)介從LDAP服務(wù)器獲取CRL列表信息,并保存在本地。寫入的文件路徑在注冊(cè)表中指定。HKEY_LOCAL_MACHINESOFTWAREwellhopesettingCRLSettingCRLData=C:WINNTSystem32CRLDATA.crl接口名稱BOOL GetAndSaveCRL();參數(shù)說明入?yún)⒄f明無出參說明無返回值TRUE:成功FALSE:失敗ReadFromFile功能簡(jiǎn)介從本地讀取文件容。接口名稱BSTR ReadFromFile(BSTR fil
46、eName);參數(shù)說明入?yún)⒄f明fileNameIN: 要讀取的文件全路徑名。如果為”空,則彈出文件選擇對(duì)話框。出參說明無返回值輸出已編碼過的文件數(shù)據(jù)信息WriteToFile功能簡(jiǎn)介將數(shù)據(jù)寫入到本地文件。接口名稱BOOL WriteToFile(BSTR fileNameBSTR writeData);參數(shù)說明入?yún)⒄f明fileNameIN: 要保存的文件名稱writeDataIN: 要寫入文件的數(shù)據(jù),已編碼。出參說明無返回值TRUE:成功FALSE:失敗GetStamp功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)加蓋時(shí)間戳。接口名稱BSTR GetStamp(BSTR inData);參數(shù)說明入?yún)⒄f明inDataIN:
47、 要加蓋時(shí)間戳的數(shù)據(jù),如是二進(jìn)制數(shù)據(jù)則已編碼。出參說明無返回值返回已編碼的蓋戳數(shù)據(jù)。VerifyStamp功能簡(jiǎn)介驗(yàn)證時(shí)間戳,如果成功返回蓋戳?xí)r間。接口名稱BSTR VerifyStamp(BSTR inData,BSTR inStampData)參數(shù)說明入?yún)⒄f明inDataIN: 加蓋時(shí)間戳的原文數(shù)據(jù),如是二進(jìn)制數(shù)據(jù)則已編碼。inStampDataIN: 時(shí)間戳簽名數(shù)據(jù)出參說明無返回值返回蓋戳?xí)r間字符串。日期格式:03 09 02 17 27 30 年 月 日時(shí) 分 秒GetAlgoFromPA功能簡(jiǎn)介通過策略解析器從PA獲取通信雙方相應(yīng)的策略證書,并加以匹配,確定通信過程中使用的具體算法。
48、接口名稱long GetAlgoFromPA(BSTR ownerCert,BSTR otherCert,int algoKind,int priorityKind);參數(shù)說明入?yún)⒄f明ownerCertIN:自己的證書otherCertIN:對(duì)方的證書algoKindIN:要獲取的密碼算法的種類表示非對(duì)稱算法表示對(duì)稱算法表示摘要算法今后可以擴(kuò)充priorityKindIN:通信雙方所屬機(jī)構(gòu)在通信中算法集匹配時(shí)的優(yōu)先級(jí)別0對(duì)方優(yōu)先級(jí)高0優(yōu)先級(jí)相等0自已優(yōu)先級(jí)高出參說明無返回值具體算法對(duì)應(yīng)的值9表示CALG_3326625表示CALG_RC426115表示CALG_3DES32772表示ALGO_
49、SHA1 32771表示ALGO_MD5 100表示ALGO_RSA101表示ALGO_ECC0表示沒有匹配的算法,無法進(jìn)行相應(yīng)的通信Base64Encode功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行編碼接口名稱BSTR Base64Encode(BSTR inData)參數(shù)說明入?yún)⒄f明inData IN:要編碼的數(shù)據(jù)出參說明無返回值返回編碼值Base64Decode功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行解碼。接口名稱BSTR Base64Decode(BSTR inData)參數(shù)說明入?yún)⒄f明inData IN:要解碼的數(shù)據(jù)出參說明無返回值返回解碼后的原文GetParamValue功能簡(jiǎn)介從配置文件(C:ConfigClient
50、.conf)中獲取相關(guān)配置信息。接口名稱BSTR GetParamValue(BSTR paramKey);參數(shù)說明入?yún)⒄f明paramKeyIN:要查找的鍵名出參說明無返回值返回相應(yīng)鍵的鍵值服務(wù)端描述4.2.1 APP應(yīng)用服務(wù)器端JAVA接口4.2.1.1 release功能簡(jiǎn)介進(jìn)行開發(fā)包函數(shù)庫調(diào)用完畢后部存儲(chǔ)區(qū)的清除工作。接口名稱boolean release();參數(shù)說明入?yún)⒄f明無出參說明無返回值成功:true失敗:false4.2.1.2GetCurStatus功能簡(jiǎn)介得到當(dāng)前狀態(tài)代碼。接口名稱int GetCurStatus();參數(shù)說明入?yún)⒄f明無出參說明無返回值返回當(dāng)前狀態(tài)代碼。4.
51、2.1.3AdvBase64Encode功能簡(jiǎn)介對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行BASE64編碼。接口名稱String AdvBase64Encode(byte i_inData);參數(shù)說明入?yún)⒄f明i_inDataIN: 要編碼的二進(jìn)制數(shù)據(jù)出參說明無返回值輸出已編碼的數(shù)據(jù)。4.2.1.4 AdvBase64Decode功能簡(jiǎn)介對(duì)BASE64編碼數(shù)據(jù)解碼。接口名稱byte AdvBase64Decode(String i_inData);參數(shù)說明入?yún)⒄f明i_inDataIN:要解碼的BASE64編碼數(shù)據(jù)出參說明無返回值輸出解碼后的二進(jìn)制數(shù)據(jù)。4.2.1.5AdvGetCert功能簡(jiǎn)介根據(jù)證書標(biāo)簽和證書類型讀取服
52、務(wù)器證書。證書標(biāo)簽寫在配置文件中,見前面Client.conf配置文件。接口名稱String AdvGetCert(int certType);參數(shù)說明入?yún)⒄f明certTypeIN:證書類型 1 加密證書 2 簽名證書出參說明無返回值返回編碼后的證書信息。4.2.1.6AdvCheckCert功能簡(jiǎn)介驗(yàn)證證書的有效性。在驗(yàn)證過程過本地CRL列表進(jìn)行證書的驗(yàn)證。接口名稱boolean AdvCheckCert(String i_inCert);參數(shù)說明入?yún)⒄f明i_inCertIN:待驗(yàn)證的證書,已編碼。出參說明無返回值成功:true失?。篺alse4.2.1.7AdvGetCertInfo功能簡(jiǎn)
53、介解析證書信息,并以XML字符串格式返回接口名稱StringAdvGetCertInfo(String i_inCert);參數(shù)說明入?yún)⒄f明i_inCertIN:待解析的證書,已編碼。出參說明無返回值返回采用XML標(biāo)準(zhǔn)結(jié)構(gòu)的證書信息。舉例30042SHA1RSACNShanghaiZhangjiangShanghai wellhope E-Bussiness Certificate AuthorityWELLHOPE自然人CA2003年08月21日2004年08月21日CNShanghaiZhangjiangwellhopeinfosecuser5100f34d52b7fb481752a506
54、905e5b8a0698994dc3104fc8f7d1180912c6087dee594225d4ba1946dfad58598859d3501e59fc9cbd86b50c79b2ce09630fed4896651b54c37ae98855545c1434f9f4a15e3a15e9b09997b03af16c7465f816bfe2b1a49821a0090e283f82ebf2ed7daa2e76a5ada469a14e78108dde58ac13b826fb02030100014.2.1.8AdvSealEnvelope功能簡(jiǎn)介數(shù)字信封加密。部的處理過程是首先隨機(jī)生成一對(duì)稱密鑰(由入
55、口參數(shù)指定其算法或者通過PA確定),然后用此對(duì)稱密鑰加密輸入的數(shù)據(jù),最后用公鑰加密產(chǎn)生的此對(duì)稱密鑰。這是我們推薦的一種對(duì)數(shù)據(jù)進(jìn)行加密的方法,因?yàn)樗粌H保證了加密的高效性(對(duì)稱密鑰的快速加密),還保證了加密的高強(qiáng)度性(公鑰的強(qiáng)加密)。此函數(shù)的加密輸出結(jié)果遵循PKCS#7的編碼標(biāo)準(zhǔn)(EnvelopedData)。接口名稱String AdvSealEnvelope(String i_encCert, int i_symmAlgo,byte i_inData);參數(shù)說明入?yún)⒄f明i_encCertIN:用于加密的數(shù)字證書,已編過碼。i_symmAlgoIN:信封中所用對(duì)稱算法標(biāo)識(shí)。CALG_RC4 =
56、 26625CALG_3DES = 26115CALG_33 = 9viaPA = 0,說明加密過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_inDataIN:輸入原文信息。出參說明無返回值輸出的已編碼的密文結(jié)果。4.2.1.9 AdvSealEnvelopeEx功能簡(jiǎn)介用多證書批量生成數(shù)字信封。此函數(shù)的加密輸出結(jié)果遵循PKCS#7的編碼標(biāo)準(zhǔn)(EnvelopedData)。接口名稱String AdvSealEnvelopeEx(String i_encCert,int i_certnum,int i_symmAlgo,byte i_inData);參數(shù)說明入?yún)⒄f明i_enc
57、CertIN:用于加密的數(shù)字證書,已編過碼,多個(gè)證書間以“”隔開。i_certnumIN: 生成信封的證書數(shù)目i_symmAlgoIN:信封中所用對(duì)稱算法標(biāo)識(shí)。CALG_RC4 = 26625CALG_3DES = 26115CALG_33 = 9viaPA = 0,說明加密過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_inDataIN:輸入原文信息。出參說明無返回值輸出的已編碼的密文結(jié)果。4.2.1.10 AdvOpenEnvelope功能簡(jiǎn)介對(duì)數(shù)字信封進(jìn)行解密工作,即拆封工作。私鑰標(biāo)簽在配置文件中定義。接口名稱byte AdvOpenEnvelope(String key
58、Passwd,String i_inData);參數(shù)說明入?yún)⒄f明keyPasswdIN: 解密私鑰的保護(hù)口令。i_inDataIN:輸入已編碼的信封數(shù)據(jù)。出參說明無返回值輸出原文信息。4.2.1.11 AdvSignData功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)字簽名。私鑰標(biāo)簽在配置文件中定義。 接口名稱String AdvSignData(String keyPasswd,byte i_inData,int i_algoType,int i_signType);參數(shù)說明入?yún)⒄f明keyPasswdIN:簽名私鑰的保護(hù)口令。i_inDataIN:輸入的待簽名數(shù)據(jù)。i_algoTypeIN:簽名算法取值如:32
59、772 sha1RSA32771 md5RSAsha1RSA、md5RSA說明簽名采用的是何種摘要算法簽名算法i_signTypeIN:簽名值類型取值:0不包含原文的純簽名 1包含原文的符合PKCS7格式的數(shù)據(jù)出參說明無返回值輸出的已編碼的簽名數(shù)據(jù)。4.2.1.12 AdvSignDataEx功能簡(jiǎn)介對(duì)輸入數(shù)據(jù)進(jìn)行數(shù)字簽名。私鑰標(biāo)簽在配置文件中定義。接口名稱String AdvSignDataEx(String i_sigCert,String keyPasswd,byte i_inData,int i_algoType,int i_signType);參數(shù)說明入?yún)⒄f明i_sigCertIN:
60、通信對(duì)方的證書,當(dāng)需要通過PA獲取簽名算法時(shí)需輸入keyPasswdIN:私鑰保護(hù)口令。i_inDataIN:輸入的待簽名數(shù)據(jù),二進(jìn)制數(shù)據(jù)需要做編碼處理。i_algoTypeIN:簽名算法取值如:32772 sha1RSA32771 md5RSA0 viaPA等sha1RSA、md5RSA說明簽名采用的是何種摘要算法簽名算法viaPA = 0,說明簽名過程首先將連接到PA(策略中心)獲取相應(yīng)的參數(shù)進(jìn)行后續(xù)的工作i_signTypeIN:簽名值類型取值:0不包含原文的純簽名 1包含原文的符合PKCS7格式的數(shù)據(jù)出參說明無返回值輸出的已編碼的簽名數(shù)據(jù)。4.2.1.13 AdvVerifySign功
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 展覽場(chǎng)地設(shè)備租賃合同(14篇)
- 廣東科學(xué)技術(shù)職業(yè)學(xué)院《微機(jī)原理與應(yīng)用A》2023-2024學(xué)年第二學(xué)期期末試卷
- 河南工業(yè)職業(yè)技術(shù)學(xué)院《種子質(zhì)量檢驗(yàn)理論與技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 青海民族大學(xué)《用戶研究與體驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 揚(yáng)州中瑞酒店職業(yè)學(xué)院《競(jìng)技武術(shù)套路5》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年遼寧省建筑安全員B證考試題庫
- 蘇州大學(xué)應(yīng)用技術(shù)學(xué)院《色譜學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年江西省安全員C證(專職安全員)考試題庫
- 山西財(cái)貿(mào)職業(yè)技術(shù)學(xué)院《工程信息學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 哈爾濱幼兒師范高等專科學(xué)?!队⒄Z課程標(biāo)準(zhǔn)解析與教材研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 外科護(hù)理5分鐘小講課
- 2025年中國(guó)融通農(nóng)發(fā)社會(huì)招聘筆試參考題庫含答案解析
- 2025年天津市寧河區(qū)事業(yè)單位招聘12人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年福建省莆田市數(shù)學(xué)三上期末質(zhì)量檢測(cè)模擬試題含解析
- 2025年山東菏澤投資發(fā)展集團(tuán)限公司招聘61人管理單位筆試遴選500模擬題附帶答案詳解
- 幕墻工程項(xiàng)目管理手冊(cè)
- 地理中圖版2025新版七年級(jí)下冊(cè) 中圖版七年級(jí)下地理教學(xué)計(jì)劃
- 北京某中學(xué)2024-2025學(xué)年九年級(jí)上學(xué)期期中數(shù)學(xué)試題
- 2025-2025年七年級(jí)英語下冊(cè)教學(xué)計(jì)劃
- 酒店客房管理手冊(cè)
- 基坑支護(hù)及土方開挖施工方案
評(píng)論
0/150
提交評(píng)論