仲偉強,韓 濤
(卡斯柯信號有限公司, 北京 100070)
在分布式系統中,運行的設備需要根據用戶要求頻繁更新配置數據,為了確認設備上更新的配置數據正確性,通常采用在PC機或設備的維護終端回讀配置數據的版本信息,然后再人工確認的方式。上述方法存在如下缺點。
1)PC機或設備的維護終端通常不是安全設備,其中可能保存過時的配置數據版本信息,從而可能導致其顯示出的配置數據版本信息與其回讀到的版本信息不一致的。
2)即使顯示出的配置數據版本信息與回讀到的一致,但在人工確認環節存在人為失誤的風險。例如,配置到設備上的數據版本錯誤且該錯誤的版本信息已被PC機或維護終端正確地回讀并顯示,但人工確認錯誤也將導致設備上運行了錯誤版本的數據。
3)即使數據版本信息正確,但數據不一定被配置到了正確的設備上。例如分布式系統中存在相同的多個設備,但每個設備需要配置不同的數據,此時就存在數據配置錯誤的風險。
4)本方法采用了安全算法將設備的特征信息生成校驗碼并通過比對校驗碼的一致性來判斷配置到設備上的數據是正確的,整個校驗過程由設備自動完成無需人工干預,既提高了工作效率,也避免了人工介入引起的風險。
特征信息包含以下幾種:
1)分布式系統所在的地理位置編號:用于區分不同的分布式系統,同一分布式系統中的設備,該編號相同;
2)分布式系統中各設備的編號:用于區分同一分布式系統中的設備,同一分布式系統中不同的設備,該編號不同;
3)各設備上配置的硬件版本:用于區分設備的不同硬件配置,硬件配置不同,硬件版本號不同;
4)各設備上配置的數據版本:用于區分設備的不同數據配置,數據配置不同,數據版本號不同;
5)各設備上配置的軟件版本:用于區分設備的不同軟件配置,軟件配置不同,軟件版本號不同。
一方面,采用安全算法生成校驗碼后,通過專用設備進行存儲;另一方面,將上述特征信息寫入到配置數據中,在分布式系統設備上配置數據時,需要同時配置生成的校驗碼。配置完數據后,設備初始化過程中,采用相同算法,將寫入到配置數據中的特征信息在線生成校驗碼,然后與存儲在專用設備上的校驗碼進行比對。如果一致,則系統完成初始化并投入運行;否則,將初始化失敗,無法投入運行。
整體流程如圖1所示。
采用如下安全算法生成校驗碼,如果由于特征信息的存儲設備發生隨機性失效時,也會在設備初始化過程中被檢查出來:
其中:
i=1,2,3……n,n為特征信息的個數;
j=1,2,3……m,m為分布式系統設備的運算通道個數;
CheckSumj:運算通道j的校驗碼;
Xi:第i個特征信息;
Aj:計算運算通道j校驗碼所使用的常量(作為取模運算的常量);
θj:計算運算通道j校驗碼所使用的常量(作為卷積運算的常量);
Sigj(i):與第i個特征信息對應的第j個運算通道的簽名;
Mod:取模運算。
基于加密設備特征信息的配置數據自動校驗方法應用如圖2所示,在數據配置及校驗過程的應用場景,包含以下幾個步驟。
圖2 應用示意Fig.2 Application schematic
1)生成離線校驗碼
a.通過PC,采用安全算法,將如圖3所示的A、B、C設備特征信息離線生成如圖4所示的校驗碼。
b.并將生成的校驗碼導入存儲校驗碼的專用設備上。
c.通過存儲校驗碼的專用設備,將校驗碼導入現場設備中。
2)添加特征信息到數據中
a.將設備的特征信息添加到要配置的數據中。
圖3 特征信息Fig.3 Characteristic information
圖4 校驗碼Fig.4 Check sum
b.將編譯好的數據導入到存儲數據設備中。
c.通過存儲數據設備,將校驗數據導入現場設備中。
3)生成在線校驗碼
a.現場設備將導入的數據中的特征信息進行提取。
b.采用相同的安全算法,將提取的特征信息在線生成校驗碼。
4)在線校核
現場設備將導入的校驗碼與在線生成的校驗碼進行比對。如果一致,則初始化成功;否則,初始化失敗。
與現有技術相比,本方法具有如下優點。
1)無需對配置的數據版本信息進行回讀,避免了在回讀過程中引入的讀錯、顯示錯誤的風險。
2)通過將設備的特征信息生成校驗碼來自動校驗配置數據版本的正確性,避免了人工確認失誤的風險。
3)采用了安全算法生成校驗碼,如果保存該校驗碼的專用設備故障而導致校驗碼錯誤,也會在設備初始化過程中被檢查出來。
4)無需攜帶PC也可完成配置數據版本校驗工作。