CN103617135A - 一种存储设备中数据读取的方法及装置 - Google Patents

一种存储设备中数据读取的方法及装置 Download PDF

Info

Publication number
CN103617135A
CN103617135A CN201310611181.7A CN201310611181A CN103617135A CN 103617135 A CN103617135 A CN 103617135A CN 201310611181 A CN201310611181 A CN 201310611181A CN 103617135 A CN103617135 A CN 103617135A
Authority
CN
China
Prior art keywords
protected data
data
file
read
memory device
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.)
Granted
Application number
CN201310611181.7A
Other languages
English (en)
Other versions
CN103617135B (zh
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.)
Shenzhen Netcom Electronics Co Ltd
Original Assignee
Shenzhen Netcom Electronics 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 Shenzhen Netcom Electronics Co Ltd filed Critical Shenzhen Netcom Electronics Co Ltd
Priority to CN201310611181.7A priority Critical patent/CN103617135B/zh
Publication of CN103617135A publication Critical patent/CN103617135A/zh
Application granted granted Critical
Publication of CN103617135B publication Critical patent/CN103617135B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明适用于存储设备的数据存储技术领域,提供了一种存储设备中数据读取的方法及装置,所述方法包括:修改存储设备的文件读取应用程序对应的输入表信息;在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。本发明在不需要取消存储设备的防拷贝功能条件下,就可以直接读取到存储设备中的受保护数据。

Description

一种存储设备中数据读取的方法及装置
技术领域
本发明属于存储设备的数据处理技术领域,尤其涉及一种存储设备中数据读取的方法及装置。
背景技术
现有的存储设备,如U盘、SD卡、MMC卡、CF卡等为了防止某些受保护数据(例如GPS导航设备发行商提供的地图数据,学习机生厂商提供的学习数据或手机游戏发行商提供的游戏数据等)被未授权的用户读取或复制,损害所述受保护数据发行商的利益,因此现有的存储设备通常都会带有防拷贝功能。
然而,当存储设备的防拷贝功能被具有权限的用户取消后,任何用户又都可以读取或复制存储设备中的所述受保护数据,影响存储设备中受保护数据的安全。
发明内容
本发明实施例的目的在于提供一种存储设备中数据读取的方法及装置,以解决现有技术需要通过取消存储设备的防拷贝功能以进行数据的读取或复制,影响存储设备中受保护数据安全的问题。
本发明实施例是这样实现的,一种存储设备中数据读取的方法,所述方法包括:
修改存储设备的文件读取应用程序对应的输入表信息;
在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
本发明实施例的另一目的在于提供一种存储设备中数据读取的装置,所述装置包括:
信息修改单元,用于修改存储设备的文件读取应用程序对应的输入表信息;
数据读取单元,用于在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
本发明实施例的再一目的在于提供一种闪存存储设备,所述闪存存储设备包括所述存储设备中数据读取的装置。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过修改存储设备的文件读取应用程序对应的输入表信息,一方面,使文件读取应用程序在执行的过程中可以调用自定义的读取受保护数据的函数,而所述自定义的读取受保护数据的函数可以通过私有命令,读取受保护数据对应的物理扇区集合中的数据,从而在不需要取消存储设备的防拷贝功能条件下,就可以直接读取到所述受保护数据,使得带有防拷贝功能的存储设备具备了一种更加简单、方便、安全的读取受保护数据的功能。另一方面,通过修改存储设备的文件读取应用程序对应的输入表信息,使得文件读取应用程序在执行的过程中可以直接调用自定义的读取受保护数据的函数,不需要对所述文件读取应用程序重新编译,即可以在不知道所述文件读取应用程序代码的情况下修改其功能,具有较强的易用性和实用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的存储设备中数据读取方法的实现流程图;
图2是本发明实施例二提供的存储设备中数据读取装置的组成结构图;
图3是本发明实施例三提供的存储设备的组成结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
图1示出了本发明实施例一提供的闪存存储设备中数据管理方法的实现流程,该方法过程详述如下:
在步骤S101中,修改存储设备的文件读取应用程序对应的输入表信息。
在本实施例中,所述文件读取应用程序为EXE文件,所述输入表为所述文件读取应用程序的文件结构的一部分,所述输入表中记录有动态链接库(Dynamic Link Library,DLL)文件的导入函数地址。需要说明的是,根据所述导入函数地址导入的函数不会直接被执行,只有当所述文件读取应用程序映射到主机系统的内存后,主机系统的操作系统将相应的DLL文件导入,所述文件读取应用程序通过所述输入表查找到相应的DLL文件中的导入函数并且调用执行,从而完成程序的正常运行。
其中,所述主机系统为可存储数据的任意系统,例如电脑系统、数码相机、摄影机、通信装置、音讯播放器、视讯播发器等系统。所述主机系统通过其数据传输接口与所述存储设备连接。
本实施例所述修改存储设备的文件读取应用程序对应的输入表信息,具体是指将存储设备的文件读取应用程序对应的输入表中的动态链接库DLL文件导入函数地址修改为所述自定义的读取受保护数据的函数地址,以使得所述文件读取应用程序在执行过程中,可以根据修改后的输入表信息调用执行自定义的函数。由于修改后的所述文件读取应用程序映射到内存后,所述文件读取应用程序通过修改后的所述输入表找到相应的自定义函数并且调用执行,可以不需要对所述文件读取应用程序重新编译,即可以在不知道所述文件读取应用程序代码的情况下修改其功能。
在步骤S102中,在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
本实施例所述函数通过私有命令读取所述受保护数据具体包括:
A、根据受保护数据所在文件的当前读取位置指针和读取数据长度,获取待读取的受保护数据对应的文件簇集合;
在文件系统中,一个文件是由文件配置表(File Allocation Table,FAT)中标记的一个或多个簇组成的,各个簇之间可能不连续,形成簇链结构,如:首簇->下一个簇->下一个簇->最后一个簇。一般而言,一个扇区的大小为512字节,文件系统会把连续的一个或多个扇区视为一个簇,即一个簇的大小为一个或多个扇区的大小。
假设该FAT文件系统以2个扇区视为一个簇,FAT文件系统的数据区是以编号为201的扇区开始。那么,该FAT文件系统结构中的数据区域如表1所示。
簇号 第一扇区号 第二扇区号
2 201 202
3 203 204
4 205 206
5 207 208
6 209 210
7 211 212
8 213 214
9 215 216
10 217 218
表1
所述待读取的受保护数据对应的文件簇集合指的是在FAT中,根据当前读取位置指针和读取数据长度找到的对应文件簇集合。如表2所示的FAT区域,假设当前读取位置指针(偏移量)为512字节,指向编号为2的簇上(由于一个扇区512个字节,故所述当前读取位置指针恰好指向簇2的第二扇区起始位置处),则由FAT区域的簇链(所述当前读取位置指针指在簇2上,簇2指向的下一个簇为簇4,簇4指向的下一个簇为簇6,簇6的为终止簇)可知将要读取的数据会出现在簇2、簇4和簇6上。再假设所述读取数据长度为2048字节,即从所述当前读取位置指针处根据簇链表再读取4个扇区,也就是两个簇大小的数据,因此此时所述要读取的受保护数据对应的文件簇集合有簇2、簇4和簇6。
2(指向4) 3 4(指向6) 5 6(终止符) 7 8 9 10
表2
B、根据所述文件簇集合,在文件配置表的数据区域内查找所述待读取的受保护数据对应的物理扇区集合;
如表1所示,读取的受保护数据对应的物理扇区集合包括202、205、206和209这四个扇区。
C、通过私有命令从查找到的所述物理扇区集合中读取所述受保护数据,并将读取到的所述受保护数据复制到主机系统预定的缓存区域。
在本实施例中,所述私有命令需提供一可以写受保护的数据物理扇区地址接口,例如可以定义访问受保护的数据的物理扇区地址的私有命令,当接收到该私有命令时,即可对受保护的数据进行相关的编辑操作,例如修改等编辑操作。
本发明实施例在不需要取消存储设备的防拷贝功能条件下,就可以直接读取到所述受保护数据,使得带有防拷贝功能的存储设备具备了一种更加简单、方便、安全的读取受保护数据的功能。而且,通过修改存储设备的文件读取应用程序对应的输入表信息,使得文件读取应用程序在执行的过程中可以直接调用自定义的读取受保护数据的函数,不需要对所述文件读取应用程序重新编译,即可以在不知道所述文件读取应用程序代码的情况下修改其功能,具有较强的易用性和实用性。
实施例二:
图2示出了本发明实施例二提供的存储设备中数据读取装置的组成结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该存储设备中数据读取装置可以应用于各存储设备中,可以是运行于存储设备内的软件单元、硬件单元或者软硬件相结合的单元,也可以作为独立的挂件集成到存储设备中或者运行于存储设备的应用系统中。
该存储设备中数据读取装置包括信息修改单元21以及数据读取单元22,其中:
信息修改单元21,用于修改存储设备的文件读取应用程序对应的输入表信息;
数据读取单元22,用于在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
进一步的,所述信息修订单元21具体用于:
将存储设备的文件读取应用程序对应的输入表中的动态链接库文件导入函数地址修改为所述自定义的读取受保护数据的函数地址。
进一步的,所述数据读取单元22包括:
文件簇读取模块221,用于根据受保护数据所在文件的当前读取位置指针和读取数据长度,获取待读取的受保护数据对应的文件簇集合;
查找模块222,用于根据所述文件簇集合,在文件配置表的数据区域内查找所述待读取的受保护数据对应的物理扇区集合;
数据读取模块223,用于通过私有命令从查找到的所述物理扇区集合中读取所述受保护数据,并将读取到的所述受保护数据复制到主机系统预定的缓存区域,从而完成受保护数据的读取。
进一步的,所述私有命令包含写受保护数据的物理扇区地址接口。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元或模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例三:
图3示出了本发明实施例三提供的存储设备的组成结构,为了便于说明,仅示出了与本发明实施例相关的部分。
如图3所示,该存存储设备3包含主控芯片31、I/O控制芯片32以及闪存33。
所述主控芯片31用于修改存储设备的文件读取应用程序对应的输入表信息。
所述I/O控制芯片32用于接收读取受保护数据的指令,并将所述命令发送给所述主控芯片31。所述主控芯片31在接收到I/O控制芯片32发送的读取受保护数据的指令后,根据修改的所述输入表信息,从闪存33中调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取闪存33中的所述受保护数据。
进一步的,所述主控芯片31在修改存储设备的文件读取应用程序对应的输入表信息时,具体用于将存储设备的文件读取应用程序对应的输入表中的动态链接库文件导入函数地址修改为所述自定义的读取受保护数据的函数地址。
进一步的,在所述函数通过私有命令读取所述受保护数据时,所述主控芯片31具体根据受保护数据所在文件的当前读取位置指针和读取数据长度,从闪存33中获取待读取的受保护数据对应的文件簇集合,并根据所述文件簇集合,在闪存33的文件配置表的数据区域内查找所述待读取的受保护数据对应的物理扇区集合。最后所述主控芯片31通过私有命令从查找到的所述物理扇区集合中读取所述受保护数据,并将读取到的所述受保护数据复制到主机系统预定的缓存区域,从而完成受保护数据的读取。所述私有命令包含写受保护数据的物理扇区地址接口。
另外,需要说明的是,所属领域的技术人员应该可以清楚地了解到所述存储设备3还可以包括印刷电路板(PCB板)、阻容电容等,所述主控芯片31可以集成在所述PCB板上。
本领域技术人员可以理解,图3中示出的组成结构并不构成对存储设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
综上所述,本发明实施例通过改写存储设备的文件读取应用程序对应的输入表信息,一方面,使文件读取应用程序在执行的过程中可以调用自定义的读取受保护数据的函数,而所述自定义的读取受保护数据的函数可以通过私有命令,读取受保护数据对应的物理扇区集合中的数据,从而在不需要取消存储设备的防拷贝功能条件下,就可以直接读取到所述受保护数据,使得带有防拷贝功能的存储设备具备了一种更加简单、方便、安全的读取受保护数据的功能。另一方面,改写存储设备的文件读取应用程序对应的输入表信息,使得文件读取应用程序在执行的过程中可以直接调用自定义的读取受保护数据的函数,不需要对所述文件读取应用程序重新编译,即可以在不知道所述文件读取应用程序代码的情况下修改其功能,具有较强的易用性和实用性。
本领域普通技术人员还可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,包括ROM/RAM、磁盘、光盘等。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明由所提交的权利要求书确定的专利保护范围。

Claims (9)

1.一种存储设备中数据读取的方法,其特征在于,所述方法包括:
修改存储设备的文件读取应用程序对应的输入表信息;
在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
2.如权利要求1所述的方法,其特征在于,所述修改存储设备的文件读取应用程序对应的输入表信息包括:
将存储设备的文件读取应用程序对应的输入表中的动态链接库文件导入函数地址修改为所述自定义的读取受保护数据的函数地址。
3.如权利要求1所述的方法,其特征在于,所述函数通过私有命令读取所述受保护数据包括:
根据受保护数据所在文件的当前读取位置指针和读取数据长度,获取待读取的受保护数据对应的文件簇集合;
根据所述文件簇集合,在文件配置表的数据区域内查找所述待读取的受保护数据对应的物理扇区集合;
通过私有命令从查找到的所述物理扇区集合中读取所述受保护数据,并将读取到的所述受保护数据复制到主机系统预定的缓存区域。
4.如权利要求1至3任一项所述的方法,其特征在于,所述私有命令包含写受保护数据的物理扇区地址接口。
5.一种存储设备中数据读取的装置,其特征在于,所述装置包括:
信息修改单元,用于修改存储设备的文件读取应用程序对应的输入表信息;
数据读取单元,用于在接收到读取受保护数据的指令时,根据修改的所述输入表信息,调用自定义的读取受保护数据的函数,以使得所述函数通过私有命令读取所述受保护数据。
6.如权利要求5所述的装置,其特征在于,所述信息修订单元具体用于:
将存储设备的文件读取应用程序对应的输入表中的动态链接库文件导入函数地址修改为所述自定义的读取受保护数据的函数地址。
7.如权利要求6所述的装置,其特征在于,所述数据读取单元包括:
文件簇读取模块,用于根据受保护数据所在文件的当前读取位置指针和读取数据长度,获取待读取的受保护数据对应的文件簇集合;
查找模块,用于根据所述文件簇集合,在文件配置表的数据区域内查找所述待读取的受保护数据对应的物理扇区集合;
数据读取模块,用于通过私有命令从查找到的所述物理扇区集合中读取所述受保护数据,并将读取到的所述受保护数据复制到主机系统预定的缓存区域。
8.如权利要求5至7任一项所述的装置,其特征在于,所述私有命令包含写受保护数据的物理扇区地址接口。
9.一种存储设备,其特征在于,所述存储设备包括权利要求5至8任一项所述的存储设备中数据读取的装置。
CN201310611181.7A 2013-11-26 2013-11-26 一种存储设备中数据读取的方法及装置 Active CN103617135B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310611181.7A CN103617135B (zh) 2013-11-26 2013-11-26 一种存储设备中数据读取的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310611181.7A CN103617135B (zh) 2013-11-26 2013-11-26 一种存储设备中数据读取的方法及装置

