CN110929304A - 一种基于risc-v的内存保护方法 - Google Patents

一种基于risc-v的内存保护方法 Download PDF

Info

Publication number
CN110929304A
CN110929304A CN201911228295.7A CN201911228295A CN110929304A CN 110929304 A CN110929304 A CN 110929304A CN 201911228295 A CN201911228295 A CN 201911228295A CN 110929304 A CN110929304 A CN 110929304A
Authority
CN
China
Prior art keywords
memory
risc
app
applications
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911228295.7A
Other languages
English (en)
Inventor
杨国东
刘建敏
杨超
周强强
翟栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Hongwei Technology Co Ltd
Original Assignee
Sichuan Hongwei Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Hongwei Technology Co Ltd filed Critical Sichuan Hongwei Technology Co Ltd
Priority to CN201911228295.7A priority Critical patent/CN110929304A/zh
Publication of CN110929304A publication Critical patent/CN110929304A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于RISC‑V的内存保护方法,包括:一种基于RISC‑V的内存保护方法,包括:步骤S1:采用RISC‑V芯片的设备开发n个APP应用;步骤S2:将RISC‑V芯片的内存划分为n个互相独立的内存区域,其中n个内存区域分别对应n个APP应用;步骤S3:配置RISC‑V特权指令集,内存控制寄存器配置每一个应用APP,使每个应用APP在其对应的内存区域有访问权限,在其他内存区域无访问权限。本发明分块控制RISC‑V的内存区域,有效防止内存被恶意程序访问和篡改;RISC‑V设备的各个应用独立访问各自权限内的内存区域,互不干扰,保证数据私密性和安全性的问题。

Description

一种基于RISC-V的内存保护方法
技术领域
本发明涉及信息安全技术领域,尤其是涉及嵌入式内存安全技术领域,具体的说,是一种基于RISC-V的内存保护方法。
背景技术
随着物联网设备目前都开始接入互联网,针对设备上的安全保护变得尤为重要,特别是安全应用程序。目前几乎所有的没有MMU(Memory Manage Unit内存管理单元)的嵌入式设备的内存都是没有进行保护的,设备上的所有应用都可以访问内存的所有区域,这给应用数据的私密性和安全性带来了威胁和挑战。
发明内容
本发明的目的在于提供一种基于RISC-V的内存保护方法,用于解决现有技术中嵌入式设备对内存没有保护,应用可以访问内存所有区域,对数据的私密性和安全性存在威胁的问题。
本发明通过下述技术方案解决上述问题:
一种基于RISC-V的内存保护方法,包括:
步骤S1:采用RISC-V芯片的设备开发n个APP应用;
步骤S2:将RISC-V芯片的内存划分为n个互相独立的内存区域,其中n个内存区域分别对应n个APP应用;
步骤S3:配置RISC-V特权指令集,内存控制寄存器配置每一个应用APP,使每个应用APP在其对应的内存区域有访问权限,在其他内存区域无访问权限。
将各个应用的内存区域独立划分,每个应用只能访问自己对应的内存区域,有效防止内存被恶意程序访问和篡改。
进一步地,所述步骤S1中的APP应用若存在交互,则在步骤S2中将RISC-V芯片的内存划分为n+1个互相独立的内存区域,其中n个内存区域分别对应n个APP应用,第n+1个设置为共享内存区域;
步骤S3:配置RISC-V特权指令集,内存控制寄存器配置每一个应用APP,使每个应用APP在其对应的内存区域和共享内存区域有访问权限,在其他内存区域无访问权限;
步骤S4:应用APP与其他应用APP进行交互时,将执行结果存储在第n+1个区域。
基于RISC-V特权指令集配置内存控制寄存器,通过配置内存控制寄存器来分配和管理内存地址的访问权限。分配内存地址访问权限后,各个应用访问各自所属的内存区域和共享内存区域,无法访问其他应用的内存区域的地址。如果设备的各个应用之间需要交互,则应用执行完成后将执行结果存储在共享内存区域的地址,这样既可以保证RISC-V内存的安全,又可以进行应用间的数据交互。
进一步地,步骤S3中的配置RISC-V特权指令集的具体步骤为:
步骤S31:内存控制寄存器配置第一个应用APP对内存区域1和内存区域n+1的访问权限为RWX=111,对其他内存区域的访问权限设置为RWX=000;
步骤S32:内存控制寄存器配置第二个应用APP对内存区域2和内存区域n+1的访问权限为RWX=111,对其他内存区域的访问权限设置为RWX=000;
步骤S33:采用同样的方式配置其他应用APP对内存区域的访问权限。
待RISC-V设备应用开发完成,应用APP1启动后只能够访问内存区域1和内存区域n+1的内存地址,其他内存地址无法正常访问;如果设备的应用之间需要有交互,则应用执行完成后将执行结果存储在内存n+1的地址;需要交互的应用则到n+1内存区域获取另一个应用的执行结果,这样既保证了内存的安全,又可以达到应用间的数据交互。
本发明与现有技术相比,具有以下优点及有益效果:
本发明分块控制RISC-V的内存区域,有效防止内存被恶意程序访问和篡改;RISC-V设备的各个应用独立访问各自权限内的内存区域,互不干扰,保证数据私密性和安全性的问题。
附图说明
图1为本发明的流程图;
图2为本发明中内存访问权限的划分示意图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
结合附图1所示,一种基于RISC-V的内存保护方法,包括:
步骤1、RISC-V芯片设备开发了n个APP应用,并且APP应用之间有交互;
步骤2、将RISC-V芯片内存区域划分为n+1个相互独立的区域,前n个区域分别对应n个APP应用,第n+1区域为共享内存区域,任何APP应用都可以访问该区域,该共享内存区域供APP应用之间数据交互时使用;
步骤3、配置RISC-V特权指令集,内存控制寄存器配置应用APP1对内存区域1和内存区域n+1的访问权限为RWX=111(R表示度权限,W表示写权限,X表示可执行权限,1表示有权限,0表示无权限),对其他剩余内存访问权限为RWX=000;
步骤4、配置RISC-V特权指令集,内存控制寄存器配置应用APP2对内存区域2和内存区域n+1的访问权限为RWX=111,对其他剩余内存访问权限为RWX=000,具体如附图2所示;
步骤5、使用同样的方式配置剩余的应用APP对内存的访问权限。
步骤6、待RISC-V设备应用开发完成,应用APP1启动后只能够访问内存区域1和内存区域n+1的内存地址,其他内存地址无法正常访问;
步骤7、如果设备各个应用之间需要有交互,则应用执行完成后将执行结果存储在内存n+1的地址;
步骤8、另外需要交互的应用则之间到n+1内存区域获取应用的执行结果,这样既保证了内存的安全,又可以达到应用间的数据交互。
到此基于RISC-V的内存保护方法已经完成。其保护的核心是基于RISC-V特权指令集,该特权指令集可以通过配置内存控制寄存器来分配管理内存地址的访问权限。分配内存地址访问权限后,各自应用访问各自所属的内存区域和共享内存区域,自己应用无法访问其他应用内存区域的地址。这样既可以保证RISC-V内存的安全,又可以进行应用间的数据交互。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (3)

