服務(wù)器在一個(gè)服務(wù)器云中運(yùn)行。服務(wù)器包括3D模型數(shù)據(jù)庫802、用于虛擬機(jī)流化的模糊及散列模塊803、用于虛擬機(jī)實(shí)例圖像散列的動態(tài)散列表數(shù)據(jù)庫804和一個(gè)精確的基于時(shí)間的偽碼發(fā)生器模塊805。在服務(wù)器處可以發(fā)起若干個(gè)虛擬機(jī)實(shí)例A(I)到A(N)(顯示為806到808),每個(gè)虛擬機(jī)實(shí)例包括:一個(gè)操作系統(tǒng)8081,模糊及散列模塊8082,動態(tài)散列表數(shù)據(jù)庫8083,精確的基于時(shí)間的偽碼發(fā)生器模塊8084以及流化模塊8085。散列的虛擬機(jī)實(shí)例圖像被流化至制造機(jī)的接收模塊809,所述接收模塊包括一個(gè)動態(tài)本地散列表數(shù)據(jù)庫8091、用于轉(zhuǎn)化散列的虛擬機(jī)實(shí)例圖像的散列查找模塊8092和精確的基于時(shí)間的偽碼發(fā)生器模塊8093。按照上面的描述將散列的3D模型大部分轉(zhuǎn)化成指令流,然后利用制造機(jī)的流化模塊810安全流化,流化模塊810包括一個(gè)散列查找模塊8101、一個(gè)動態(tài)本地散列表數(shù)據(jù)庫8102,精確的基于時(shí)間的偽碼發(fā)生器模塊8103和制造機(jī)指令譯釋器和流化器8104。
[0067]上面描述的方法的不同實(shí)施例可以自由結(jié)合,這對技術(shù)人員來說是顯而易見的。相似地,上面描述的系統(tǒng)的不同實(shí)施例也可以自由結(jié)合。例如,代替散列或除了散列以外,可以使用其他編碼方法,例如,模糊指令,在指令中應(yīng)用算術(shù)編碼,或者加密指令。虛擬機(jī)可以在云系統(tǒng)中運(yùn)行。在云系統(tǒng)中流化可以作為一種服務(wù)提供。每臺連接到網(wǎng)絡(luò)的計(jì)算機(jī)設(shè)備可以設(shè)置有軟件,從而作為一個(gè)安全流化服務(wù)器運(yùn)行,所以設(shè)計(jì)者能為他們要制造的3D模型提供安全流化。在一個(gè)點(diǎn)對點(diǎn)系統(tǒng)中,每臺連接到點(diǎn)對點(diǎn)網(wǎng)絡(luò)的計(jì)算機(jī)設(shè)備都可以被編程為一個(gè)安全流化服務(wù)器。連接到計(jì)算機(jī)網(wǎng)絡(luò)包括點(diǎn)對點(diǎn)網(wǎng)絡(luò)的計(jì)算機(jī)設(shè)備可以被改進(jìn)為3D模型源。這樣的計(jì)算機(jī)設(shè)備可以適于將3D模型安全流化至另一個(gè)將其流化至制造機(jī)的安全流化服務(wù)器,或者3D模型源可以與安全流化服務(wù)器集成,從而直接將3D模型流化至制造機(jī)。
[0068]加密散列函數(shù)包括公知的函數(shù),例如消息摘要算法(MD4,MD5)、安全散列算法(SHA-1,SHA-2,SHA-3)、Skein、Keccak、Rad1Gatun、PANAMA 和許多其他算法。理想的加密散列函數(shù)具有四個(gè)主要特性:對任何給定的信息,容易計(jì)算散列值;產(chǎn)生一個(gè)具有給定散列值的消息是不可行的;不改變散列值而修改消息是不可行的;找到兩個(gè)具有相同散列值的不同消息是不可行的。代替加密散列函數(shù),其他具有相似特性(即,容易對每個(gè)輸入進(jìn)行計(jì)算,但很難反轉(zhuǎn)給定的隨機(jī)輸入的圖像)的單向函數(shù)也可以用于散列。即使可以使用一般用途的散列函數(shù),考慮到被散列數(shù)據(jù)的性質(zhì)(即,用于控制制造機(jī)的指令),也可以設(shè)計(jì)特殊用途的散列函數(shù)。校驗(yàn)和函數(shù)、循環(huán)冗余檢查、校驗(yàn)和以及指紋函數(shù)均可用于散列,可以用非線性查找表進(jìn)行散列。
[0069]該用于安全流化的方法和系統(tǒng)或許在其他需要安全流化的技術(shù)領(lǐng)域也有用處,例如,1.用于流化控制指令來控制遠(yuǎn)處的物體,或者2.用于將指令從一個(gè)操作模塊流化到汽車、飛機(jī)、輪船、電子或計(jì)算機(jī)設(shè)備等的另一個(gè)模塊,3.用于媒體廣播(收音機(jī)、電視),4.用于將3D物體從存儲模塊傳播至3D設(shè)備的呈現(xiàn)模塊,像3D影院的3D放映機(jī)、3D電視、智能電視、3D游戲機(jī)、3D手機(jī)App、3D虛擬現(xiàn)實(shí)眼鏡、增強(qiáng)現(xiàn)實(shí)的應(yīng)用和設(shè)備、3D全息設(shè)備和應(yīng)用。對于技術(shù)人員來說即刻顯然,這種情況下,代替控制制造機(jī)的指令,需要使用適于控制這樣的設(shè)備的不同類型的指令。
[0070]雖然此方法是基于流化指令到制造機(jī)的,但是也可以包括在發(fā)送前在制造機(jī)內(nèi)或服務(wù)器中暫時(shí)緩沖或存儲指令流。
[0071]圖1中示出了該系統(tǒng)。在云內(nèi)有一個(gè)主服務(wù)器,包括:
[0072]—個(gè)API F (前端應(yīng)用程序編程接口 ),優(yōu)選地,是一個(gè)安全的API (例如SSL,其他種類),由3D模型的市場使用。安全流化通過市場開始。
[0073]—個(gè)API B (后端應(yīng)用程序編程接口 ),優(yōu)選地,是一個(gè)安全的API (例如SSL,其他種類),由后端解決方案的權(quán)利持有人使用,用于將3D模型安全上傳至一個(gè)3D物體模型安全存儲器。
[0074]—個(gè)API VM(虛擬機(jī)上的應(yīng)用程序編程接口),優(yōu)選地,是一個(gè)安全的API,用于與3D物體模型安全存儲器通信。
[0075]虛擬機(jī),其中每個(gè)虛擬機(jī)實(shí)例VM I到VM N用于針對要再現(xiàn)的特定的(即,一個(gè)并且僅僅一個(gè))3D物體模型和這種復(fù)制所用的特定的(即,一個(gè)并且僅僅一個(gè))3D打印機(jī),執(zhí)行預(yù)定的時(shí)間量。完成流化以后,負(fù)責(zé)流化會話的虛擬機(jī)被摧毀。流化會話使用流動散列表來保證流化過程安全;使用散列表進(jìn)行安全流化在同樣未授權(quán)的歐洲專利申請?zhí)朎P13151981.1中進(jìn)行了描述。
[0076]3D打印機(jī)的授權(quán)表被保存在主服務(wù)器中。這種表包含注冊過的3D打印機(jī)的信息、獨(dú)一無二的打印機(jī)標(biāo)識符、認(rèn)可(如許可證)的開始和截止日期、經(jīng)流化的3D模型的時(shí)間、經(jīng)注冊的3D打印機(jī)的當(dāng)前狀態(tài)(忙碌、可以使用、未連接、網(wǎng)絡(luò)錯(cuò)誤等)等。
[0077]云還包括一個(gè)3D文件的安全存儲器,存儲著3D文件和它們的參數(shù)以及元信息。主服務(wù)器僅僅能夠進(jìn)入安全存儲器進(jìn)行寫操作(僅僅能夠?qū)戇M(jìn)入)。只有正確的虛擬機(jī)能夠進(jìn)入安全存儲器從中讀取3D文件。
[0078]云內(nèi)系統(tǒng)的不同部分(主服務(wù)器、虛擬機(jī)、前端、后端、安全存儲器、3D打印機(jī)等)之間利用安全連接彼此相連,比如虛擬網(wǎng)絡(luò),比如開放的專用虛擬網(wǎng)絡(luò)(Open VPN)。
[0079]云的不同部分之間使用專有協(xié)議進(jìn)行彼此間的通信。這個(gè)協(xié)議利用了散列和其他加密算法。
[0080]3D打印機(jī)與主服務(wù)器連接。3D打印機(jī)可以是任何種類的3D打印機(jī)(USB連接的、網(wǎng)絡(luò)連接的、WiFi打印機(jī)等)。打印機(jī)通過以下方式與云進(jìn)行通信:3D打印機(jī)內(nèi)的芯片、打印機(jī)內(nèi)部的臺,或通過連接打印機(jī)的獨(dú)立設(shè)備,或使用打印機(jī)外部的計(jì)算機(jī)軟件。3D打印機(jī)的內(nèi)部部分和外部部分可以用硅/其他材料固體填充物或金屬套管進(jìn)行物理保護(hù),用金屬套管會使它更加不可能被拆卸,或者被拆卸時(shí),該設(shè)備將變得不可操作。
[0081]3D打印機(jī)對云是可見的,即使它在大量防火墻后面也如此。3D打印機(jī)可以具有外部IP地址,但不是必須的,這由所謂的打印機(jī)服務(wù)器上的虛擬機(jī)點(diǎn)對點(diǎn)虛擬網(wǎng)絡(luò)實(shí)現(xiàn)。
[0082]主服務(wù)器適于進(jìn)行許多探測性核查,來探測協(xié)議、虛擬網(wǎng)絡(luò)、云、主服務(wù)器、3d打印機(jī)、安全存儲器、虛擬機(jī)等是否發(fā)生可疑動作,包括端口掃描、虛擬網(wǎng)絡(luò)內(nèi)過多的IP地址、API的錯(cuò)誤請求、協(xié)議內(nèi)部行為、每個(gè)服務(wù)器的警報(bào)(連接到服務(wù)器以后,特殊的命令和代碼應(yīng)該在第一個(gè)X秒內(nèi)處理,在連接到機(jī)器之前要敲門)。
[0083]用于安全流化的3D安全打印協(xié)議具有下列部分:
[0084]利用雙向SSL證書在3D打印機(jī)和對應(yīng)的虛擬機(jī)之間建立安全連接;
[0085]授權(quán)3D打印機(jī)使用個(gè)人證書、獨(dú)一無二的識別碼等。
[0086]檢查網(wǎng)絡(luò)質(zhì)量和速度(使用例如脈沖信號、上行、下行)。
[0087]發(fā)送散列的并且優(yōu)選地是加密的G碼塊、STL文件塊等。
[0088]控制打印過程(暫停、停止、繼續(xù)、狀態(tài)、擠壓機(jī)溫度等)。
[0089]核查3D打印的質(zhì)量,如通過提供打印模型的視頻或照片流。
[0090]市場可以是任何3D模型源,例如,3D模型網(wǎng)絡(luò)存儲或基于3D模型源的其他網(wǎng)絡(luò),就像 Thingiverse, Shapeways, Cubify, GrabCad, Amazon, eBay 等。市場是一個(gè)前端解決方案,通過前端API F連接到主服務(wù)器。對于終端客戶,可以初始化從市場到他選擇的3D打印機(jī)的3D模型的安全流化,支付打印許可費(fèi)用,選擇打印參數(shù),部分初始化模型的流化或者通過安全協(xié)議立刻連接到3D打印機(jī)。而且,可以通過email、facebook、twitter等散發(fā)安全的3D模型。這將通向一個(gè)可以購買和開始流化的網(wǎng)頁(市場)。
[0091]后端是一個(gè)由權(quán)利持有者管理3D文件的系統(tǒng)。權(quán)利持有者可以上傳和保護(hù)3D文件,選擇他們想要在哪兒公開這些文件用