亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        工程設(shè)計數(shù)字圖紙DXF格式文件的篡改檢測定位方法

        2023-11-09 10:37:18范榮全鄭曉波曾嶸向圣軍陳少卿呂俊杰
        微型電腦應(yīng)用 2023年10期
        關(guān)鍵詞:檢測設(shè)計

        范榮全, 鄭曉波, 曾嶸, 向圣軍, 陳少卿, 呂俊杰

        (1.國網(wǎng)四川省電力公司,四川,成都 610000; 2.國網(wǎng)四川省電力公司天府新區(qū)供電公司,四川,成都 610000;3.成都榮耀科技有限公司,四川,成都 610000)

        0 引言

        目前有關(guān)文件防篡改的技術(shù)主要針對常見格式位圖文件和SHP格式矢量圖文件。工程系統(tǒng)設(shè)計文件格式一般為DXF,具有多層次、多元素等特征,單層次單元素的位圖篡改檢測、定位技術(shù)不適用,而SHP文件和DXF文件相互轉(zhuǎn)換中會丟失大量數(shù)據(jù),因此現(xiàn)有針對SHP格式的矢量圖文件的防篡改技術(shù)不適用于工程系統(tǒng)設(shè)計文件的篡改檢測?,F(xiàn)有很多方法只能判斷文件是否被篡改,并不能對篡改處進(jìn)行定位。

        現(xiàn)有篡改檢測、定位算法均不適用于DXF格式設(shè)計文件,需要對DXF工程文件設(shè)計有針對性的篡改檢測和定位方法。

        1 相關(guān)研究

        重要的設(shè)計文件不僅會受到外部黑客的攻擊,還會受到內(nèi)部的惡意破壞和非法篡改。近年來,一些研究團(tuán)體和學(xué)者對文件篡改定位已開展了很多相關(guān)的研究工作,取得了一定的研究成果。林意等[1]提出將文件頭信息作為圖像像素灰度值進(jìn)行處理,利用MD5構(gòu)造的哈希函數(shù)生成文件頭的信息摘要值,并將消息摘要值作為水印,以可逆不可見的方式嵌入DICOM圖形,使用提取水印與重新生成水印的差異進(jìn)行文件頭信息篡改檢測,該方法對文件頭信息篡改具有極強(qiáng)的敏感性、較高的準(zhǔn)確性,對大文件處理效率過慢。陳陽等[2]提出一種支持篡改定位的電子航海圖零水印算法,在ENC文件以經(jīng)緯度表示的離散點(diǎn)坐標(biāo)數(shù)據(jù)分布規(guī)律的基礎(chǔ)上,構(gòu)造離散點(diǎn)經(jīng)緯度坐標(biāo)校驗(yàn)碼的二值序列,引入經(jīng)緯度坐標(biāo)校驗(yàn)碼和格網(wǎng)分塊技術(shù),在保證ENC數(shù)據(jù)精度的同時,具備點(diǎn)位篡改定位的特性,主要應(yīng)用在電子航海圖數(shù)據(jù)的版權(quán)保護(hù)上。SU等提出了一種基于混合Sudoku的圖像篡改檢測脆弱水印算法,水印虛擬地嵌入每個像素對中,產(chǎn)生臨時坐標(biāo)信息,然后將臨時信息坐標(biāo)隱藏到覆蓋圖像中,實(shí)驗(yàn)表明精度較高,有效定位出篡改位置,但不適用于DXF文件。彭一航等提出一種基于遞進(jìn)式混合特征的篡改圖片識別算法。算法針對SIFT特征無法區(qū)分自然相似區(qū)域與篡改區(qū)域的問題,結(jié)合矩特征的優(yōu)點(diǎn),提取合成子塊的遞進(jìn)式混合調(diào)整來降低算法的虛警率。算法可以有效防止傳統(tǒng)圖片復(fù)制-粘貼的圖片篡改方式,但DXF文件篡改存在數(shù)據(jù)變更問題,并不適用。

        2 設(shè)計文件篡改檢測定位方法

        本節(jié)針對DXF文件設(shè)計篡改檢測與定位方法。首先,詳細(xì)分析DXF文件的結(jié)構(gòu),找出改變元素會顯著改變的關(guān)鍵部分。提取這些關(guān)鍵部分元素借助默克爾樹生成防篡改碼[2-3]。最后通過對比實(shí)時生成的篡改碼與原始保存的防篡改碼是否一致來判斷文件是否被篡改,并通過回溯默克爾樹定位被篡改的位置。DXF結(jié)構(gòu)如圖1所示。

        圖1 DXF結(jié)構(gòu)圖

        2.1 DXF文件結(jié)構(gòu)解析

        DXF 圖形文件結(jié)構(gòu) DXF文件由標(biāo)題段(Header)、表段 (Tables)、塊段(Block)、實(shí)體段(Entities)和文件結(jié)束段(EoF)共5部分組成。DXF通過每一行存儲相關(guān)數(shù)據(jù),每兩行為一個組,第一行為組的代碼,第二行為組值,一個組就代表了一個數(shù)據(jù)的含義和值,DXF文件由大量的組構(gòu)成。經(jīng)過研究,對內(nèi)容比較敏感的是其中的表圖層(Layer)、塊段(Blocks)和實(shí)體段(Entities),文件只要有改動必然反映在這些元素里。所以雖然DXF文件結(jié)構(gòu)相當(dāng)復(fù)雜,但根據(jù)需求,只要獲取其中的層表、塊段和實(shí)體段,就可以完成相應(yīng)實(shí)體的提取[4-5]。

        2.2 設(shè)計文件特征獲取

        將DXF格式的工程系統(tǒng)設(shè)計文件進(jìn)行分解,并按關(guān)鍵字提取特征。將層元素、塊元素和實(shí)體元素對應(yīng)的序列進(jìn)行拼接,將拼接結(jié)果作為設(shè)計文件的特征。

        (1) 將表圖層中的關(guān)鍵字“TABLE 2 LAYER 5”作為表圖層的開始,將關(guān)鍵字“0 ENDTAB”作為表圖層的結(jié)束,將關(guān)鍵字“0 LEYER 5”所分割的數(shù)據(jù)作為表圖層的數(shù)據(jù)分片,以關(guān)鍵字定位并提取表圖層的每一個數(shù)據(jù)段構(gòu)成表圖層數(shù)據(jù)序列L1,L2,…,Ln。

        (2) 將塊段中的關(guān)鍵詞“0 SECTION 2 BLOCKS”作為塊段的開始,將關(guān)鍵字“100 AcDbBlockEnd 0 ENDSEC”作為塊段的結(jié)束,將關(guān)鍵字“0 ENDBLK 5”所分割的數(shù)據(jù)作為塊段的數(shù)據(jù)分片,以關(guān)鍵字定位并提取塊段的每一個數(shù)據(jù)段構(gòu)成塊段數(shù)據(jù)序列B1,B2,…,Bm。

        (3) 將實(shí)體段中的關(guān)鍵詞“0 SECTION 2 ENTITIES”作為實(shí)體段的開始,將關(guān)鍵字“0 ENDSEC”作為實(shí)體段的結(jié)束,將關(guān)鍵字“100 AcDbEntity 8”所分割的數(shù)據(jù)作為實(shí)體段的數(shù)據(jù)分片,以關(guān)鍵字定位并提取實(shí)體段的每一個數(shù)據(jù)段構(gòu)成實(shí)體段數(shù)據(jù)序列E1,E2,…,ES。

        (4) 把實(shí)體段中變量的個數(shù)定義為實(shí)體數(shù)量s。

        2.3 防篡改碼生成

        將電力系統(tǒng)設(shè)計文件的特征L1,L2,…,Ln,B1,B2,…,Bm,E1,E2,…,ES作為底層葉子,之后相鄰的兩個節(jié)點(diǎn)的哈希值合并成一個字符串,然后計算這個字符串的哈希值,得到的就是這兩個節(jié)點(diǎn)的父節(jié)點(diǎn)的哈希值。如果該層樹節(jié)點(diǎn)個數(shù)是單數(shù),那么對于最后剩下的節(jié)點(diǎn),直接進(jìn)行哈希運(yùn)算以獲取父節(jié)點(diǎn)的值[6]。循環(huán)重復(fù)上述計算過程,最終計算得到最后一個節(jié)點(diǎn)的哈希值,將該節(jié)點(diǎn)的哈希值作為整棵樹的哈希,將默克爾樹的根節(jié)點(diǎn)哈希值作為設(shè)計文件的防篡改碼。DXF防篡改碼Merkle圖,如圖2所示。

        圖2 DXF防篡改碼Merkle圖

        2.4 篡改檢測

        由于防篡改碼生成比較耗時,為了提高檢測效率,在比較時先對比提取的實(shí)體是否一致:如果實(shí)體個數(shù)都不同,則肯定被篡改過;如果實(shí)體數(shù)目一致再生成篡改碼作進(jìn)一步對比。

        (1) 若均通過則獲取區(qū)塊里的工程系統(tǒng)設(shè)計文件,結(jié)束篡改檢測定位。

        (2) 若未通過,則獲取當(dāng)前工程系統(tǒng)設(shè)計文件的默克爾樹,并將其與區(qū)塊內(nèi)的默克爾樹中各個層的特征值進(jìn)行對比,根據(jù)圖層-影響此圖層塊段-影響此塊段實(shí)體的順序,定位設(shè)計文件被篡改的數(shù)據(jù)段,并生成篡改報告。篡改報告包括被篡改過的數(shù)據(jù)段集合[7-8]。

        3 實(shí)驗(yàn)分析

        3.1 DXF解析

        本文實(shí)驗(yàn)了不同大小設(shè)計文件的篡改檢測定位效果和效率,實(shí)驗(yàn)中使用的開發(fā)語言為Python。

        獲取一個簡易的DXF圖形,打開后如圖3所示。

        圖3 DXF篡改前可視化圖

        這圖形主要由4條直線和10個圓圈組成。

        對這個DXF分析,DXF文件篡改前結(jié)構(gòu)組成,如圖4所示。

        圖4 DXF文件篡改前結(jié)構(gòu)組成圖

        可以得知這個文件是由編號44-4D的圓組成和編號52-55的線段組成,DXF版本號為AC1015,層段為1個,塊段為3個,實(shí)體段為14個。

        3.2 篡改檢測

        對DXF文件進(jìn)行更改,將其中2個圓改成兩個線段。修改后如圖5所示。

        圖5 DXF篡改后可視化圖

        然后對該DXF文件進(jìn)行解析,得圖6。

        圖6 DXF文件篡改后結(jié)構(gòu)組成圖

        原圖形圓44和圓45變?yōu)榫€段98和線段99。

        文件版本號變?yōu)锳C1032,層由1個變?yōu)?個。通過分析可以得到圖形由多少類型的小塊構(gòu)成,那么該圖形有多少實(shí)體。

        若刪去一個線段99,實(shí)體便會變?yōu)?3個,如圖7所示。

        圖7 DXF文件篡改后結(jié)構(gòu)組成圖

        判斷實(shí)體數(shù)量是否發(fā)生變化。如實(shí)體數(shù)量發(fā)生變化,文件被篡改。通過解析文件可以發(fā)現(xiàn),文件具體發(fā)生變化的是哪個圖形。

        對初始文件實(shí)體進(jìn)行MD5哈希,如圖8所示。

        圖8 篡改前實(shí)體MD5值

        對DXF文件圖形進(jìn)行修改,將圓44和圓45變?yōu)榫€段98和線段99,兩個MD5值發(fā)生變化,如圖9所示。

        圖9 篡改后實(shí)體MD5值

        兩個MD5值發(fā)生變化,可以判斷DXF文件被篡改。經(jīng)過類似對比過程可以發(fā)現(xiàn)DXF設(shè)計文件的改動,目前實(shí)驗(yàn)檢測準(zhǔn)確率為98%以上,小型文件基本是百分百的檢測準(zhǔn)確率。

        3.3 性能分析

        以上是篡改方法有效的簡單實(shí)驗(yàn)示例。下面對真實(shí)的DXF文件生成完整的默克爾樹,其根節(jié)點(diǎn)哈希值就是防篡改碼。為了觀察不同大小DXF文件生成防篡改碼的效率,本實(shí)驗(yàn)以100 KB、1 MB和10 MB等3個不同大小量級的DXF文件為例。

        首先對3個文件進(jìn)行解析,生成根節(jié)點(diǎn)的數(shù)量如圖10所示。

        圖10 根節(jié)點(diǎn)生成數(shù)量情況

        通過圖表可以發(fā)現(xiàn),若DXF文件量級達(dá)到10 MB,生成根節(jié)點(diǎn)的數(shù)量會達(dá)到上萬個。

        不同大小文件生成根節(jié)點(diǎn)的時間如圖11所示。

        如今大部分DXF文件的大小都是在100 KB到1 MB之間,100 KB大小文件生成根節(jié)點(diǎn)只需要0.2 s左右,而1 MB的文件生成根節(jié)點(diǎn)需要2 s左右,滿足實(shí)際需要。

        4 總結(jié)

        本文提出了一種設(shè)計文件篡改檢測定位的方法,將多元素的DXF格式設(shè)計文件分解,按元素提取最重要的層、塊、實(shí)體元素和實(shí)體數(shù)量,構(gòu)成設(shè)計文件的特征;接著,將提取的特征作為底層葉子,利用默克爾樹得到文件防篡改碼。實(shí)驗(yàn)表明該方法可以檢測并定位設(shè)計文件的篡改位置,檢測準(zhǔn)確率在98%以上,小型文件達(dá)到100%,且對比較大的設(shè)計文件的處理效率也在秒級,滿足實(shí)際使用需要。本文僅針對DXF格式文件篡改檢測方法進(jìn)行研究,在后續(xù)研究中,仍需對其他格式文件防篡改技術(shù)進(jìn)行完善。

        猜你喜歡
        檢測設(shè)計
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        何為設(shè)計的守護(hù)之道?
        《豐收的喜悅展示設(shè)計》
        流行色(2020年1期)2020-04-28 11:16:38
        瞞天過海——仿生設(shè)計萌到家
        設(shè)計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        成av人片一区二区三区久久| 亚洲精品久久区二区三区蜜桃臀| 神马影院日本一区二区| 久热re这里精品视频在线6| 大伊香蕉在线精品视频75| 亚洲公开免费在线视频| 日本一区二区在线播放| 日本强伦姧人妻一区二区| 久久国产精品精品国产色婷婷| 99国产超薄丝袜足j在线观看| 亚洲乱精品中文字字幕| 国产精品熟女视频一区二区三区| 国产果冻豆传媒麻婆精东| 18禁无遮挡羞羞污污污污网站| 一区二区三区福利在线视频| 亚洲日本中文字幕乱码| 精品+无码+在线观看| 精品久久人人妻人人做精品| 国产精品久久久久免费a∨不卡| 国产一区二区三区护士| 亚洲欧美v国产一区二区| 国产熟女高潮视频| 国产乱人伦AⅤ在线麻豆A| 日本本土精品午夜视频| 国产女主播白浆在线观看| 93精91精品国产综合久久香蕉| av毛片在线播放网址| 国产人妖网站在线视频| 48沈阳熟女高潮嗷嗷叫| 国产乱人伦偷精品视频免| 久久开心婷婷综合中文| 999国产精品999久久久久久| 激情偷乱人伦小说视频在线| 久久亚洲中文字幕精品一区四| 青青草手机在线观看视频在线观看| 成年女人a毛片免费视频| 在线视频制服丝袜中文字幕| 日本视频一区二区三区三州| 国产人妻高清国产拍精品| 久久国产精久久精产国| 国产香蕉尹人在线视频你懂的|