1.一种基于RISC-V的内存保护方法,其特征在于,包括:
步骤S1:采用RISC-V芯片的设备开发n个APP应用;
步骤S2:将RISC-V芯片的内存划分为n个互相独立的内存区域,其中n个内存区域分别对应n个APP应用;
步骤S3:配置RISC-V特权指令集,内存控制寄存器配置每一个应用APP,使每个应用APP在其对应的内存区域有访问权限,在其他内存区域无访问权限。
2.根据权利要求1所述的一种基于RISC-V的内存保护方法,其特征在于,所述步骤S1中的APP应用若存在交互,则在步骤S2中将RISC-V芯片的内存划分为n+1个互相独立的内存区域,其中n个内存区域分别对应n个APP应用,第n+1个设置为共享内存区域;
步骤S3:配置RISC-V特权指令集,内存控制寄存器配置每一个应用APP,使每个应用APP在其对应的内存区域和共享内存区域有访问权限,在其他内存区域无访问权限;
步骤S4:应用APP与其他应用APP进行交互时,将执行结果存储在第n+1个区域。
3.根据权利要求2所述的一种基于RISC-V的内存保护方法,其特征在于,所述步骤S3中的配置RISC-V特权指令集的具体步骤为:
步骤S31:内存控制寄存器配置第一个应用APP对内存区域1和内存区域n+1的访问权限为RWX=111,对其他内存区域的访问权限设置为RWX=000;
步骤S32:内存控制寄存器配置第二个应用APP对内存区域2和内存区域n+1的访问权限为RWX=111,对其他内存区域的访问权限设置为RWX=000;
步骤S33:采用同样的方式配置其他应用APP对内存区域的访问权限。
CN201911228295.7A 2019-12-04 2019-12-04 一种基于risc-v的内存保护方法 Pending CN110929304A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911228295.7A CN110929304A (zh) 2019-12-04 2019-12-04 一种基于risc-v的内存保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911228295.7A CN110929304A (zh) 2019-12-04 2019-12-04 一种基于risc-v的内存保护方法

