在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用樹莓派完成雙重身份驗證的保險箱

科技觀察員 ? 來源:Pablo Carranza Vélez ? 作者:Pablo Carranza Vélez ? 2022-03-30 17:13 ? 次閱讀

本項目為需要2FA才能打開的保險箱。使用resin.io和Authy構(gòu)建。

poYBAGJEH0GAFWA6AAPWLMSM-FU676.png

描述

物聯(lián)網(wǎng)主要是將物聯(lián)網(wǎng)帶入互聯(lián)網(wǎng),但也將互聯(lián)網(wǎng)帶入物聯(lián)網(wǎng)。銀行賬戶或比特幣錢包等關(guān)鍵任務(wù)服務(wù)網(wǎng)站提供雙因素身份驗證(2FA)已有一段時間了,它不僅提供了密碼,還提供了額外的安全層。由于resin.io旨在跨越互聯(lián)網(wǎng)與現(xiàn)實世界之間的鴻溝,我們決定通過構(gòu)建一個需要2FA才能打開的保險箱來將這一概念付諸實踐。

通過將resin.io與Twilio的Authy相結(jié)合,我們可以通過一個非常簡單的部署系統(tǒng)——gitpushresinmaster——和一種添加2FA機制的非常簡單的方法來實現(xiàn)這一點。

保險箱和儲物柜通常通過鑰匙或在數(shù)字鍵盤上敲擊代碼來打開。我們提出了一種替代方法,將數(shù)字代碼與通過Authy發(fā)送到用戶手機的SMS相結(jié)合,這意味著打開保險箱需要同時擁有代碼和手機。

細(xì)節(jié)

我們在原型板上使用了RaspberryPi2和一個小電路。鎖本身是一個5V螺線管。

Pi運行一個node.js服務(wù)器,該服務(wù)器通過一個簡單的Web界面執(zhí)行身份驗證。我們使用Authy提供第二因素身份驗證和resin.io以實現(xiàn)超簡單的代碼部署。

鎖定和解鎖保險箱的程序如下:

用戶輸入他們的電子郵件。

如果是新用戶,他們會被要求提供電話號碼。

UI要求用戶輸入密碼來鎖定保險箱。

當(dāng)用戶輸入密碼時,鎖被接合。

完成后,打開保險箱:

首先,用戶必須輸入正確的代碼。

輸入代碼后,Authy會向用戶發(fā)送短信。

用戶輸入短信密碼,鎖打開。

鎖只打開幾秒鐘,但可以通過按UI上的“打開”按鈕再次打開。

當(dāng)您在手機上使用UI時,您通常可以在SMS代碼到達(dá)時輸入它,因為它會顯示在手機的通知區(qū)域中。

構(gòu)建說明

硬件

螺線管驅(qū)動器電路原理圖如下所示:

pYYBAGJEHzuAOGtYAADfl-k5b_0661.png

這是我們在原型板上組裝螺線管驅(qū)動器的方式:

poYBAGJEHzeAftQZAAPEE_kLPTo992.png

軟件

RaspberryPi運行一個node.js服務(wù)器,該服務(wù)器實現(xiàn)了多步身份驗證機制,為了實現(xiàn)這一點,我們設(shè)計了一個使用machina.js的狀態(tài)機,通過express.js在HTTP上提供服務(wù)。大多數(shù)交互都在socket.io上進行,以向用戶提供實時反饋。

我們使用“authy”npm包輕松地與AuthyAPI交互,從他們的教程中借用一些代碼。

狀態(tài)機由產(chǎn)生從一種狀態(tài)到另一種狀態(tài)的轉(zhuǎn)換的狀態(tài)和事件組成——我們在應(yīng)用程序中使用的模型“Safebox”具有“打開”和“關(guān)閉”狀態(tài),從一個狀態(tài)到另一個方向的轉(zhuǎn)換,通過通過處理身份驗證過程的中間狀態(tài)。

每當(dāng)用戶與UI交互時,都會通過socket.io觸發(fā)輸入事件,并將其傳遞給狀態(tài)機。

下面的代碼是如何定義這些狀態(tài)和轉(zhuǎn)換的示例:

poYBAGJEHzKAdS5lAABZjf17T4U593.png

