Ua hoʻokomo ʻia ka paepae precursor no ka hana ʻana i nā polokalamu kelepona manuahi

Andrew Huang (Andrew Huang), he mea hoʻoikaika kaulana no ka lako lako manuahi EFF Pioneer Award 2012, hoopuka kahua hāmama "Hoʻopuka", i hoʻolālā ʻia e hana i nā manaʻo no nā polokalamu kelepona hou. E like me ka ʻae ʻana o ka Raspberry Pi a me Arduino iā ʻoe e hana i nā polokalamu no ka Internet of Things, manaʻo ʻo Precursor e hāʻawi i ka hiki ke hoʻolālā a hōʻuluʻulu i nā polokalamu kelepona like ʻole e hoʻoponopono i kāu mau pilikia me kou mau lima ponoʻī.

ʻAʻole like me nā papahana ʻē aʻe, hāʻawi ʻo Precursor i nā mea hoihoi ʻaʻole wale i kahi papa, akā he prototype mākaukau o kahi mea lawe lima me kahi pahu alumini e ana ana i 69 x 138 x 7.2 mm, kahi pale LCD (336x536), kahi pākaukau (1100 mAh Li-Ion) , he kī kī liʻiliʻi, leo kani, kaʻa uila, ka wikiwiki a me ka gyroscope. ʻAʻole hele mai ka module computing me kahi kaʻina hana i mākaukau, akā me kahi SoC i wehewehe ʻia e ka polokalamu e pili ana i ka Xilinx XC7S50 FPGA, ma ke kumu o ka emulation o kahi 32-bit RISC-V CPU e hana ana ma ke alapine o 100 MHz. hoʻonohonoho ʻia. I ka manawa like, ʻaʻohe palena o ka hoʻohālikelike ʻana i nā ʻāpana hāmeʻa ʻē aʻe; no ka laʻana, hiki ke hoʻohālikelike ʻia ka hana o nā kaʻina hana like ʻole, mai 6502 a me Z-80 i AVR a me ARM, a me nā pahu kani a me nā mea hoʻokele like ʻole. Aia ka papa i ka 16 MB SRAM, 128 MB Flash, Wi-Fi Silicon Labs WF200C, USB type C, SPI, I²C, GPIO.

Ua hoʻokomo ʻia ka paepae precursor no ka hana ʻana i nā polokalamu kelepona manuahi

ʻO nā hiʻohiʻona e pili ana i ka palekana me ka loaʻa ʻana o ʻelua mau mea hana helu pseudo-random. He mea hoihoi ia ke hele maoli mai ka mea me ka ʻole o ka microphone i kūkulu ʻia - ua hoʻomaopopo ʻia hiki ke hoʻokipa ʻia ke kani inā pili pono ka headset, a inā hemo ka headset, ʻaʻole hiki ke hoʻonohonoho i ka eavesdropping, ʻoiai ke ʻano o ka hāmeʻa. ua hoʻopilikia ʻia ka polokalamu.

ʻO ka puʻupuʻu no nā kamaʻilio kelepona ʻole (Wi-Fi) he lako i hoʻokaʻawale ʻia mai ke koena o ka paepae a hana i kahi kaʻawale. No ka pale ʻana i ke komo ʻole ʻia, hoʻohana pū ʻia kahi pahu laka, kahi RTC ʻokoʻa no ka nānā pono ʻana, a me ka nānā ʻana i ka neʻe ʻana ma ke ʻano standby (mau ma ka accelerometer a me ka gyroscope). Aia pū kekahi kaulahao hoʻopau iā ia iho a me ka hoʻomaʻemaʻe koke ʻana i nā ʻikepili āpau, hoʻohana ʻia me kahi kī AES.

Hoʻohana ʻia ka ʻōlelo FHDL e wehewehe i nā ʻāpana lako Migen (Fragmented Hardware Description Language), ma muli o Python. Hoʻokomo ʻia ʻo Migen i ka pā LiteX, ka mea e hāʻawi i kahi ʻenehana no ka hana ʻana i nā kaapuni uila. Ua hoʻomākaukau ʻia kahi SoC e pili ana i ka Precursor me ka hoʻohana ʻana iā FPGA a me LiteX Pili ʻia, me 100 MHz VexRISC-V RV32IMAC CPU, a me kahi mea hoʻoponopono i hoʻopili ʻia.
Bettrusted-EC me 18 MHz LiteX VexRISC-V RV32I kumu.

Ua hoʻokomo ʻia ka paepae precursor no ka hana ʻana i nā polokalamu kelepona manuahi

Hāʻawi ka Betrusted SoC i kahi pūʻulu o nā cryptographic primitives e like me ka pseudo-random number generator, AES-128, -192, -256 me nā ʻano ECB, CBC a me CTR, SHA-2 a me SHA-512, ʻenekini crypto e pili ana i nā pihi elliptic Curve25519. Ua kākau ʻia ka mīkini crypto ma SystemVerilog a ua hoʻokumu ʻia ma nā kernels crypto mai ka papahana Google OpenTitan.

Hoʻonoho ʻia ʻo Precursor ma ke ʻano he kahua no ka hana ʻana a me ka hōʻoia ʻana i nā prototypes, ʻoiai ʻo Betrusted kekahi o nā polokalamu kelepona mākaukau i kūkulu ʻia ma luna o Precursor. No ka mea, ʻaʻole pale nā ​​enclaves kuʻuna no ka mālama kaʻawale ʻana o nā kī crypto i nā hoʻouka kiʻekiʻe e like me ka hōʻiliʻili ʻana i nā huaʻōlelo me ka hoʻohana ʻana i nā keyloggers a i ʻole ke komo ʻana i nā memo ma o ka screenshotting, ua hoʻohui ʻo Betrusted i nā mea pili i nā mea hoʻohana i ka hoʻokō enclave (HCI,Human-Computer Interaction), e hōʻoia ana ʻaʻole mālama ʻia, hōʻike a hoʻouna ʻia paha nā ʻikepili koʻikoʻi i hiki ke heluhelu ʻia e ke kanaka.

ʻAʻole hoʻāʻo ʻo Bettrusted e pani i ke kelepona paʻa, akā hana i kahi enclave paʻa me ka hoʻokomo a me ka hoʻopuka. No ka laʻana, hiki ke hoʻohana ʻia kahi kelepona waho ma luna o Wi-Fi ma ke ʻano he kahawai ʻikepili hilinaʻi ʻole, akā ʻo nā leka i hoʻopili ʻia i hoʻouna ʻia e paʻi wale ʻia ma ka papa kuhikuhi i kūkulu ʻia o ka Betrusted, a hōʻike ʻia nā memo i loaʻa ma ka pale i kūkulu ʻia. .

ʻO nā ʻāpana Precursor a me Bettrusted he kumu wehe a loaʻa no ka hoʻololi a me ka hoʻokolohua ma lalo o kahi laikini Wehe Laikini Laikini 1.2, e koi ana e wehe ʻia nā hana derivative a pau ma lalo o ka laikini like. Me ka wehe схемы a hoʻopiha i nā palapala papahana nā papa nui a me nā mea kōkua, hoʻokō mākaukau Hoʻoholo ʻia ʻo SoC и mana hoʻomalu (EC). Loaʻa nā hiʻohiʻona no ka paʻi 3D o ka hale. Ke ulu nei ma ke ʻano o nā papahana hāmama hoʻonohonoho firmware a kūikawā ʻōnaehana Xous ma muli o microkernel.

Ua hoʻokomo ʻia ka paepae precursor no ka hana ʻana i nā polokalamu kelepona manuahi

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka