[go: up one dir, main page]

CN107948235A - Cloud data safety management and audit device based on JAR - Google Patents

Cloud data safety management and audit device based on JAR Download PDF

Info

Publication number
CN107948235A
CN107948235A CN201710780103.8A CN201710780103A CN107948235A CN 107948235 A CN107948235 A CN 107948235A CN 201710780103 A CN201710780103 A CN 201710780103A CN 107948235 A CN107948235 A CN 107948235A
Authority
CN
China
Prior art keywords
data
log
jar
access
server
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
CN201710780103.8A
Other languages
Chinese (zh)
Other versions
CN107948235B (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201710780103.8A priority Critical patent/CN107948235B/en
Publication of CN107948235A publication Critical patent/CN107948235A/en
Application granted granted Critical
Publication of CN107948235B publication Critical patent/CN107948235B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于JAR的云数据安全管理与审计装置,包括:云数据管理模块,用于实现数据所有者对数据的读写与更新,更新用户列表并日志审计操作,其中,在未授权用户查看明文数据之前,检测和终止恶意行为,并且在有人访问服务器端的数据时,通过JAR的访问策略触发自动日志记录;日志安全审计模块,用于通过Attestation的日志格式将日志存储在CSP上,并且通过链状的日志整体结构保证日志的安全性,以通过JAR的访问策略对数据访问进行查询或者对指定文件或用户行为进行查询。该装置可以通过JAR的访问策略提供自动可靠的日志记录机制,确保数据访问将生成记录并保护数据免受密钥滥用攻击,有效地实现了记录的真实性和完整性,有效提高数据的安全性。

The invention discloses a JAR-based cloud data security management and auditing device, including: a cloud data management module, which is used to realize the data owner's reading, writing and updating of data, update the user list and log audit operations, wherein, in the future Before authorized users view plaintext data, detect and terminate malicious behaviors, and when someone accesses server-side data, trigger automatic logging through JAR access policies; the log security audit module is used to store logs on the CSP through the log format of Attestation , and ensure the security of the log through the overall structure of the chain log, so as to query the data access or query the specified file or user behavior through the access policy of the JAR. The device can provide an automatic and reliable logging mechanism through the access policy of JAR to ensure that data access will generate records and protect data from key abuse attacks, effectively realizing the authenticity and integrity of records and effectively improving data security .

Description

基于JAR的云数据安全管理与审计装置JAR-based cloud data security management and auditing device

技术领域technical field

本发明涉及云存储及数据安全保护技术领域,特别涉及一种基于JAR(JavaArchive,Java归档文件)的云数据安全管理与审计装置。The invention relates to the technical field of cloud storage and data security protection, in particular to a JAR (JavaArchive, Java archive file)-based cloud data security management and auditing device.

背景技术Background technique

随着云服务的发展,越来越多的用户开始使用云存储服务。简单来说云存储是将储存资源放到云上供人存取的一种新兴方案。在数据访问方面,现有云存储技术的问题主要在于如果执行大规模数据请求或数据恢复操作,那么云存储是否可提供足够的访问性。在数据安全方面,云存储服务器早已经成为了黑客入侵的目标,CSP(Content SecurityPolicy,内容安全策略)近年来已经有数据丢失、泄漏事故报告,考虑到CSP的信誉不佳,云用户担心会失去对其数据的控制,CSP和日志记录的不可靠引发了云存储中的诸多问题。多数的云服务提供商都预备了安全防护方案,但是云存储中数据安全问题仍然客观存在,必须加以解决。With the development of cloud services, more and more users start to use cloud storage services. Simply put, cloud storage is an emerging solution that puts storage resources on the cloud for people to access. In terms of data access, the problem with existing cloud storage technologies is whether cloud storage can provide sufficient accessibility if large-scale data requests or data recovery operations are performed. In terms of data security, cloud storage servers have long been the target of hackers. CSP (Content Security Policy, Content Security Policy) has reported data loss and leakage accidents in recent years. Considering the poor reputation of CSP, cloud users worry about losing Unreliable control over its data, CSP and logging raises many issues in cloud storage. Most cloud service providers have prepared security protection solutions, but data security issues in cloud storage still exist objectively and must be resolved.

在相关技术中,作为应对CSP的问题的主要方法,日志记录能够跟踪数据使用情况,便于进行数据安全检查。作为常见的记录类型,日志由具有日志记录机制CSP生成并存储在云中。在不被信任的云中,不论是恶意用户还是CSP都有能力制造虚假或破碎的日志,防止留下泄露数据的证据。因此,如何在不信任的云中构建自动可靠的日志记录面临严峻的挑战。近年来,对不可信云中的可信云记录的研究着重于日志的完整性保护,数字签名和哈希链机制已经被引入可靠的日志记录格式中,采用自动记录机制可有效保证记录日志的真实性。In related technologies, as a main method to deal with the problem of CSP, log records can track data usage, which is convenient for data security inspection. As a common logging type, logs are generated by CSPs with logging mechanisms and stored in the cloud. In an untrusted cloud, either a malicious user or a CSP has the ability to create false or broken logs, preventing evidence of leaked data. Therefore, how to build automatic and reliable logging in untrusted clouds faces serious challenges. In recent years, research on trusted cloud records in untrusted clouds has focused on the integrity protection of logs. Digital signatures and hash chain mechanisms have been introduced into reliable log record formats. The use of automatic record mechanisms can effectively ensure the integrity of logs. authenticity.

然而,最先进的自动日志记录技术仍然存在一些问题,如自动记录机制是为分布式存储系统设计的,并没有充分利用CSP的能力,对数据所有者的日志通信和存储造成巨大的负担;又例如为了保护日志内容中的用户隐私,日志加密机制在空间和时间上都是低效的,并且不可信的CSP会引发密钥滥用攻击的问题。需要说明的是,通过与CSP合谋,恶意用户可以直接访问存储在CSP上的加密数据,而不生成任何记录,并用泄漏的解密密钥对数据进行解密,造成数据的安全性低,记录的真实性和完整性差。However, there are still some problems in the state-of-the-art automatic logging technology, such as the automatic logging mechanism is designed for distributed storage systems, and does not fully utilize the capabilities of CSP, causing a huge burden on the log communication and storage of data owners; For example, in order to protect user privacy in log content, the log encryption mechanism is inefficient in both space and time, and an untrusted CSP will cause the problem of key abuse attacks. It should be noted that by colluding with the CSP, malicious users can directly access the encrypted data stored on the CSP without generating any records, and use the leaked decryption key to decrypt the data, resulting in low data security and authenticity of the records. Sexuality and integrity are poor.

发明内容Contents of the invention

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。The present invention aims to solve one of the technical problems in the related art at least to a certain extent.

为此,本发明的目的在于提出一种基于JAR的云数据安全管理与审计装置,该装置可以确保数据访问将生成记录并保护数据免受秘钥滥用攻击,有效实现了记录的真实性和完整性,有效提高数据的安全性。To this end, the object of the present invention is to propose a JAR-based cloud data security management and auditing device, which can ensure that data access will generate records and protect data from abuse of secret keys, effectively realizing the authenticity and integrity of records and effectively improve data security.

为达到上述目的,本发明实施例提出了一种基于JAR的云数据安全管理与审计装置,包括:数据管理模块,用于实现数据所有者对数据的读写与更新,更新用户列表并日志审计操作,其中,在未授权用户查看明文数据之前,检测和终止恶意行为,并且在有人访问服务器端的数据时,通过JAR的访问策略触发自动日志记录;日志安全审计模块,用于通过Attestation的日志格式将日志存储在CSP上,并且通过链状的日志整体结构保证日志的安全性,以通过所述JAR的访问策略对数据访问进行查询或者对指定文件或用户行为进行查询。In order to achieve the above purpose, the embodiment of the present invention proposes a JAR-based cloud data security management and auditing device, including: a data management module, used to realize the data owner to read, write and update data, update the user list and log audit Operations, where malicious behavior is detected and terminated before unauthorized users view plaintext data, and automatic logging is triggered through JAR access policies when someone accesses server-side data; the log security audit module is used to pass the log format of Attestation The log is stored on the CSP, and the security of the log is guaranteed through the overall structure of the chain log, so as to query the data access or query the specified file or user behavior through the access policy of the JAR.

本发明实施例的基于JAR的云数据安全管理与审计装置,可以实现基于JAR的数据访问控制、面向数据操作的日志生成、日志完整性维护以及基于日志的安全审计等功能,并通过JAR的访问策略提供自动可靠的日志记录机制,确保数据访问将生成记录并保护数据免受密钥滥用攻击,有效地实现了记录的真实性和完整性,有效提高数据的安全性。The JAR-based cloud data security management and auditing device in the embodiment of the present invention can realize functions such as JAR-based data access control, data operation-oriented log generation, log integrity maintenance, and log-based security auditing. Policies provide an automatic and reliable logging mechanism to ensure that data access will generate records and protect data from key abuse attacks, effectively realizing the authenticity and integrity of records and effectively improving data security.

另外,根据本发明上述实施例的基于JAR的云数据安全管理与审计装置还可以具有以下附加的技术特征:In addition, the JAR-based cloud data security management and auditing device according to the above-mentioned embodiments of the present invention may also have the following additional technical features:

进一步地,在本发明的一个实施例中,所述JAR的访问策略包括:服务器端对请求权限进行检查,生成预设格式的日志,并将所述预设格式的日志附加在已存在的日志后,以当所述生成的预设格式的日志的全部内容正确执行完成后,服务器生成对应的permission或denial消息,以保证所有的数据修改有日志记录。Further, in an embodiment of the present invention, the access policy of the JAR includes: the server side checks the request permission, generates a log in a preset format, and appends the log in a preset format to an existing log Finally, when all the content of the generated log in the preset format is correctly executed, the server generates a corresponding permission or denial message to ensure that all data modifications have log records.

进一步地,在本发明的一个实施例中,所述Attestation的日志格式如下:Further, in one embodiment of the present invention, the log format of the Attestation is as follows:

其中,日志信息使用明文保存在服务提供商处,且不同数据的操作日志被记录在一个公共的日志文件中。Wherein, the log information is saved at the service provider in plain text, and the operation logs of different data are recorded in a common log file.

进一步地,在本发明的一个实施例中,所述链状的日志整体结构如下:Further, in one embodiment of the present invention, the overall structure of the chain log is as follows:

ChainHash=hash(AttestBody,prevChainHash)。ChainHash = hash(AttestBody, prevChainHash).

进一步地,在本发明的一个实施例中,其中,当每条Attestation内容发生改变时,引起整条日志链的断裂,从而根据哈希链断裂的位置定位威胁数据安全的恶意行为。Furthermore, in one embodiment of the present invention, when the content of each Attestation changes, the entire log chain is broken, so as to locate malicious behaviors that threaten data security according to the broken location of the hash chain.

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention.

附图说明Description of drawings

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:The above and/or additional aspects and advantages of the present invention will become apparent and easy to understand from the following description of the embodiments in conjunction with the accompanying drawings, wherein:

图1为根据本发明实施例的基于JAR的云数据安全管理与审计装置的结构示意图;Fig. 1 is a schematic structural diagram of a JAR-based cloud data security management and auditing device according to an embodiment of the present invention;

图2为根据本发明一个实施例的云数据管理和自动日志记录工具整体框架的示意图;FIG. 2 is a schematic diagram of the overall framework of cloud data management and automatic logging tools according to an embodiment of the present invention;

图3为根据本发明一个实施例的基于JAR的数据访问控制的示意图;FIG. 3 is a schematic diagram of JAR-based data access control according to an embodiment of the present invention;

图4为根据本发明一个实施例的基于ServerJAR的自动日志记录机制的示意图;FIG. 4 is a schematic diagram of an automatic logging mechanism based on ServerJAR according to an embodiment of the present invention;

图5为根据本发明一个实施例的Owner的信息更新过程的示意图;FIG. 5 is a schematic diagram of an owner information update process according to an embodiment of the present invention;

图6为根据本发明一个实施例的Client的数据访问过程的示意图;FIG. 6 is a schematic diagram of a data access process of a Client according to an embodiment of the present invention;

图7为根据本发明一个实施例的Owner的日志查询过程的示意图。FIG. 7 is a schematic diagram of an Owner's log query process according to an embodiment of the present invention.

具体实施方式Detailed ways

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。Embodiments of the present invention are described in detail below, examples of which are shown in the drawings, wherein the same or similar reference numerals designate the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the figures are exemplary and are intended to explain the present invention and should not be construed as limiting the present invention.

为了实现可靠的云数据管理和自动日志记录,首先要保证网络通信协议和服务部署环境相对可靠。对此本发明实施例使用SSL(Secure Socket Layer,安全套接层协议通信)和Amazon AWS EC2(EC2,Elastic Compute Cloud,亚马逊弹性计算网云)来进行云服务环境部署。因此在介绍基于JAR的云数据安全管理与审计装置之前,首先对SSL和AmazonAWS EC2进行介绍。In order to achieve reliable cloud data management and automatic logging, it is first necessary to ensure that the network communication protocol and service deployment environment are relatively reliable. For this, the embodiment of the present invention uses SSL (Secure Socket Layer, secure socket layer protocol communication) and Amazon AWS EC2 (EC2, Elastic Compute Cloud, Amazon Elastic Compute Cloud) to deploy cloud service environment. Therefore, before introducing the JAR-based cloud data security management and auditing device, first introduce SSL and AmazonAWS EC2.

其中,SSL协议为Netscape所研发,用以保障在Internet上数据传输安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。SSL协议位于TCP(Transmission Control Protocol,传输控制协议)/IP(Internet Protocol,网络之间互连的协议)协议与各种应用层协议之间,为数据通讯提供安全支持。使用SSL协议进行网络通信有很多优点:(1)提供较高的安全性保证。SSL利用数据加密、身份验证和消息完整性验证机制,保证网络上数据传输的安全性。(2)支持各种应用层协议。虽然SSL设计的初衷是为了解决万维网安全性问题,但是由于SSL位于应用层和传输层之间,它可以为任何基于TCP等可靠连接的应用层协议提供安全性保证。(3)部署简单。目前SSL已经成为网络中用来鉴别网站和网页浏览者身份,在浏览器使用者及Web(World Wide Web,全球广域网或者万维网)服务器之间进行加密通信的全球化标准。Among them, the SSL protocol was developed by Netscape to ensure the security of data transmission on the Internet, and the use of data encryption technology can ensure that data will not be intercepted and eavesdropped during transmission on the network. The SSL protocol is located between the TCP (Transmission Control Protocol, Transmission Control Protocol)/IP (Internet Protocol, a protocol for interconnection between networks) protocol and various application layer protocols, providing security support for data communication. There are many advantages of using SSL protocol for network communication: (1) Provide higher security guarantee. SSL uses data encryption, identity verification and message integrity verification mechanisms to ensure the security of data transmission on the network. (2) Support various application layer protocols. Although the original intention of SSL design is to solve the security problem of the World Wide Web, since SSL is located between the application layer and the transport layer, it can provide security guarantee for any application layer protocol based on reliable connection such as TCP. (3) Deployment is simple. At present, SSL has become a global standard for identifying the identity of websites and web browsers in the network, and encrypting communication between browser users and Web (World Wide Web, global wide area network or World Wide Web) servers.

另外,AWS EC2是一个让使用者可以租用云端电脑运行所需应用的系统。AWS EC2上的简单的Web服务界面,可以让使用者轻松的获取和配置资源。AWS EC2有以下优点:(1)完全控制。用户可以完全控制自己的实例,拥有每个实例的管理员或根用户访问权,可以像与其他任何机器一样与这些实例互动。用户可以在停止运行实例的同时将数据保存在启动分区,然后用Web服务API(Application Programming Interface,应用程序编程接口)重启。使用Web服务API还可以远程重启实例,还拥有实例控制台输出的访问权。(2)运行可靠。Amazon EC2提供了一个非常可靠的环境,替代实例可在此环境中快速并以可预见的方式启动。该服务运行于亚马逊经过验证的网络基础设施和数据中心。(3)安全。Amazon EC2与Virtual Private Cloud(VPC)配合工作,为用户的计算资源提供安全及强大的联网功能。用户的计算实例位于Amazon VPC中,它具有用户指定的IP范围。用户可以决定哪些实例向互联网公开,哪些实例保持私有状态。安全组和网络ACL(Access Control List,访问控制列表)让用户能控制进入和离开自己的实例的入站和出站网络访问。(4)可拓展性好。Amazon EC2能够与Amazon Simple Storage Service(Amazon S3)、Amazon RelationalDatabase Service(Amazon RDS)和Amazon Simple Queue Service(Amazon SQS)配合使用,为多种应用程序提供完整的计算、查询处理和存储解决方案。In addition, AWS EC2 is a system that allows users to rent cloud computers to run required applications. The simple web service interface on AWS EC2 allows users to easily obtain and configure resources. AWS EC2 has the following advantages: (1) Complete control. Users have full control over their instances, have administrator or root access to each instance, and can interact with them like any other machine. The user can save the data in the boot partition while stopping the running instance, and then restart it with a Web service API (Application Programming Interface, application programming interface). It is also possible to restart the instance remotely using the web service API, and also have access to the instance's console output. (2) Reliable operation. Amazon EC2 provides a very reliable environment in which replacement instances can be launched quickly and predictably. The service runs on Amazon's proven network infrastructure and data centers. (3) Safety. Amazon EC2 works with Virtual Private Cloud (VPC) to provide secure and powerful networking functions for users' computing resources. The user's computing instance is located in the Amazon VPC, which has a user-specified IP range. Users can decide which instances are exposed to the Internet and which instances remain private. Security groups and network ACLs (Access Control List, Access Control List) allow users to control inbound and outbound network access to and from their instances. (4) Good scalability. Amazon EC2 can work with Amazon Simple Storage Service (Amazon S3), Amazon Relational Database Service (Amazon RDS), and Amazon Simple Queue Service (Amazon SQS) to provide a complete computing, query processing, and storage solution for a variety of applications.

下面参照附图描述根据本发明实施例提出的基于JAR的云数据安全管理与审计装置。The following describes the JAR-based cloud data security management and auditing device according to the embodiments of the present invention with reference to the accompanying drawings.

图1是本发明实施例的基于JAR的云数据安全管理与审计装置的结构示意图。FIG. 1 is a schematic structural diagram of a JAR-based cloud data security management and auditing device according to an embodiment of the present invention.

如图1所示,该基于JAR的云数据安全管理与审计装置10包括:云数据管理模块100和日志安全审计模块200。As shown in FIG. 1 , the JAR-based cloud data security management and auditing device 10 includes: a cloud data management module 100 and a log security auditing module 200 .

其中,云数据管理模块100用于实现数据所有者对数据的读写与更新,更新用户列表并日志审计操作,其中,在未授权用户查看明文数据之前,检测和终止恶意行为,并且在有人访问服务器端的数据时,通过JAR的访问策略触发自动日志记录。日志安全审计模块200用于通过Attestation的日志格式将日志存储在CSP上,并且通过链状的日志整体结构保证日志的安全性,以通过JAR的访问策略对数据访问进行查询或者对指定文件或用户行为进行查询。该装置10可以通过JAR的访问策略提供自动可靠的日志记录机制,确保数据访问将生成记录并保护数据免受秘钥滥用攻击,有效实现了记录的真实性和完整性,有效提高数据的安全性。Among them, the cloud data management module 100 is used to implement the data owner to read, write and update data, update the user list and log audit operations, wherein, before unauthorized users view plaintext data, malicious behaviors are detected and terminated, and when someone accesses Automatic logging is triggered by the JAR's access policy when server-side data is accessed. The log security audit module 200 is used to store the log on the CSP through the log format of Attestation, and ensure the security of the log through the overall structure of the chain log, so as to query the data access through the JAR access policy or to specify the file or user Behavior query. The device 10 can provide an automatic and reliable log recording mechanism through the access policy of the JAR to ensure that data access will generate records and protect the data from secret key abuse attacks, effectively realizing the authenticity and integrity of the records, and effectively improving the security of the data .

可以理解的是,本发明实施例的装置10可以采用与数据耦合的可编程Java JAR文件来封装访问策略,确保通过JAR进行的数据访问将触发本地JAR的身份验证和自动日志记录,实现对云数据的有效管理。同时,在基于日志的安全审计工具中设计了一种称为“Attestation”的可靠的日志格式,使云存储更可靠。It can be understood that the device 10 in the embodiment of the present invention can use a programmable Java JAR file coupled with data to encapsulate the access policy, so as to ensure that data access through the JAR will trigger authentication and automatic logging of the local JAR, and achieve cloud Effective management of data. At the same time, a reliable log format called "Attestation" is designed in the log-based security audit tool to make cloud storage more reliable.

具体地,本发明实施例的装置10基于可编程Java JAR,设计针对数据共享环境的云数据安全管理与审计工具,该装置10划分为两个模块:云数据管理模块100和日志安全审计模块200。其中,在云数据管理模块100中,本发明实施例将用户定义为三种不同的身份:数据所有者(Owner)、服务提供商(CSP)、共享用户(User)。云数据管理模块100可以实现owner对数据的读写与更新、更新用户列表和日志审计操作。同时,合法的用户对数据有读的权限,可以申请访问某个文件或文件的一部分,也可以更新自己的身份以协助安全的数据访问。Specifically, the device 10 of the embodiment of the present invention is based on a programmable Java JAR, and a cloud data security management and audit tool for a data sharing environment is designed. The device 10 is divided into two modules: a cloud data management module 100 and a log security audit module 200 . Among them, in the cloud data management module 100, the embodiment of the present invention defines users as three different identities: data owner (Owner), service provider (CSP), and sharing user (User). The cloud data management module 100 can implement the owner to read, write and update data, update the user list and log audit operations. At the same time, legitimate users have read access to data, can apply for access to a file or a part of a file, and can also update their identity to assist in secure data access.

也就是说,如图2所示,云数据管理模块100由自动可靠的日志记录机制支持,可以采用与数据耦合的可编程Java JAR文件来封装访问策略,确保通过JAR进行的数据访问将触发本地JAR的身份验证和自动日志记录。本发明实施例将数据共享环境中的用户定义为三种不同的身份即数据所有者(Owner)、服务提供商(CSP)和共享用户(User),并依据用户身份,对不同身份的行为进行定义。本发明实施例使用SSL协议进行数据通信,因为SSL能够保证数据传输的安全性和完整性。下面对三种不同的身份即数据所有者(Owner)、服务提供商(CSP)和共享用户(User)进行详细的阐述。That is to say, as shown in FIG. 2, the cloud data management module 100 is supported by an automatic and reliable logging mechanism, and can use a programmable Java JAR file coupled with data to encapsulate the access policy, ensuring that data access through the JAR will trigger local Authentication and automatic logging of JARs. In the embodiment of the present invention, users in the data sharing environment are defined as three different identities, namely data owner (Owner), service provider (CSP) and shared user (User), and according to user identities, behaviors of different identities are analyzed. definition. The embodiment of the present invention uses the SSL protocol for data communication, because SSL can guarantee the security and integrity of data transmission. Three different identities, namely data owner (Owner), service provider (CSP) and shared user (User), are described in detail below.

首先,如图3所示,数据所有者:所有者端由一个owner.jar和resource资源性文件构成。Owner加密数据,并为数据生成用于访问及管理的JAR。所有者端功能有:更新数据文件、更新用户访问控制列表、审计服务器数据、获取服务器活动数据。Owner对数据有写的权限,可以更新云端存储的信息。Owner更新的信息可进一步分为2类:存储在server端的数据块和Server JAR中的用户列表。两类信息的更新流程一致,区别仅存在于owner生成新版信息的过程,以及server收到新版信息后的更新过程。First, as shown in Figure 3, the data owner: the owner side consists of an owner.jar and a resource resource file. Owner encrypts data and generates JAR for data access and management. Owner-side functions include: updating data files, updating user access control lists, auditing server data, and obtaining server activity data. The Owner has write permission to the data and can update the information stored in the cloud. The information updated by the Owner can be further divided into two categories: the data block stored on the server side and the user list in the Server JAR. The update process of the two types of information is the same, and the difference only exists in the process of the owner generating a new version of information, and the update process of the server after receiving the new version of information.

其次,如图3所示,共享用户:客户端由一个client_10.jar和resource资源性文件构成,客户使用与自身角色对应的JAR访问数据,但无法获取数据的完整权限。客户端功能包括:请求数据和更新版本。Client JAR的部署主要由公共网络传输完成,可以采用将数据解密密钥(非对称加密)写在Client JAR代码里的方法,利用Java本身对于代码的保护机制,代替通过对称加密传递非对称加密密钥的方式,达到了类似于以往的对称-非对称加密相结合的数据加密性能。合法的client对数据有读的权限,在请求数据模块,客户向服务器发送请求,经过服务器认证后可以获得服务器上文件所有者上传的数据文件。Client可以申请访问某个文件或文件的一部分,也可以更新自己的身份以协助安全的数据访问。每当文件所有者更新了JAR的版本,客户都可以通过更新版本模块来更新自己的JAR文件。经过服务器认证后可以获得客户新的HashID。Secondly, as shown in Figure 3, the shared user: the client consists of a client_10.jar and resource file. The client uses the JAR corresponding to its own role to access data, but cannot obtain full permissions to the data. Client functions include: requesting data and updating versions. The deployment of the Client JAR is mainly completed by public network transmission. You can use the method of writing the data decryption key (asymmetric encryption) in the Client JAR code, and use Java's own protection mechanism for the code instead of passing the asymmetric encryption key through symmetric encryption. The method of using a key achieves data encryption performance similar to the combination of previous symmetric-asymmetric encryption. A legitimate client has the right to read the data. In the data request module, the client sends a request to the server, and after being authenticated by the server, the client can obtain the data file uploaded by the file owner on the server. Clients can request access to a file or part of a file, and can update their identity to assist in secure data access. Whenever the file owner updates the version of the JAR, customers can update their own JAR files by updating the version module. After being authenticated by the server, the new HashID of the client can be obtained.

最后,如图3所示,服务提供商:服务器端的功能程序为server.jar,它为数据提供用于存储的云环境,并通过与自身角色对应的JAR对数据的访问和更新进行管理,同时记录日志信息。对客户端的服务功能有:发送数据服务和更新客户端服务。对数据所有者端服务功能有:文件数据更新服务、用户访问控制列表更新服务、统计用户活动服务和统计服务器活动服务。本发明实施例的装置10将服务端部署在Amazon AWS EC2(亚马逊弹性计算网云)上。Finally, as shown in Figure 3, service provider: the functional program on the server side is server.jar, which provides a cloud environment for data storage, and manages the access and update of data through the JAR corresponding to its own role. Record log information. The service functions for the client include: sending data service and updating client service. The service functions on the data owner side include: file data update service, user access control list update service, statistical user activity service and statistical server activity service. The device 10 of the embodiment of the present invention deploys the server on Amazon AWS EC2 (Amazon Elastic Computing Cloud).

进一步地,为了解决CSP与恶意用户合谋,跳过Server JAR直接向未授权用户发送数据的问题,本发明实施例提出了请求权限检查过程,在未授权用户可以实际查看明文数据之前,检测和终止恶意行为。同时,为了保证在用户访问服务器端的数据时,不可避免地触发自动记录,实现自动日志记录,本发明实施例设计了基于JAR的访问策略。此外,在日志安全审计模块200中,本发明实施例设计了一种称为“Attestation”的可靠的日志格式,可以将大量的日志直接存储在CSP上而无需加密。同时,本发明实施例设计并实现了一种链状的日志整体结构,用以保证日志的安全性。日志安全审计模块200基于JAR封装的访问策略,可实现两种日志查询功能即数据访问查询功能和指定文件或用户行为查询功能。Further, in order to solve the problem that CSP colludes with malicious users and skips the Server JAR and directly sends data to unauthorized users, the embodiment of the present invention proposes a request permission checking process, which detects and terminates the data before the unauthorized users can actually view the plaintext data. malicious behavior. At the same time, in order to ensure that when the user accesses the data on the server side, automatic recording is inevitably triggered and automatic log recording is realized, the embodiment of the present invention designs a JAR-based access strategy. In addition, in the log security audit module 200, the embodiment of the present invention designs a reliable log format called "Attestation", which can directly store a large number of logs on the CSP without encryption. At the same time, the embodiment of the present invention designs and implements a chained overall log structure to ensure the security of the log. The log security audit module 200 is based on the access policy encapsulated by JAR, and can realize two kinds of log query functions, namely data access query function and specified file or user behavior query function.

进一步地,在本发明的一个实施例中,JAR的访问策略包括:服务器端对请求权限进行检查,生成预设格式的日志,并将预设格式的日志附加在已存在的日志后,以当生成的预设格式的日志的全部内容正确执行完成后,服务器生成对应的permission或denial消息,以保证所有的数据修改有日志记录。Further, in one embodiment of the present invention, the JAR access strategy includes: the server side checks the request authority, generates a log in a preset format, and appends the log in a preset format to the existing log, so as to After all the contents of the generated log in the preset format are correctly executed, the server generates a corresponding permission or denial message to ensure that all data modifications have log records.

也就是说,服务器端执行请求权限检查过程,同时生成固定格式的一条日志,附加在已存在的日志后。当生成日志的全部内容正确执行完成后,服务器才可生成对应的permission或denial消息,这保证了所有的数据修改都有日志记录可考。That is to say, the server executes the request permission checking process, and at the same time generates a log with a fixed format, which is appended to the existing log. The server can generate the corresponding permission or denial message only after all the contents of the generated log are executed correctly, which ensures that all data modifications have log records for review.

具体地,如图4所示,本发明实施例的自动日志记录机制需要经过请求权限检查的过程,并通过JAR来封装访问策略,在用户访问服务器端的数据时,不可避免地会触发自动记录。ServerJAR中的访问策略主要由以下步骤组成:接受request、检查权限、获取数据、生成日志、返回permission和数据或denial。Specifically, as shown in FIG. 4 , the automatic log recording mechanism of the embodiment of the present invention needs to go through the process of request permission check, and encapsulate the access policy through JAR. When the user accesses the data on the server side, automatic recording will inevitably be triggered. The access strategy in ServerJAR mainly consists of the following steps: accept request, check permissions, get data, generate logs, return permission and data or denial.

首先,所有者端或者客户端发出数据访问或者日志审计请求的request。其次,服务器端接收到请求被唤醒进行身份验证,并且服务器通过检查用户hashID是否在到期日期以前,以及用户是否在共享用户列表中进行授权。最后,当Server JAR在读取请求并识别授权用户时,触发自动日志记录,生成一条与本次“request-permission”相关的Attestation,并验证通过后,生成permission消息发送给请求端后才能继续数据访问或者日志审计操作。此外,如果用户或CSP试图通过规避JAR来违反协议,数据访问将失败。如果访问用户没有权限则在生成日志后将denial消息发送给请求端。First, the owner or client sends a request for data access or log audit request. Second, the server receives the request and wakes up for authentication, and the server authorizes by checking whether the user hashID is before the expiration date and whether the user is in the shared user list. Finally, when the Server JAR reads the request and identifies the authorized user, it triggers automatic logging, generates an Attestation related to this "request-permission", and after passing the verification, generates a permission message and sends it to the requesting end before continuing the data Access or log audit operations. Additionally, if a user or CSP attempts to violate the protocol by circumventing the JAR, data access will fail. If the access user does not have permission, a denial message will be sent to the requester after the log is generated.

可选地,在本发明的一个实施例中,Attestation的日志格式如下:Optionally, in one embodiment of the present invention, the log format of Attestation is as follows:

其中,日志信息使用明文保存在服务提供商处,且不同数据的操作日志被记录在一个公共的日志文件中。Wherein, the log information is saved at the service provider in plain text, and the operation logs of different data are recorded in a common log file.

也就是说,日志信息使用明文保存在服务提供商处,且不同数据的操作日志被记录在一个公共的日志文件中。日志信息的生成与交互机制紧密相关,以保证日志机制能够准确的记录下整个数据安全框架内的数据操作行为。That is to say, the log information is saved at the service provider in plain text, and the operation logs of different data are recorded in a common log file. The generation of log information is closely related to the interaction mechanism to ensure that the log mechanism can accurately record the data operation behavior within the entire data security framework.

具体而言,本发明实施例设计了一种称为“Attestation”的可靠的日志格式,可以将大量的日志直接存储在CSP上而无需加密。明文认证格式降低了存储成本,灵便的生成和授权过程有助于快速访问数据,同时,本发明实施例设计并实现了一种基于哈希链的链状日志整体结构,用以保证日志的安全性和完整性。日志安全审计模块200基于JAR封装的访问策略,可实现两种日志查询功能即数据访问查询功能和指定文件或用户行为查询功能。Specifically, the embodiment of the present invention designs a reliable log format called "Attestation", which can directly store a large number of logs on the CSP without encryption. The plaintext authentication format reduces storage costs, and the flexible generation and authorization process helps to access data quickly. At the same time, the embodiment of the present invention designs and implements an overall chain log structure based on hash chains to ensure log security. sex and integrity. The log security audit module 200 is based on the access policy encapsulated by JAR, and can realize two kinds of log query functions, namely data access query function and specified file or user behavior query function.

其中,日志的生成基于数据访问控制的“request-permission”机制。名为“Attestation”的日志数据格式如下:Among them, the generation of logs is based on the "request-permission" mechanism of data access control. The log data format named "Attestation" is as follows:

需要说明的是,在Attestation结构中,“ACT”字段用于记录行为类型,“blockHash”是本次操作过程涉及到的数据块的哈希值,可将日志与当前数据匹配。“UserInfo&DataInfo”用于指明行为的对象,字段内容根据行为类型的不同,可以是数据文件名、数据块名、用户名。“User HashID”指明行为的来源,即数据操作的请求者。ACT、blockHash、UserInfo&DataInfo三个字段,来自请求信息的主体,与对应的请求信息相同。“Time of Access”是日志信息生成时的服务提供商系统时间。“ChainHash”是一个为保障日志数据安全可靠而设计的字段。“Signature”是生成本条日志记录的服务提供商的数字签名。CSP在存储日志记录时,各个字段之间使用“#”作为分隔符。It should be noted that in the Attestation structure, the "ACT" field is used to record the behavior type, and "blockHash" is the hash value of the data block involved in this operation, which can match the log with the current data. "UserInfo&DataInfo" is used to specify the object of the behavior, and the field content can be the data file name, data block name, or user name according to the different behavior types. "User HashID" indicates the source of the behavior, that is, the requester of the data operation. The three fields of ACT, blockHash, UserInfo&DataInfo come from the body of the request information, which are the same as the corresponding request information. "Time of Access" is the service provider system time when the log information is generated. "ChainHash" is a field designed to ensure the safety and reliability of log data. "Signature" is the digital signature of the service provider that generated this log record. When CSP stores log records, "#" is used as a separator between fields.

其中,日志信息使用明文保存在服务提供商处,这主要是由于Attestation本身的结构保证了其自身的健壮性。其次,日志主要用于记录框架中数据安全事件,由于日志中的敏感信息,如用户身份信息、数据信息,均使用哈希值表示,日志信息本身的泄露并不造成数据安全问题。最后,当前技术下的密文搜索技术对计算资源的要求较高,对于可能需要频繁日志查询的场景,明文表示有较好的可用性。另外,不同数据的操作日志被记录在一个公共的日志文件中。这主要是出于以下两点考虑:一是公共的日志存储可以减小日志查询时由文件读取带来的计算资源需求;二是大量的Attestation将会形成更长的哈希链,这使得恶意用户或服务提供商希望通过修改日志而隐藏恶意的行为变得难以实现。日志信息与数据操作请求紧密相关,而不是与具体的数据操作行为相关,使得非法的数据操作意图依然能够被日志机制完整的记录下来,这也使得数据所有者可以通过日志发现潜在的恶意用户和恶意行为。Among them, the log information is saved at the service provider in plain text, mainly because the structure of Attestation itself ensures its own robustness. Secondly, the log is mainly used to record data security events in the framework. Since the sensitive information in the log, such as user identity information and data information, is represented by a hash value, the leakage of the log information itself does not cause data security problems. Finally, the ciphertext search technology under the current technology has high requirements on computing resources. For scenarios that may require frequent log queries, plaintext representation has better usability. In addition, the operation logs of different data are recorded in a common log file. This is mainly due to the following two considerations: first, public log storage can reduce the computing resource requirements brought by file reading during log query; second, a large number of Attestation will form a longer hash chain, which makes It becomes difficult for malicious users or service providers to hide malicious behavior by modifying logs. The log information is closely related to the data operation request, not to the specific data operation behavior, so that the illegal data operation intention can still be completely recorded by the log mechanism, which also allows the data owner to find potential malicious users and users through the log. malicious behavior.

可选地,链状的日志整体结构如下:Optionally, the overall structure of the chained log is as follows:

ChainHash=hash(AttestBody,prevChainHash)。ChainHash = hash(AttestBody, prevChainHash).

其中,在日志记录工具中,日志信息的完整性和防篡改,是保障日志能够准确描述数据安全事件,并达到维护数据安全目的的关键。本发明实施例设计并实现了一种链状的日志整体结构,用以保证日志的安全性。在Attestation中,设计了一个ChainHash字段用于保持日志的整体安全性。ChainHash使用日志信息主体的ACT、UserID、BlockID、Nonce、Time字段与上一条Attestation中的ChainHash字段,相加再进行一次哈希变换,以得到本条日志记录的ChainHash值。最新的ChainHash将保留在Server JAR中,作为计算下一个attestation的chainHash值的参数。最后由Server JAR签名,然后将chainHash附加到Server JAR运行目录下现有attestation的末尾。其中,Among them, in the log recording tool, the integrity and tamper-proof of log information is the key to ensure that the log can accurately describe data security events and achieve the purpose of maintaining data security. The embodiment of the present invention designs and implements a chained overall log structure to ensure log security. In Attestation, a ChainHash field is designed to maintain the overall security of the log. ChainHash uses the ACT, UserID, BlockID, Nonce, and Time fields of the log information body and the ChainHash field in the previous Attestation to add and perform a hash transformation to obtain the ChainHash value of this log record. The latest ChainHash will be kept in the Server JAR as a parameter to calculate the chainHash value of the next attestation. It is finally signed by the Server JAR, and then the chainHash is appended to the end of the existing attestation under the Server JAR run directory. in,

ChainHash=hash(AttestBody,prevChainHash)。ChainHash = hash(AttestBody, prevChainHash).

可选地,在本发明的一个实施例中,其中,当每条Attestation内容发生改变时,引起整条日志链的断裂,从而根据哈希链断裂的位置定位威胁数据安全的恶意行为。Optionally, in an embodiment of the present invention, when the content of each Attestation is changed, the entire log chain is broken, so as to locate the malicious behavior that threatens data security according to the broken position of the hash chain.

也就是说,这种上下文紧密相关的日志链结构,使得每条Attestation内容发生改变的时候,必将引起整条日志链的断裂。而本发明实施例可以根据哈希链断裂的位置,定位威胁数据安全的恶意行为。In other words, this kind of log chain structure closely related to the context will cause the entire log chain to break when the content of each Attestation changes. However, the embodiment of the present invention can locate malicious behaviors that threaten data security according to the location where the hash chain is broken.

具体地,基于日志的安全审计在数据管理平台上,设计并实现了两种日志查询功能即数据访问查询功能和指定文件或用户行为查询功能。这两种功能分别对应了所有者端的获取服务器活动数据模块和审计服务器数据模块。文件所有者可以通过获取服务器活动数据模块来获得服务器上最新的活动数据,包括服务器上客户请求数据的次数及时间、最后一次请求的用户和时间以及非法请求的次数时间。数据访问查询的结果是数据安全简报。数据所有者可以请求server发送数据安全简报,通过数据安全简报,对数据的安全情况进行直观的了解,并决定是否有必要对数据安全事件进行详细的查询。而当数据所有者认为数据安全受到威胁,或因为其他原因需要查看数据的完整操作日志时,需要依据交互机制对服务提供商提出查询日志请求。这就是所有者端的审计服务器数据模块,文件所有者可以审计服务器上特定文件、特定用户的活动信息。Specifically, in the log-based security audit, two log query functions are designed and implemented on the data management platform, namely, data access query function and specified file or user behavior query function. These two functions correspond to the module of obtaining server activity data and auditing server data on the owner side respectively. The file owner can obtain the latest activity data on the server by obtaining the server activity data module, including the number and time of customer request data on the server, the user and time of the last request, and the number and time of illegal requests. The result of a data access query is a data security brief. The data owner can request the server to send a data security briefing. Through the data security briefing, he can have an intuitive understanding of the data security situation and decide whether it is necessary to conduct detailed inquiries on data security events. When the data owner believes that the data security is threatened, or needs to view the complete operation log of the data for other reasons, it is necessary to request the service provider to query the log according to the interaction mechanism. This is the audit server data module on the owner side. The file owner can audit the activity information of specific files and specific users on the server.

需要说明的是,本发明实施例使用文件存储的方式保存数据、日志信息以及用于日志查询和日志完整性维护的相关信息,信息保存在服务端resource文件夹中。resource文件夹中针对每一个数据建立一个名字相同的文件夹。例如,数据文件myFile的数据内容和相关信息存储在myFile文件夹中。It should be noted that the embodiment of the present invention uses a file storage method to store data, log information, and related information for log query and log integrity maintenance, and the information is stored in the resource folder of the server. Create a folder with the same name for each data in the resource folder. For example, the data content and related information of the data file myFile are stored in the myFile folder.

其中,blocks文件夹存储文件的所有加密数据块。userkey文件夹用于存储用户的public-key。用于服务端验证用户身份。attest.txt用于存储与当前数据相关的数据操作日志。last_chain.txt用于存储最新一条attestation信息中的ChainHash,用于进行下一条attestation信息中ChainHash的生成而不用再次读取相对较大的attest.txt文件。myFile.txt用于存储myFile文件响应的数据块信息。permission.txt用于存储CSP对数据访问请求的响应信息,因为响应信息中包含了请求信息的主体,所以不需要额外保存请求信息。query.txt用于存储数据所有者请求查询日志的结果。Among them, the blocks folder stores all encrypted data blocks of the file. The userkey folder is used to store the user's public-key. Used to verify user identity on the server side. attest.txt is used to store data operation logs related to the current data. last_chain.txt is used to store the ChainHash in the latest attestation information, and is used to generate the ChainHash in the next attestation information without reading the relatively large attest.txt file again. myFile.txt is used to store the data block information of the myFile file response. permission.txt is used to store the response information of the CSP to the data access request, because the response information contains the body of the request information, so there is no need to additionally save the request information. query.txt is used to store the result of the query log requested by the data owner.

另外,本发明实施例的装置10采用的通讯方案包括:(1)Owner的sendMessage()方法,通过WritableByteChannel,每次发送不超过1024个字节,直至内容结束。(2)Owner的ReceivePermissionMessage(),通过ReadableByteChannel每次从缓存总读取最多1024个字节,前者用来接收client发送的permission,读取到“end”停止,返回permission字符串。(3)receiveFile()方法,用来接收owner发送的查询结果文件,删除FILE,FILE-END标志符,以字符串的形式返回文件内容。(4)Server的sendFile()和sendMessage()方法,通过WritableByteChannel,每次发送不超过1024个字节,直至内容结束。(5)Server的receiveFiles()和receiveMessage()方法,通过ReadableByteChannel每次从缓存总读取最多1024个字节,直至内容结束,以字符串形式返回接收到的数据。(6)Client的sendMessage()方法通过WritableByteChannel,每次发送不超过1024个字节,直至内容结束。(7)Client的receiveServerData()方法,通过ReadableByteChannel每次从缓存总读取最多1024个字节,接收到“end”标志符停止,以特定格式的字符串返回接收到的permission和数据,或者denial。In addition, the communication scheme adopted by the device 10 of the embodiment of the present invention includes: (1) The sendMessage() method of the Owner, through WritableByteChannel, each time sending no more than 1024 bytes until the end of the content. (2) The ReceivePermissionMessage() of the Owner reads a maximum of 1024 bytes from the cache each time through the ReadableByteChannel. The former is used to receive the permission sent by the client, stop when it reads "end", and returns the permission string. (3) The receiveFile() method is used to receive the query result file sent by the owner, delete the FILE, FILE-END identifiers, and return the file content in the form of a string. (4) The sendFile() and sendMessage() methods of Server send no more than 1024 bytes each time through WritableByteChannel until the content ends. (5) The receiveFiles() and receiveMessage() methods of the Server read a maximum of 1024 bytes from the cache each time through the ReadableByteChannel until the end of the content, and return the received data in the form of a string. (6) The sendMessage() method of Client sends no more than 1024 bytes each time through WritableByteChannel until the content ends. (7) The receiveServerData() method of the Client reads up to 1024 bytes from the cache each time through the ReadableByteChannel, stops when the "end" identifier is received, and returns the received permission and data in a string of a specific format, or denial .

另外,在本发明的一个具体实施例中,数据管理具体实现步骤包括:In addition, in a specific embodiment of the present invention, the specific implementation steps of data management include:

(1)如图5所示,Owner的信息更新过程包括:(1) As shown in Figure 5, the Owner information update process includes:

①初始化。载入证书,创建并初始化SSLContext实例,建立owner和server之间的连接。①Initialization. Load the certificate, create and initialize the SSLContext instance, and establish the connection between the owner and the server.

②发送请求。Owner通过SendMessage()方法,主动向server发送request消息。Request的固定格式为:ACT#ownerID#dataID#nonce#signature,其中“#”是分隔符,将request分为5个字段。如果请求更新数据块,ACT字段的值为UPDATE,dataID字段值为filename_blockID;如果请求更新用户列表,ACT字段的值为ACL,dataID字段值为filename_user_version,其中“_”是request的一个字段内部的分隔符。nonce是6位随机数,signature是owner的签名。② Send request. The Owner actively sends a request message to the server through the SendMessage() method. The fixed format of Request is: ACT#ownerID#dataID#nonce#signature, where "#" is a delimiter, which divides the request into 5 fields. If a request is made to update a data block, the value of the ACT field is UPDATE, and the value of the dataID field is filename_blockID; if a request is made to update the user list, the value of the ACT field is ACL, and the value of the dataID field is filename_user_version, where "_" is a separator within a field of the request symbol. The nonce is a 6-digit random number, and the signature is the signature of the owner.

③回复请求。Server通过receiveMessage()方法收到request,进入attest_and_permit阶段,即:验证request合法性,对其中合法的request,生成attestation和permission,将attestation添加到相关的链上,将permission记录到server本地,然后通过sendMessage()方法向owner回复permission,发送“end”标志,permission内容结束。permission的格式为PERMIT_ACT#ownerID#blockID#nonce#signature,其中“#”是分隔符。ACT,ownerID,blockID和nonce的值与request相同,signature为CSP的签名。③ Reply to the request. The server receives the request through the receiveMessage() method and enters the attest_and_permit stage, namely: verify the legitimacy of the request, generate attestation and permission for the legal request, add the attestation to the relevant chain, record the permission to the server locally, and then pass The sendMessage() method replies the permission to the owner, sends the "end" flag, and the permission content ends. The format of permission is PERMIT_ACT#ownerID#blockID#nonce#signature, where "#" is a delimiter. The values of ACT, ownerID, blockID and nonce are the same as those of request, and signature is the signature of CSP.

④接收许可。Owner通过ReceivePermissionMessage()方法收到server发回的permission,由内部程序验证permission签名是否正确。④ Receive permission. The Owner receives the permission sent back by the server through the ReceivePermissionMessage() method, and the internal program verifies whether the permission signature is correct.

⑤上传更新。若owner内部程序确认permission签名正确,随后会以文件形式呈现本次更新的内容。此时,owner界面的上传按钮被激活,点击即可通过SendMessage()方法上传本次更新内容。⑤Upload update. If the owner's internal program confirms that the permission signature is correct, then the content of this update will be presented in the form of a file. At this point, the upload button on the owner interface is activated, click it to upload the updated content through the SendMessage() method.

⑥更新JAR。Server在验证过通过receiveFiles()和receiveMessage()方法分别收到owner上传的更新内容、签名。server验证消息签名,如果正确,则更新对应的信息。Owner更新信息的全部过程结束。⑥Update JAR. After verification, the server receives the update content and signature uploaded by the owner through the receiveFiles() and receiveMessage() methods respectively. The server verifies the message signature, and if it is correct, updates the corresponding information. The whole process of the Owner updating the information ends.

(2)如图6所示,Client的数据访问过程包括:(2) As shown in Figure 6, the data access process of Client includes:

①初始化。载入证书,创建并初始化SSLContext实例,建立client和server之间的连接。①Initialization. Load the certificate, create and initialize the SSLContext instance, and establish the connection between the client and the server.

②发送请求。Client通过sendMessage()方法,向server发送request字段。request的固定格式为:ACT#clientID_version#blockID#nonce#signature。其中“#”是request字段间的分隔符;“_”是用户身份字段内部的分隔符,表示用户的身份是由clientID和version两部分共同标识。如果请求数据访问,ACT字段的值为READ,clientID使用安全的hashID,version是当前hashID的版本号;如果请求身份更新,ACT字段的值为VERSION,clientID使用具体的userID,version仍是该用户当前hashID的版本号。nonce是6位随机数,signature是client的签名。② Send request. The client sends the request field to the server through the sendMessage() method. The fixed format of the request is: ACT#clientID_version#blockID#nonce#signature. Among them, "#" is the delimiter between the request fields; "_" is the delimiter inside the user identity field, indicating that the user's identity is identified by both clientID and version. If requesting data access, the value of the ACT field is READ, the clientID uses a secure hashID, and version is the version number of the current hashID; if requesting identity update, the value of the ACT field is VERSION, the clientID uses a specific userID, and the version is still the current version number of the user. The version number of the hashID. The nonce is a 6-digit random number, and the signature is the signature of the client.

③验证请求。Server通过receiveMessage()方法收到request,提取用户身份,检查request的签名是否正确。对于数据访问请求,还需检查request是否来自合法用户。③ Verify the request. The server receives the request through the receiveMessage() method, extracts the user identity, and checks whether the signature of the request is correct. For data access requests, it is also necessary to check whether the request comes from a legitimate user.

④回复请求。如果签名正确,且数据访问request中的用户主体是合法用户,server的程序生成attestation和permission,将attestation添加到相关的链上,将permission记录到server本地,然后通过sendMessage()方法向client回复permission,随后发送请求的数据。如果server程序鉴定得知client不是合法用户,server生成denial信息,denial信息会被存储并通过sendMessage()发送给client,发送信息以“end”结束。④ Respond to the request. If the signature is correct and the user subject in the data access request is a legal user, the server program generates attestation and permission, adds the attestation to the relevant chain, records the permission locally on the server, and then replies the permission to the client through the sendMessage() method , followed by sending the requested data. If the server program identifies that the client is not a valid user, the server generates denial information, which will be stored and sent to the client through sendMessage(), and the sent information ends with "end".

⑤接收回复。Client通过receiveServerData()方法收到server发回的permission和数据,或者收到denial,由内部程序继续处理。⑤ Receive reply. The client receives the permission and data sent back by the server through the receiveServerData() method, or receives the denial, and the internal program continues to process it.

(3)如图7所示,Owner的日志查询过程包括:(3) As shown in Figure 7, the owner's log query process includes:

①初始化。载入证书,创建并初始化SSLContext实例,建立owner和server之间的连接。①Initialization. Load the certificate, create and initialize the SSLContext instance, and establish the connection between the owner and the server.

②发送请求。Owner通过SendMessage()方法,主动向server发送request字段,request的固定格式为ACT#ownerID#target#nonce#signature,“#”是字段间的分隔。如果是数据访问查询,ACT的值为ACCESS,target的值为filename;如果是指定文件或用户行为查询,ACT的值为QUERY,target的值为userInfo&dataInfo,“&”为target字段内部的连接符。② Send request. The Owner actively sends the request field to the server through the SendMessage() method. The fixed format of the request is ACT#ownerID#target#nonce#signature, and "#" is the separator between fields. If it is a data access query, the value of ACT is ACCESS, and the value of target is filename; if it is a specified file or user behavior query, the value of ACT is QUERY, the value of target is userInfo&dataInfo, and "&" is the connector inside the target field.

③回复请求。Server通过receiveMessage()方法收到request,根据request内容执行对应程序,即:验证quest合法性,对其中合法的request,生成attestation和permission,将attestation添加到相关的链上,将permission记录到server本地,然后通过sendMessage()方法向owner回复permission,发送“end”标志permission内容结束。③ Reply to the request. The server receives the request through the receiveMessage() method, and executes the corresponding program according to the content of the request, namely: verify the legitimacy of the request, generate attestation and permission for the legal request, add the attestation to the relevant chain, and record the permission to the server locally , and then reply the permission to the owner through the sendMessage() method, and send "end" to mark the end of the permission content.

④回复查询。Server的JAR程序还会执行查询过程并将查询结果暂存在本地文件中。随后,server通过sendMessage()方法发送查询结果,格式为以“FILE”+查询结果文件内容+“FILE-END”。④ Reply to inquiries. The JAR program of the Server also executes the query process and temporarily stores the query results in a local file. Subsequently, the server sends the query result through the sendMessage() method, and the format is "FILE" + query result file content + "FILE-END".

⑤接收许可。Owner通过ReceivePermissionMessage()方法收到server发回的permission,然后通过receiveFile()方法继续接收通信链路中发来的查询结果,收到“FILE-END”后停止。随后内部程序验证permission和查询结果的签名是否正确。如果正确,owner界面的查看按钮被激活,点击即可获取可读的查询结果。owner查询访问日志的全部过程结束。⑤ Receive permission. The Owner receives the permission sent back by the server through the ReceivePermissionMessage() method, and then continues to receive the query results from the communication link through the receiveFile() method, and stops after receiving "FILE-END". The internal program then verifies that the signature of the permission and query result is correct. If it is correct, the view button on the owner interface is activated, and you can click to get readable query results. The entire process of owner querying access logs ends.

进一步地,在本发明的另一个具体实施例中,实现基于JAR的云数据安全管理与审计的步骤包括:Further, in another specific embodiment of the present invention, the steps of implementing JAR-based cloud data security management and auditing include:

(1)Owner的数据块更新。由于数据在server端是分块(block)存储的,在数据小范围修改时,owner可以仅上传受影响的数据块。Owner将需要重写的数据块编号记录在request中,在上传更新过程中,这些被修改的明文数据在owner端经过AES(AdvancedEncryption Standard,高级加密标准)对称加密后发送至server。Server在更新数据块时,会用新的加密数据块替代原有数据,此外,对于每个新的block,server程序还会将ServerJAR中的block Hash信息更新。(1) Owner's data block update. Since the data is stored in blocks on the server side, when the data is modified in a small range, the owner can only upload the affected data blocks. The Owner records the number of the data block that needs to be rewritten in the request. During the upload and update process, the modified plaintext data is encrypted by AES (Advanced Encryption Standard, Advanced Encryption Standard) on the owner side and then sent to the server. When the server updates a data block, it will replace the original data with a new encrypted data block. In addition, for each new block, the server program will also update the block Hash information in the ServerJAR.

(2)Owner的用户列表更新。Owner通过更新用户列表授权新用户或撤销已有用户的访问权限。用户列表的第一行是sharing group信息摘要,包括了版本号、用户总数和合法用户数。从第二行起,每行的记录代表userID为行号减2的用户的权限,例如第二行记录代表的是userID为0的用户的权限。如果是合法用户,此记录的值为用户的hashID,如果是非法用户,此记录的值为REVOKED。在上传更新过程中,新的用户列表被发送给server,server用新的用户列表内容取代server JAR中的user list记录。(2) The Owner's user list is updated. The Owner authorizes new users or revokes the access rights of existing users by updating the user list. The first line of the user list is a summary of the sharing group information, including the version number, total number of users, and number of legitimate users. From the second row onwards, the records in each row represent the permissions of users whose userID is the row number minus 2. For example, the records in the second row represent the permissions of users whose userID is 0. If it is a legitimate user, the value of this record is the hashID of the user, and if it is an illegal user, the value of this record is REVOKED. During the upload update process, the new user list is sent to the server, and the server replaces the user list record in the server JAR with the new user list content.

(3)Server的attest_and_permit模块对于合法的数据上传或下载请求,当makeAttest()的全部内容正确执行完成后,server才可生成对应的permission,这保证了所有的数据修改都有日志记录可考。在makeAttest()方法中,(3) The server's attest_and_permit module can only generate the corresponding permission when all the content of makeAttest() is executed correctly for legal data upload or download requests, which ensures that all data modifications have log records for reference. In the makeAttest() method,

i.程序首先在request中提取ACT,数据信息和request主体;i. The program first extracts ACT, data information and request body from the request;

ii.然后通过数据信息计算出对应数据的哈希,记作blockHash;ii. Then calculate the hash of the corresponding data through the data information, which is recorded as blockHash;

iii.添加时间,计算chainHash和签名,生成固定格式的一条attestation;iii. Add time, calculate chainHash and signature, and generate an attestation in a fixed format;

iv.最后,将attestation储存在本地,附加在已存在的日志后。iv. Finally, the attestation is stored locally, appended to the existing log.

(4)Server的用户身份认证。Server在认证用户身份后向用户发回permission或denial消息。在permission和denial的消息的结构中,“#”是字段间的分隔符;“_”是用户身份字段内部的分隔符,其前后连接的字符共同组成一个完整的permission或denial字段。Permission和denial的用户身份、数据、nonce字段均与request一致。(4) Server user identity authentication. After the server authenticates the user's identity, it sends back a permission or denial message to the user. In the message structure of permission and denial, "#" is the separator between fields; "_" is the separator inside the user identity field, and the characters connected before and after it together form a complete permission or denial field. The user identity, data, and nonce fields of Permission and denial are consistent with the request.

如果request是数据访问,permission格式为:If the request is data access, the permission format is:

PERMIT_READ#hashID_version#blockID#nonce#signature。PERMIT_READ#hashID_version#blockID#nonce#signature.

如果request是身份更新,permission格式为:If the request is an identity update, the permission format is:

PERMIT_VERSION#userID_version#blockID#nonce#signature。PERMIT_VERSION#userID_version#blockID#nonce#signature.

如果数据访问request中的用户主体不是合法用户,sever生成denial信息。如果request中的用户主体提供了最新版的hashID且该身份在用户列表中不存在,denial信息的格式为:If the user subject in the data access request is not a valid user, the server generates denial information. If the user principal in the request provides the latest hashID and the identity does not exist in the user list, the format of the denial information is:

REF_READ#FORBIDDEN_hashID_userVer#dataIndex#nonce#signature。REF_READ#FORBIDDEN_hashID_userVer#dataIndex#nonce#signature.

如果request中的用户主体使用的是过期版本的hashID,denial信息的格式为:If the user principal in the request uses an outdated hashID, the format of the denial information is:

REF_READ#OBSOLETE_hashID_userVer#dataIndex#nonce#signature。REF_READ#OBSOLETE_hashID_userVer#dataIndex#nonce#signature.

(5)Client的数据访问在接收回复过程中,permission后跟随的数据是request中指定的加密过的data blocks。客户端程序会用程序内的密钥信息解密,给用户展示解密后的数据块。如果接受到的是带有OBSOLETE字段的denial信息,程序会提示用户向server请求身份更新;如果接受到的是带有FORBIDDEN字段的denial信息,程序会提示无访问权限,然后自动退出。(5) During the data access of the Client, during the process of receiving the reply, the data following the permission is the encrypted data blocks specified in the request. The client program will use the key information in the program to decrypt and display the decrypted data block to the user. If the denial information with the OBSOLETE field is received, the program will prompt the user to request an identity update from the server; if the denial information with the FORBIDDEN field is received, the program will prompt that there is no access right, and then exit automatically.

(6)Client的身份更新。在接收回复过程中,permission后紧跟的数据是用request当中userID对应用户的公钥加密的最新版本hashID,client JAR使用用户私钥解密消息,得到格式为:userID#version#hashID,“#”是字段间的分隔符。程序验证解密获得的userID和client JAR中的userID是否一致,通过验证后,程序用收到的回复消息替换本地的userID文件。(6) Client's identity update. In the process of receiving the reply, the data immediately following the permission is the latest hashID encrypted with the public key corresponding to the userID in the request, and the client JAR uses the user's private key to decrypt the message, and the format is: userID#version#hashID,"#" is the separator between fields. The program verifies whether the decrypted userID is consistent with the userID in the client JAR. After passing the verification, the program replaces the local userID file with the received reply message.

(7)查询数据访问。对应的request中,ACT的值为ACCESS。Server的程序在request中提取目标文件名,然后查询该文件对应的attestation和denial记录。attestation中,ACT值为“READ”的记录是成功的数据访问,denial中存储的是未被允许的数据访问请求的摘要。Server的统计内容包括:文件被访问的次数,访问文件的用户总数,最后访问者,最后访问时间,被拒绝的文件访问次数,上次拒绝访问的时间。该统计内容由明文存储在accessReport文件中,发送给owner。通过以上内容,数据所有者可以掌握一个时间周期内数据被合法和非法使用的情况。(7) Query data access. In the corresponding request, the value of ACT is ACCESS. The server program extracts the target file name from the request, and then queries the attestation and denial records corresponding to the file. In the attestation, the record with the ACT value of "READ" is a successful data access, and the summary of the unallowed data access request is stored in the denial. The statistical content of the server includes: the number of times the file is accessed, the total number of users accessing the file, the last visitor, the last access time, the number of times the file was denied access, and the time when the last access was denied. The statistical content is stored in the accessReport file in plain text and sent to the owner. Through the above content, the data owner can grasp the legal and illegal use of data within a period of time.

(8)查询指定文件或用户行为。对应的request中,ACT的值为QUERY。Server的程序在request中提取目标文件名和目标用户名,在attestation中检索所有相关的记录,然后生成attest文件,发送给owner。Owner的程序将此文件译为方便阅读的格式,包括:删除签名等验证信息,将用户的hashID转换为userID。(8) Query the specified file or user behavior. In the corresponding request, the value of ACT is QUERY. The server program extracts the target file name and target user name in the request, retrieves all related records in the attestation, and then generates the attest file and sends it to the owner. The Owner's program translates this file into a format that is easy to read, including: deleting verification information such as signatures, and converting the user's hashID to userID.

根据本发明实施例提出的基于JAR的云数据安全管理与审计装置,可以实现基于JAR的数据访问控制、面向数据操作的日志生成、日志完整性维护以及基于日志的安全审计等功能,并通过JAR的访问策略提供自动可靠的日志记录机制,确保数据访问将生成记录并保护数据免受密钥滥用攻击,有效地实现了记录的真实性和完整性,有效提高数据的安全性。According to the JAR-based cloud data security management and auditing device proposed in the embodiment of the present invention, functions such as JAR-based data access control, data operation-oriented log generation, log integrity maintenance, and log-based security auditing can be realized. The access policy provides an automatic and reliable logging mechanism to ensure that data access will generate records and protect data from key abuse attacks, effectively realizing the authenticity and integrity of records and effectively improving data security.

在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。In describing the present invention, it should be understood that the terms "center", "longitudinal", "transverse", "length", "width", "thickness", "upper", "lower", "front", " Back", "Left", "Right", "Vertical", "Horizontal", "Top", "Bottom", "Inner", "Outer", "Clockwise", "Counterclockwise", "Axial", The orientation or positional relationship indicated by "radial", "circumferential", etc. is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying the referred device or element Must be in a particular orientation, be constructed in a particular orientation, and operate in a particular orientation, and therefore should not be construed as limiting the invention.

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。In addition, the terms "first" and "second" are used for descriptive purposes only, and cannot be interpreted as indicating or implying relative importance or implicitly specifying the quantity of indicated technical features. Thus, the features defined as "first" and "second" may explicitly or implicitly include at least one of these features. In the description of the present invention, "plurality" means at least two, such as two, three, etc., unless otherwise specifically defined.

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。In the present invention, unless otherwise clearly specified and limited, terms such as "installation", "connection", "connection" and "fixation" should be understood in a broad sense, for example, it can be a fixed connection or a detachable connection , or integrated; it may be mechanically connected or electrically connected; it may be directly connected or indirectly connected through an intermediary, and it may be the internal communication of two components or the interaction relationship between two components, unless otherwise specified limit. Those of ordinary skill in the art can understand the specific meanings of the above terms in the present invention according to specific situations.

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。In the present invention, unless otherwise clearly specified and limited, the first feature may be in direct contact with the first feature or the first and second feature may be in direct contact with the second feature through an intermediary. touch. Moreover, "above", "above" and "above" the first feature on the second feature may mean that the first feature is directly above or obliquely above the second feature, or simply means that the first feature is higher in level than the second feature. "Below", "beneath" and "beneath" the first feature may mean that the first feature is directly below or obliquely below the second feature, or simply means that the first feature is less horizontally than the second feature.

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。In the description of this specification, descriptions referring to the terms "one embodiment", "some embodiments", "example", "specific examples", or "some examples" mean that specific features described in connection with the embodiment or example , structure, material or characteristic is included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the described specific features, structures, materials or characteristics may be combined in any suitable manner in any one or more embodiments or examples. In addition, those skilled in the art can combine and combine different embodiments or examples and features of different embodiments or examples described in this specification without conflicting with each other.

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。Although the embodiments of the present invention have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present invention, those skilled in the art can make the above-mentioned The embodiments are subject to changes, modifications, substitutions and variations.

Claims (5)

1. A cloud data security management and audit device based on JAR is characterized by comprising the following components:
the cloud data management module is used for reading, writing and updating data by a data owner, updating a user list and performing log audit operation, wherein malicious behaviors are detected and terminated before an unauthorized user views plaintext data, and when someone accesses the data of the server, automatic log recording is triggered through an access strategy of JAR;
and the log security audit module is used for storing the log on the CSP through the log format of the Attestation, and ensuring the security of the log through the whole structure of the chain log so as to inquire data access or inquire an appointed file or user behavior through the access strategy of the JAR.
2. The JAR-based cloud data security management and auditing apparatus according to claim 1, where the JAR's access policy includes: the server side checks the request authority, generates a log in a preset format, and after the log in the preset format is added to the existing log, the server generates a corresponding permission or alias message after the complete execution of all the contents of the generated log in the preset format is completed, so as to ensure that all data modification has log records.
3. The JAR-based cloud data security management and auditing apparatus according to claim 1, where the Attestation's log format is as follows:
wherein the log information is kept in plain text at the service provider and the operation logs of the different data are recorded in a common log file.
4. The JAR-based cloud data security management and auditing apparatus according to claim 1, where the chain-like log overall structure is as follows:
ChainHash=hash(AttestBody,prevChainHash)。
5. the JAR-based cloud data security management and auditing apparatus according to claim 4 where each Attestation content changes, causing the entire log chain to break, thereby locating malicious behavior that threatens data security based on the location of the hash chain break.
CN201710780103.8A 2017-09-01 2017-09-01 JAR-based cloud data security management and auditing device Active CN107948235B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710780103.8A CN107948235B (en) 2017-09-01 2017-09-01 JAR-based cloud data security management and auditing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710780103.8A CN107948235B (en) 2017-09-01 2017-09-01 JAR-based cloud data security management and auditing device

Publications (2)

Publication Number Publication Date
CN107948235A true CN107948235A (en) 2018-04-20
CN107948235B CN107948235B (en) 2021-01-01

Family

ID=61928621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710780103.8A Active CN107948235B (en) 2017-09-01 2017-09-01 JAR-based cloud data security management and auditing device

Country Status (1)

Country Link
CN (1) CN107948235B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108809942A (en) * 2018-05-10 2018-11-13 山东恒云信息科技有限公司 The method that data integrity validation is realized to daily record evidence obtaining in cloud service environment
CN108900505A (en) * 2018-06-28 2018-11-27 中国科学院软件研究所 A kind of cluster audit management-control method based on block chain technology
CN110310078A (en) * 2019-04-28 2019-10-08 中航凯迪恩机场工程有限公司 A kind of novel cloud auditing system
CN111488594A (en) * 2020-03-03 2020-08-04 浙江省北大信息技术高等研究院 Authority checking method and device based on cloud server, storage medium and terminal
CN113873027A (en) * 2021-09-24 2021-12-31 深信服科技股份有限公司 Communication method and related device
CN114626084A (en) * 2020-12-10 2022-06-14 国际商业机器公司 Secure Smart Containers for Controlling Access to Data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104393A1 (en) * 2006-09-28 2008-05-01 Microsoft Corporation Cloud-based access control list
CN102685148A (en) * 2012-05-31 2012-09-19 清华大学 Method for realizing secure network backup system under cloud storage environment
CN103488957A (en) * 2013-09-17 2014-01-01 北京邮电大学 Protecting method for correlated privacy

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104393A1 (en) * 2006-09-28 2008-05-01 Microsoft Corporation Cloud-based access control list
CN102685148A (en) * 2012-05-31 2012-09-19 清华大学 Method for realizing secure network backup system under cloud storage environment
CN103488957A (en) * 2013-09-17 2014-01-01 北京邮电大学 Protecting method for correlated privacy

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHEN YANG: ""Ensuring Reliable Logging for Data Accountability in Untrusted Cloud Storage"", 《2017 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC)》 *
陈冰泉: ""云存储系统可问责机制研究"", 《信息技术与信息化》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108809942A (en) * 2018-05-10 2018-11-13 山东恒云信息科技有限公司 The method that data integrity validation is realized to daily record evidence obtaining in cloud service environment
CN108900505A (en) * 2018-06-28 2018-11-27 中国科学院软件研究所 A kind of cluster audit management-control method based on block chain technology
CN110310078A (en) * 2019-04-28 2019-10-08 中航凯迪恩机场工程有限公司 A kind of novel cloud auditing system
CN111488594A (en) * 2020-03-03 2020-08-04 浙江省北大信息技术高等研究院 Authority checking method and device based on cloud server, storage medium and terminal
CN114626084A (en) * 2020-12-10 2022-06-14 国际商业机器公司 Secure Smart Containers for Controlling Access to Data
CN113873027A (en) * 2021-09-24 2021-12-31 深信服科技股份有限公司 Communication method and related device
CN113873027B (en) * 2021-09-24 2024-02-27 深信服科技股份有限公司 Communication method and related device

