當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] 智能”或許是科技行業(yè)中被用得最多的一個詞。有些公司認(rèn)為項目的智能就是在上面安裝一個WiFi適配器,然后制作一個應(yīng)用程序。但智能的真正含義是什么呢?物聯(lián)網(wǎng)設(shè)備意味著什么?我相信,當(dāng)設(shè)備集合在一起,

智能”或許是科技行業(yè)中被用得最多的一個詞。有些公司認(rèn)為項目的智能就是在上面安裝一個WiFi適配器,然后制作一個應(yīng)用程序。但智能的真正含義是什么呢?物聯(lián)網(wǎng)設(shè)備意味著什么?我相信,當(dāng)設(shè)備集合在一起,創(chuàng)造出比單個設(shè)備的總和大得多的東西時,它們就會變得“智能”。

自從智能鎖問世以來,它已經(jīng)走過了漫長的道路,但在大多數(shù)情況下,智能意味著你可以把手機(jī)當(dāng)作鑰匙使用。最近,我和我的一些朋友聚在一起,重新想象了一下一把簡單的鎖如何才能變得真正智能。我們設(shè)計了一個區(qū)塊鏈智能鎖,可以簡化訪客管理。它主要針對企業(yè),該系統(tǒng)解決了兩個主要問題。

1. 缺乏適合企業(yè)規(guī)模經(jīng)營的智能鎖

企業(yè)的智能鎖真的不多。很多企業(yè)需要為具有不同權(quán)限的不同訪問級別的門設(shè)置內(nèi)部鎖,最安全的方法是使用生物識別傳感器。但是,許多門上都安裝了生物識別傳感器,這些傳感器必須同步,以便為新員工和訪客工作,這是非常具有挑戰(zhàn)性的。生物識別系統(tǒng)一般將指紋等生物識別信息存儲在設(shè)備上,因此很難添加新用戶。在每個設(shè)備上使用生物識別傳感器也很昂貴。

但如果這個問題的解決方案就在你的口袋里呢?現(xiàn)在幾乎每一部手機(jī)都內(nèi)置了指紋傳感器或其他形式的生物識別認(rèn)證,開發(fā)者可以通過API訪問它們。這意味著智能手機(jī)可以提供一種安全的方式,從生物特征上保證一個人的身份。這個系統(tǒng)是如此的安全,以至于它被用于驗證谷歌Pay和Apple Pay等服務(wù)中的移動支付。因此,我們可以簡單地使用智能手機(jī)上的生物識別技術(shù)來驗證個人的身份,我們可以在一個不需要任何傳感器的鎖里使用生物識別安全技術(shù)。應(yīng)用程序只需要求通過中央服務(wù)器打開一扇門。這個系統(tǒng)的美妙之處在于它具有可伸縮的能力,因為用戶權(quán)限可以很容易地從服務(wù)器中添加或刪除,而不需要修改實際的鎖。但是當(dāng)它與訪問者管理相結(jié)合時,這個系統(tǒng)的真正威力就顯現(xiàn)出來了。

2. 訪問者管理

第二個問題是缺乏適合企業(yè)的訪問者管理解決方案。這給訪問者帶來了麻煩,也給公司帶來了高昂的費用,比如為確保訪問者的身份而進(jìn)行的安全保障。我們對這個問題的解決方案是一個區(qū)塊鏈,它存儲每個人的身份,并由他工作的機(jī)構(gòu)進(jìn)行驗證。例如聯(lián)合利華可以保證員工的身份,或者莫拉圖瓦大學(xué)甚至可以保證我是計算機(jī)科學(xué)與工程系的學(xué)生。這使得區(qū)塊鏈可以為用戶創(chuàng)建一張?zhí)摂M名片,該名片由用戶手機(jī)中的生物識別技術(shù)保護(hù)。這不是一個適用于單個組織的網(wǎng)絡(luò),而是一個完整的組織網(wǎng)絡(luò)。這樣就可以確定任何訪問者的身份。

這個系統(tǒng)的操作相當(dāng)簡單。當(dāng)用戶訪問公司時,他可以通過自己手機(jī)上的生物識別傳感器來確認(rèn)自己的身份,從而在前臺申請進(jìn)入。接待員將立即保證訪問者的身份。如果客人已經(jīng)被邀請,系統(tǒng)將自動允許他進(jìn)入。