當(dāng)機器轉(zhuǎn)換到“關(guān)閉”狀態(tài)時,它的_onEnter函數(shù)被稱為禁用鎖并保存這個新狀態(tài)。當(dāng)用戶隨后輸入代碼時,我們將其與他們的密碼進行比較,只有在匹配時才轉(zhuǎn)換到下一個狀態(tài)。

我們使用MongoDB來保存盒子的當(dāng)前狀態(tài)和用戶數(shù)據(jù)——存儲用戶數(shù)據(jù)允許我們存儲用戶的密碼和電話號碼,這樣他們就不需要在每次重啟設(shè)備時重新配置他們的設(shè)備。

集成用戶模型的代碼還與AuthyAPI交互,該API提供了向用戶發(fā)送SMS并驗證他們提供的代碼的方法。

在客戶端,我們有一個簡單的單頁jQuery應(yīng)用程序,它為每個狀態(tài)機的狀態(tài)顯示不同的HTML內(nèi)容,監(jiān)聽撥號盤和輸入上的事件,發(fā)送socket.io消息并為用戶提供適當(dāng)?shù)姆答仭N覀兪褂肂ootstrap和toastr快速設(shè)計了一個相當(dāng)賞心悅目的界面:)

我們使用resin.io將所有內(nèi)容與設(shè)置環(huán)境并運行我們的啟動腳本的Dockerfile綁定在一起:

poYBAGJEHy2AB5tGAAB-ru5Os9s869.png

我們的start.sh腳本然后啟動MongoDB(在不正常關(guān)閉的情況下修復(fù)它)和我們的Web服務(wù)器:

poYBAGJEHymAFK1FAAAiqEcU9TU798.png

