首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 软件包 / 软件组件 / 软件代码 / 一种基于网络的编程开发系统

一种基于网络的编程开发系统

阅读:411发布:2020-05-08

专利汇可以提供一种基于网络的编程开发系统专利检索,专利查询,专利分析的服务。并且本 发明 设计了一种基于网络的编程开发系统,包含WEB IDE(或同样功能的 软件 ), 云 主机(服务端),以及总控制软件及 数据库 。用户在WEB IDE上进行编程开发工作,而实际编译在云主机(服务端)上进行,服务端采用沙盒隔离技术为每个用户分配独立的 工作空间 ,总 控制器 则作为项目与代码的真实映射控制,对用户所执行的某些内容下达动态替换指令到云主机(服务端),对客户端所执行的内容下达动态替换,从而实现客户端所见非所得,WEB IDE中的伪代码,在云主机(客户端)编译时被按照映射库的对应关系替换为真实代码再编译或执行。,下面是一种基于网络的编程开发系统专利的具体信息内容。

1.一种基于基于网络的编程开发系统,该系统具有如下特征:
a.系统的组成分为三个部分,包含WEB IDE(或同等功能的软件),主机(服务端),与总控制软件及数据库,WEB IDE(或同等功能的软件)在用户端上运行,云主机(服务端)与总控制软件及数据库既可以在同一台物理服务器上,也可以部署在不同的物理设备上,经广域网或者局域网联通;
b.系统的工作原理,客户端用户在WEB IDE(或同等功能的软件)上进行编程开发工作,而实际编译在云主机(服务端)上进行,存储既可以在云主机(服务端)也可以分布式比如部分本地部分服务端,总控制软件则作为项目与代码的真实映射控制,对用户所执行的某些内容下达动态替换指令到云主机(服务端),从而实现用户所见非所得,即,WEB IDE中的部分伪代码,传递到云主机(客户端)编译时被按照映射库的对应关系替换为真实代码再编译或执行,对于客户端的开发者,输入的看到的这部分是伪代码,而后编译时被动态替换为真实的代码,使得伪代码所对应的真实的代码不被使用者获取。
2.根据权利要求1的一种系统,其特征在于,系统的组成上,云主机(服务端)是由服务器设备上设置虚拟机,再在虚拟机的基础上通过沙盒隔离创造出的互不干扰的多用户,即每个用户对应于一个沙盒,而各个沙盒之间的文件、注册表等的映射关系不同,特别地,对于linux服务器系统来说,每个用户对应于一个类似docker的容器系统。
3.根据权利要求1的一种系统,其特征在于,系统的架构上,设计了延伸链条以进行自我延展,其控制模式为:系统的处理实现还包含多次转译的设计,如,代码ABCD在第一客户端转译为伪代码XY,假定在这个过程中经过了二次开发,又包含了来自原来第一客户端用户的新的内容EFG,新的代码XY-EFG,再存储到服务端上,然后经过本系统转译,在第二客户端以伪代码XYZ的形式处理,处理时映射回ABCDEFG,从而在过程中包括了更多的开发者的内容。
4.根据权利要求1的一种系统,其特征在于,云主机(服务端)通过沙箱将每个用户的工作空间隔离(文件、映射关系、注册表、进程等隔离),以实现虚拟化,并为每个用户分别设置对应的真实存储区,比如各自对应的可进行IO控制隔离的虚拟磁盘,从而实现用户之间的深度隔离。
5.根据权利要求1 的一种系统,其特征在于,系统的每个用户的缓存指向一个虚拟磁盘,该虚拟磁盘进行IO的控制,还通过对文件与代码的缓存的透明加密实现对用户访问的额外控制,该虚拟磁盘可以是通过内存虚拟出的虚拟磁盘ramdisk,并将部分或全部缓存存在其中。
6.根据权利要求1 的一种系统,其特征在于,在系统的云主机(服务端)上通过inline hook与IRP派遣控制等方式实现虚拟化沙箱,将关键文件、程序、系统环境变成映射,再由沙盒对上述所有映射进行解析。
7.根据权利要求1 的一种系统,其特征在于,客户端WEB IDE(或同等功能的软件)与服务端的连接不是持续的,而是当WEB IDE(或同等功能的软件)与服务端连接的时候,服务端进行认证,认证成功后服务端上开启一个沙盒,真实代码或内容进入该沙盒,服务端的沙盒与客户端的沙盒联通,彼此适应同一套映射关系,通讯结束后,服务端的这一沙盒立即关闭休眠,服务端也不对非认证请求开放。
8.根据权利要求1的一种系统,其特征在于,系统在运行中的连通、分发、执行等环节上进行链公证,对整个运行过程,包括服务器与项目源主体,以及时间、MAC地址、IP、身份等都进行分布式的永久的不可篡改的记录。
9.根据权利要求1的一种系统,其特征在于,服务端是分布式的以区块链架构比如IPFS方案存储的,如果我们将本系统保护起来的数据、文件、代码与脚本统称为源的话,这些源是分布式存储在各个节点的服务器的,以区块链的方式存储,全量节点存储所有同步记录,其他轻量节点可以部分同步。
10.根据权利要求1的一种系统,其特征在于,服务端由N(N大于等于2)台服务器组成,当代码或者文件被重定向到服务器的时候,在服务端上代码或者文件被拆分成多段数据分别保存到多个不同的物理机器,分别保存一部分,但相对客户端进行映射时则还是完整的。