選擇一個區(qū)塊鏈

我的任務(wù)之一是為上述系統(tǒng)創(chuàng)建區(qū)塊鏈。這給了我一個親身體驗區(qū)塊鏈技術(shù)的機(jī)會,讓我看看炒作到底是怎么回事以及看看技術(shù)細(xì)節(jié)。

我必須做的第一個決定是選擇使用哪個區(qū)塊鏈平臺。經(jīng)過一番研究,我把選擇范圍縮小到兩個。以太坊和Linux基金會的Hyperledger。兩者之間有很多區(qū)別,但關(guān)鍵是以太坊是一個公共區(qū)塊鏈,更適合B2C用例,并且使用工作證明,而Hyperledger是一個私有區(qū)塊鏈,更適合B2B用例。在這一點上,顯然最好的選擇是使用Hyperledger。我不僅對開發(fā)一個簡單的B2B解決方案感興趣,而且對Hyperledger比以太坊更適合保護(hù)企業(yè)的隱私和規(guī)模更感興趣。

如果決定使用Hyperledger Composer(這是一個設(shè)計區(qū)塊鏈的有用框架)。這里提供了文檔,其中包括一些非常有用的教程。

除了所有需要完成的樣板代碼和設(shè)置(在文檔中有很好的解釋)之外,區(qū)塊鏈的開發(fā)實際上只涉及3個腳本,即模型、邏輯和訪問控制。

該模型定義了網(wǎng)絡(luò)中的資產(chǎn)以及參與網(wǎng)絡(luò)的參與者。例如,如果我們開發(fā)一個用于交易商品的區(qū)塊鏈,那么該商品將被視為一種資產(chǎn)。它們與java對象非常相似,我們可以定義它們的屬性。在這種情況下,參與者將是交易員。我們還必須在模型文件中定義事務(wù)。

邏輯就是奇跡發(fā)生的地方。這是設(shè)計事務(wù)邏輯的地方,可以用它來編寫智能合約。最后,訪問控制腳本定義了區(qū)塊鏈不同用戶的訪問級別。這與SQL中的用戶權(quán)限非常相似。

這些概念可能很簡單,但是將業(yè)務(wù)問題(即使是簡單的問題)轉(zhuǎn)換為模型、邏輯和訪問格式并不是那么簡單。經(jīng)過多次策劃,我設(shè)計出了一個適合我們訪客管理問題的網(wǎng)絡(luò)。

這個網(wǎng)絡(luò)只需要兩種類型的資產(chǎn),即密鑰和密鑰鏈。密鑰鏈用于聚合不同的門,以便門可以被分組到訪問級別。每個密鑰鏈都有一個員工列表,這些員工可以訪問稱為密鑰持有者的特定門集。在這里,門類型是一個特殊的用戶定義對象,指定它是辦公室門還是家庭門。

asset Keychain identified by keychainId{

o String keychainId

--》 Owner owner

o DoorType type

--》 Employee[] keyholders }

asset Door idenTIfied by doorId {

o String doorId

o String password

--》Keychain chain }

網(wǎng)絡(luò)中的參與者有三種類型,即雇員、人員和所有者。所有者是企業(yè)的管理員,他們可以決定授予員工的訪問級別。一個獨立的人,因為可能存在著一個不屬于任何組織的人(他可能只是一個訪客),一個公司的雇員。一個人被企業(yè)的所有者授予的雇員。

parTIcipant Owner idenTIfied by ownerId {

o String ownerId

o String name

}

parTIcipant Employee identified by employeeId {

o String employeeId

--》 Owner company

--》 Person employee

o String post

}

participant Person identified by id {

o String id

o String name

}

對于該網(wǎng)絡(luò),只定義了少量的事務(wù),這表示系統(tǒng)必須提供的最基本服務(wù)。除了grantAccess和revokeAccess事務(wù),還有一個tempAccess事務(wù),允許員工使用智能合約邏輯臨時訪問自動過期的房間。

transaction TempAccess {

--》 Keychain chain

--》 Employee employee

o DateTime expiry

}

transaction RevokeAccess {

--》 Keychain chain

--》 Employee employee

}

transaction GrantAccess {

--》 Keychain chain

--》 Employee employee

}