使用resin.io使我們的部署就像輸入‘gitpush’一樣簡單,而且它允許我們使用docker確保我們所有的依賴關(guān)系都以完全相同的方式滿足每個設(shè)備。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 保險箱
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6829
  • 樹莓派
    +關(guān)注

    關(guān)注

    121

    文章

    1963

    瀏覽量

    107081
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    保險箱智能化真的有必要嗎?

    電子發(fā)燒友網(wǎng)報道(文/黃山明)如果家中擁有一些貴重的物品,又不適合存放于銀行,那么購置一個保險箱將是一個不錯的選擇。而隨著科技的發(fā)展,智能保險箱應(yīng)運而生,它可以通過智能化,讓傳統(tǒng)硬件既硬(核心
    的頭像 發(fā)表于 07-20 00:24 ?2379次閱讀

    IC 卡保險箱

    本文詳細(xì)介紹了利用邏輯加密卡SLE4442 設(shè)計IC 卡保險箱(DEMO 板)的過程該保險箱利用P87LPC764 做處理器另擴展1 片E2PROM 組成的應(yīng)用系統(tǒng)該
    發(fā)表于 06-30 17:42 ?44次下載

    什么是身份驗證和授權(quán)

    什么是身份驗證和授權(quán) 根據(jù)RFC2828(Internet Security Glossary,May2000),驗證是“校驗被或向某系統(tǒng)實體聲明的身份的過程”。此處的關(guān)鍵字
    發(fā)表于 04-03 16:03 ?5852次閱讀

    什么是詢問握手身份驗證協(xié)議

    什么是詢問握手身份驗證協(xié)議 CHAP(詢問握手身份驗證協(xié)議)是用于遠(yuǎn)程登錄的身份驗證協(xié)議,通過三次握手周期性的校驗對端的身份,在初始鏈
    發(fā)表于 04-03 16:06 ?2771次閱讀

    什么是密碼身份驗證協(xié)議

    什么是密碼身份驗證協(xié)議 PAP是一種身份驗證協(xié)議,是一種最不安全的身份證協(xié)議,是一種當(dāng)客戶端不支持其它身份認(rèn)證協(xié)議時才被用來
    發(fā)表于 04-03 16:07 ?1656次閱讀

    淺談雙因素身份驗證的三個風(fēng)險和缺點

    雖然有些人可能因為懶得去想而使用易破解的弱密碼,但強密碼并非堅不可摧。它們可能被攔截,被鍵盤記錄或因大數(shù)據(jù)攻擊而被泄露。 在過去幾年,雙因素身份驗證(或雙重身份驗證,two-factor
    發(fā)表于 01-01 01:06 ?5345次閱讀

    人臉識別在養(yǎng)老保險身份驗證系統(tǒng)中的應(yīng)用

    人臉識別養(yǎng)老保險身份驗證系統(tǒng)是以人臉識別技術(shù)為核心,基于自定義數(shù)據(jù)庫技術(shù),實現(xiàn)了人臉采集、人臉識別、人臉模板管理、用戶管理等功能的養(yǎng)老保險身份驗證系統(tǒng)。
    發(fā)表于 07-05 15:50 ?5347次閱讀

    塑料的保險箱 你敢用嗎?

    修鎖匠Brisbane是澳大利亞鎖匠行業(yè)和安全方面的專家,近些日子,他制作了一種非常特別的3D打印保險箱,因為它是塑料的!和一般的保險箱不同,這個以PET為原料的容器是專為敏感性電子設(shè)備和高輻射區(qū)
    的頭像 發(fā)表于 04-02 14:03 ?5617次閱讀

    制作簡易保險箱

    如何用紙板做個保險箱呢?而且是跟真正保險箱的原理是一樣的。
    的頭像 發(fā)表于 01-22 16:22 ?3.3w次閱讀

    身份驗證和生物識別身份系統(tǒng)應(yīng)用越加廣泛

    身份驗證和生物識別身份系統(tǒng)應(yīng)用越加廣泛
    發(fā)表于 02-27 14:37 ?1654次閱讀

    采用Arduino和木板自制指紋保險箱

    用木板制作帶指紋的智能保險箱,只有正確的指紋才打得開哦!
    的頭像 發(fā)表于 05-24 06:34 ?4423次閱讀

    智能鑰匙開鎖的簡易保險箱設(shè)計

    給我20塊,我給你做個保險箱
    的頭像 發(fā)表于 08-12 10:50 ?3433次閱讀

    了解如何創(chuàng)建Arduino保險箱

    電子發(fā)燒友網(wǎng)站提供《了解如何創(chuàng)建Arduino保險箱.zip》資料免費下載
    發(fā)表于 11-28 09:24 ?0次下載
    了解如何創(chuàng)建Arduino<b class='flag-5'>保險箱</b>

    基于Arduino并由紙板制成的保險箱

    電子發(fā)燒友網(wǎng)站提供《基于Arduino并由紙板制成的保險箱.zip》資料免費下載
    發(fā)表于 12-19 09:54 ?1次下載
    基于Arduino并由紙板制成的<b class='flag-5'>保險箱</b>

    LCD電子密碼保險箱設(shè)計

    LCD電子密碼保險箱系統(tǒng)介紹:? ? ? ?該電子密碼保險箱的控制部分的主要任務(wù)包括:鍵盤的控制,LCD顯示屏的控制,鎖具的控制,蜂鳴器的控制。鎖具的原理是通過直流馬達(dá)轉(zhuǎn)動,帶動門閂移動,達(dá)到開門
    發(fā)表于 01-04 17:20 ?3次下載
    主站蜘蛛池模板: 婷婷免费视频 | 男人天堂网在线视频 | 日本三级中文字幕 | 欧美123区| 天天艹天天 | 亚洲日本一区二区三区在线不卡 | 欧美三级免费观看 | 欧美日本综合 | 天天操夜夜拍 | 男人的天堂黄色 | chinese国产一区二区 | 亚洲一区二区黄色 | 天堂在线观看中文字幕 | 男人的午夜 | 国产精品夜色一区二区三区 | 国产一区二区三区美女图片 | 四虎黄色网址 | 国产片一级特黄aa的大片 | 一级片a | 亚洲成在人色婷婷 | 色综合天天色 | 久久精品免费观看久久 | 国模吧新入口 | 色爱区综合激月婷婷激情五月 | 爱啪网站| 久久系列 | 色欧美色| 午夜视频高清在线aaa | 久久综合九色综合97_ 久久久 | 天堂资源在线8 | 手机看片三级 | 艹逼视频免费观看 | 亚洲欧美视频一区二区三区 | 视频一区二区免费 | 国内精品久久久久影院薰衣草 | 免费啪视频 | 思思久久96热在精品不卡 | 在线免费看高清视频大全 | 大又大粗又爽又黄少妇毛片 | 成人欧美一区二区三区白人 | 国产综合精品久久久久成人影 |