说明书全文

一种基于网络的编程开发系统

技术领域

[0001] 本发明属于计算机与网络的计算架构领域,特别是数字资产的应用与流转。

背景技术

[0002] 当今社会在信息化,但是数字资产存在安全与效率两大痛点。
[0003] 1.安全方面,数字资产易被盗取,易被攻击,仅仅美国每年因为知识产权盗窃造成的损失就高达6000亿美元。数据泄露事件频发,涉及文档、图纸、个人信息以及源代码等各种数据类型。企事业的机密文档,研发源代码,图纸等核心技术机密资料,很容易经内部员工的主动泄密流转到外面,甚至落到竞争对手手中。传统的加密因为速度慢,影响使用,解密后即可泄密,基本已经从市场上淘汰。而DSA数据安全隔离虽然是当前数据防泄密技术中有效手段之一,在实际的使用中却会造成使用者尤其是软件工程师泄密的情况。
[0004]  2.效率方面,流通效率低,研发效率低。每年全球研发投入已经达到2万亿美元,然而其中60%属于重复研发,基本上每个开发团队都是独立研发。本质原因就是,开发的源文件很难流通。即使在欧美国家,开源项目虽然数量很大,然而仍远远不能满足各行业的研发需求,大部分的项目是不开源的,尤其重要的或者优质的项目更是很少有开源内容。
[0005] 所以,如果有这样的一个计算架构,能够让数字资产像沙子做的沙画那样,看得见但拿不走,那么就可以在很大程度上解决安全与效率问题。

发明内容

[0006] 本发明设计了一种基于网络的编程开发系统,在文件、指令、程 序、代码等层面实现隔离与转译。
[0007]  系统包含WEB IDE(或同等功能的软件),主机(服务端),与总控制软件及数据库,WEB IDE(或同等功能的软件)在用户端上运行,云主机(服务端)与总控制软件及数据库可以在同一台物理服务器上,也可以部署在不同的物理设备上,并经广域网或者局域网联通。系统的工作原理,客户端用户在WEB IDE(或同等功能的软件)上进行编程开发工作,而实际编译在云主机(服务端)上进行,存储也可以在云主机(服务端)或者分布式或者部分本地部分服务端,总控制器则作为项目与代码的真实映射控制,对用户所执行的某些内容下达动态替换指令到云主机(服务端),从而实现用户所见非所得,WEB IDE中的伪代码,传递到云主机(客户端)编译时被按照映射库的对应关系替换为真实代码再编译或执行,对于客户端的开发者,输入的看到的均是伪代码,而后编译时被动态替换为真实的代码,使得真实的代码不被使用者获取。见说明书附图1。
[0008] 云主机(服务端)可以是是一台专的服务器,也可以是分布式的服务器节点(包括基于链的分布式节点),见说明书附图2,这些服务端的目的是:1.作为研发项目与代码的真实的存储位置; 2.存管对应与映射关系,指的是伪代码与真实代码之间的对应关系; 3. 云主机(服务端)接收客户端WEB IDE的指令,并控制客户端所执行或编译的代码的动态替换,以及版本控制,权限分级控制。
[0009] WEB IDE(或同样功能的软件)将客户端的指令传递给云主机(服务端),将编译器缓存与中间文件、文件与注册表操作、程序操作等的部分或全部内容的真实路径指向服务端上对应的源代码、或者项目、或者工作空间、或数据库等,云主机(服务端)作为研发项目与代码等的真实存储与映射管理器,对客户端所执行或编译的代码等内容提供动态替换的内容,由客户端程序执行动态替换,从而实现客户端的所见非所得,如:WEB IDE(或同样功能的软件)中可以插入伪代码,这部分代码不是真实代码,而是某种指代,比如//hook(document API, z.dll), 正常情况下这本来应该是一行注释文字,如果客户端计算机不能连接到云主机(服务端)的话,编译器也就是将其作为一行注释,不会有任何内容添加到程序中。然而,当这台客户端连接到服务端的时候,这行注释就会被替换为一行对所有文件操作相关的API进行全面hook并注入z.dll的代码,并编译供执行。而除运行与编译环节外,无论任何获取方式获取,打印或显示或编辑,客户端显示均为伪代码。见说明书附图2。
[0010] 本系统客户端代码还包含多次转译的流程,在系统的架构上,设计了延伸链条以进行自我延展,其控制模式为:系统的处理实现还包含多次转译的设计,如,代码ABCD在第一客户端转译为伪代码XY,假定在这个过程中经过了二次开发,又包含了来自原来第一客户端用户的新的内容EFG,新的代码XY-EFG,再存储到服务端上,然后经过本系统转译,在第二客户端以伪代码XYZ的形式处理,处理时映射回ABCDEFG,从而在过程中包括了更多的开发者的内容。见说明书附图3。
[0011] 在云主机(服务端)的缓存文件上,首先都是经过透明加密保护的,然后还可以不写入硬盘,而是在内存创建一个的Ramdisk虚拟磁盘存储区,虚拟化为虚拟磁盘从而进行I/O控制。
[0012] 进一步地,客户端还部署了特殊环节(主要是可能被攻击的几个环节)的屏幕监控与终端管控,进行取证,可以对客户端的屏幕进行。对于client端如果在虚拟机下运行,或者通过虚拟机进行外部调试的话,就予以立即的取证。
[0013] 整个系统还进行区块链公证,对整个系统的运行过程,包括服务器与项目源主体,以及时间、MAC地址、IP、身份等都进行分布式的永久的不可篡改的记录。
[0014] 当然,系统的WEB IDE与云主机(服务端)之间的交互都进行了加密。
[0015] 实际案例的产品效果见以下网站:chain2.jiamihezi.com这个架构下,数字资产的操作、开发、编译,均是虚拟化、链接化的。
[0016] 本地显示编辑的伪代码的部分,编译出来或运行出来的则是真代码内容。服务器上的分布式存储也可以有多种模式: 1. 同时将真实文件拆分成多份保存,即在服务端上文件不是以完整的文件形式保存,而是将文件拆分多段分别保存到多个不同的物理机器,每个服务器分别保存一部分,或者多个不同的物理磁盘,但对于客户端上的映射与替换时则还是一个完整的文件;2.采用区块链式的分布式存储;3. 系统的云主机(服务端)通过沙箱将每个用户的工作空间隔离,一个用户一个沙盒, 不同的沙盒与沙盒之间映射关系不同, 因此文件与进程互相之间不可访问,为每个用户设置对应的真实存储区(网络磁盘或虚拟磁盘或文件夹,或在服务器Ramdisk中创建虚拟存储区域),在同一台计算机上起到了共享计算池、分割计算机的效果。
[0017] 为了防泄密,云主机(服务端)上还可通过inline hook与IRP派遣控制等方式实现虚拟化沙箱,将关键文件、程序、系统环境变成映射,再由沙盒对上述所有映射进行解析,对可信程序与不可信进程可以放到不同的沙盒中,或直接将不可信进程排除到沙盒外,以使得外部进入的恶意的窃取与木不能获得真实文件。
[0018] 本发明的优势在于:特征1,开发终端可以获得来自其他开发者的的代码输出、项目输出,提升研发效率,而整个过程中不会造成泄密或知识产权侵犯,并具有独特的数字资产分布式处理与分布式应用的作用;
特征2,本发明系统的链结构保证了二次开发的成果可以再利用;
特征 3. 在运行中的连通、分发、执行等环节上进行区块链公证,对整个运行过程,包括服务器与项目源主体,以及时间、MAC地址、IP、身份等都进行分布式的永久的不可篡改的记录。
[0019] 本发明所设计的技术方案中,客户端计算设备既可以是电脑,也可以是便携式计算机包括手机与平板设备,以及嵌入式设备。
[0020] 本发明在降低了客户端的设计研发工作与难度同时,会加强辅助性与协同性,客户端应用者本身也可以是服务端的源项目的开发者与提供者,从而形成一个网络。所有的服务端的项目还可以共享token,共享更新 。
[0021] 本发明已经成功实现了具体实施案例,作为一个具体实施案例,在上述基本架构的基础上,实施案例还做了如下的设置:1.客户端选取了一台标准的windows7计算机,在上面安装了客户端WEB IDE软件,并经过重启计算机生效;
2.云主机(服务端)选用windows server 2008服务器3台,安装了服务端内核沙盒,以便为每个客户端创建一个隔离的用户空间沙箱,以及每个用户可以自行上传、管理、分发、控制内容的管理系统,这一实例项目的存管基于沙盒隔离与去中心化区块链分布,3台服务端组成IPFS节点网络,数据是拆分存储在所有服务器的,但是任何一台的服务器又不能构成完整性。测试中,客户端WEB IDE(或同等功能的软件)与服务端的连接不是持续的,而是当WEB IDE(或同等功能的软件)与服务端连接的时候,服务端进行认证,认证成功后服务端上开启一个沙盒,真实代码或内容进入该沙盒,服务端的沙盒与客户端的沙盒联通,彼此适应同一套映射关系,通讯结束后,服务端的这一沙盒立即关闭休眠,服务端也不对非认证请求开放;
3.我们测试了visual studio开发,在仅仅输入hello world的真实代码的情况下,通过在客户端WEB IDE输入沙盒伪代码 //sandbox_test得到了服务端输出的大量代码函数与计数功能,沙盒宏测试成功,输入的代码只是hello world,其他都是沙盒宏注释,在过去的理论上是只会输出hello world的,然后实际结果却输出了多个函数;
4.为了方便二次开发与代码完善,客户端用户虽然不能够看到内部的代码与算法,但是可以通过沙盒宏的二次开发机制完善项目,所有修改实时地在服务端节点链条上进行分叉;
5.为了方便创新项目与代码研发原始项目的价值评估,所有的伪代码到真实代码转译记录,以及动态代码加载记录,终端受众画像,都会在分布式服务器上记录,作为数字资产被估值和确权条件;
6.客户端的所形成的伪代码与二次开发真代码混合的结果,再以新的伪代码的形式提供给其他客户端,结合到了其他客户端的新项目中,得到了成功的编译反馈,原始开发与二次开发的程序都结合到了新项目中,编译正常。

附图说明

[0022] 附图1. 本系统流程图
[0023] 附图2.本系统效果说明图。
[0024] 附图3.链流程图。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