現(xiàn)在講講邏輯。實際的代碼相當(dāng)簡單,創(chuàng)建執(zhí)行上面定義的每一個事務(wù)的函數(shù)是一件簡單的事情。例如,在執(zhí)行g(shù)rantAccess函數(shù)時,將grantAccess事務(wù)作為參數(shù)(如上文所定義,grantAccess事務(wù)同時具有一個雇員和一個keychain。該交易的目的是讓部分雇員訪問該鑰匙鏈),所有需要做的是把雇員的身份證進(jìn)入鑰匙鏈名單的關(guān)鍵持有人。下面給出了授予和撤消訪問權(quán)限的代碼。

* Revoke access from a person

* @param {org.example.mynetwork.RevokeAccess} rAccess- the trade to be processed

* @transaction

*/

function revokeAccess (rAccess) {

index =-1;

count =0;

console.log(rAccess.chain.keyholders[0].employeeId)

for (i in rAccess.chain.keyholders){

if (rAccess.chain.keyholders[count].employeeId == rAccess.employee.employeeId){

index = count;

}

count+=1;

}

var NS = “org.example.mynetwork”;

keyholderArray = rAccess.chain.keyholders;

if (index 》 -1){

keyholderArray.splice(index, 1);

rAccess.chain.keyholders = keyholderArray;

}

return getAssetRegistry(NS + ‘.Keychain’)

.then(function(keychainRegistry){

return keychainRegistry.update(rAccess.chain);

})

}

/**

* grant access to a person

* @param {org.example.mynetwork.GrantAccess} gAccess- the trade to be processed

* @transaction

*/

function grantAccess (gAccess) {

var NS = “org.example.mynetwork”;

gAccess.chain.keyholders.push(gAccess.employee);

return getAssetRegistry(NS + ‘.Keychain’)

.then(function(keychainRegistry){

return keychainRegistry.update(gAccess.chain);

})

}

最后,我們需要為區(qū)塊鏈設(shè)置訪問控制權(quán)限。這可以通過制定規(guī)則來實現(xiàn)。有詳細(xì)描述規(guī)則的作用、規(guī)則所適用的參與者、一種操作類型(例如READ或ALL)、一種受規(guī)則約束的資源和一個動作:允許或拒絕。此外,還可以添加一個稱為條件的額外屬性,這是非常有用的。然后我們檢查允許企業(yè)所有者將屬于該企業(yè)的門授予某些員工的權(quán)限的規(guī)則。

rule OwnerGrantAccess {

description: “Allow a business owner to grant access to an employee or visitor, to a keychain in his own business, as well as create and delete keychains”

participant(p):“org.example.mynetwork.Owner”

operation: ALL

resource(k): “org.example.mynetwork.Keychain”

condition: (k.owner.getIdentifier()==p.getIdentifier())

action: ALLOW

}

在這里,所有者有能力修改屬于其企業(yè)的密鑰鏈,以便將新雇員的ID推入其關(guān)鍵客戶列表,從而允許該雇員訪問該門。然而,我們必須確保某個企業(yè)的所有者只能進(jìn)入屬于自己組織的門,而不是作為區(qū)塊鏈一部分的各個組織的所有門。因此,我們使用條件屬性來檢查密鑰的所有者是否是參與者。

以下是應(yīng)用于區(qū)塊鏈的其他一些規(guī)則。

rule OwnerManageDoor {

description: “Allow an owner to create and manage a new door which belongs to his keychain”

participant(p): “org.example.mynetwork.Owner”

operation: ALL

resource (d): “org.example.mynetwork.Door”

condition: (d.chain.owner.getIdentifier()==p.getIdentifier())

action: ALLOW

}

rule OwnerManageEmployee {

description: “Allow the owner to create and manage an employee”

participant(p): “org.example.mynetwork.Owner”

operation: ALL

resource(e): “org.example.mynetwork.Employee”

condition: (e.company.getIdentifier()==p.getIdentifier())

action: ALLOW

}

一旦這三個腳本準(zhǔn)備好了,我們就可以用幾個控制臺命令將區(qū)塊鏈變成一個REST服務(wù)器,我們的區(qū)塊鏈終于啟動了!

訪客者管理的這一概念不一定只適用于辦公室。假設(shè)你一個人在家,有一個比薩送貨員在你的門口。有了這項技術(shù),你就可以保證在你向陌生人打開你的大門之前他確實是來自必勝客的!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