徐人恒,杜博,依溥治,曲井致,關(guān)靚
(1.哈爾濱電工儀表研究所,哈爾濱150028;2.黑龍江大學(xué)信息科學(xué)與技術(shù)學(xué)院,哈爾濱150080)
1993年,南非電力公司(ESKOM)制訂了 STS(Standard Transfer Specification)標(biāo)準(zhǔn)傳輸規(guī)范。1997年,ESKOM、Merlin Gerin、Conlog、Landis Gyr、Actaris在南非創(chuàng)設(shè)了非盈利性的機構(gòu)—STS協(xié)會(STSA)[1-2],其目標(biāo)是推廣 STS標(biāo)準(zhǔn),進一步完善 STS標(biāo)準(zhǔn)的功能以及維護必要的基礎(chǔ)組織以向STS協(xié)議的使用提供支持服務(wù)。同年,南非標(biāo)委會發(fā)布了NRS-009系列國家標(biāo)準(zhǔn),即STS標(biāo)準(zhǔn)。從2007年開始,IEC/TC 13委員會的WG15工作組逐漸接納并轉(zhuǎn)化STS標(biāo)準(zhǔn)為國際標(biāo)準(zhǔn)—IEC 62055系列標(biāo)準(zhǔn)。目前,全球已經(jīng)有超過2 000萬只符合STS標(biāo)準(zhǔn)的電能表安裝在84個國家的500多個電力公司的用戶上[3]。STS協(xié)會已經(jīng)將STS標(biāo)準(zhǔn)和IEC/TC 13 WG15建立對應(yīng)關(guān)系,本文通過IEC 62055系列標(biāo)準(zhǔn)體系介紹對其安全認(rèn)證方式進行了必要的研究。
在近期的IEC TC13國際標(biāo)準(zhǔn)化年會上對WG15的工作新的工作重點是智能計量系統(tǒng)—功能和流程,確定了信用表(creditmeters)和付費表(payment meters)之間關(guān)系,明確了所有的智能電能表通過運行模式的改變可以成為付費電能表。
IEC 62055系列標(biāo)準(zhǔn)范圍涵蓋付費系統(tǒng)、用戶信息系統(tǒng)、售電系統(tǒng)、令牌介質(zhì)、預(yù)付費電能表和存在于這些實體中的接口。IEC 62055總標(biāo)題為“電能計量—付費系統(tǒng)”由下列部分組成:
IEC 62055-1-0:智能計量系統(tǒng)-功能和流程的術(shù)語定義;
IEC 62055-21:付費系統(tǒng)標(biāo)準(zhǔn)架構(gòu);
IEC 62055-31:特殊要求-靜止式預(yù)付費有功電能表(1級和2級);
IEC 62055-41:標(biāo)準(zhǔn)傳輸規(guī)范(STS)-單向令牌介質(zhì)系統(tǒng)的應(yīng)用層協(xié)議,是針對單向介質(zhì)載波通信系統(tǒng)的應(yīng)用層協(xié)議標(biāo)準(zhǔn),未來將擴展到以滿足多能量(水表和天然氣表等)需要;
IEC 62055-42:標(biāo)準(zhǔn)傳輸規(guī)范(STS)-虛擬數(shù)據(jù)交換;
IEC 62055-51:標(biāo)準(zhǔn)傳輸規(guī)范(STS)-單向數(shù)字和磁卡令牌介質(zhì)的物理層協(xié)議;
IEC 62055-52:標(biāo)準(zhǔn)傳輸規(guī)范(STS)-直接局域聯(lián)結(jié)的雙向虛擬令牌介質(zhì)的物理層協(xié)議;
IEC 62055-61:付費系統(tǒng)功能和元素(WG15規(guī)劃);
IEC 62055-71:付費系統(tǒng)流程(WG15規(guī)劃)。
未來,WG15正在考慮開展支付系統(tǒng)的測試的標(biāo)準(zhǔn)工作。IEC 62055系列在智能計量方面的構(gòu)架將參照 IEC/TC13 WG14 IEC 62056-1-0結(jié)構(gòu)和 IEC/TC57 WG19 IEC 62357參考架構(gòu)兩項國際標(biāo)準(zhǔn)建立。
IEC/TC13WG14工作組就電能測量與負(fù)荷控制設(shè)備制定的一套完整的國際標(biāo)準(zhǔn)體系,DLMS/COSEM作為其中的核心內(nèi)容,得到了廣泛認(rèn)可和應(yīng)用,付費功能已被包含在中,所以WG15重點專注于付費系統(tǒng)的終端并研究這個層面互操作能力,集中在語義層上,而WG14已經(jīng)涵蓋了物理層、底層,應(yīng)用層及COSEM,如圖1所示。圖中顯示了兩個模型通用信息模型(CIM)和COSEM是如何相互關(guān)聯(lián)的,WG15集中描述了系統(tǒng)架構(gòu)之間的聯(lián)系。
圖1 智能電網(wǎng)和智能儀表的協(xié)調(diào)框架Fig.1 Harmonization framework for smart grid and smartmeter
圖1中橢圓框圖表示W(wǎng)G14的工作,目前已在IEC 62056-1-0中定義:從概念上提供從物理層到COSEM/OBIS(對象識別系統(tǒng))的通信堆棧;
長方形框圖表示W(wǎng)G15的工作:
(1)從概念上提供建立在WG14語義層之上的功能和流程標(biāo)準(zhǔn),也包括通用信息模型的語義層和智能能源對象;
(2)IEC 62055-41,IEC 62055-51和 IEC 62055-52(STS)標(biāo)準(zhǔn)映射到語法層和更下面的層。
圓圈元素表示在各種存在競爭的語義和語法層標(biāo)準(zhǔn)之間的協(xié)調(diào)一致的特殊標(biāo)準(zhǔn):
(1)在 STS/DLMS/COSEM之間的映射 1-STS協(xié)會已經(jīng)開始這項工作,并且已經(jīng)納入WG15議程;
(2)在 CIM/DLMS/COSEM之間的映射 2-JWG 16(聯(lián)合工作專家)已經(jīng)從事此項工作;在 SEP/DLMS/COSEM之間的映射3-未來的可能工作。
圖2顯示了CIM功能如何映射到付費用例(橢圓)和功能(方框)。這個圖表是付費系統(tǒng)中語義協(xié)調(diào)的基礎(chǔ),標(biāo)準(zhǔn)將據(jù)此定義所有需要的功能。電能通過計量功能測量,其電能的輸送量由計費功能模塊通過開關(guān)控制,會計功能管理著信用額度,處理信用充值傳送到交付功能控制開關(guān),送入輸送功能從而控制開關(guān),充值由接收功能發(fā)出的收據(jù)。
圖2 功能/用例/CIM關(guān)聯(lián)性Fig.2 Function/use case/CIM associations
其中橢圓是在IEC 62055-21中被描述的關(guān)聯(lián)功能對象的UML語法構(gòu)造用例,左側(cè)菱形對象是被在IEC 61968-11中定義的通用信息模型建模通用語言的信息分類和聯(lián)系。粗線的連接由WG15添加。WG15現(xiàn)在已經(jīng)定義了付費計量過程的所有構(gòu)成。
標(biāo)準(zhǔn)傳輸規(guī)范(STS)是一部關(guān)于信息安全傳遞的協(xié)議,用于實現(xiàn)售電終端(POS)和預(yù)付費表計之間進行信息傳遞、表計測試和參數(shù)配置等功能,并用STA加密算法提高售電系統(tǒng)內(nèi)信息傳遞的安全性[4]。
在IEC 62055-41標(biāo)準(zhǔn)中講述了STS的參考模型,其包括:一般預(yù)付費表功能框圖、STS協(xié)議的參考模型、由售電終端應(yīng)用處理到令牌介質(zhì)的數(shù)據(jù)流向、由令牌介質(zhì)到電能表應(yīng)用處理的數(shù)據(jù)流向和ISO標(biāo)準(zhǔn)交易基準(zhǔn)號碼[5]。
一般預(yù)付費功能框圖如圖3所示,在一體式預(yù)付費表中,所有的基本功能位于全部在電能表中,如果解碼器集成了計量功能,那么解碼器基準(zhǔn)編碼(DRN)就變成了 “電能表序列號”。而在分離式的預(yù)付費表中,令牌介質(zhì)接口與表計功能在是分離的兩部分中,這樣電能表擁有獨立的表號,此時DRN碼與表號可以清晰地區(qū)分,并被標(biāo)示在裝解碼器的殼體上[6]。在所有情況下,只能有一個應(yīng)用層,因此DRN與預(yù)付費表是一一對應(yīng)的,無論是一體式還是分離式預(yù)付費表計、抑或在同一塊預(yù)付費表計中有多個物理層。
圖3 一般預(yù)付費表功能框圖Fig.3 Function block diagram of a generic single-part paymentmeter
STS是用于由POS和電能表之間用令牌介質(zhì)作為傳輸媒介的安全數(shù)據(jù)傳輸協(xié)議。應(yīng)用層協(xié)議處理的是令牌、加密過程和功能,物理層協(xié)議處理的是將令牌數(shù)據(jù)編碼到令牌介質(zhì)上,如圖4表示??蓪嶓w令牌載體設(shè)備有:數(shù)字、磁卡、記憶卡以及記憶鑰匙等,可作為虛擬令牌載體有:PSTN modem、ISDN modem、GSM modem、GPRSmodem、radiomodem、PLCmodem、紅外線、LAN/WAN以及本地連接等。盡管 IEC 62055-41標(biāo)準(zhǔn)遵循一個分解的兩層OSI架構(gòu),但如果有需要或者執(zhí)行者提出,則還會在這兩層之間擴展更多層。應(yīng)用協(xié)議數(shù)據(jù)單元(APDU)是應(yīng)用層協(xié)議的數(shù)據(jù)接口,在IEC 62055-41中有規(guī)范;令牌介質(zhì)數(shù)據(jù)單元(TCDU)是物理層協(xié)議的數(shù)據(jù)接口,在 IEC 62055-51/52標(biāo)準(zhǔn)中有規(guī)范[7-8]。
圖4 STS用兩層OSI協(xié)議棧分解的STS模型Fig.4 STSmodelled by a 2-layer collapsed OSIprotocol stack
STS付費計量系統(tǒng)是一個集合,該系統(tǒng)支持電能服務(wù)供應(yīng)商與消費者的契約關(guān)系,它包含過程,功能,數(shù)據(jù)單元,系統(tǒng)實體(裝置和使用者)和接口。因為涉及到財務(wù)和費用問題,對于代碼式預(yù)付費電表的供應(yīng)商和消費者來說,安全問題是最重要的。
STS付費系統(tǒng)安全體系主要分為兩個部分:Token碼加密解密和密鑰Key管理。Token碼是STS標(biāo)準(zhǔn)提供的生成的20位代含有信用額度的碼命令,只能在預(yù)付費電表上使用一次。密鑰Key由STS協(xié)會下屬的密鑰管理中心(KMC)分別向售電終端和表及生產(chǎn)商辦法[9]。
在STS中Token是數(shù)據(jù)單元的子集,包括存在于POS到Token載體接口應(yīng)用層APDU的信息,并通過Token載體傳送到預(yù)付費表計中,最終用于表計的應(yīng)用處理,其由一串長20位的BCD碼組成。依據(jù)STS協(xié)議進行進制轉(zhuǎn)換,將20位BCD碼轉(zhuǎn)換成66位二進制數(shù)據(jù)串,其主要包含了類型、子類型、隨機數(shù)(RND)、Token令牌識別碼(TID)、電量及 CRC等信息。Token碼的解密和加解密流程如圖5所示,過程如下:
(1)校驗Token的CRC值,確保是有效的Token,然后提取類號,分類進行解析[10]。Token傳輸數(shù)據(jù)的總長度為66位,其中最后16位由CRC校驗和組成,該校驗和是由上述50位數(shù)據(jù)導(dǎo)出;50位左邊用6位二進制數(shù)0進行補添組成56位,計算之前CRC校驗和初始化為FFFF;
圖5 Token流程圖Fig.5 Flow chart of Token
(2)Token令牌識別碼TID驗證。從而提取購電量信息,進行電量充值。TID數(shù)據(jù)域由發(fā)行日期和時間導(dǎo)出,表示以基準(zhǔn)日期和時間為起點的歷時時間的分鐘數(shù)。當(dāng)驗證TID為有效值后,將除去類號的64位二進制數(shù)提取作為待處理明文數(shù)據(jù);
(3)Token的加解密過程。Token是通過STA加密算法實現(xiàn)的保密,STA加密算法是一個含一個密鑰隊列和16次反復(fù)代換、換位、和密鑰循環(huán)移位的過程。經(jīng)過STA算法,將64位二進制明文數(shù)據(jù)轉(zhuǎn)換成64位二進制密文數(shù)據(jù);
(4)Token的進制轉(zhuǎn)換,進一步加強Token安全性。將類型號與由步驟3得到的64位密文合并,再通過STS協(xié)議轉(zhuǎn)換成20位BCD碼,即為Token碼。
STA標(biāo)準(zhǔn)傳輸算法(Standard Transfer Algorithm),是STS協(xié)議IEC 62055-41中的售電標(biāo)準(zhǔn)安全傳輸算法,對于代碼式預(yù)付費電表Token認(rèn)證任務(wù)模塊軟件來說主要是用STA算法完成對Token的認(rèn)證和解析,并完成相應(yīng)的信息功能[11]。該算法是對稱加密算法,加密算法和解密算法互為補充,共享同一個密鑰,標(biāo)準(zhǔn)傳輸算法的加密過程如圖6所示。
STA加密算法包含一個密鑰隊列和16次反復(fù)換位、替換和密鑰循環(huán)移位過程。首先64位解碼密鑰取補碼并左移12位,然后與64位數(shù)據(jù)塊結(jié)合,再經(jīng)過64次換位過程,4位替換過程以及密鑰左移1位過程,最后再將上一步驟重復(fù)16次,從而完成STA算法加密并得到了64位加密數(shù)。
圖6 STA加密算法Fig.6 STA encryption algorithm
從圖5和圖6可以看出,Token是由64位解碼器密鑰經(jīng)過加密生成的,而根據(jù)IEC 62055-41標(biāo)準(zhǔn),解碼器密鑰則是由售電密鑰經(jīng)過解碼器密鑰生成算法(DKGA)產(chǎn)生的,售電密鑰的生成過程則如圖7所示。在STS密鑰管理體系涉中主要由售電終端和安全模塊、密鑰管理中心(KMC)、公共服務(wù)運營商和表計制造商組成。
(1)安全模塊,作為整個售電系統(tǒng)的核心部分。安全模塊用來存放KMC發(fā)布的售電密鑰并且集成了電表密鑰生成算法和代碼加密算法。安全模塊由公共服務(wù)運營商向安全模塊制造商下單生產(chǎn),然后被發(fā)送到密鑰管理中心進行初始化并裝載保密的售電密鑰,最后安裝在預(yù)付表計中,可通過密鑰裝載文件裝載來自密鑰管理中心的新的售電密鑰;
(2)公共服務(wù)運營商給指定的客戶群體提供電能。其一般是根據(jù)安全風(fēng)險,收入評估,地理位置以及電網(wǎng)的特性來劃分客戶群體的界限和規(guī)模;
(3)密鑰管理中心主要負(fù)責(zé)根據(jù)公共服務(wù)運營商的要求對進行安全模塊的驗證和初始化;分配供應(yīng)組編碼及售電密鑰;并且根據(jù)表計制造商、電力公司以及POS的裝在請求,將售電密鑰裝載到模塊中;
(4)表計制造商根據(jù)公共服務(wù)運營商訂單要求生產(chǎn)預(yù)付費表計,付費表計出廠時將裝載的跟指定的供應(yīng)組代碼(SGC)關(guān)聯(lián)的三種密鑰 (DDTK,DUTK或者 DCTK)中的一種[12]。
從圖7中我們可以看出,售電密鑰由KMC集中生產(chǎn)和管理。每一種密鑰無論是售電側(cè)的密鑰還是電表的密鑰的生成和傳遞過程都采用密文方式,在任何狀態(tài)下密鑰都是不會被明文讀出,有效的防止了數(shù)據(jù)在傳遞過程中被跟蹤和破解。
圖7 密鑰管理系統(tǒng)中各組織關(guān)系圖Fig.7 Relationship diagram of each organization in the keymanagement system
所有的密鑰都是唯一的密鑰,根據(jù)以上圖的密鑰管理流程可以看出,密鑰、表號、密鑰版本號、費率索引號、SGC和密鑰類型都離散和關(guān)聯(lián)在一起,做到了每一塊表擁有唯一的密鑰,從而無法通過外界生成的密鑰威脅售電系統(tǒng)的安全。
同時靈活系統(tǒng)搭建方案,即可單機搭建,也可方便升級為網(wǎng)絡(luò)版的售電系統(tǒng),及銀行聯(lián)網(wǎng),POS機,ATM機方式進行售電。采用生產(chǎn)狀態(tài)下的公開密鑰和運行狀態(tài)下的私鑰模式,表計制造商的和供電系統(tǒng)的安全性完全分離,徹底保證了系統(tǒng)的安全性。
基于STS代碼預(yù)付費電能表已在全球近100個國家開始使用并有推廣趨勢,但是研究機構(gòu)大多集中在歐美。這些研究機構(gòu)主要是進行基于代碼式預(yù)付費電能表方案的研究,各個公司都嚴(yán)守技術(shù)秘密,公開的技術(shù)資料和設(shè)計文獻少之又少,因此基于STS的IEC 62055系列國際標(biāo)準(zhǔn)的制定具有重大意義,IEC 62055是代碼式預(yù)付費電能表的核心,對在代碼式預(yù)付費電表的實際使用、安全性、可操作性非常重要。在IEC 62055中,對代碼式預(yù)付費電能表系統(tǒng)傳輸介質(zhì)、傳輸內(nèi)容、加密和解密算法制定了公開技術(shù)要求,其具備了一套完整的安全體系,保證了預(yù)付費售電體系運行的安全可靠。