Publications (1)

Publication Number Publication Date
CN110929304A true CN110929304A (zh) 2020-03-27

Family

ID=69856711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911228295.7A Pending CN110929304A (zh) 2019-12-04 2019-12-04 一种基于risc-v的内存保护方法

Country Status (1)

Country Link
CN (1) CN110929304A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220225A (zh) * 2021-04-06 2021-08-06 浙江大学 Risc-v处理器的内存数据读写方法及装置、处理器、存储介质
WO2021203767A1 (zh) * 2020-04-08 2021-10-14 中兴通讯股份有限公司 内存访问方法、系统级芯片和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1203394A (zh) * 1997-06-20 1998-12-30 国际商业机器公司 在安全存储区中保护应用程序数据的方法和装置
CN108052461A (zh) * 2017-12-29 2018-05-18 普华基础软件股份有限公司 一种操作系统的内存保护方法
US20190042461A1 (en) * 2018-04-20 2019-02-07 Rupin Vakharwala Pause communication from i/o devices supporting page faults
CN109766165A (zh) * 2018-11-22 2019-05-17 海光信息技术有限公司 一种内存访问控制方法、装置、内存控制器及计算机系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1203394A (zh) * 1997-06-20 1998-12-30 国际商业机器公司 在安全存储区中保护应用程序数据的方法和装置
CN108052461A (zh) * 2017-12-29 2018-05-18 普华基础软件股份有限公司 一种操作系统的内存保护方法
US20190042461A1 (en) * 2018-04-20 2019-02-07 Rupin Vakharwala Pause communication from i/o devices supporting page faults
CN109766165A (zh) * 2018-11-22 2019-05-17 海光信息技术有限公司 一种内存访问控制方法、装置、内存控制器及计算机系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021203767A1 (zh) * 2020-04-08 2021-10-14 中兴通讯股份有限公司 内存访问方法、系统级芯片和电子设备
CN113220225A (zh) * 2021-04-06 2021-08-06 浙江大学 Risc-v处理器的内存数据读写方法及装置、处理器、存储介质
CN113220225B (zh) * 2021-04-06 2022-04-12 浙江大学 Risc-v处理器的内存数据读写方法及装置、处理器、存储介质

Similar Documents

Publication Publication Date Title
CN111651778B (zh) 基于risc-v指令架构的物理内存隔离方法
JP6913636B2 (ja) 共有ページ
JP6966333B2 (ja) 安全な初期化
JP6893479B2 (ja) 所有権テーブルを用いたデータ処理装置及び方法
KR101970744B1 (ko) 신뢰 레벨 활성화 기법
RU2640300C2 (ru) Движок интроспекции памяти для защиты целостности виртуальных машин
US8429741B2 (en) Altered token sandboxing
TWI780546B (zh) 執行安全操作的系統以及系統執行安全操作的方法
CN104866762A (zh) 安全管理程序功能
US8006055B2 (en) Fine granularity hierarchiacal memory protection
EP2827272B1 (en) Electronic device, operating system and access control method
CN110929304A (zh) 一种基于risc-v的内存保护方法
US8689288B2 (en) Apparatus and method for protecting system in virtualized environment
US20180129828A1 (en) Exclusive execution environment within a system-on-a-chip computing system
US10380338B2 (en) System and method for intra-level privilege seperation for system software on arm
US20140289739A1 (en) Allocating and sharing a data object among program instances
US10459851B2 (en) Method and apparatus for executing a process on a device using memory privileges
KR101460451B1 (ko) 프로세스 주소 공간을 제어하는 장치 및 방법
JP6838223B2 (ja) 車両制御装置
KR102028704B1 (ko) 전자기기에서 코드 삽입 공격으로부터 보호를 위한 메모리 운용 방법
CN114722404B (zh) 基于risc-v实现任意数量eapp的方法、系统
US11429412B2 (en) Guest protection from application code execution in kernel mode
CN111914284B (zh) 操作系统中进程地址空间隔离保护方法、装置及设备
JP5496464B2 (ja) 仮想化環境での安全なシステム保護装置および方法
US20160313938A1 (en) Fine grained memory protection to thwart memory overrun attacks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200327

RJ01 Rejection of invention patent application after publication