System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及文件系统访问控制领域,特别是涉及一种高效的文件访问安全方法、系统、设备及介质。
技术介绍
1、在操作系统中,内核运行的特权模式和应用程序运行的用户模式是隔离的,这意味着对资源的访问受硬件的限制,因此特权模式是可信任的,而用户模式是不可信任的。为了安全,对系统重要的,不容出错的部件都应该处于可信区域。典型的内核文件系统就放在内核中,因为需要管理块设备上的数据。在访问文件系统时,需要检查权限确保操作合法,内核文件系统使用内核中的进程结构来验证进程的身份然后比较权限。对于将文件系统放在设备侧的系统,由于文件系统不在内核,在文件系统调用请求时需要先在内核进行权限检查后,再将检查的结果传入设备端,因此内核需要与设备共享进程信息来进行权限检查。为了避免频繁进出内核,同时不改变内核的核心功能,需要采用新的方法来共享进程信息。
技术实现思路
1、本专利技术的目的是提供一种高效的文件访问安全方法、系统、设备及介质,可在保证安全的同时,防止内核与设备共享进程信息时频繁进出内核。
2、为实现上述目的,本专利技术提供了如下方案:
3、一种高效的文件访问安全方法,包括:
4、app端调用u-lib进行初始化;
5、u-lib通过ioctl调用内核驱动程序k-lib;
6、若所述k-lib中未设置密钥,则随机生成一个密钥,并保存密钥;
7、通过内核nvme驱动程序将密钥发送到设备端中的firm-rt;
8、利用所
9、app端的进程将文件系统调用发送给u-lib;
10、u-lib将文件系统调用、进程的身份信息uid和u-lib中的令牌token一起构成调用请求,并发送到设备端中的firm-rt;
11、firm-rt使用密钥验证所述调用请求中进程的身份信息uid和令牌token的有效性,如果无效则直接拒绝所述调用请求,反之则将所述调用请求发送给文件系统;
12、文件系统继续验证所述调用请求中文件系统调用的权限,如果所述调用请求拥有权限则执行此次进程请求,否则拒绝所述调用请求;
13、若所述k-lib中已设置密钥,则返回步骤“利用所述密钥,k-lib通过hmac算法将进程的身份信息uid加密到消息验证码mac中形成令牌token,并将所述令牌token返回到u-lib”。
14、可选地,firm-rt使用密钥验证所述调用请求中进程的身份信息uid和令牌token的有效性,具体包括:
15、当所述调用请求到达设备端中的firm-rt时,根据所述密钥和进程的身份信息uid,使用hmac加密算法生成新的令牌token,判断新的令牌token与所述调用请求中的令牌token是否相匹配;
16、若相匹配,则判定所述调用请求中的令牌token和进程的身份信息uid均有效;
17、若不匹配,则判定所述调用请求中的令牌token和进程的身份信息uid均无效。
18、可选地,所述内核驱动程序k-lib没有对内核的核心功能进行任何修改,与操作系统兼容。
19、一种高效的文件访问安全系统,包括:
20、初始化模块,用于app端调用u-lib进行初始化;
21、调用模块,用于u-lib通过ioctl调用内核驱动程序k-lib;
22、密钥生成模块,用于若所述k-lib中未设置密钥,则随机生成一个密钥,并保存密钥;
23、密钥共享模块,用于通过内核nvme驱动程序将密钥发送到设备端中的firm-rt;
24、token形成模块,用于利用所述密钥,k-lib通过hmac算法将进程的身份信息uid加密到消息验证码mac中形成令牌token,并将所述令牌token返回到u-lib;
25、文件系统调用发送模块,用于app端的进程将文件系统调用发送给u-lib;
26、调用请求发送模块,用于u-lib将文件系统调用、进程的身份信息uid和u-lib中的令牌token一起构成调用请求,并发送到设备端中的firm-rt;
27、有效性判断模块,用于firm-rt使用密钥验证所述调用请求中进程的身份信息uid和令牌token的有效性,如果无效则直接拒绝所述调用请求,反之则将所述调用请求发送给文件系统;
28、权限验证模块,用于文件系统继续验证所述调用请求中文件系统调用的权限,如果所述调用请求拥有权限则执行此次进程请求,否则拒绝所述调用请求;
29、循环模块,用于若所述k-lib中已设置密钥,则调用token形成模块。
30、一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前述的高效的文件访问安全方法。
31、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现如前述的高效的文件访问安全方法。
32、根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:
33、本专利技术公开一种高效的文件访问安全方法、系统、设备及介质,app端调用u-lib进行初始化,u-lib通过ioctl调用内核驱动程序k-lib,k-lib形成令牌token后返回到u-lib,u-lib代替app端保管令牌token,以后每次app端进程产生文件系统调用时,u-lib都将令牌token附加到将要发送给设备端的firm-rt的请求上,firm-rt使用密钥验证调用请求中进程的身份信息uid和令牌token的有效性。本专利技术只需要在内核和设备之间共享密钥时进行一次通信,在为每个进程初始化令牌时进入内核一次,且内核驱动程序k-lib没有对内核的核心功能进行任何修改,在保证安全的同时,防止了内核与设备共享进程信息时频繁进出内核。
本文档来自技高网...【技术保护点】
1.一种高效的文件访问安全方法,其特征在于,包括:
2.根据权利要求1所述的高效的文件访问安全方法,其特征在于,Firm-RT使用密钥验证所述调用请求中进程的身份信息uid和令牌token的有效性,具体包括:
3.根据权利要求1所述的高效的文件访问安全方法,其特征在于,所述内核驱动程序K-lib没有对内核的核心功能进行任何修改,与操作系统兼容。
4.一种高效的文件访问安全系统,其特征在于,包括:
5.一种电子设备,其特征在于,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述的高效的文件访问安全方法。
6.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被执行时实现如权利要求1至3中任一项所述的高效的文件访问安全方法。
【技术特征摘要】
1.一种高效的文件访问安全方法,其特征在于,包括:
2.根据权利要求1所述的高效的文件访问安全方法,其特征在于,firm-rt使用密钥验证所述调用请求中进程的身份信息uid和令牌token的有效性,具体包括:
3.根据权利要求1所述的高效的文件访问安全方法,其特征在于,所述内核驱动程序k-lib没有对内核的核心功能进行任何修改,与操作系统兼容。
4.一种高效的文...
【专利技术属性】
技术研发人员:胡俊成,车喜龙,王国毓,陈硕,魏皓阳,黄梓胜,
申请(专利权)人:吉林大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。