Publications (2)

Publication Number Publication Date
CN103617135A true CN103617135A (zh) 2014-03-05
CN103617135B CN103617135B (zh) 2016-10-26

Family

ID=50167838

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310611181.7A Active CN103617135B (zh) 2013-11-26 2013-11-26 一种存储设备中数据读取的方法及装置

Country Status (1)

Country Link
CN (1) CN103617135B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653980A (zh) * 2015-12-30 2016-06-08 福建联迪商用设备有限公司 一种虚拟内存数据的保护方法及其系统
CN110826102A (zh) * 2019-11-07 2020-02-21 深圳市四季宏胜科技有限公司 防拷贝文件管理方法、装置、设备及可读存储介质
CN110851795A (zh) * 2019-11-07 2020-02-28 深圳市四季宏胜科技有限公司 文件管理方法、装置、设备及可读存储介质
CN112507402A (zh) * 2021-02-09 2021-03-16 北京紫光青藤微系统有限公司 Flash存储器读保护处理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101131845A (zh) * 2006-08-25 2008-02-27 吉林省圣伦计算机信息安全有限公司 存储介质的防复制方法
CN101908119A (zh) * 2010-08-12 2010-12-08 浙江中控软件技术有限公司 一种动态链接库dll文件的处理方法和装置
CN102938036A (zh) * 2011-11-29 2013-02-20 Ut斯达康通讯有限公司 Windows动态链接库的分段双重加密及安全加载方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101131845A (zh) * 2006-08-25 2008-02-27 吉林省圣伦计算机信息安全有限公司 存储介质的防复制方法
CN101908119A (zh) * 2010-08-12 2010-12-08 浙江中控软件技术有限公司 一种动态链接库dll文件的处理方法和装置
CN102938036A (zh) * 2011-11-29 2013-02-20 Ut斯达康通讯有限公司 Windows动态链接库的分段双重加密及安全加载方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105653980A (zh) * 2015-12-30 2016-06-08 福建联迪商用设备有限公司 一种虚拟内存数据的保护方法及其系统
CN110826102A (zh) * 2019-11-07 2020-02-21 深圳市四季宏胜科技有限公司 防拷贝文件管理方法、装置、设备及可读存储介质
CN110851795A (zh) * 2019-11-07 2020-02-28 深圳市四季宏胜科技有限公司 文件管理方法、装置、设备及可读存储介质
CN112507402A (zh) * 2021-02-09 2021-03-16 北京紫光青藤微系统有限公司 Flash存储器读保护处理方法及装置

