PDF文件的身份證號碼

  PDF文件的身份證號碼

1 身份證
我們每個成年人都有一個身份證, 身份證上有很多信息, 有我們的姓名, 性別, 籍貫, 出生日期, 還有一個很重要的就是身份證號碼. 而且每個人的身份證號碼都不相同。我們的這些身份證上的信息包括省份證都進入了信息庫。
而我們也經常在某些場合填寫自己的身份證號碼,比如開辦銀行帳號的時候。而一旦有了該號碼,銀行就可以獲取你的其它基本信息,因爲你的身份證號碼是唯一的,而在身份證上的其它信息都不是唯一的,同名的人很多,同出生日期的人更多。
類似的還有超市裏的貨物標籤,每個標籤只有一個條形碼和對應的號碼,不過這個條形碼有很多的對應信息,因此說經過讀碼器掃描後可以得到相應的貨物名稱,出廠日期,價格等等信息。對於貨物來說條形碼就是其身份證號碼,方便和加速了貨物的銷售及管理。
 
2 PDF文件的身份證號碼
每個PDF文件都有個唯一的字符串與該文件對應,我們可以把它看作是該PDF文件的身份證號碼,其字符串保存在文件的trailer字典中。用文本編輯器打開一個PDF文件,可以看到:
 
<</Size433/Root 1 0 R/Info 3 0 R/ID[<2C12621CBD44224CA14C29823A6B31F4><2C12621CBD44224CA14C29823A6B31F4>]>>
 
其中紅色部分就是文件的ID。ID是一個數組,有兩個元素,都是32字節長度, 而且這兩個元素的內容完全一樣。第一個元素是不變的,而第二個元素是會隨着PDF文件的修訂而改變的。我對該文件在ACROBAT裏做了修改,trailer字典變成如下:
 
<</Size433/Root 1 0 R/Info 3 0 R/ID[<2C12621CBD44224CA14C29823A6B31F4><BC67F3302346184DA5CCE275D6BD836D>]>>
 
我們會發現ID數組的第二個元素髮生了變化,說明該PDF文件在創建以後已經被修改過了。
 
3 如何獲得PDF文件的身份證號碼
那這個ID是如何生成的呢?PDF規範沒有作限定,如果你要生成一個PDF文件,那麼你可以定義自己的方法來生成該ID,當然要確保該ID的唯一性。
因此一般該ID是通過文件的內容,文件的生成或修改日期,甚至計算機的硬件信息等來產生的HASH序列。
4 PDF文件身份證號碼的作用
PDF中的ID對一些文檔的處理流程格外有用,如果我們要管理大量的文件,我們必須建立一個文件信息表,對於每個文件都需要設置一個唯一的ID,這個ID一般是流水號。這種方式系統的耦合性非常大而且很容易造成文件的重複和空間的浪費。
舉個例子,我們有兩個這樣的系統,每個系統都獨立地維護一個數據庫,有可能我們會在這兩個系統中錄入一些相同的文件,但是他們的ID號不同,因此說如果要將這兩個數據庫合併(也不可能合併),那麼勢必會造成資源的極大浪費。
一般來我們的文檔系統都有服務端和客戶瀏覽器。如果利用PDF文件自身攜帶的ID來作爲唯一的標識,那麼就不必要再傳送額外的信息了,PDF瀏覽器可以通過該PDF文件中的ID來和服務器端進行一些交互和接受服務器端的管理,極大地方便了文檔的處理流程。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章