Also Published As

Publication number Publication date
CN107948235B (en) 2021-01-01

Similar Documents

Publication Publication Date Title
CN112422532B (en) Service communication method, system and device and electronic equipment
US8549326B2 (en) Method and system for extending encrypting file system
CN107948235B (en) JAR-based cloud data security management and auditing device
US9209973B2 (en) Delegate authorization in cloud-based storage system
JP5635978B2 (en) Authenticated database connection for applications without human intervention
JP4746266B2 (en) Method and system for authenticating a user for a sub-location in a network location
JP5860815B2 (en) System and method for enforcing computer policy
US6393420B1 (en) Securing Web server source documents and executables
US8424077B2 (en) Simplified management of authentication credentials for unattended applications
CN103731395B (en) The processing method and system of file
CN108701094B (en) Securely storing and distributing sensitive data in cloud-based applications
US20220029820A1 (en) Validated payload execution
CN101605137A (en) Safe distribution file system
US11418329B1 (en) Shared secret implementation of proxied cryptographic keys
US11218317B1 (en) Secure enclave implementation of proxied cryptographic keys
CN109936555A (en) A data storage method, device and system based on cloud platform
CN109309645A (en) A kind of software distribution security guard method
US11451517B2 (en) Secure and auditable proxy technology using trusted execution environments
CA3172049A1 (en) Exporting remote cryptographic keys
WO2017210914A1 (en) Method and apparatus for transmitting information
CN118713902A (en) A method, system, device and storage medium for sharing trusted data in the Internet of Things
CN117439739A (en) Security protection method and system for interface requests
CN117134907A (en) Security control method and device, storage medium and electronic device
KR102534012B1 (en) System and method for authenticating security level of content provider
CN118713914A (en) Cross-device management method, device and system for privacy data

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
GR01 Patent grant
GR01 Patent grant