Also Published As

Publication number Publication date
CN103617135B (zh) 2016-10-26

Similar Documents

Publication Publication Date Title
US20170344430A1 (en) Method and apparatus for data checkpointing and restoration in a storage device
US8650379B2 (en) Data processing method for nonvolatile memory system
CN106445398B (zh) 一种基于新型存储器的嵌入式文件系统及其实现方法
CN111381954B (zh) 一种音频数据录制方法、系统及终端设备
US20170075614A1 (en) Memory system and host apparatus
US11138034B2 (en) Method and apparatus for collecting information, and method and apparatus for releasing memory
CN107480074B (zh) 一种缓存方法、装置及电子设备
CN111737221B (zh) 集群文件系统的数据读写方法、装置及设备和存储介质
CN103617135A (zh) 一种存储设备中数据读取的方法及装置
CN114327777B (zh) 确定全局页目录的方法、装置、电子设备及存储介质
US20170255565A1 (en) Method and apparatus for providing a contiguously addressable memory region by remapping an address space
US8726101B2 (en) Apparatus and method for tracing memory access information
US10713162B1 (en) System and method for computer data garbage collection acceleration using peer to peer data transfers
CN103530241A (zh) 一种用户态的双控内存镜像实现方法
CN110609660A (zh) Ssd阵列的主机端映射方法、装置、计算机设备及存储介质
CN111459848B (zh) 一种文件碎片的整理方法、装置、存储介质及电子设备
CN113961485A (zh) 内存优化方法、装置、终端、存储介质
CN102298553B (zh) 根据用户响应时间来管理存储器的设备和方法
US20200142623A1 (en) Storage device and electronic device managing data transmitted to storage device
CN102760061B (zh) 屏蔽固态硬盘存储接口差异的方法及存储系统
CN112148486A (zh) 内存页面管理方法、装置、设备及可读存储介质
US10496318B1 (en) System and method for capacity management in multi-tiered storage
KR20150139017A (ko) 메모리 제어 장치 및 방법
US11360901B2 (en) Method and apparatus for managing page cache for multiple foreground applications
US11947467B2 (en) Electronic device and operation method thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 518057 A, B, C, D, E, F1, 8 Building, Financial Services Technology Innovation Base, No. 8 Kefa Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen jiangbolong electronic Limited by Share Ltd

Address before: 518057 A, B, C, D, E, F1, 8 Building, Financial Services Technology Innovation Base, No. 8 Kefa Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen jiangbolong Electronic Co., Ltd.